Top

Preferences


Preferences are read from a file named prefs in the .j directory. This directory is created automatically by j in the home directory of the current user.

On Windows, from j's point of view, the home directory of the current user normally defaults to C:\. The default is actually the root directory of the first writable drive, excluding drives A and B.

So, by default, your preferences file is ~/.j/prefs on Unix and C:\.j\prefs on Windows.

You can specify a different home directory by starting j with the --home command line option:

    j --home=C:\ArmedBear
In this case your home directory, as far as j is concerned, will be C:\ArmedBear, the .j directory will be C:\ArmedBear\.j, and your preferences file will be C:\ArmedBear\.j\prefs.

The --home command line option is available on Unix as well as Windows.

The preferences file is an ordinary text file which will not exist until you specifically create it. You can open this file in j by simply specifying "prefs" in the Open File dialog or on the command line.

Each entry in the preferences file must be on a line by itself and must be of the form:

    key=value
Comments start with #, and values (but not keys) may contain embedded spaces. String values may be enclosed in double quotes. Property names (keys) are not case-sensitive, so "lineuparglist" and "lineUpArgList" (and, for that matter, "LINEUParglist" and "LiNeUpArGlIsT") are, in effect, the same as "lineupArglist", which is actually the official spelling.

Here's an example for Unix:

  #
  # Unix
  # Path separator is colon.
  #
  sourcePath=/home/peter/j/src/org/armedbear/j:/home/peter/j/src
  includePath=/usr/include:/usr/src/linux/include/linux
  docPath=/home/peter/j/doc

Here's a similar example for Windows:

  #
  # Windows
  # Path separator is semicolon.
  # Note that double backslashes are required!
  #
  sourcePath=C:\\j\\src\\org\\armedbear\\j;C:\\j\\src
  includePath=C:\\Program Files\\DevStudio\\vc\\include
  docPath=C:\\j\\doc

If you use j to edit your preferences file, the running instance of j automatically reloads your preferences when you save the changes to the file, so in most cases it is not necessary to restart j in order to pick up the new settings.

Many properties (notably colors, styles, and properties such as tab width and indent size) may be set globally and overridden on a mode-specific basis. For example:

    color.text=black
    color.comment=gray
    JavaMode.color.text=blue
    JavaMode.color.comment=0 128 0
    indentSize=8
    JavaMode.indentSize=4
Colors are normally specified by their RGB values:
    color.selectionBackground=153 204 255
Common colors may be specified by name:
    color.text=black

The following properties are supported:

adjustAscent

Amount to be added to the default ascent for the current display font (a negative value can be specified).

See also: adjustDescent, adjustLeading

Default value: 0

adjustDescent
Amount to be added to the default descent for the current display font (a negative value can be specified).

See also: adjustAscent, adjustLeading

Default value: 0

adjustLeading
Amount to be added to the default leading for the current display font (a negative value can be specified).

See also: adjustAscent, adjustDescent

Default value: 0

antialias
If true, j uses the antialiasing supported by Java2D for the display of text in the main edit window. This may make the text look better, or it may make the text look worse.

Default value: false

autoIndent
If true, the functions electricCloseAngleBracket, htmlEndTag, htmlInsertTag, htmlBold and xmlElectricSlash automatically re-indent the current line according to context. This property only applies to HTML and XML modes.

Default value: true

autoNewline
If true, the functions electricOpenBrace, electricCloseBrace, electricColon and electricSemi automatically insert a line separator.

Default value: false

autosaveNamedSessions
If true, session information is automatically saved to the active named session file, as necessary.

If false, the information in the named session file is only updated when you explicitly invoke saveSession.

Default value: false

See also: Sessions

autoSelectLine
If true, selectDown and selectUp, when invoked with no selection in effect, select the current line in its entirety, rather than beginning a stream selection at the exact location of the caret.

Default value: true

backupDirectory
Pathname of directory where backup files will be stored.

Default value: None

bcc
Address to which automatic blind copies of outgoing mail messages should be sent.

Default value: None

See also: Mail

browser
Command to invoke your favorite external browser.

Default value: None

browserOpts
Command line options to use when invoking the external browser.

Default value: None

color.background
Default background color.

Default value: None

color.brace
Color for braces in Java, JavaScript, C and C++ files.

Default value: None

color.caret
Color of the caret. If you don't specify a value for this property, the caret will be drawn in the default text color.

Default value: None

color.change
Color for change marks that identify lines containing unsaved changes (i.e. lines that have been modified since the buffer was last saved).

Default value: None

See also: color.savedChange, showChangeMarks, nextChange, previousChange

color.comment
Color for comments.

Default value: None

color.currentLineBackground
Background color for line containing caret.

Default value: None

color.disabled
Color for areas between #if 0 and the corresponding #endif in C and C++ files.

Default value: None

color.function
Color for function names.

Default value: None

color.gutterBorder
Color for the vertical border that separates the line number area (the gutter) from the text in the buffer, if line numbering is enabled.

Default value: None

See also: color.lineNumber, showLineNumbers

color.headerName
Color for header names in List Occurrences and Message buffers.

Default value: None

color.headerValue
Color for header values in List Occurrences and Message buffers.

Default value: None

color.keyword
Color for programming language keywords.

Default value: None

color.lineNumber
Color for line numbers.

Default value: None

See also: color.gutterBorder, showLineNumbers

color.matchingText
Color for text matching the search pattern in List Occurrences buffers.

Default value: None

color.number
Color for numbers.

Default value: None

color.operator
Color for operators (e.g. "==").

Default value: None

color.preprocessor
Color for preprocessor directives in C and C++ files.

Default value: None.

color.savedChange
Color for change marks that identify lines containing saved changes (i.e. lines that were modified in the current session but which have not been modified since the buffer was last saved).

Default value: None

See also: color.change, showChangeMarks, nextChange, previousChange

color.selectionBackground
Background color for selected text.

Default value: None

color.string
Color for quoted strings.

Default value: None

color.text
Default text color.

Default value: None

color.verticalRule
Color for vertical rule.

Default value: None

See also: verticalRule

confirmSend
If true, a confirmation dialog is displayed when you send a mail message. The dialog allows you to change the "From" and "Bcc" addresses and specify which SMTP server to use.

Default value: false

debug
If true, debugging is enabled.

When debugging is enabled, debugging information is logged (in addition to errors), and all output sent to the log file is also sent to System.err, so it can be seen in the console window from which j was started.

Default value: false

See also: Logging

defaultEncoding
Character encoding to use when loading and saving files.

Default value: ISO8859_1

dialogFontName
Name of dialog font (which is used for menus, toolbars, and sidebar components as well as dialogs).

Default value: None

See also: dialogFontSize, fontName, gutterFontName, textFieldFontName

dialogFontSize
Size (in points) of dialog font (which is used for menus, toolbars, and sidebar components as well as dialogs).

Default value: 11

See also: dialogFontName, fontSize, gutterFontSize, textFieldFontSize

DirectoryMode.color.directory
Color for directories in directory buffers.

Default value: None

DirectoryMode.color.marked
Color for marked files in directory buffers.

Default value: None

DirectoryMode.color.symlink
Color for symbolic links in directory buffers.

Default value: None

DirectoryMode.enableTree
If true, a directory tree is displayed in the sidebar in Directory mode.

Default value: true

dirSortDirectoriesFirst
If true, directories appear grouped together at the top of directory buffers, followed by ordinary files.

Default value: !dirUseNativeFormat

dirUseNativeFormat
If true, directory buffers use ls to generate the directory listing. This only works if you have a copy of ls in your path. If false, j's built-in directory format is used (and less information is displayed).

Default value: false for Windows, true for Unix

docPath
Full path of directory containing j's documentation.

Default value: None

emulateBold
If true, j will emulate a bold font by doing a paint trick with the plain font. This is only useful if you're actually using a font that needs this special treatment (such as Lucida Console on Windows).

Default value: false

enableDragText
If true, drag/drop of text is enabled.

Default value: true

enableExperimentalFeatures
If true, j's undocumented and experimental features are enabled.

Default value: false

enableItalics
If false, j won't use an italic font for syntax highlighting even if one is specified by the current theme.

Default value: true

enableTree
If true, a tree representing the document you are editing is displayed in the sidebar in XML mode.

Default value: true

extendEnd
If true, special behavior is triggered when end is invoked repeatedly in quick sequence. See end for details.

Default value: false

extendHome
If true, special behavior is triggered when home is invoked repeatedly in quick sequence. See home for details.

Default value: false

extension
Name of extension class. If the name ends in .class, it is taken to be a filename, rather than a class name, and in that case the file's absolute pathname may be specified. If the absolute pathname is not specified, or if the .class extension is omitted, the class file in question must be in the directory ~/.j (Unix) or C:\.j (Windows). When j starts up, the specified extension class is loaded by j's extension class loader, a new instance of the extension class is created, and its public void run method is invoked.

Default value: None

filenameCompletionsIgnoreCase
If true, filename completions (in the Open File dialog, for example) ignore case on non-Windows platforms. (Filename completions always ignore case on Windows.)

Default value: true

fontName
Name of display font.

Default value: Monospaced

See also: fontSize, dialogFontName, gutterFontName

fontSize
Display font size (in points).

Default value: 12

See also: fontName, dialogFontSize, gutterFontSize

ftpUsePassiveMode
If true, passive mode is used for FTP operations.

Default value: true

globalKeyMap
Pathname of file containing global key map. J will load the global key map from the specified file, rather than using its internal defaults. The specified file must be in the format used by writeGlobalKeyMap.

Default value: None

gutterFontName
Name of font used for line numbers.

Default value: Same as normal display font

See also: gutterFontSize, fontName, dialogFontName, showLineNumbers

gutterFontSize
Font size (in points) used for line numbers.

Default value: Same as normal display font

See also: gutterFontName, fontSize, dialogFontSize, showLineNumbers

highlightBrackets
If true, when the caret is immediately before an opening parenthesis, bracket or brace, or immediately after a closing parenthesis, bracket or brace, the pair of matching parentheses, braces, or brackets is highlighted.

Default value: false

See also: highlightMatchingBracket

highlightMatchingBracket
If true, when the caret is immediately before an opening parenthesis, bracket or brace, or immediately after a closing parenthesis, bracket or brace, the matching parenthesis, brace, or bracket, if any, is highlighted.

Default value: false

See also: highlightBrackets

HtmlMode.attributesRequireQuotes
If true, in HTML mode electricEquals automatically inserts a pair of quotation marks after the '=' following an attribute name, making it possible to enclose attribute values in quotation marks without having to type the quotation marks themselves.

Default value: true

HtmlMode.color.anchor

Default value: None

HtmlMode.color.comment

Default value: None

HtmlMode.color.image

Default value: None

HtmlMode.color.script

Default value: None

HtmlMode.color.table

Default value: None

HtmlMode.color.tableData

Default value: None

HtmlMode.color.tableRow

Default value: None

HtmlMode.color.tag

Default value: None

HtmlMode.fixCase
If true, tag and attribute names in HTML buffers are automatically converted to the preferred case, as specified by HtmlMode.upperCaseTagNames and HtmlMode.upperCaseAttributeNames.

Default value: false

HtmlMode.tags
Pathname of file containing tag customizations for HTML mode. Lines in this file should look like this:
        p=0
This line tells j not to insert an end tag for the <P> tag. If you do want the end tag, use:
        p=1
It's not necessary to use a tag customization file unless you take issue with j's internal defaults. If you do use a tag customization file, it only needs to contain entries for the tags you want to customize.

Default value: None

HtmlMode.upperCaseAttributeNames
If true, upper case is preferred for attribute names in HTML mode; otherwise, lower case is preferred. If HtmlMode.fixCase is true, attribute names are automatically converted to the preferred case as you type them in.

Default value: false

HtmlMode.upperCaseTagNames
If true, upper case is preferred for tag names in HTML mode; otherwise, lower case is preferred. If HtmlMode.fixCase is true, tag names are automatically converted to the preferred case as you type them in.

Default value: true

httpProxy
Host name (or IP address) and port of proxy server to use for HTTP operations.

Example:

    httpProxy=192.168.1.1:3128

Default value: None

imapUseLocalCache
If true, j saves a local copy of each IMAP message that you read. If you reread the message later, j will get it from the cache instead of pulling the same bits over the network again. This is particularly useful if you have a slow network connection.

Each message is saved in a file named after its UID, in a directory specific to the mailbox in question, under ~/.j/mail/imap/cache.

Deleted messages are automatically removed from the cache by mailboxExpunge. The current implementation has no concept of expiration or aging of undeleted messages and imposes no limit on utilization of disk space.

Default value: true

See also: Mail

inbox
Default mailbox for the inbox command.

Default value: None

See also: openMailbox, Mail

includePath
A list of directories to search when opening a .h file whose name is specified without a full path, if the file in question is not found in the current directory. The directories in the list must be separated by the platform-specific path separator character, which is a colon for Unix and a semicolon for Windows.

Default value: None

See also: sourcePath, iList, checkPath, listIncludes

indentLineFixWhitespace
If true, the indentation commands indentLine, indentRegion and indentLineOrRegion entab or detab the indentation of the line or lines in question based upon the setting of the useTabs property even if the existing indentation is otherwise correct.

If false, the indentation is changed only if the non-whitespace text of the line or lines in question does not already start in the correct column.

Default value: false

indentSize

Default value: 4

jdkDocPath
The full pathname of the directory containing the JDK HTML documentation.

See also: jdkHelp

Default value: None

jdkSourcePath
The full pathname of the directory containing the JDK Java class source tree.

See also: source

Default value: None

JList.fixedCellHeight
If > 0, the height in pixels for listbox (JList) cells. This value can be used to override the default behavior if listboxes don't look quite right on your display. (Try 17.)

Default value: 0

keywords
The filename of the custom keyword list for a specific mode. For example:
        LispMode.keywords = /home/peter/lisp.keywords
The keyword list should be an ordinary text file with one keyword per line.

For examples of the format, take a look at the various .keywords files in org/armedbear/j. There is such a file for each mode, containing the default keyword list for that mode.

Note that the mode prefix (e.g. "LispMode.") is required; there is no global keywords file.

Default value: None

lineupArglist
If true, function calls that span multiple lines will be indented like this:
        veryLongFunctionName(arg1,
                             arg2);
If false, the indentation will look like this:
        veryLongFunctionName(arg1,
            arg2);

Default value: true

Log.enabled
If true, logging is enabled.

Default value: true

See also: Logging, debug

Log.maxBackupIndex
The maximum index for backups of j's log file (~/.j/log or C:\.j\log). Since the first backup file is ~/.j/log.0 (or C:\.j\log.0), the number of backups that will be kept is one more than the maximum backup index.

Default value: 0

See also: Logging, Log.maxFileSize

Log.maxFileSize
The maximum size, in bytes, of j's log file (~/.j/log or C:\.j\log).

When the log file exceeds its maximum size, it is rolled over to the file ~/.j/log.0, which in turn is rolled over to ~/.j/log.1, etc.

Default value: 100000

See also: Logging, Log.maxBackupIndex

org.xml.sax.parser
Class name of XML parser to use. For example:
    org.xml.sax.parser=org.apache.xerces.parsers.SAXParser
If this property is not specified, j's built-in XML parser (Ælfred) will be used.

Default value: None

See also: XML Mode

PHPMode.color.var
Color for variable names in PHP mode.

Default value: None

popExpungeDeletedMessagesOnServer
If true, messages are deleted from the POP server when they have been deleted and expunged locally. Otherwise (and by default) deleted messages are expunged from the local message store but left intact on the server. Applies only to POP mailboxes.

Default value: false

See also: Mail

popKeepMessagesOnServer
If false, messages are deleted from the POP server after they have been successfully retrieved. Otherwise (and by default) messages are left on the server when they are retrieved. Applies only to POP mailboxes.

Default value: true

See also: Mail

removeTrailingWhitespace
If true, trailing whitespace (spaces and/or tab characters at the end of a line) is removed before the buffer is saved.

Default value: false

restrictCaret
If true, the caret is restricted to the actual text on the line (including leading and trailing whitespace). right, at the end of the line, advances the caret to column 1 of the following line.

Default value: false

saveInPlace
If true, FTP saves are written directly to the destination file.

If false, FTP saves are first written to a temporary file, which is then renamed to replace the destination file, and finally the file permissions that were in effect before the save are restored using the SITE CHMOD command. This approach is normally safer since the destination file is less likely to be lost or truncated if a network problem prevents successful completion of the save, but it may not preserve all attributes of the destination file.

Default value: false

shellFileName

Default value:

ShellMode.color.input
Color for user input in shell buffers.

Default value: None

ShellMode.color.prompt
Color for prompt in shell buffers.

Default value: None

shellOutputLimit
Maximum number of lines retained in a shell buffer. If zero, no limit is enforced.

Default value: 1000

shellPromptPattern
Regular expression to match prompts in a shell buffer.

Default value: "^[^#$%>]*[#$%>] *|^: *"

sshPromptPattern
Regular expression to match prompts when using ssh.

Default value: "^[^#$%>]*[#$%>] *|^: *"

telnetPromptPattern
Regular expression to match prompts in a telnet buffer.

Default value: "^[^#$%>]*[#$%>] *|^: *"

showChangeMarks
If true, change marks are displayed in the edit window.

Default value: true

See also: color.change, color.savedChange, nextChange, previousChange

showLineNumbers
If true, line numbers are displayed in the edit window.

Default value: false

See also: gutterFontName, gutterFontSize, color.gutterBorder, color.lineNumber

sortBufferList
If true, the sidebar buffer list is kept sorted in case-sensitive alphabetical order.

Default value: false

sourcePath
A list of directories to search when opening any file whose name is specified without a full path, if the file in question is not found in the current directory. For .h files, the source path is searched after the include path. The directories in the list must be separated by the platform-specific path separator character, which is a colon for Unix and a semicolon for Windows.

Default value: None

See also: includePath

stampFormat
Controls the format of the date/time string inserted by the stamp command. The specified pattern is used to construct a SimpleDateFormat object that formats the output string.

Default value: "MMM d yyyy h:mm a"

StatusBar.displayLineCount
If true, the total number of lines in the buffer is displayed in the status bar.

Default value: false

StatusBar.displayLineSeparator
If true, the line separator for the current buffer (LF, CR, or CR+LF) is displayed in the status bar.

Default value: false

ToolBar.isRollover
If true, toolbar buttons have dynamic borders which are only painted when the mouse cursor is over the button. If false, toolbar buttons have normal borders.

Default value: true

ToolBar.showIcons
If true, toolbar buttons contain icons.

Default value: true

ToolBar.showText
If true, toolbar buttons contain text.

Default value: true

style.comment
Style for comments (0 is plain, 1 is bold, 2 is italic).

Default value: None

style.text
Default style (0 is plain, 1 is bold, 2 is italic).

Default value: None

style.directory
Style for directory names in directory buffers (0 is plain, 1 is bold, 2 is italic).

Default value: None

style.function
Style for function names (0 is plain, 1 is bold, 2 is italic).

Default value: None

style.keyword
Style for language keywords (0 is plain, 1 is bold, 2 is italic).

Default value: None

style.marked
Style for marked files in directory buffers (0 is plain, 1 is bold, 2 is italic).

Default value: None

style.prompt
Style for prompt in shell buffers (0 is plain, 1 is bold, 2 is italic).

Default value: None

tabAlwaysIndent
If true, the tab command always re-indents the current line (or multi-line selected region) according to context.

If false, the behavior of the tab command depends on the location of the caret.

If the caret is at the very beginning of the text on the line, or in the whitespace to the left of the text, tab calls indentLine. If the caret is in the midst of the actual text on the line, tab inserts either a single tab character or the equivalent number of spaces, depending on the setting of the useTabs property.

Default value: true

tabWidth
Distance between tab stops, in columns, for display purposes.

Default value: 8

textFieldFontName
Name of font used for textfields in dialogs and the location bar.

Default value: Monospaced

See also: textFieldFontSize, dialogFontName

textFieldFontSize
Size (in points) of font used for textfields in dialogs and the location bar. If this parameter is not specified, the value of dialogFontSize is used.

Default value: None

See also: textFieldFontName, dialogFontSize

theme
Name of theme file. The specified theme file is loaded as an additional preferences file after ~/.j/prefs is loaded. The idea is to gather all the settings that relate to j's look and feel in one place.

Default value: None

See also: themePath

themePath
A list of directories to search for theme files, if the full path of the theme file isn't specified. The directories in the list must be separated by the platform-specific path separator character, which is a colon for Unix and a semicolon for Windows.

Default value: None

See also: theme

useIncrementalFind
If true, the primary default global key mapping for find, which is Ctrl F, is assigned to incrementalFind instead. This setting has no effect if you are using a custom global key map.

Default value: false

useMenuMnemonics
If true, mnemonics are used in the top-level menu. Set this to false if you want to make these keystrokes (Alt F, Alt E, etc.) available for mapping commands instead.

Default value: true

useTabs
If true, actual tab characters are inserted in the buffer. If false, the equivalent number of spaces are inserted instead. Changing the value of this property does not have a retroactive effect on spaces or tab characters that are already in the buffer.

Default value: false

See also: detabRegion, entabRegion

userFullName
The user's full name (e.g. "Enzo Pirelli"), used in constructing the default "From" address for outgoing mail messages.

Default value: None

See also: userMailAddress, Mail

userMailAddress
The user's mail address (e.g. "enzo@hotmail.com"), used in constructing the default "From" address for outgoing mail messages.

Default value: None

See also: userFullName, Mail

verticalRule
If non-zero, this parameter specifies the column for the vertical rule. The vertical rule is a 1-pixel-wide vertical line that is displayed to the right of the specified column as a reminder of the desired location of the right margin. If this parameter is zero, no vertical rule is displayed.

Default value: 0

See also: color.verticalRule

wrapCol
The column where text is wrapped by automatic word wrap and by the commands wrapComment, wrapParagraph and wrapRegion.

Default value: 80

XmlMode.color.attribute

Default value: None

XmlMode.color.comment

Default value: None

XmlMode.color.delimiter

Default value: None

XmlMode.color.namespace

Default value: None

XmlMode.color.tag

Default value: None

XmlMode.fixCase
If true, tag and attribute names in XML mode are automatically converted to the preferred case, as specified by XmlMode.upperCaseTagNames and XmlMode.upperCaseAttributeNames.

Default value: false

XmlMode.upperCaseAttributeNames
If true, upper case is preferred for attribute names in XML mode; otherwise, lower case is preferred. If XmlMode.fixCase is true, attribute names are automatically converted to the preferred case as you type them in.

Default value: false

XmlMode.upperCaseTagNames
If true, upper case is preferred for tag names in XML mode; otherwise, lower case is preferred. If XmlMode.fixCase is true, tag names are automatically converted to the preferred case as you type them in.

Default value: true