- Documentation
- Reference manual
- Overview
- Getting started quickly
- The user's initialisation file
- Initialisation files and goals
- Command line options
- 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
- Garbage Collection
- The SWI-Prolog syntax
- Rational trees (cyclic terms)
- Just-in-time clause indexing
- Wide character support
- System limits
- SWI-Prolog and 64-bit machines
 
 
- Overview
- Packages
 
- Reference manual
2.2 The user's initialisation file
After 
the system initialisation, the system consults (see
consult/1) 
the user's startup file. The basename of this file follows conventions 
of the operating system. On MS-Windows, it is the file
swipl.ini and on Unix systems .swiplrc. The 
file is searched using the file_search_path/2 
clauses for
user_profile.8Older 
versions first searched in the current working directory. This feature 
has been removed for security reasons. Users can implement loading a 
setup file from the working directory in their global preference file. 
The table below shows the default value for this search path. The phrase <appdata> 
refers to the Windows CSIDL name for the folder. The actual name depends 
on the Windows language. English versions typically use ApplicationData. 
See also win_folder/2
| Unix | Windows | |
| home |  | <appdata>/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/dotswiplrc 
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.