Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Italian full-text search dictionary and configuration for PostgreSQL

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 dict
Octocat-spinner-32 site
Octocat-spinner-32 src
Octocat-spinner-32 .gitignore
Octocat-spinner-32 CHANGES
Octocat-spinner-32 COPYING
Octocat-spinner-32 LEGGIMI.rst
Octocat-spinner-32 Makefile
Octocat-spinner-32 README.rst
Octocat-spinner-32 VERSION
README.rst

Italian Full-Text Search Dictionary

Author: Daniele Varrazzo
Contact: piro (at) develer.com
Organization: Develer S.r.l.
Copyright: 2001, 2002 Gianluca Turconi
Copyright: 2002, 2003, 2004 Gianluca Turconi and Davide Prina
Copyright: 2004, 2005, 2006 Davide Prina
Copyright: 2007-2011 Daniele Varrazzo

Abstract

This package provides an ISpell dictionary to perform high quality full text search in Italian documents using the PostgreSQL database.

Using the provided dictionary, search operations in Italian documents can keep into account morphological variations of Italian words, such as verb conjugations.

Package description

This package contains an ISpell dictionary useful to perfrom high quality full-text searches in Italian language documents. The package also contains installation and configuration files.

Prerequisites

This package can be used to install and configure the ISpell dictionary in PostgreSQL 8.3 and later.

Package installation

Use the command:

sudo make install

to install the dictionary files in the target directories. The command will use the first pg_config found on the PATH to read the database configuration: to install the dictionary in a different database you can use the PG_CONFIG variable:

sudo make PG_CONFIG=/path/to/pg_config install

With PostgreSQL versions older than 9.1 you can install the dictionary in a database with the command:

psql -f $(pg_config --sharedir)/italian_fts/italian_fts.sql dbname

The same directory also contains an uninstall script.

With PostgreSQL 9.1 you can use the extensions management commands to install the dictionary:

CREATE EXTENSION italian_fts;

Dictionary usage

The extension creates a text search dictionary italian_ispell and a text search configuration also called italian_ispell using the dictionary as a default and falling back to the Snowball stemmer italian_stem (installed by default by PostgreSQL) when a word is not found. Here is a result of the process of a sample text with the italian_ispell configuration:

=# select token, dictionary, lexemes
    from ts_debug('italian_ispell', $$
        Né più mai toccherò le sacre sponde
        ove il mio corpo fanciulletto giacque,
        Zacinto mia, che te specchi nell'onde
        del greco mar da cui vergine nacque
        ...
    $$)
    where array_upper(lexemes,1) <> 0;

    token     |   dictionary   |    lexemes
--------------+----------------+----------------
 più          | italian_ispell | {più}
 mai          | italian_ispell | {mai}
 toccherò     | italian_ispell | {toccare}
 sacre        | italian_ispell | {sacro}
 sponde       | italian_ispell | {sponda}
 ove          | italian_ispell | {ove}
 corpo        | italian_ispell | {corpo}
 fanciulletto | italian_ispell | {fanciulletto}
 giacque      | italian_ispell | {giacere}
 Zacinto      | italian_stem   | {zacint}
 specchi      | italian_ispell | {specchiare}
 onde         | italian_ispell | {onda}
 greco        | italian_ispell | {greco}
 mar          | italian_ispell | {mare}
 vergine      | italian_ispell | {vergine}
 nacque       | italian_ispell | {nascere}
(16 rows)

For general usage of the full-text search features in PostgreSQL please refer to the database documentation.

Something went wrong with that request. Please try again.