Bug 10729: Add phrases configuration for ICU
authorColin Campbell <colin.campbell@ptfs-europe.com>
Wed, 14 Aug 2013 15:21:26 +0000 (16:21 +0100)
committerGalen Charlton <gmc@esilibrary.com>
Mon, 5 May 2014 04:10:57 +0000 (04:10 +0000)
Add a separate phrases-icu.xml for phrase indexes
The file is based on that distributed with zebra
with a couple of additions to reflect Koha usage

This patch adds a separate tokenizer variable
for phrase indexes so that default.idx is
correctly rewritten for sites using icu
indexing

Signed-off-by: Paola Rossi <paola.rossi@cineca.it>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
- Applied patch
- perl Makefile.PL --prev-install-log ../koha-dev/misc/koha-install-log
- make upgrade
- Restarted Zebra server
- Did a full reindex of bibliographic and authorities
- Checked various searches
- Links records to authorities
- Checked created links work correctly

I couldn't find a regression with this patch.
Passes all tests and QA script.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>

Makefile.PL
etc/zebradb/etc/default.idx
etc/zebradb/etc/phrases-icu.xml [new file with mode: 0644]
rewrite-config.PL

index 8b89633..c7600b0 100644 (file)
@@ -560,6 +560,10 @@ $config{ZEBRA_TOKENIZER_STMT} = $config{ZEBRA_TOKENIZER} eq 'icu'
     ? 'icuchain words-icu.xml'
     : 'charmap word-phrase-utf.chr';
 
+$config{ZEBRA_PTOKENIZER_STMT} = $config{ZEBRA_TOKENIZER} eq 'icu'
+    ? 'icuchain phrases-icu.xml'
+    : 'charmap word-phrase-utf.chr';
+
 my %test_suite_override_dirs = (
     KOHA_CONF_DIR  => ['etc'],
     ZEBRA_CONF_DIR => ['etc', 'zebradb'],
index d6314c6..3a70392 100644 (file)
@@ -18,7 +18,7 @@ __ZEBRA_TOKENIZER_STMT__
 index p
 completeness 1
 firstinfield 1
-__ZEBRA_TOKENIZER_STMT__
+__ZEBRA_PTOKENIZER_STMT__
 
 # URX (URL) index
 # Used if structure=urx (@attr 4=104)
diff --git a/etc/zebradb/etc/phrases-icu.xml b/etc/zebradb/etc/phrases-icu.xml
new file mode 100644 (file)
index 0000000..b27b06a
--- /dev/null
@@ -0,0 +1,10 @@
+<icu_chain locale="">
+  <transform rule="[:Control:] Any-Remove"/>
+  <tokenize rule="l"/>
+  <transform rule="[:Punctuation:] Remove"/>
+  <transform rule="NFD"/>
+  <transform rule="[:Nonspacing Mark:] Remove"/>
+  <transform rule="NFC"/>
+  <display/>
+  <casemap rule="l"/>
+</icu_chain>
index ea69c94..87e2587 100644 (file)
@@ -124,6 +124,7 @@ $prefix = $ENV{'INSTALL_BASE'} || "/usr";
   '__ZEBRA_LANGUAGE__' => 'en',
   '__ZEBRA_TOKENIZER__' => 'chr',
   '__ZEBRA_TOKENIZER_STMT__' => 'charmap word-phrase-utf.chr',
+  '__ZEBRA_PTOKENIZER_STMT__' => 'charmap word-phrase-utf.chr',
   '__ZEBRA_AUTH_CFG__' => 'zebra-authorities.cfg',
   '__ZEBRA_BIB_CFG__' => 'zebra-biblios.cfg',
   '__AUTH_RETRIEVAL_CFG__' => 'retrieval-info-auth-grs1.xml',