Customizing QuickSharp

The QuickSharp IDE is intended as a highly personalized development environment and can be enhanced and extended in various ways. Major customizations can be made by developing plugins to add new features but on a smaller scale some personalization can be achieved within the existing IDE.

Local application data

To use the customization options presented here you will need to locate the QuickSharp local application data folder. For Windows XP users this will be:

C:\Documents and Settings\<username>\Local Settings\Application Data\QuickSharp

For Vista and Windows 7:

C:\Users\<username>\AppData\Local\QuickSharp

Substitute the appropriate system drive letter if you are not using 'C:'.

Customizing the editor

QuickSharp features a powerful and flexible text editor which may be customized at two levels. The simplest level is to use the built-in configuration options available in the Text Editor section of the QuickSharp options editor. This allows the basic behaviour of the editor to be controlled, from tab behaviour to code-folding styles and fonts. After making changes here you will need to reopen any editing windows to see them take effect.

Each language supported by QuickSharp has a built-in configuration file which provides the base settings used by the editor. These files control everything from tab and folding behaviour to colours and even language features such as keywords. The options editor allows the most common settings to be defined and where necessary will override the configuration files to maintain consistent settings across all language types. To prevent this uncheck the 'Allow these settings to override configuration files' box in the Editor Settings option page.

Using custom configuration files

The built-in configuration files can be supplemented by custom 'user' configuration files which supplement or override the built-in configuration for each supported language. To see this in action locate the 'Scintilla' directory in the QuickSharp local application data folder. All user configuration files must be placed in this directory for QuickSharp to find them. Now download this sample configuration, unzip it and copy the files to the Scintilla directory. Run QuickSharp and open a file to see the new configuration.

These files provide the editor configuration for the file types registered with QuickSharp. in particular the 'default.xml' provides settings for most file types; the remaining files provide overrides for specialized files such as html. If you look at the contents of 'default.xml' you will see this directive:

<Language Name="default">

This defines the file type for which the configuration will take effect; in this case default refers to all types but more specific configurations can be used by specifying a document type such as 'cs' or 'vb'. In these cases the configuration will only be used for documents of those types. It is possible to combine configuration files so that the 'default.xml' file defines the base configuration with additional language-specific files providing extra options for those file types only.

Customizing the workspace

The workspace window can be customized by adding a 'wallpaper'-style background image. To do this you will need an image of your choice formatted as a bitmap (.bmp) file named 'WorkspaceBackground.bmp'.

To install it locate the local application data folder and create a sub folder named 'Themes'. Place the image file in this folder and restart QuickSharp. The image should now occupy the background of the workspace view.

By default the image will be shown in the top left corner of the workspace and cover the area corresponding to its size. To tile an image over the full workspace window include the work 'tile' in the file name after the 'WorkspaceBackground' prefix, for example 'WorkspaceBackground-tile.bmp'.

A darker image will result in the workspace text becoming difficult to see. To overcome this add the word 'dark' to the file name; the workspace text will now be rendered in white allowing it to stand out against the dark background.

To recap: QuickSharp will attempt to use the first file it finds in the Themes folder conforming to the case-insensitive file pattern 'WorkspaceBackground*.bmp'. Any text may be included in the file name after the 'WorkspaceBackground' prefix, if this contains 'tile' or 'dark' the wallpaper will be displayed as explained above.

Customizing the output window

The list view of the output window can also be customized with a 'wallpaper' image. The rules are exactly the same as for the workspace except for the file name pattern which is 'OutputBackground*.bmp'.