- Documentation
- Reference manual
- Overview
- Getting started quickly
- The user's initialisation file
- Initialisation files and goals
- Command line options
- UI Themes
- GNU Emacs Interface
- Online Help
- Command line history
- Reuse of top-level bindings
- Overview of the Debugger
- Compilation
- Environment Control (Prolog flags)
- An overview of hook predicates
- Automatic loading of libraries
- Packs: community add-ons
- The SWI-Prolog syntax
- Rational trees (cyclic terms)
- Just-in-time clause indexing
- Wide character support
- System limits
- SWI-Prolog and 64-bit machines
- Binary compatibility
- Overview
- Packages
- Reference manual
2.2 The user's initialisation file
After
the system initialisation, the system consults (see consult/1)
the user's init file. This file is searched using
absolute_file_name/3
using the path alias (see file_search_path/2)
app_config
. This is a directory named swi-prolog
below the OS default name for placing application configuration data:
- On Windows, the CSIDL folder
CSIDL_APPDATA
, typicallyC:\Documents and Settings\username\Application Data
. - If the environment variable
XDG_DATA_HOME
is set, use this. This follows the free desktop standard. - The expansion of
/.config
.
The directory can be found using this call:
?- absolute_file_name(app_config(.), Dir, [file_type(directory)]). Dir = '/home/jan/.config/swi-prolog'.
After the first startup file is found it is loaded and Prolog stops
looking for further startup files. The name of the startup file can be
changed with the‘-f file’option.
If File denotes an absolute path, this file is loaded,
otherwise the file is searched for using the same conventions as for the
default startup file. Finally, if file is
none
, no file is loaded.
The installation provides a file customize/init.pl
with
(commented) commands that are often used to customize the behaviour of
Prolog, such as interfacing to the editor, color selection or history
parameters. Many of the development tools provide menu entries for
editing the startup file and starting a fresh startup file from the
system skeleton.
See also the -s (script) and -F (system-wide initialisation) in section 2.4 and section 2.3.