diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2023-03-01 13:22:03 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2023-03-01 13:22:03 +0100 |
commit | 5e60dee2915902be21cf2bd22df00f8256e2bca3 (patch) | |
tree | 4f34c0412fa8aa83812ea6ffe48c48ef7fe893e2 /postgres/french | |
parent | 6cf86374a48ab080f5dfd91ea53cd090a783744e (diff) | |
download | Ishtar-5e60dee2915902be21cf2bd22df00f8256e2bca3.tar.bz2 Ishtar-5e60dee2915902be21cf2bd22df00f8256e2bca3.zip |
Free text search: add french_archeo thesaurus config
Diffstat (limited to 'postgres/french')
-rw-r--r-- | postgres/french/create.sql | 23 | ||||
-rwxr-xr-x | postgres/french/install_dict.sh | 32 | ||||
-rw-r--r-- | postgres/french/thesaurus_french_archeo.ths | 11 |
3 files changed, 66 insertions, 0 deletions
diff --git a/postgres/french/create.sql b/postgres/french/create.sql new file mode 100644 index 000000000..4f1b9ee0e --- /dev/null +++ b/postgres/french/create.sql @@ -0,0 +1,23 @@ +DROP TEXT SEARCH CONFIGURATION IF EXISTS french_archeo; +DROP TEXT SEARCH DICTIONARY IF EXISTS thesaurus_french_archeo; + + +CREATE TEXT SEARCH CONFIGURATION french_archeo ( + COPY = french +); + +ALTER TEXT SEARCH CONFIGURATION french_archeo + DROP MAPPING FOR hword_asciipart; +ALTER TEXT SEARCH CONFIGURATION french_archeo + DROP MAPPING FOR hword_part; + + +CREATE TEXT SEARCH DICTIONARY thesaurus_french_archeo ( + TEMPLATE = thesaurus, + DictFile = thesaurus_french_archeo, + Dictionary = pg_catalog.simple +); + +ALTER TEXT SEARCH CONFIGURATION french_archeo + ALTER MAPPING FOR asciihword, asciiword, hword, word + WITH thesaurus_french_archeo, french_stem; diff --git a/postgres/french/install_dict.sh b/postgres/french/install_dict.sh new file mode 100755 index 000000000..d8abfa098 --- /dev/null +++ b/postgres/french/install_dict.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +set -e + +MSG="install_dict.sh dbname [PG_SEARCH_DIR_PATH]" +if [ $# -eq 0 ]; then + echo $MSG + exit 1 +fi + +DB=$1 +PG_DIR=/usr/share/postgresql/13/ +PG_SEARCH_DIR="$PG_DIR"tsearch_data +if [ $# -eq 2 ]; then + PG_SEARCH_DIR=$2 +fi + +rm -f $PG_SEARCH_DIR/thesaurus_french_archeo.ths +ln -s `pwd`/thesaurus_french_archeo.ths $PG_SEARCH_DIR/ + +systemctl restart postgresql +touch /tmp/install_error +sudo -u postgres psql -d $1 -f create.sql > /dev/null 2> /tmp/install_error + +if grep ERR /tmp/install_error; then + exit 1; +fi + +echo '"french_archeo" dictionnary successfully installed for '$DB +echo 'Change your django local_settings.py file to add the line:' +echo 'ISHTAR_SEARCH_LANGUAGE = "french_archeo"' + diff --git a/postgres/french/thesaurus_french_archeo.ths b/postgres/french/thesaurus_french_archeo.ths new file mode 100644 index 000000000..0a7da923f --- /dev/null +++ b/postgres/french/thesaurus_french_archeo.ths @@ -0,0 +1,11 @@ +menhir : menh +menhirs : menh +terre: terre +terrasse : terrasse +terrain : terrain +terrains : terrain +granulo : granulo +collective : collective +collectives : collective +collection : collection +collections : collection |