Repository navigation
Preferences Overview
Preferences are the default settings of FlatCAM Evo. They set the values that new objects and tools use. This page explains how to open, change, save, import, export and reset the preferences. It also explains where the preferences are stored, and how themes and languages are set.
- Menu: Edit > Preferences (shortcut:
Shift+P). The Preferences tab opens in the plot area. - Import and export: File > Backup > Import Preferences from file and Export Preferences to file.
- Save: File > Backup > Save Preferences.
Screenshot placeholder:
images/Preferences-Overview-1.png— the Preferences tab with the tab bar (General, GERBER, EXCELLON, GEOMETRY, CNC-JOB, ENGRAVING, PROCESSING, EXTRA PLUGINS, UTILITIES) and the button row at the bottom.
- Select Edit > Preferences (
Shift+P). - Select a tab, for example GERBER. Select a group, and change a value.
- The Preferences tab name turns red when a value changed and is not saved.
- Select Apply to use the values in this session.
- Select Save to write the values to the preferences file. The values stay for the next start.
The Preferences tab has nine tabs. Each tab has one or more groups. Each group has controls.
| Tab | Content | Page |
|---|---|---|
| General | App settings, GUI settings, languages, grid, workspace | Preferences General |
| GERBER | Gerber import, options, export, editor, advanced options | Preferences Gerber |
| EXCELLON | Excellon import, options, export, editor, advanced options | Preferences Excellon |
| GEOMETRY | Geometry general settings, export, editor, advanced options | Preferences Geometry |
| CNC-JOB | CNC job general settings, options, editor, pre-processors | Preferences CNCJob |
| ENGRAVING | Isolation, non-copper clearing, paint, 2-Sided, levelling, GCode sender | Preferences Plugins |
| PROCESSING | Drilling, milling, cutout, film, panelize and other plugins | Preferences Plugins |
| EXTRA PLUGINS | Rules check, optimal, QRCode, copper thieving, fiducials, extract drills, punch, invert, etch | Preferences Plugins |
| UTILITIES | File associations and autocompleter keywords | Preferences Utilities |
The buttons at the bottom of the Preferences tab:
| Button | Description |
|---|---|
| Open Pref Folder | Opens the folder where the preferences files are stored. |
| Clear GUI Settings | Clears the GUI settings that the application stores with Qt (QSettings). |
| Restore Defaults | Loads the factory values into the tabs. Nothing is saved until you select Save or Apply. |
| Apply | Uses the values in this session. The values are not written to the preferences file. |
| Save | Writes the values to current_defaults.FlatConfig. Then the application loads that file. |
| Cancel | Closes the Preferences tab. The changes that were not saved are discarded. |
The preferences are stored in the data folder of the application. The folder depends on the platform:
- Windows:
%APPDATA%\FlatCAM. In portable mode the folder is theconfigfolder next to the application. - Linux and macOS:
~/.FlatCAM. - The environment variable
FLATCAM_DATA_PATHsets another folder. It overrides the folders above.
The data folder holds these files:
-
current_defaults.FlatConfig-> the working preferences. Save writes this file. -
factory_defaults.FlatConfig-> the factory preferences. Restore Defaults uses the factory values fromdefaults.py.
The portable setting is in General > App Preferences > Portable app.
-
Import Preferences from file: opens a
.FlatConfigfile. The values are loaded into the tabs. Select Save to keep them. -
Export Preferences to file: writes the current preferences to a
.FlatConfigfile. The default file name has the date and time. -
Save Preferences: writes the current preferences to
current_defaults.FlatConfig.
An export writes the saved preferences, not the values that you changed in the tabs and did not save.
Some keys belong to a project, not to the application. These keys are listed in PROJECT_KEYS in defaults.py. Examples: units, the Gerber non-copper margin, and the Excellon tool diameters.
Themes are set in General > GUI Preferences:
- Appearance: Auto, Light or Dark.
- Styling: Default or Custom.
Languages are set in General > App Preferences > Languages. The list shows the languages that the application finds in the locale folder. Select Apply Language to store the language. The application then restarts.
-
appGUI/preferences/PreferencesUIManager.py: the classPreferencesUIManager. It builds the table that links each key ofdefaults.pyto a control in a tab. It reads the controls into the defaults (defaults_read_form) and writes the defaults into the controls (defaults_write_form). It handles Apply, Save, Cancel and Restore Defaults (on_save_button,save_defaults,on_restore_defaults_preferences). -
defaults.py: the classAppDefaults. Itsfactory_defaultsdictionary holds the factory value of each key. Each key has the formgroup_name_setting, for exampletools_drill_cutz. -
appGUI/preferences/<section>/*PrefGroupUI.py: the groups of each tab. Each group file defines the labels, tooltips and controls.
FlatCAM Evo Manual · Source code · Report a problem · MIT license
Start here
- Installation
- Getting Started
- Tutorial: Single-Sided PCB
- Tutorial: Double-Sided PCB
- User Interface
- Keyboard Shortcuts
- Glossary
- FAQ and Troubleshooting
Files and projects
Objects
Editors
PCB operations
- Isolation Routing
- Non-Copper Clearing
- Paint
- Cutout
- Drilling
- Milling
- Follow
- Double-Sided
- Solder Paste
- Film
- Panelize
- Copper Thieving
- Fiducials
- Markers
- Punch Gerber
- Invert Gerber
- Etch Compensation
- Extract
- Rules Check
- QR Code
Utility plugins
- Align Objects
- Calculators
- Distance · Object Distance
- Optimal
- Move · Transform
- Subtract
- Image Import · PDF Import
- PCB Wizard
- Report
- Tcl Shell
Machine control (in development)
Advanced
- Tools Database
- Preprocessors
- Path Optimization
- Tcl Scripting
- Tcl Command Reference
- Developer Guide
- Translating
Preferences