Generic Function | Package: ide | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version

## save-options-to-user-specific-file

Arguments: configuration

Returns or sets with setf the value of the save-options-to-user-specific-file configuration property. The current development configuration is the value of `(configuration *ide-system*)`. (See configuration and `*ide-system*`.)

This configuration option determines whether all IDE configuration options are always saved into a global prefs.cl file or into a separate file for each user. The latter may be useful when multiple users use the same lisp installation, so that each user may use individualized options.

If `nil`, then options are always saved to a file named prefs.cl in the main Allegro directory.

If the value of the option is true (starting in release 8.0 the default), then the path of the file that is saved depends on who is currently logged in, and whether a unique home directory exists for this user. If no official home directory is found for the user who is currently logged in, or the home directory is found to be the root directory on the C drive, then it is assumed that the current user does not have a unique home directory, and options are saved to a file named prefs-[username].cl in the main Allegro directory, where [username] is the current user's login name. If a home directory is found and is not the root directory on the C drive, then options are saved to a file with a name similar to allegro-prefs-8-1.cl in this home directory; this would allow the file to be saved even if write protection is placed on the Allegro directory. The version number is included in the file name to avoid loading an options file from a newer version of Allegro into an older version, which could break on newer options. The word express will also be added to the end of the file name in the Express version. The actual pathname that will be used can be found by calling options-path.

The heuristic described above is intended to handle typical needs for user-specific options files or for avoiding a write-protected Allegro directory. If that default behavior is not adequate, then you can specify an explicit path by setting up an environment variable called "allegro_prefs" and whose value is the complete path namestring for the options file. This variable will take precedence in all cases. Example value: h:/important-files/allegro-prefs.cl. The path's directory should already exist. Environment variables are normally set up in the System area of the Windows Control Panel. The string case of environment variables is not important to Windows but Allegro CL expects lowercase so the variable name, allegro_prefs, must be lowercase. Its value may use either forward or backward slashes.

When starting the IDE, options are always loaded from the user-specific location if the file exists, and otherwise from prefs.cl in the Allegro directory if that file exists. The reason is that options have not yet been loaded in order to determine where they were most recently saved. Therefore, to revert from using user-specific options files to using the global prefs.cl file, you need to delete the user-specific files that have been saved. Except for this, the value of this option will be saved with the rest of the options and will continue to be used in subsequent IDE sessions after being specified once.

On Linux/Unix, the home directory is the value of the HOME environment variable as usual. On Windows, the home directory is considered to be the user's My Documents directory if it exists, or else the Personal directory. These directories are found by calling special-windows-directory with the keywords `:my-documents` and `:personal`.

Configuration options are typically saved when exiting the IDE (see save-options-on-exit), or by invoking the Tools | Save Options Now menu command.

Copyright (c) 1998-2019, Franz Inc. Oakland, CA., USA. All rights reserved.
This page was not revised from the 8.2 page.
Created 2012.5.30.

|  | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version