$user-path(5)
[Home]
[Commands]
[Variables]
[Macro-Dev]
[Glossary]
NAME
SYNOPSIS
DESCRIPTION
$user-path is the name of the MicroEmacs user directory where user configuration files such as
$user-name.emf,
$user-name.erf and personal spelling dictionaries are stored. This is a single directory given as an absolute path and always with a terminating directory separator character '/'.
The value of the variable is the first suitable directory located using the following rules in order:
- The environment variable
$MEUSERPATH(5) is defined, $user-path is set to this value. If the environment $MEUSERPATH is defined without a trailing '/' then it is automatically added. Note that the directory does not have to exist, but unexpected errors may occur if it does not.
- The environment variable
$MEPATH(5) is defined, $user-path is set to the first directory within the $MEPATH variable. Again, this path may not exist but may cause unexpected problems if it doesn't.
- The environment variable
$MEINSTALLPATH(5) is defined then
$user-name/ is appended to each directory given within the $MEINSTALLPATH and if the resultant directory exists, $user-path is set to this location. In this case, the user path must exist for it to be used.
- A system dependent user configuration/application data directory is checked for and used if it exists, this directory is defined as follows:
UNIX: .config/jasspa/$user-name/ is appended to the user's home directory, as defined in the /etc/passwd entry, i.e. $HOME/.config/jasspa/$user-name/, see variable
$home(5).
Windows: jasspa/$user-name/ is appended to the user's application data directory, i.e. $APPDATA/jasspa/$user-name/.
MS-DOS: jasspa/$user-name/ is appended to the
$home(5) directory, typically C:/jasspa/$user-name/.
- If the executable is located within a bin/ or bin/<plaform>/ sub-directory, the sub-directory is removed and $user-name/ appended, if the resultant directory exists, $user-path is set to this location. In this case, the user path must exist for it to be used.
- If no configuration paths, i.e. macros/ directory, have been located by this point, then any built in search paths may be use in the same way as $MEINSTALLPATH above, currently only UNIX is built with a single search path of /usr/local/share/jasspa.
If a suitable path was not located $user-path is set to a special value of tfs://new-user/ and MicroEmacs runs a new-user command to setup the environment for you. This special path does not exist and is not writeable, ensuring that MicroEmacs does not create user configuration files in unexpected places. While set to this, macros such as
user-setup(3) will warn you that any configuration changes cannot be saved.
It is therefore strongly recommended you run this new-user command, when prompted, so that all your settings can be located somewhere that is easy for MicroEmacs to find next time.
NOTES
The user should not attempt to write to $user-path, the variable should be controlled through the aforementioned techniques.
SEE ALSO
me(1),
$home(5),
$progname(5)
$search-path(5),
$user-name(5),
$MEINSTALLPATH(5),
$MENAME(5),
$MEPATH(5),
$MEUSERPATH(5),
user-setup(3),
emf(8),
erf(8).
(c) Copyright JASSPA 2025
Last Modified: 2025/04/06
Generated On: 2025/09/29