Hierarchy < viivi.vcnf/.viivirc < System Files < Viivi's Cell < Entrance
Multiple configuration files can exist at the same time in different directories.
Only the configuration file in the Viivi's system directory
${VIIVI_HOME}viivi.vcnf
must be always existing,
but others need not.
The configuration files will be read sequentially from top to bottom in the following list.
The contents being read later override those being read earlier.
Therefore, the configuration file closer to the bottom of the list
has a higher priority than the file closer to the top of the list,
for the initial state of Viivi.
0. ${VIIVI_HOME}viivi.vcnf (indispensable, copyright is uneditable)
1. ${HOME}/.viivirc} (optional, editable)
2. ${HOME}/viivi.vcnf} (optional, editable)
3. ${PWD}/.viivirc} (optional, editable)
4. ${PWD}/viivi.vcnf} (optional, editable)
${VIIVI_HOME}
is a string appending a path-separator to the path for the Viivi system directory
(e.g.,
/home/ilma/ and D:\Users\miko\
,
not /home/ilma and D:\Users\miko
).${HOME}
and
${PWD}
are the user's home directory and the directory where the user boots Viivi,
respectively.
The configuration file 0. ${VIIVI_HOME}viivi.vcnf
must be used as it is distributed.
The configuration files from 1. to 4. can be created by the user
according to the user's needs.
Strictly speaking,
the configuration files from 0. to 4. are read sequentially
JUST BEFORE the Viivi system boots up.
After the Viivi system boots,
the argument-commands are sequentially processed.
5a. Argument-Commands (optional)
At this time, the user can provide an arbitrary normal Scheme source file
as a library file in the argument-command sequence,
using the argument-command
-L
before the Scheme source filename.
To provide multiple library files,
each library file requires the argument-command
-L
before its filename.
5b. "the argument-command -L"+"a normal Scheme source file" (optional, editable)
The user can customize Viivi flexibly, by putting the default settings in the configuration file with lower priority (close to the top of the list), and putting the settings for individual user and project in the configuration file with higher priority (close to the bottom of the list).
Except for the uneditable configuration file
0. ${VIIVI_HOME}viivi.vcnf
,
there are two editable configuration files
viivi.vcnf
and
.viivirc
,
in the home directory
${HOME}
and in the current working directory
${PWD}
,
respectively.
The file viivi.vcnf
has
higher priority than the file
.viivirc
.
And hence these two configuration files can be used in different ways
as follows:
viivi.vcnf
.
.viivirc
.
Distinguishing the two configuration files in this way,
the user can manage
the default settings in the rarely-edited configuration file
.viivirc
and the new settings in the frequently-edited configuration file
viivi.vcnf
.
Hierarchy < viivi.vcnf/.viivirc < System Files < Viivi's Cell < Entrance
Exhibited on 2022/03/02
Copyright(C) 2003-2022 ilma <ilma@viivi.io> All rights reserved.