Razen is configured with JSON config files stored in the conf/ directory of the distribution (Contents/Resouces/conf/ in the Mac .app). These config files are overriden by files of the same name in your user config directory (~/.razen/ or \Users\<username> on Windows).

Most of the configuration can be acheived through the preferences UI, which in turn updates files in the user config directory.


Keyboard shortcuts are configured in the keys.json file, which supports basic action shortcuts, and python function binding (via the Python API).

Display colours are configured in the layers.json file.

Default tool option settings are configured in the tool.json file.

Custom User Functions

The command prompt environment is initialised by evaluting all the Python files in the cmd conf subdirectory. Custom user functions can be implemented here using the Python API.

For example the view_pan function is defined as follows:

def view_pan(dx, dy):
  """ pan the current view """
  ui.currentTab().currentView().pan(dx, dy)

Project and Library Locations

By default projects and libraries will be stored in the projects and libraries directories of the distribution. These can be configured in the config file. Mercurial server username, password and email (for commit messages) can also be configured here.