[Koha-patches] [PATCH 1/2] Bug 10431 - Spanish Zebra character sorting file

Tomas Cohen Arazi tomascohen at gmail.com
Tue Jun 11 16:22:17 CEST 2013


This patch provides a definition file for spanish (es) character
sorting in Zebra. It is based on the ideas from Hugo Agud <hagud at orex.es>
and Pablo Bianchi <pablo.bianchi at gmail.com>.

Makefile.PL is fixed to notice the existence of the 'es' language. The
docs for koha-create are touched too.

To test:
Tarball
=======
- Go through the install process, choosing 'es' for the Zebra's language step
- Koha should work as usual.
- Running this should show the lang definition is properly set.
$ grep -R "lang_defs/es" /etc/koha/*
(stuff like zebradb/zebra-biblios-dom.cfg:profilePath:...etc/koha/zebra/lang_defs/es... should show)
- This file should be present:
 /etc/koha/zebradb/lang_defs/es/sort-string-utf.chr

Packages
========
- Build your own package, it shouldn't break the packaging
- Try the new package, using koha-create to set an instance using --lang 'es'

Regards
To+

Sponsored-by: Universidad Nacional de Córdoba
---
 Makefile.PL                                  |    2 +-
 debian/scripts/koha-create                   |    2 +-
 etc/zebradb/lang_defs/es/sort-string-utf.chr |   42 ++++++++++++++++++++++++++
 3 files changed, 44 insertions(+), 2 deletions(-)
 create mode 100644 etc/zebradb/lang_defs/es/sort-string-utf.chr

diff --git a/Makefile.PL b/Makefile.PL
index 22ce8da..d02a944 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -477,7 +477,7 @@ my %valid_config_values = (
   'AUTH_INDEX_MODE' => { 'grs1' => 1, 'dom' => 1 },
   'BIB_INDEX_MODE'  => { 'grs1' => 1, 'dom' => 1 },
   'ZEBRA_MARC_FORMAT' => { 'marc21' => 1, 'normarc' => 1, 'unimarc' => 1 }, # FIXME should generate from contents of distributation
-  'ZEBRA_LANGUAGE'    => { 'en' => 1, 'fr' => 1, 'nb' => 1 }, # FIXME should generate from contents of distribution
+  'ZEBRA_LANGUAGE'    => { 'en' => 1, 'es' => 1, 'fr' => 1, 'nb' => 1 }, # FIXME should generate from contents of distribution
   'ZEBRA_TOKENIZER' => { chr => 1, icu => 1 },
   'RUN_DATABASE_TESTS' => { 'yes' => 1, 'no' => 1 },
   'USE_MEMCACHED'      => { 'yes' => 1, 'no' => 1 },
diff --git a/debian/scripts/koha-create b/debian/scripts/koha-create
index 8211e1c..446c59d 100755
--- a/debian/scripts/koha-create
+++ b/debian/scripts/koha-create
@@ -21,7 +21,7 @@ set -e
 
 usage="Usage: $0 [--create-db|--request-db|--populate-db|--use-db] \
     [--marcflavor marc21|normarc|unimarc] \
-    [--zebralang en|nb|fr] \
+    [--zebralang en|nb|fr|es] \
     [--defaultsql /path/to/some.sql] \
     [--configfile /path/to/config] [--passwdfile /path/to/passwd] \
     [--database database] [--adminuser n] instancename"
diff --git a/etc/zebradb/lang_defs/es/sort-string-utf.chr b/etc/zebradb/lang_defs/es/sort-string-utf.chr
new file mode 100644
index 0000000..caba617
--- /dev/null
+++ b/etc/zebradb/lang_defs/es/sort-string-utf.chr
@@ -0,0 +1,42 @@
+# Koha's Zebra character map file for spanish
+# 
+encoding utf-8
+# Character sort order definition
+lowercase {0-9}{a-y}üzæäøöå
+uppercase {0-9}{A-Y}ÜZÆÄØÖÅ
+
+# Breaking characters
+space {\001-\040}!"#$%&'\()*+,-./:;<=>?@\[\\]^_`\{|}~
+
+# Characters to be considered equivalent for searching purposes.
+equivalent uü
+
+# Supplemental mappings
+map (ä)        a
+map (æ)       æ
+map (ø)      ø
+map (å)       a
+map (ö)        o
+map (Ä)        A
+map (&Aelig;)       Æ
+map (Ø)      Ø
+map (Å)       A
+map (Ö)        O
+
+map âàáäÂÀÂÄ        a
+map êèéëÊÈÉË        e
+map îïíÎÏ           i
+map ôöóÔÖ           o
+map ûùüÛÜÙ          u
+map çÇ              c
+map ñ               n
+
+map (^El\s)         @
+map (^En\s)         @
+map (^La\s)         @
+map (^Los\s)        @
+map (^Las\s)        @
+map (^Un\s)         @
+map (^Unos\s)       @
+map (^Una\s)        @
+map (^Unas\s)       @
-- 
1.7.9.5



More information about the Koha-patches mailing list