Search engine configuration file

Idea of ini-file

There are a number of rarely changing options for search engine. It would be very boring to issue these options every time the search engine start. For this reason these options are stored in a text file  faind.ini (the name of this file can be changed by the developers who use the search engine components). Idea of ini-file is familiar for GNU/Linux user. Under MS Windows it is more natural to store the program parameters in the system registry, but it is highly platform-dependent solution so it is unacceptable.

There is another advantage of the storing the configuration parameters in the text file: you can use the search engine without a need to install it.

Some parameters can be redefined in command line, so the ini file stores default values for them.

You can change this file in a simple text editor (e.g. notepad), although Integra personal search system allows to edit it via GUI dialog.

INI file location

When started the search engine looks for ini-file in some places in the following order:

1. the current folder;

2. the folder \Application Data\Faind in the current user's home folder (for MS Windows) or /Faind (for Linux);

3. the program executable file folder (can differ from case # 1).

The last case is typical. The configuration file faind.ini is copied into the program folder during the installation. The first and second variants are useful when the current user does not have the privileges to edit files in program folder but needs to change some flags. In this situation the user copies the configuration file into his/her home folder and changes it. The search engine finds that file and doesn't read an original ini file.

Developers who apply the search engine components, can use an arbitrary name for the configuration name.

The command line option

-ini filepath

can be used to explicitly set the configuration filename.


This is a text file (ASCII encoding) with simple format. All options are grouped in sections. Each section begins with header - arbitrary name in []. Options are stored as pairs

name = value

Each options is described right in the ini-file. Two slashes // start the commentary text.

The order of section and variables are of no importance. Two sections may contain tow variables with the same name - these variables are different.


Interface messages language and console codepage

Interface language for FAIND utility is defined by the variable lang in section ui.


lang = "ru" // default language for conversation with user;
          // "en" for English,
          // "ru" for Russian

Change it to "en" for English messages.


Read more about the codepages.


User's home directory: tilda character ~

Tilda character ~ is used as a placeholder for user's home directory. For example, faind.ini may contain something like this:


// Directory to store index data base. ~ is a placeholder for user's home dir
storage = "~\\Application Data\\Faind\\Index"

Variable storage contains a path to index database folder. Let it be the Someone user logged in. In MS Windows each user has got its own home directory (it is true for MS Windows NT/2k/XP/2k3). For Someone the home directory may be "c:\Documents and Settings\Someone". Tilde is substituted with this string and finally the index database folder is c:\Documents and Settings\Someone\Application Data\Faind\Index.

Please pay attention to the doubling of '\' symbol. The reason is that the string are parsed according the C/C++ language rules. Symbol '\' is used as an escape character - it is followed by another character to create nonprintable symbol. Two characters '\' are interpreted as a single '\'.

Program folder

Characters '%exe%\' in the filenames stand for the path to the folder with program executable file. In the most cases under MS Windows it is "c:\program files\integra". Placing the dictionary files (like diction.bin and others) in this folder is optimal because these files are common for all users.

Dictionary languages

The variable languages in [dictionary] can be used to set the list of available language morphology analysers. This variable is set to * by default, so all analysers are loaded. This significantly increases the memory consumptions.

Possible language names: en - English, ru - Russian, fr - French, es - Spanish. Besides, some special meta names are available: all or * - all languages, user - current user's language.

Proxy server configuration

Web crawler needs the proxy server configuration to be defined. The section internet contains two parameters of the proxy server: 'proxy' defines the address of the proxy server (ip and port), 'proxy_bypass' defines the list of hosts to be connected directly not using proxy.

Using Integra to edit the configuration

There is another way to manipulate the records in the configuration file: GUI version of the search engine has a configuration dialog window.

Additional information

Embeddable search engine API

Search engine commands

   Mental Computing 2009  home  rss  email  icq  download

changed 18-Apr-10