IDE Window: Environment Options
Max recent files
The maximum number of items in the open recent file menu.
Max recent project files
The maximum number of items in the open recent project menu.
Open last project on start
Enable to automatically reopen the last edited project on IDE start
Show compile dialog
If enabled, you will see a compile 'progress' dialog appear while your project is being compiled. It will also show a summary of the total lines compiled, number of hints, warnings etc.
Set here the directory of the Lazarus source directory. The Lazarus source directory contains directories like 'ide', 'debugger', 'converter', 'components' and 'lcl'. It is used to find sources (.pas) of the LCL and components.
This must be the full filename of the used compiler. For example /usr/bin/ppc386 under linux or /usr/bin/ppcppc under Mac OS X or C:\pp\ppc386.exe under windows. The filename depends on how the compiler was installed.
FPC Source directory
Set here the directory of the Free Pascal source directory. The source directory contains directories like 'compiler', 'packages', 'rtl' and 'fcl'. Typically under Linux/*BSD/MacOSX this is found at /usr/share/fpcsrc/.
Note: Do not confuse this with the FPC unit/library directory (.../units/i386-win32/), that only contains the compiled .ppu files and has a totally different structure.
Set here the filename of the make tool. Leave blank to let the IDE use the default. The make tool is a utility used by many projects to help compiling big sources and is therefore installed on almost all Linux and Mac OS X systems by default. The Lazarus Windows installer installs a version too. Under BSD use gmake. See here for more information make.
Delphi installs a make executable too, which is incompatible with gnu make and which cannot be used for Lazarus. Don't leave this option blank if the make from Delphi os on the path.
Directory for building test projects
When a newly created project is not yet saved and you build it, the IDE saves the whole project into this directory and builds it there.
The language of all text of the IDE. You should restart the IDE to make sure all text is reloaded.
- Ask before saving project's session - When the project is closed the IDE asks to save changes. If only the session data (i.e. cursor positions and what files are open in the source editor) is changed and the session is saved to a separate lps file (not in the lpi file), then the IDE will not ask.
Load or save the environment options to/from a file.
Check changes on disk with loading
When the IDE checks if some editor files changed on disk it normally only compares the file date. To also load the file and compare the content, enable this option.
Hints for component palette
Show hints, when mouse is over the component palette.
Show hints, when mouse is over the buttons of the main IDE bar window. (e.g. buttons for open, save)
Double click on message jumps
When enabled you must double click on a line in the message window (e.g. compiler messages). When disabled a single click is enough.
Minimize all on minimize main
Not yet implemented. Some widget sets do this automatically.
Hide IDE windows on run
When running the project, all IDE windows are hidden and restored when program stops.
Hide message icons
Normally the Messages window prepends an icon to each message so you can quickly see what type it has or if the IDE can quick fix the message. If you don't want the icons, enable this option.
IDE title starts with project name
Normally the IDE uses as its caption in the taskbar (the panel at top or the bottom of your screen) Lazarus IDE vX.Y.Z - project1. Most taskbars are too short and you can only see Lazarus .... Enable this to show the project name first. This can be useful when starting multiple instances of the IDE to work on several different projects at the same time. Since 0.9.29.
Fine tune the positions of the IDE windows.
- Show grid - show a grid of points on each designer window. All client areas, which accept controls have this grid.
- Show border spacing - Show rectangles around each control showing the borderspacing. This is quite slow.
- Snap to grid - When moving or resizing components on the designer round the movement to the nearest grid point.
- Grid Size X - The step width in pixels for the grid.
- Grid Size Y - The step height in pixels for the grid.
- Grid color - the color of the grid points
- Selection - the color of a selection rubber band: Left click on the designer form client area, then drag the mouse keeping pressed. Release the left button and all intersecting controls are selected. Pressing shift to add/remove from/to the current selection.
- Creation - the color of a creation rubber band. Select a control in the component palette. Then drag a rectangle on a designer form. The new control will be created with this size.
- Show component caption - Show hints of the component name and classname, when mouse is over a control on a designer form.
- Show editor hints - Show hints of the component position and size, when mouse is over a control on a designer form.
- Open designer on open unit - Automatically open the designer form, when opening a pascal unit file. Useful for newbies, so enabled on default.
- Right click selects - right click selects and then shows the popup menu.
- Grabber color - the color of the 8 small boxes used to resize a selection of controls.
- Marker color - the color of the 4 small boxes on each control in a multi selection.
- Reduce designer painting - the IDE will use smart InvaldidateRect calls instead of full redraws. This is faster, but does not work with all widgets of all widgetsets. Use this to reduce artefacts on the designer forms.
The guide lines are the lines, showing to which controls the current selection is currently aligned.
- Show Guide lines - paint guide lines
- Snap to Guide lines - snap to nearest guide line during moving/resizing of controls on the designer form.
- color for left, top - the color for left, top aligned guide lines.
- color for right, bottom - the color for right, bottom aligned guide lines.
Colors for various property items.
- Item Height - the default height of each property row. Not all widgetsets support resizing the edit and comboboxes. For example the win32 interface does not allow setting the combobox heights.
- Show Hints in object Inspector - show hints, when moving the mouse over a property row.
The IDE can create backup files each time it saves a file and an old file exists already.
The options allow to setup the extension and place of backup files.
Hint: Normally it is better to use a version control system like svn or cvs for backups and to disable backups here.
Default pascal extension
Whenever the IDE creates a pascal unit, it uses this extension as default. The .pas is typical for Delphi users, while .pp is often used for FPC sources and .p is known on Mac computers.
Note: Custom projects can create pascal sources with defined extension. The IDE will not override this.
Ambiguous file action
Before compile the IDE checks if there are ambiguous files. For example it checks if a unit exists twice in the unit path. The compiler will use the first it finds, which might not the intended thing and this gives strange errors. Here you can set the action, what should happen, if the IDE finds such a file.
Save as - auto rename pascal files lowercase
Source code, that compiles on platforms with case sensitive filenames must make sure, that units are written correct. FPC searches first for the unit name with the uses case, then lowercase and finally uppercase. You can either make sure, that the case is written correct in all units, which is hard for windows users, as they don't need to. Or you can let the IDE save all new units lowercase. The source editor will show the unit name as written in the source code, so you see the right case in the IDE anyway.
FPDoc files path
Contains paths to FPDoc files with documentation for the units not documented in a project. You can also add paths to the RTL's (*.xml) documentations files, so that tooltip help works for both RTL code.
The File / Open File dialog has a list of filters, that can be configured here. Right click on the grid to add and remove items. (Since 0.9.31)
The IDE always adds a few filters:
- prepends a filter that sums up all filters
- appends a filter for all file types of the open files in the source editor, that are not yet in the list. For example if you have a text.txt file open, this filter will contain a *.txt.
- appends an any files filter (*.*)