LispPad

Lightweight Scheme Development Tool for macOS

Customizing preferences

Preferences of LispPad are defined on three different tabs for configuring the Lisp environment, the console with the read-eval-print loop, as well as the built-in text editor.

Environment

Every time a new session is created, a prelude is being loaded into the interpreter and executed. The prelude is a Scheme program (a .scm file) which is used to set up a session. The "Prelude" setting on the environment tab can be set to two different values:

  • Default loads the default prelude of LispKit
  • Custom loads the prelude from a custom file

Libraries referenced from LispKit code are looked up from a set of directories. The "Libraries" setting can be set to two different values:

  • Internal only finds library definitions automatically that come natively installed with LispPad.
  • Custom allows the user to define a root directory from which library definitons are looked up. This directory can be located outside of the application sandbox. If libraries are not found there, they are being looked up in the set of natively installed libraries. This mechanism allows users to override default libraries by providing alternative implementations in the custom library directory.
Stacks Image 9

Console

LispPad allows the user to configure the following aspects of sessions:

  • Console font: The font used by the read-eval-print loop in the console of a session.
  • Highlight matching parenthesis: Shows matching parenthesis when entering code in the read-eval-print loop in the console of a session.
  • Require balanced parenthesis: When this option is set, the read-eval-print loop does not allow users to submit unbalanced code.
  • Highlight syntax: When this option is set, syntax will be highlighted when entering code in the read-eval-print loop in the console of a session.
  • History: The number of read-eval-print loop inputs remembered in a session. Users can switch between those by using the key combinations <option>+<cursor up> and <option>+<cursor down>.
  • Prompt: Defines the prompt used for indicating input in the read-eval-print loop.
Stacks Image 11

Editor

LispPad allows the user to configure the following aspects of editor windows:

  • Editor font: The font used in editor windows.
  • Highlight current line: When set, the line in which text is being edited is highlighted in yellow.
  • Show page guide: When set, each text editor window will show a page guide at a certain text column specified by the setting "Page guide at column".
  • Show line numbers: When set, each text editor window will display line numbers at left side of the text.
  • Highlight matching parenthesis: When set, matching parenthesis are highlighted while code is being edited.
  • Highlight syntax: When this option is set, syntax will be highlighted while code is being edited.
  • Automatic indentation: When set, code is automatically indented in each editor window.
  • Tab size: Size of a single tab expressed in number of characters.
Stacks Image 13