Preferences Editor: Difference between revisions

From FreeCAD Documentation
(Workbenches: rewrite.)
(add info about style sheets)
(47 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Page_in_progress}}
<languages/>
<languages/>
<translate>
<translate>
Line 16: Line 15:


<!--T:1-->
<!--T:1-->
The preferences system of FreeCAD is located in the {{MenuCommand|[[Std Edit Menu|Edit]] → Preferences...}}. On the Mac OS the {{MenuCommand|Preferences...}} menu option appears in the FreeCAD menu instead of the Edit menu (this is the default place for preferences on the Mac).
To start the '''Preferences editor''' select the {{MenuCommand|Edit → Preferences...}} option from the menu. On the Mac OS the {{MenuCommand|Preferences...}} option appears in the {{MenuCommand|FreeCAD}} menu instead (this is the default place for preferences on the Mac).


<!--T:2-->
<!--T:2-->
FreeCAD uses a workbench concept, where each workbench is responsible for specific tasks and functions. A workbench can have its own preferences. These will only appear in the Preferences editor if the workbench has been loaded in the current FreeCAD session. See [[#Workbenches|Workbenches]] below for more information.
FreeCAD functionality is divided into different modules, each module being responsible for the working of a specific [[Workbenches|workbench]]. FreeCAD also uses a concept called '''"late loading"''', which means that components are loaded only when they are needed. This affects the preferences displayed in this window, and the order they are shown.


<!--T:6-->
<!--T:6-->
If no workbench is loaded, four sections appear in the Preferences editor: [[#General_settings|General]], [[#Display_settings|Display]], [[#Workbenches|Workbenches]], and [[#Import-Export_settings|Import-Export]]. Any workbenches that have been loaded, and have their own preferences, will appear below these.
Without any module loaded, you will have access to two configuration sections, responsible for the general application settings and for the display settings. The third item in the preferences window, '''Workbenches''', displays a list of all currently-available but ''unloaded'' Workbenches (that is, those you have not used yet in this FreeCAD session). Some of these workbenches provide additional preferences when loaded. Selecting a workbench from the displayed list and choosing '''Load workbench''' will load that workbench and make its preferences available in new groups in the Preferences Editor. Loading the workbench will also make any additional file formats supported by the workbench appear as new tabs in the {{MenuCommand|[[#Import-Export_settings|Import-Export]]}} preferences section.


<!--T:105-->
<!--T:105-->
Clicking the {{Button|Reset}} button in the lower left corner of any preferences display will set '''all''' of the FreeCAD preferences to their default values.
Please note that pressing the {{Button|Reset}} button in the lower left corner of the Preferences dialog will reset '''all''' FreeCAD preferences to their default values.


<!--T:221-->
<!--T:221-->
{{emphasis|Note:}} for more fine-tuned control of preferences see [[Std_DlgParameter|Parameter editor]] and [[Fine-tuning|Fine-tuning]]
Some advanced preferences can only be changed in the [[Std_DlgParameter|Parameter editor]]. The [[Fine-tuning|Fine-tuning]] page lists some of them.


==General setting== <!--T:4-->
==General settings== <!--T:4-->


<!--T:5-->
<!--T:5-->
Line 40: Line 39:
On the ''General'' tab you can specify the following:
On the ''General'' tab you can specify the following:


<!--T:236-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 45: Line 45:
|-
|-
| {{MenuCommand|Change language}}
| {{MenuCommand|Change language}}
| Select the language of FreeCAD's user interface
| Selection of the language of the FreeCAD user interface
|-
|-
| {{MenuCommand|Size of recent file list}}
| {{MenuCommand|Size of recent file list}}
Line 54: Line 54:


<!--T:197-->
<!--T:197-->
This option only has an effect if in {{MenuCommand|Style sheet}}/''No style sheet'' is selected.
This option only has an effect if no {{MenuCommand|Style sheet}} is selected.


<!--T:198-->
<!--T:198-->
The image can be changed by adding the folders {{FileName|Gui/Images}} in the folder
The image can be changed by adding the folders {{FileName|Gui/Images}} in the folder:


<!--T:199-->
<!--T:199-->
[https://www.howtogeek.com/318177/what-is-the-appdata-folder-in-windows/ {{FileName|%APPDATA%]/FreeCAD}} (on Windows),
{{FileName|[https://www.howtogeek.com/318177/what-is-the-appdata-folder-in-windows/ %APPDATA%]/FreeCAD}} (on Windows),


<!--T:200-->
<!--T:200-->
Line 69: Line 69:


<!--T:202-->
<!--T:202-->
Put there a file named {{FileName|background.png}} and uncheck/check this option to see the changed file.
Place a file named {{FileName|background.png}} in the {{FileName|Images}} folder, and uncheck/check this option to see the changed file.
|-
|-
| {{MenuCommand|Style sheet}}
| {{MenuCommand|Style sheet}}
| Selection of a style sheet. The style sheets define how the user interface of FreeCAD looks.
| Selection of a style sheet. Style sheets define how the user interface of FreeCAD looks. For technical details about the style sheets, see [[Interface_Customization#Themes|this page]].
|-
|-
| {{MenuCommand|Size of toolbar icons}}
| {{MenuCommand|Size of toolbar icons}}
Line 87: Line 87:
|-
|-
| {{MenuCommand|Enable splash screen at start up}}
| {{MenuCommand|Enable splash screen at start up}}
| If checked, the splash screen of FreeCAD is shown when starting.
| If checked, a splash screen is shown when starting FreeCAD.


<!--T:203-->
<!--T:203-->
The splash screen image can be changed by adding the folders {{FileName|Gui/Images}} in the folder {{FileName|%APPDATA%/FreeCAD}} (where %APPDATA% is the the user-specific application folder of FreeCAD of your operating system). Put there a file named {{FileName|splash_image.png}} and restart FreeCAD to see the changed splash screen.
The splash screen image can be changed by placing a file named {{FileName|splash_image.png}} in the {{FileName|Images}} folder already mentioned under {{MenuCommand|Enable tiled background}}.
|-
|-
| {{MenuCommand|Enable word wrap}}
| {{MenuCommand|Enable word wrap}}
Line 96: Line 96:
|}
|}


</translate>
<!--T:14-->
[[Image:Preference_General_Tab_01.png]]
[[Image:Preferences_General_Tab_General.png]]
<translate>


===Document=== <!--T:15-->
===Document=== <!--T:15-->
Line 104: Line 105:
On the ''Document'' tab you can specify the following:
On the ''Document'' tab you can specify the following:


<!--T:237-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 121: Line 123:
|-
|-
| {{MenuCommand|Allow aborting recomputation}}
| {{MenuCommand|Allow aborting recomputation}}
| Allow to aborting the document recomputation by pressing {{KEY|Esc}}. This may slightly increase the recomputation time.
| If checked, recomputations can be aborted by pressing {{KEY|Esc}}. This may slightly increase the recomputation time.
|-
|-
| {{MenuCommand|Run AutoRecovery at startup}}
| {{MenuCommand|Run AutoRecovery at startup}}
Line 130: Line 132:
|-
|-
| {{MenuCommand|Save thumbnail into project file when saving document}}
| {{MenuCommand|Save thumbnail into project file when saving document}}
| If checked, also a thumbnail will be stored when the document is saved. The thumbnail will for example be shown in the list of recent files in the [[Start_Workbench|Start workbench]]. It is possible to select a '''Size''' between 128×128 and 512×512 pixels for the thumbnail. Common sizes are the powers of two: 128, 256, 512.
| If checked, a thumbnail will be stored when the document is saved. The thumbnail will for example be shown in the list of recent files in the [[Start_Workbench|Start workbench]]. It is possible to select a '''Size''' between 128×128 and 512×512 pixels for the thumbnail. Common sizes are the powers of two: 128, 256, 512.
|-
|-
| {{MenuCommand|Add the program logo to the generated thumbnail}}
| {{MenuCommand|Add the program logo to the generated thumbnail}}
| If checked, the FreeCAD program logo [[image:FreeCAD-logo.svg|24px]] will be added to the thumbnail. This option only has an effect if {{MenuCommand|Save thumbnail into project file when saving document}} is used.
| If checked, the FreeCAD program logo [[image:FreeCAD-logo.svg|24px]] will be added to the thumbnail.
|-
|-
| {{MenuCommand|Maximum number of backup files to keep when resaving document}}
| {{MenuCommand|Maximum number of backup files to keep when resaving document}}
| If checked, backup files will be kept when saving the document. You can specify how many backup files will be kept. They contain the previously saved document version. The first backup file will have the file suffix {{FileName|.FCStd1}}, the second {{FileName|.FCStd2}} and so on.
| If checked, backup files will be kept when saving the document. You can specify the number of backup files to keep. Backup files are previously saved versions of the document. The first backup file will have the file suffix {{FileName|.FCStd1}}, the second {{FileName|.FCStd2}} and so on.
|-
|-
| {{MenuCommand|Use date and FCBak extension}}
| {{MenuCommand|Use date and FCBak extension}}
| If checked, backup files will get the extension ''.FCbak'' and their file names get a date suffix according to the specified date format. For a description of the date format see [https://devhints.io/datetime this site].
| If checked, backup files will get the extension {{FileName|.FCbak}} and their file names get a date suffix according to the specified date format. For a description of the date format see [https://devhints.io/datetime this site].
With the default settings the backup file will get for example this name ''TD-Cube.20200315-215654.FCBak'' (original filename is ''TD-Cube.FCStd'').
With the default settings a backup file will for example get this name {{FileName|TD-Cube.20200315-215654.FCBak}} (original filename is {{FileName|TD-Cube.FCStd}}).
|-
|-
| {{MenuCommand|Allow duplicate object labels in one document}}
| {{MenuCommand|Allow duplicate object labels in one document}}
| If checked, objects can have the same label/name. For example different parts or features can then have the same name in the same document.
| If checked, objects can have the same label.
|-
|-
| {{MenuCommand|Disable partial loading of external linked objects}}
| {{MenuCommand|Disable partial loading of external linked objects}}
| Enable partial loading of external linked document. When enabled, only the referenced objects and their dependencies will be loaded when a linked document is auto opened together with the main document. A partially loaded document cannot be edited. Double click the document icon in the tree view to reload it in full. A more detailed explanation of the feature can be found on the [https://github.com/realthunder/FreeCAD_assembly3/wiki/Core-Changes#partial-document-loading Assembly3 documentation page]
| If partial loading of external linked objects is enabled, only the referenced objects and their dependencies will be loaded when the linked document is auto opened together with the main document. Such a partially loaded document cannot be edited. Double click the document icon in the tree view to reload it in full. A more detailed explanation of this feature can be found on the [https://github.com/realthunder/FreeCAD_assembly3/wiki/Core-Changes#partial-document-loading Assembly3 documentation page]
|-
|-
| {{MenuCommand|Author name}}
| {{MenuCommand|Author name}}
| All documents that will be created will get the specified author name. Keep the author field blank for an anonymous author. If the option {{MenuCommand|Set on save}} is checked, the field ''Last modified by'' will be set to the specified author when saving the file. This field can be viewed using the menu {{MenuCommand|File → Project information}}.
| All created documents will get the specified author name. Keep the author field blank if you do not want to include this information. If the option {{MenuCommand|Set on save}} is checked, the field '''Last modified by''' will be set to the specified author when saving the file. This field can be viewed using the {{MenuCommand|File → Project information}} menu option.
|-
|-
| {{MenuCommand|Company}}
| {{MenuCommand|Company}}
| All documents that will be created will get the specified company name
| All created documents will get the specified company name
|-
|-
| {{MenuCommand|Default license}}
| {{MenuCommand|Default license}}
| Selection of a default license for new documents. For predefined license the {{MenuCommand|License URL}} will automatically be set accordingly. Select 'Other' for an own or special license.
| Selection of the license for new documents. For predefined licenses the {{MenuCommand|License URL}} will automatically be set accordingly. Select '''Other''' for a custom license.
|-
|-
| {{MenuCommand|License URL}}
| {{MenuCommand|License URL}}
Line 161: Line 163:
|}
|}


</translate>
<!--T:16-->
[[Image:Preference_General_Tab_02.png]]
[[Image:Preferences_General_Tab_Document.png]]
<translate>


===Selection=== <!--T:228-->
===Selection=== <!--T:228-->
Line 169: Line 172:
On the ''Selection'' tab ({{Version|0.19}}) you can specify the following:
On the ''Selection'' tab ({{Version|0.19}}) you can specify the following:


<!--T:238-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 186: Line 190:
|-
|-
| {{MenuCommand|Add checkboxes for selection in document tree}}
| {{MenuCommand|Add checkboxes for selection in document tree}}
| Each [[Tree_view|document tree]] item will get a checkbox. This is for example useful to select several items via a touchscreen.
| Each [[Tree_view|document tree]] item will get a checkbox. This is for example useful for selecting multiple items on a touchscreen.
|}
|}


</translate>
<!--T:230-->
[[Image:Preference_General_Tab_Selection.png]]
[[Image:Preferences_General_Tab_Selection.png]]
<translate>


===Editor=== <!--T:17-->
===Editor=== <!--T:17-->
Line 203: Line 208:
On the ''Editor'' tab you can specify the following:
On the ''Editor'' tab you can specify the following:


<!--T:239-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 211: Line 217:
|-
|-
| {{MenuCommand|Tab size}}
| {{MenuCommand|Tab size}}
| Specification of the tabulator raster (how many spaces). If it is for example set to '6', pressing {{KEY|Tab}} will jump to character 7 or 13 or 19 etc., depending the current cursor position. This setting is only used if {{MenuCommand|Keep tabs}} is selected.
| Specification of the tabulator raster (how many spaces). If it is for example set to '''6''', pressing {{KEY|Tab}} will jump to character 7 or 13 or 19 etc., depending on the current cursor position. This setting is only used if {{MenuCommand|Keep tabs}} is selected.
|-
|-
| {{MenuCommand|Indent size}}
| {{MenuCommand|Indent size}}
Line 223: Line 229:
|-
|-
| {{MenuCommand|Display Items}}
| {{MenuCommand|Display Items}}
| Selection of the code type. The color and font settings will be applied to the selected type. The result can be seen in the '''Preview''' field.
| Selection of the code type. The color and font settings will be applied to the selected type. The result can be checked in the '''Preview''' field.
|-
|-
| {{MenuCommand|Family}}
| {{MenuCommand|Family}}
Line 235: Line 241:
|}
|}


</translate>
<!--T:18-->
[[Image:Preference_General_Tab_03.png]]
[[Image:Preferences_General_Tab_Editor.png]]
<translate>


===Output window=== <!--T:19-->
===Output window=== <!--T:19-->
Line 246: Line 253:
On the ''Output'' tab you can specify the following:
On the ''Output'' tab you can specify the following:


<!--T:240-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 251: Line 259:
|-
|-
| {{MenuCommand|Record normal messages}}
| {{MenuCommand|Record normal messages}}
| If checked, normal messages will be recorded. They will be output in the [[Report_view|Report view]] with the color set in {{MenuCommand|Normal messages}}.
| If checked, normal messages will be recorded. They will be displayed in the [[Report_view|Report view]] with the color set in {{MenuCommand|Normal messages}}.
|-
|-
| {{MenuCommand|Record log messages}}
| {{MenuCommand|Record log messages}}
| If checked, log messages will be recorded. They will be output in the [[Report_view|Report view]] with the color set in {{MenuCommand|Log messages}}.
| If checked, log messages will be recorded. They will be displayed in the [[Report_view|Report view]] with the color set in {{MenuCommand|Log messages}}.
|-
|-
| {{MenuCommand|Record warnings}}
| {{MenuCommand|Record warnings}}
| If checked, warnings will be recorded. They will be output in the [[Report_view|Report view]] with the color set in {{MenuCommand|Warnings}}.
| If checked, warnings will be recorded. They will be displayed in the [[Report_view|Report view]] with the color set in {{MenuCommand|Warnings}}.
|-
|-
| {{MenuCommand|Record error messages}}
| {{MenuCommand|Record error messages}}
| If checked, error messages will be recorded. They will be output in the [[Report_view|Report view]] with the color set in {{MenuCommand|Errors}}
| If checked, error messages will be recorded. They will be displayed in the [[Report_view|Report view]] with the color set in {{MenuCommand|Errors}}.
|-
|-
| {{MenuCommand|Show report view on error}}
| {{MenuCommand|Show report view on error}}
| If checked, the [[Report_view|Report view]] will display automatically when an error is recorded.
| If checked, the [[Report_view|Report view]] will be shown automatically when an error is recorded
|-
|-
| {{MenuCommand|Show report view on warning}}
| {{MenuCommand|Show report view on warning}}
| If checked, the [[Report_view|Report view]] will display automatically when a warning is recorded.
| If checked, the [[Report_view|Report view]] will be shown automatically when a warning is recorded
|-
|-
| {{MenuCommand|Show report view on normal message}}
| {{MenuCommand|Show report view on normal message}}
| If checked, the [[Report_view|Report view]] will display automatically when a normal message is recorded.
| If checked, the [[Report_view|Report view]] will be shown automatically when a normal message is recorded
|-
|-
| {{MenuCommand|Show report view on log message}}
| {{MenuCommand|Show report view on log message}}
| If checked, the [[Report_view|Report view]] will display automatically when a log message is recorded.
| If checked, the [[Report_view|Report view]] will be shown automatically when a log message is recorded
|-
|-
| {{MenuCommand|Include a timecode for each entry}}
| {{MenuCommand|Include a timecode for each entry}}
| If checked, each message and warning will receive a timecode.
| If checked, each message and warning will receive a timecode
|-
|-
| {{MenuCommand|Normal messages}}
| {{MenuCommand|Normal messages}}
| Specification of the font color for normal messages in the [[Report_view|Report view]].
| Specification of the font color for normal messages
|-
|-
| {{MenuCommand|Log messages}}
| {{MenuCommand|Log messages}}
| Specification of the font color for log messages in the [[Report_view|Report view]].
| Specification of the font color for log messages
|-
|-
| {{MenuCommand|Warnings}}
| {{MenuCommand|Warnings}}
| Specification of the font color for warning messages in the [[Report_view|Report view]].
| Specification of the font color for warning messages
|-
|-
| {{MenuCommand|Errors}}
| {{MenuCommand|Errors}}
| Specification of the font color for error messages in the [[Report_view|Report view]].
| Specification of the font color for error messages


<!--T:241-->
|-
|-
| {{MenuCommand|Redirect internal Python output to report view}}
| {{MenuCommand|Redirect internal Python output to report view}}
| If checked, internal Python output will be redirected from the [[Python_console|Python console]] to the [[Report_view|Report view]].
| If checked, internal Python output will be redirected from the [[Python_console|Python console]] to the [[Report_view|Report view]]
|-
|-
| {{MenuCommand|Redirect internal Python errors to report view}}
| {{MenuCommand|Redirect internal Python errors to report view}}
| If checked, internal Python error messages will be redirected from the [[Python_console|Python console]] to the [[Report_view|Report view]].
| If checked, internal Python error messages will be redirected from the [[Python_console|Python console]] to the [[Report_view|Report view]]
|}
|}


</translate>
<!--T:20-->
[[Image:Preference_General_Tab_04.png]]
[[Image:Preferences_General_Tab_Output_window.png]]
<translate>


===Macro=== <!--T:21-->
===Macro=== <!--T:21-->
Line 305: Line 315:
On the ''Macro'' tab you can specify the following:
On the ''Macro'' tab you can specify the following:


<!--T:242-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 310: Line 321:
|-
|-
| {{MenuCommand|Run macros in local environment}}
| {{MenuCommand|Run macros in local environment}}
| If checked, variables defined by macros are created as local variables, otherwise as global Python variable
| If checked, variables defined by macros are created as local variables, otherwise as global Python variables
|-
|-
| {{MenuCommand|Macro path}}
| {{MenuCommand|Macro path}}
| Specification of a path to macro files
| Specification of the path for macro files
|-
|-
| {{MenuCommand|Recording GUI commands}}
| {{MenuCommand|Record GUI commands}}
| If checked, [[Std_DlgMacroRecord|recorded macros]] will also contain user interface commands
| If checked, [[Std_DlgMacroRecord|recorded macros]] will also contain user interface commands
|-
|-
| {{MenuCommand|Record as comment}}
| {{MenuCommand|Record as comment}}
| If checked, [[Std_DlgMacroRecord|recorded macros]] will also contain user interface commands but as comments. This is useful if you don't want to execute visible actions when running the macro but to see what could be done visibly.
| If checked, [[Std_DlgMacroRecord|recorded macros]] will also contain user interface commands, but as comments. This is useful if you don't want to execute these commands when running the macro, but do want to see what has been done while recording.
|-
|-
| {{MenuCommand|Show script commands in python console}}
| {{MenuCommand|Show script commands in python console}}
| If checked, the commands executed by the macro scripts are shown in the Python console. This console is shown using the menu {{MenuCommand|View → Panels → Python console}}.
| If checked, the commands executed by macro scripts are shown in the Python console. This console is shown using the {{MenuCommand|View → Panels → Python console}} menu option.
|-
|-
| {{MenuCommand|Size of recent macros list}}
| {{MenuCommand|Size of recent macros list}}
| Controls the number of recent macros to display in the menu.
| Controls the number of recent macros to display in the menu
|-
|-
| {{MenuCommand|Shortcut count}}
| {{MenuCommand|Shortcut count}}
| Controls the number of recent macros that get dynamically assigned shortcuts.
| Controls the number of recent macros that get dynamically assigned shortcuts
|-
|-
| {{MenuCommand|Keyboard Modifiers}}
| {{MenuCommand|Keyboard Modifiers}}
| Controls which keyboard modifiers are used for the shortcuts, example Ctrl+Shift+ creates shortcuts in the form of Ctrl+Shift+1, Ctrl+Shift+2, etc.
| Controls which keyboard modifiers are used for the shortcuts, example '''Ctrl+Shift+''' creates shortcuts in the form of '''Ctrl+Shift+1''', '''Ctrl+Shift+2''', etc.
|}
|}


</translate>
<!--T:22-->
[[Image:Preference_General_Tab_05.png]]
[[Image:Preferences_General_Tab_Macro.png]]
<translate>


===Units=== <!--T:23-->
===Units=== <!--T:23-->
Line 342: Line 354:
On the ''Units'' tab you can specify the following:
On the ''Units'' tab you can specify the following:


<!--T:243-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 347: Line 360:
|-
|-
| {{MenuCommand|User system}}
| {{MenuCommand|User system}}
| Selection of a unit system that should be used for all parts of FreeCAD
| Selection of the unit system to be used for all parts of FreeCAD
|-
|-
| {{MenuCommand|Number of decimals}}
| {{MenuCommand|Number of decimals}}
| The number of decimals that should be shown for numbers and dimensions in FreeCAD
| The number of decimals that should be shown for numbers and dimensions
|-
|-
| {{MenuCommand|Minimum fractional inch}}
| {{MenuCommand|Minimum fractional inch}}
Line 356: Line 369:
|}
|}


</translate>
<!--T:24-->
[[Image:Preference_General_Tab_06.png]]
[[Image:Preferences_General_Tab_Units.png]]
<translate>


==Display settings== <!--T:25-->
==Display settings== <!--T:25-->
Line 369: Line 383:
On the ''3D View'' tab you can specify the following:
On the ''3D View'' tab you can specify the following:


<!--T:244-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 383: Line 398:
|-
|-
| {{MenuCommand|Remember active workbench by tab}} {{Version|0.19}}
| {{MenuCommand|Remember active workbench by tab}} {{Version|0.19}}
| If checked, the application will remember what is the active workbench for each tab independently. This way, the active workbench will be automatically restored when changing tab in the [https://en.wikipedia.org/wiki/Multiple_document_interface multiple-document interface (MDI)] view.
| If checked, the application will remember the active workbench for each tab in the [[Main_view_area|Main view area]] independently. When switching to a tab this workbench will be restored automatically.
|-
|-
| {{MenuCommand|Use software OpenGL}} {{Version|0.19}}
| {{MenuCommand|Use software OpenGL}} {{Version|0.19}}
Line 389: Line 404:
|-
|-
| {{MenuCommand|Use OpenGL VBO (Vertex Buffer Object)}}
| {{MenuCommand|Use OpenGL VBO (Vertex Buffer Object)}}
| If checked, [https://en.wikipedia.org/wiki/Vertex_Buffer_Object Vertex Buffer Objects] (VBO) will be used. A VBO is an [https://en.wikipedia.org/wiki/OpenGL OpenGL] feature that provides methods for uploading vertex data (position, normal vector, color, etc.) to the graphics card. VBOs offer substantial performance gains because the data resides in the graphics memory rather than the system memory and so it can be rendered directly by GPU. For more background info see [https://www.haroldserrano.com/blog/understanding-opengl-objects this webpage].
| If checked, [https://en.wikipedia.org/wiki/Vertex_Buffer_Object Vertex Buffer Objects] (VBO) will be used. A VBO is an [https://en.wikipedia.org/wiki/OpenGL OpenGL] feature that provides methods for uploading vertex data (position, normal vector, color, etc.) to the graphics card. VBOs offer substantial performance gains because the data resides in the graphics memory rather than the system memory and so it can be rendered directly by the GPU. For more background info see [https://www.haroldserrano.com/blog/understanding-opengl-objects this webpage].
|-
|-
| {{MenuCommand|Render Cache}} {{Version|0.19}}
| {{MenuCommand|Render Cache}} {{Version|0.19}}
| "Render Cache" or "Render Acceleration" is explained in more detail in [https://github.com/realthunder/FreeCAD_assembly3/wiki/Link#render-caching Link#render-caching]. There are 3 options:
| "Render Cache" or "Render Acceleration" is explained in more detail in [https://github.com/realthunder/FreeCAD_assembly3/wiki/Link#render-caching FreeCAD_assembly3 render-caching]. There are 3 options:
* '''Auto''' (default), let Coin3D decide where to cache.
* '''Auto''' (default), let Coin3D decide where to cache.
* '''Distributed''', manually turn on cache for all view provider root nodes.
* '''Distributed''', manually turn on cache for all view provider root nodes.
Line 406: Line 421:
|-
|-
| {{MenuCommand|Marker size}}
| {{MenuCommand|Marker size}}
| Selection of the size of [[Glossary#Vertex|vertices]] (points) in the [[Sketcher_Workbench|Sketcher workbench]]. The clickable area of points can be additionally enlarged by increasing {{MenuCommand|Pick radius}} (on Colors tab).
| Selection of the size of [[Glossary#Vertex|vertices]] (points) in the [[Sketcher_Workbench|Sketcher workbench]]. The clickable area of points can be additionally enlarged by increasing the {{MenuCommand|Pick radius}}.
|-
|-
| {{MenuCommand|Pick radius (px)}}
| {{MenuCommand|Pick radius (px)}}
Line 415: Line 430:
|-
|-
| {{MenuCommand|Backlight color}}
| {{MenuCommand|Backlight color}}
| If checked, backlight is enabled with the defined color. Backlight is used for rendering back sides of faces (usually, you don't see them in solids, unless you slice one with a clipping plane, or if the faces aren't oriented correctly). It is only active for objects whose Lighting property (on View tab) is set to "One side". If disabled, back sides of faces of objects in "One side" lighting mode will be black.
| If checked, backlight is enabled with the defined color. Backlight is used for rendering back sides of faces. Usually, you don't see them in solids, unless you slice one with a clipping plane, or if the faces aren't oriented correctly. It is only active for objects whose Lighting property (on the View tab) is set to '''One side'''. If disabled, back sides of faces of objects in '''One side''' lighting mode will be black.
The related {{MenuCommand|Intensity}} setting specifies the intensity of the backlight.
The related {{MenuCommand|Intensity}} setting specifies the intensity of the backlight.
|-
|-
Line 426: Line 441:
|}
|}


</translate>
<!--T:217-->
[[Image:Preference_Display_Tab_01.png]]
[[Image:Preferences_Display_Tab_3D_View.png]]
<translate>


===Navigation=== <!--T:218-->
===Navigation=== <!--T:218-->
Line 434: Line 450:
On the ''Navigation'' tab you can specify the following:
On the ''Navigation'' tab you can specify the following:


<!--T:245-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 439: Line 456:
|-
|-
| {{MenuCommand|Navigation cube}}
| {{MenuCommand|Navigation cube}}
| If checked, the [[Navigation_Cube|Navigation cube]] will always be shown.
| If checked, the [[Navigation_Cube|navigation cube]] will always be shown. Related {{MenuCommand|Steps by turn}} defines how many steps (notches) will be applied when using the Navigation cube rotation arrows. Related {{MenuCommand|Corner}} defines where the Navigation cube is displayed on the screen when creating/opening a document

<!--T:250-->
{{MenuCommand|Steps by turn}} defines how many steps (notches) will be applied when using the Navigation cube rotation arrows.

<!--T:251-->
{{MenuCommand|Corner}} defines where the Navigation cube is displayed on the screen when creating or opening a document.

<!--T:252-->
If {{MenuCommand|Rotate to nearest}} is checked, the 3D view is rotated to the nearest most logical state when a cube face is clicked. When it is off, clicking to a cube face will and up always to the same position, no matter in what cube state you were when you clicked the face. {{Version|0.20}}

<!--T:253-->
{{MenuCommand|Cube size}} defines the size of the cube. {{Version|0.20}}
|-
|-
| {{MenuCommand|3D Navigation}}
| {{MenuCommand|3D Navigation}}
| Selection of a [[Mouse_Model|navigation settings set]]. To see what each set defines, select a set and press the button {{Button|Mouse...}}.
| Selection of a [[Mouse_Model|navigation settings set]]. To see what each set defines, select it and then press the {{Button|Mouse...}} button.
|-
|-
| {{MenuCommand|Orbit style}}
| {{MenuCommand|Orbit style}}
Line 451: Line 480:
|-
|-
| {{MenuCommand|Default camera orientation}}
| {{MenuCommand|Default camera orientation}}
| Selection of the camera orientation for new documents
| Selection of the camera orientation for new documents. This setting is also used by the [[Std_ViewHome|Std ViewHome]] command.
|-
|-
| {{MenuCommand|New document scale}}
| {{MenuCommand|New document scale}}
| Affects the initial "zoom level" of camera for new documents. The value you set is the diameter of a sphere that fits in 3D view. Default is 100 mm, convenient for objects like boxes for Arduino. It also sets initial size of origin features (base planes in a new PartDesign Body).
| Affects the initial camera zoom level for new documents. The value you set is the diameter of a sphere that fits in 3D view. Default is 100 mm. It also sets the initial size of origin features (base planes in new [[PartDesign_Body|PartDesign Bodies]]).
|-
|-
| {{MenuCommand|Enable animation}}
| {{MenuCommand|Enable animation}}
| If checked, rotations can be animated. If for example the {{MenuCommand|3D Navigation}} set ''CAD'' is used and the mouse is moved while the scroll wheel and the right mouse button is pressed, parts are rotated. If one keeps the mouse moving while releasing e.g. the right mouse button, the rotation will continue as animation. To end the animation left-click with the mouse.
| If checked, rotations can be animated. If for example the {{MenuCommand|3D Navigation}} set ''CAD'' is used and the mouse is moved while the scroll wheel and the right mouse button are pressed, parts are rotated. If one keeps the mouse moving while releasing e.g. the right mouse button, the rotation will continue as animation. To end the animation left-click with the mouse.
|-
|-
| {{MenuCommand|Zoom at cursor}}
| {{MenuCommand|Zoom at cursor}}
| If checked, zoom operations will be performed at the position of the mouse pointer. Otherwise zoom operations will be performed at the center of the current view. The {{MenuCommand|Zoom step}} defines how much will be zoomed. A zoom step of '1' means a factor of 7.5 for every zoom step.
| If checked, zoom operations will be performed at the position of the mouse pointer. Otherwise zoom operations will be performed at the center of the current view. The {{MenuCommand|Zoom step}} defines how much will be zoomed. A zoom step of '''1''' means a factor of 7.5 for every zoom step.
|-
|-
| {{MenuCommand|Invert zoom}}
| {{MenuCommand|Invert zoom}}
| If checked, the direction of zoom operations will be inverted.
| If checked, the direction of zoom operations will be inverted
|-
|-
| {{MenuCommand|Disable touchscreen tilt gesture}}
| {{MenuCommand|Disable touchscreen tilt gesture}}
Line 469: Line 498:
|}
|}


</translate>
<!--T:28-->
[[Image:Preference_Navigation_Tab.png]]
[[Image:Preferences_Display_Tab_Navigation.png]]
<translate>


===Colors=== <!--T:29-->
===Colors=== <!--T:29-->
Line 477: Line 507:
On the ''Colors'' tab you can specify the following:
On the ''Colors'' tab you can specify the following:


<!--T:246-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 482: Line 513:
|-
|-
| {{MenuCommand|Enable preselection highlighting}}
| {{MenuCommand|Enable preselection highlighting}}
| If checked, preselection is turned on and will be highlighted by the specified color. Preselection means that for example edges in parts will be highlighted while hovering with the mouse over them to indicate that they can be selected.
| If checked, preselection is turned on and the specified color will be used for it. Preselection means that for example edges in parts will be highlighted while hovering over them with the mouse to indicate they can be selected.
|-
|-
| {{MenuCommand|Enable selection highlighting}}
| {{MenuCommand|Enable selection highlighting}}
Line 488: Line 519:
|-
|-
| {{MenuCommand|Simple color}}
| {{MenuCommand|Simple color}}
| If selected, the background for parts will have the selected color
| If selected, the background of the [[3D_view|3D view]] will have the selected color
|-
|-
| {{MenuCommand|Color gradient}}
| {{MenuCommand|Color gradient}}
| If selected, the background for parts will have a vertical color gradient. The first color is the color at the top of the background, the second one the color at the bottom.
| If selected, the background of the [[3D_view|3D view]] will have a vertical color gradient. The first color is the color at the top of the 3D view, the second the color at the bottom.
|-
|-
| {{MenuCommand|Middle color}}
| {{MenuCommand|Middle color}}
| Is only enabled if {{MenuCommand|Color gradient}} is selected. If checked, the color gradient will get the selected color as middle color.
| Is only enabled if {{MenuCommand|Color gradient}} is selected. If checked, the color gradient will get the selected color as the middle color.
|-
|-
| {{MenuCommand|Object being edited}}
| {{MenuCommand|Object being edited}}
Line 500: Line 531:
|-
|-
| {{MenuCommand|Active container}}
| {{MenuCommand|Active container}}
| Selection of the background color for active containers in the tree view. For example if there are several parts in the tree view and one part is toggled as [[PartDesign_Body#Active_Status|active body]], it will get the selected background color in the tree view.
| Selection of the background color for active containers in the tree view. For example an [[PartDesign_Body#Active_Status|active PartDesign Body]] will get the selected background color.
|}
|}


</translate>
<!--T:30-->
[[Image:Preference_Display_Tab_02.png]]
[[Image:Preferences_Display_Tab_Colors.png]]
<translate>


===Mesh view=== <!--T:192-->
===Mesh view=== <!--T:192-->
Line 514: Line 546:
On the ''Mesh view'' tab you can specify the following:
On the ''Mesh view'' tab you can specify the following:


<!--T:247-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
Line 519: Line 552:
|-
|-
| {{MenuCommand|Default mesh color}}
| {{MenuCommand|Default mesh color}}
| Selection of the default color for new meshes
| Selection of the default shape color
|-
|-
| {{MenuCommand|Default line color}}
| {{MenuCommand|Default line color}}
| Selection of the default line color for new meshes
| Selection of the default line color
|-
|-
| {{MenuCommand|Mesh transparency}}
| {{MenuCommand|Mesh transparency}}
| Specification of the default mesh transparency for new meshes
| Specification of the default mesh transparency
|-
|-
| {{MenuCommand|Line transparency}}
| {{MenuCommand|Line transparency}}
| Specification of the default line transparency for new meshes
| Specification of the default line transparency
|-
|-
| {{MenuCommand|Two-side rendering}}
| {{MenuCommand|Two-side rendering}}
| If checked, the bottom side of the surface will be rendered the same way than the top side. If not checked, it depends on the option {{MenuCommand|Enable backlight color}} (see section [[Preferences_Editor#3D_View|3D view]]). Either the backlight color will be used or black.
| If checked, the color of the interior side of faces will be the same as the exterior side. If not checked either the [[#3D_View|backlight color]], if enabled, or black will be used instead.
|-
|-
| {{MenuCommand|Show bounding-box for highlighted or selected meshes}}
| {{MenuCommand|Show bounding-box for highlighted or selected meshes}}
| If checked, a yellow bounding box will be displayed for highlighted or selected meshes.
| If checked, a yellow bounding box will be displayed for highlighted or selected meshes
|-
|-
| {{MenuCommand|Define normal per vertex}}
| {{MenuCommand|Define normal per vertex}}
| If checked, [https://en.wikipedia.org/wiki/Phong_shading Phong shading] is used, otherwise flat shading. Shading defines the appearance of surfaces.
| If checked, [https://en.wikipedia.org/wiki/Phong_shading Phong shading] is used, otherwise flat shading. Shading defines the appearance of surfaces. With flat shading the surface normals are not defined per vertex. This leads to an unrealistic appearance for curved surfaces. While Phong shading leads to a more realistic, smoother appearance.
With flat shading the surface normals are not defined per vertex that leads to a unreal appearance for curved surfaces while using Phong shading leads to a smoother appearance.
|-
|-
| {{MenuCommand|Crease angle}}
| {{MenuCommand|Crease angle}}
Line 546: Line 578:
|}
|}


</translate>
<!--T:195-->
[[Image:Mesh View Preferences.png]]
[[Image:Preferences_Display_Tab_Mesh_view.png]]
<translate>


==Workbenches== <!--T:231-->
==Workbenches== <!--T:231-->

<!--T:248-->
This preferences section has a single tab: Unloaded Workbenches.

===Unloaded Workbenches=== <!--T:249-->


<!--T:232-->
<!--T:232-->
To preserve resources, FreeCAD does not automatically load all available workbenches. And only if a workbench has been loaded will its preferences, if any, appear in the preferences editor.
To preserve resources, FreeCAD does not automatically load all available workbenches. And only if a workbench has been loaded will its preferences, if any, appear in the Preferences editor.


<!--T:233-->
<!--T:233-->
The '''Workbench''' preferences tab displays a list of installed workbenches that have not yet been loaded. To load one or more workbenches select them in the list and press the {{Button|Load Selected}} button. If a newly loaded workbench has dedicated preference they will appear in an appropriate section in the preferences editor. Some workbenches add support for additional import and export formats. Any related preferences will be added to the [[#Import-Export_settings|Import-Export settings]] section of the preferences editor.
The ''Unloaded Workbenches'' tab displays a list of installed workbenches that have not yet been loaded. To load one or more workbenches select them in the list and then press the {{Button|Load Selected}} button. If a newly loaded workbench has dedicated preference they will appear in a new section in the Preferences editor. Some workbenches add support for additional import and export formats. If there are any related preferences they will appear on one or more new tabs in the [[#Import-Export_settings|Import-Export settings]] section of the Preferences editor.


<!--T:235-->
<!--T:235-->
For a list of workbench preferences see [[#Workbench_preferences|Workbench preferences]]
For a list of workbench preferences see [[#Workbench_preferences|Workbench preferences]]


</translate>
<!--T:234-->
[[Image:Preferences_Workbenches_Tab_Unloaded_Workbenches.png]]
[[Image:WorkbenchLoader.PNG|Workbench loader interface]]
<translate>


==Import-Export settings== <!--T:143-->
==Import-Export settings== <!--T:143-->


<!--T:196-->
<!--T:196-->
The Import-Export settings affect how files are imported and exported. They are described in the page [[Import_Export_Preferences|Import Export Preferences]].
The Import-Export settings affect how files are imported and exported. They are described on the [[Import_Export_Preferences|Import Export Preferences]] page.


==Workbench preferences== <!--T:109-->
==Workbench preferences== <!--T:109-->
Line 607: Line 646:


<!--T:216-->
<!--T:216-->
{{VeryImportantMessage|This section is incomplete and requires mentioning the preference pages of each [[External Workbenches|External workbench]]}}
{{VeryImportantMessage|This section is incomplete and requires mentioning the preference pages of each [[External_workbenches|External workbench]]}}


<!--T:140-->
<!--T:140-->
Line 627: Line 666:


<!--T:226-->
<!--T:226-->
Finding which parameter is used to store which option from the Preferences Editor can require searching a bit, but the [[Std_DlgParameter|Parameter Editor]] offers a search facility, which should help.
Finding which parameter is used to store which option from the Preferences editor can require searching a bit, but the [[Std_DlgParameter|Parameter Editor]] offers a search facility, which should help.


<!--T:227-->
<!--T:227-->

Revision as of 21:28, 2 April 2021

Introduction

To start the Preferences editor select the Edit → Preferences... option from the menu. On the Mac OS the Preferences... option appears in the FreeCAD menu instead (this is the default place for preferences on the Mac).

FreeCAD uses a workbench concept, where each workbench is responsible for specific tasks and functions. A workbench can have its own preferences. These will only appear in the Preferences editor if the workbench has been loaded in the current FreeCAD session. See Workbenches below for more information.

If no workbench is loaded, four sections appear in the Preferences editor: General, Display, Workbenches, and Import-Export. Any workbenches that have been loaded, and have their own preferences, will appear below these.

Please note that pressing the Reset button in the lower left corner of the Preferences dialog will reset all FreeCAD preferences to their default values.

Some advanced preferences can only be changed in the Parameter editor. The Fine-tuning page lists some of them.

General settings

This preferences section has 7 tabs: General, Document, Selection, Editor, Output window, Macro, and Units.

General

On the General tab you can specify the following:

Name Description
Change language Selection of the language of the FreeCAD user interface
Size of recent file list Specification how many files should be listed in the recent files list
Enable tiled background If checked, the background of FreeCAD's main window will by default consist of tiles of this image:

This option only has an effect if no Style sheet is selected.

The image can be changed by adding the folders Gui/Images in the folder:

%APPDATA%/FreeCAD (on Windows),

$HOME/.FreeCAD (on Linux) or

$HOME/Library/Preferences/FreeCAD (on MacOS).

Place a file named background.png in the Images folder, and uncheck/check this option to see the changed file.

Style sheet Selection of a style sheet. Style sheets define how the user interface of FreeCAD looks. For technical details about the style sheets, see this page.
Size of toolbar icons Selection of the size for the toolbar icons
Tree view mode Customization how the tree view is shown in the panel (restart required). The options are:
  • Combo View: combine tree view and property view into one panel.
  • TreeView and PropertyView: split tree view and property view into separate panel.
  • Both: keep all three panels, and you can have two sets of tree view and property view.
Auto load module after start up Selection what workbench will be used directly after starting FreeCAD
Enable splash screen at start up If checked, a splash screen is shown when starting FreeCAD.

The splash screen image can be changed by placing a file named splash_image.png in the Images folder already mentioned under Enable tiled background.

Enable word wrap Words will be wrapped when they exceed the available horizontal space in the Python console. This console is shown using the menu View → Panels → Python console.

Document

On the Document tab you can specify the following:

Name Description
Create new document at start up If checked, FreeCAD will create a new document when started
Document save compression level Specification of the compression level for FCStd files. FCStd files are ZIP-compressed files. Therefore you can rename their suffix .FCStd to .zip and open them with a ZIP archive program.
Using Undo/Redo on documents If checked, all changes in documents are stored so that they can be undone/redone
Maximum Undo/Redo steps Specification how many Undo/Redo steps should be recorded
Allow aborting recomputation If checked, recomputations can be aborted by pressing Esc. This may slightly increase the recomputation time.
Run AutoRecovery at startup If there is a recovery file available FreeCAD will automatically run a file recovery when it is started. This way files can be restored if a crash occurred.
Save AutoRecovery information every Specification how often a recovery file is written.
Save thumbnail into project file when saving document If checked, a thumbnail will be stored when the document is saved. The thumbnail will for example be shown in the list of recent files in the Start workbench. It is possible to select a Size between 128×128 and 512×512 pixels for the thumbnail. Common sizes are the powers of two: 128, 256, 512.
Add the program logo to the generated thumbnail If checked, the FreeCAD program logo will be added to the thumbnail.
Maximum number of backup files to keep when resaving document If checked, backup files will be kept when saving the document. You can specify the number of backup files to keep. Backup files are previously saved versions of the document. The first backup file will have the file suffix .FCStd1, the second .FCStd2 and so on.
Use date and FCBak extension If checked, backup files will get the extension .FCbak and their file names get a date suffix according to the specified date format. For a description of the date format see this site.

With the default settings a backup file will for example get this name TD-Cube.20200315-215654.FCBak (original filename is TD-Cube.FCStd).

Allow duplicate object labels in one document If checked, objects can have the same label.
Disable partial loading of external linked objects If partial loading of external linked objects is enabled, only the referenced objects and their dependencies will be loaded when the linked document is auto opened together with the main document. Such a partially loaded document cannot be edited. Double click the document icon in the tree view to reload it in full. A more detailed explanation of this feature can be found on the Assembly3 documentation page
Author name All created documents will get the specified author name. Keep the author field blank if you do not want to include this information. If the option Set on save is checked, the field Last modified by will be set to the specified author when saving the file. This field can be viewed using the File → Project information menu option.
Company All created documents will get the specified company name
Default license Selection of the license for new documents. For predefined licenses the License URL will automatically be set accordingly. Select Other for a custom license.
License URL Specification of an URL describing the license selected in Default license

Selection

On the Selection tab (introduced in version 0.19) you can specify the following:

Name Description
Auto switch to the 3D view containing the selected item Enables the Tree view SyncView mode
Auto expand tree item when the corresponding object is selected in 3D view Enables the Tree view SyncSelection mode
Preselect the object in 3D view when mouse over the tree item Enables the Tree view PreSelection mode
Record selection in tree view in order to go back/forward using navigation button Enables the Tree view RecordSelection mode
Add checkboxes for selection in document tree Each document tree item will get a checkbox. This is for example useful for selecting multiple items on a touchscreen.

Editor

The editor preferences settings affect the behavior of the macro editor. This editor can be opened using the menu Macro → Macros... → Edit/Create.

The color and font settings also affect the Python console. This console is shown using the menu View → Panels → Python console.

On the Editor tab you can specify the following:

Name Description
Enable line numbers If checked, the code lines will be numbered
Tab size Specification of the tabulator raster (how many spaces). If it is for example set to 6, pressing Tab will jump to character 7 or 13 or 19 etc., depending on the current cursor position. This setting is only used if Keep tabs is selected.
Indent size Specification of how many spaces will be inserted when pressing Tab. This setting is only used if Insert spaces is selected.
Keep tabs If selected, pressing Tab will insert a tabulator with the raster defined by Tab size
Insert spaces If selected, pressing Tab will insert the amount of spaces defined by Indent size
Display Items Selection of the code type. The color and font settings will be applied to the selected type. The result can be checked in the Preview field.
Family Specification of the font family that should be used for the selected code type
Size Specification of the font size that should be used for the selected code type
Color Specification of the color that should be used for the selected code type

Output window

The output preferences affect the behavior of the Report view. This panel is shown using the menu View → Panels → Report view.

On the Output tab you can specify the following:

Name Description
Record normal messages If checked, normal messages will be recorded. They will be displayed in the Report view with the color set in Normal messages.
Record log messages If checked, log messages will be recorded. They will be displayed in the Report view with the color set in Log messages.
Record warnings If checked, warnings will be recorded. They will be displayed in the Report view with the color set in Warnings.
Record error messages If checked, error messages will be recorded. They will be displayed in the Report view with the color set in Errors.
Show report view on error If checked, the Report view will be shown automatically when an error is recorded
Show report view on warning If checked, the Report view will be shown automatically when a warning is recorded
Show report view on normal message If checked, the Report view will be shown automatically when a normal message is recorded
Show report view on log message If checked, the Report view will be shown automatically when a log message is recorded
Include a timecode for each entry If checked, each message and warning will receive a timecode
Normal messages Specification of the font color for normal messages
Log messages Specification of the font color for log messages
Warnings Specification of the font color for warning messages
Errors Specification of the font color for error messages
Redirect internal Python output to report view If checked, internal Python output will be redirected from the Python console to the Report view
Redirect internal Python errors to report view If checked, internal Python error messages will be redirected from the Python console to the Report view

Macro

On the Macro tab you can specify the following:

Name Description
Run macros in local environment If checked, variables defined by macros are created as local variables, otherwise as global Python variables
Macro path Specification of the path for macro files
Record GUI commands If checked, recorded macros will also contain user interface commands
Record as comment If checked, recorded macros will also contain user interface commands, but as comments. This is useful if you don't want to execute these commands when running the macro, but do want to see what has been done while recording.
Show script commands in python console If checked, the commands executed by macro scripts are shown in the Python console. This console is shown using the View → Panels → Python console menu option.
Size of recent macros list Controls the number of recent macros to display in the menu
Shortcut count Controls the number of recent macros that get dynamically assigned shortcuts
Keyboard Modifiers Controls which keyboard modifiers are used for the shortcuts, example Ctrl+Shift+ creates shortcuts in the form of Ctrl+Shift+1, Ctrl+Shift+2, etc.

Units

On the Units tab you can specify the following:

Name Description
User system Selection of the unit system to be used for all parts of FreeCAD
Number of decimals The number of decimals that should be shown for numbers and dimensions
Minimum fractional inch Minimum fractional inch that should be displayed. This setting is only available if the unit system Building US (ft-in/sqft/cuft) is used.

Display settings

This preferences section has three standard tabs: 3D View, Navigation and Colors. A fourth tab, Mesh view, is added if the Mesh Workbench has been loaded.

3D View

On the 3D View tab you can specify the following:

Name Description
Show coordinate system in the corner If checked, the main coordinate system will always be shown at the lower right in opened files
Show axis cross by default introduced in version 0.19 If checked, the axis cross will be shown by default at file opening or creation
Show counter of frames per second If checked, the time needed for the last operation and the resulting frame rate will always be shown at the lower left in opened files
Remember active workbench by tab introduced in version 0.19 If checked, the application will remember the active workbench for each tab in the Main view area independently. When switching to a tab this workbench will be restored automatically.
Use software OpenGL introduced in version 0.19 If checked, OpenGL will use the CPU instead of the GPU. This option is useful for troubleshooting graphics card and driver problems. Changing this option requires a restart of the application.
Use OpenGL VBO (Vertex Buffer Object) If checked, Vertex Buffer Objects (VBO) will be used. A VBO is an OpenGL feature that provides methods for uploading vertex data (position, normal vector, color, etc.) to the graphics card. VBOs offer substantial performance gains because the data resides in the graphics memory rather than the system memory and so it can be rendered directly by the GPU. For more background info see this webpage.
Render Cache introduced in version 0.19 "Render Cache" or "Render Acceleration" is explained in more detail in FreeCAD_assembly3 render-caching. There are 3 options:
  • Auto (default), let Coin3D decide where to cache.
  • Distributed, manually turn on cache for all view provider root nodes.
  • Centralized, manually turn off cache in all nodes of all view providers, and only cache at the scene graph root node. This offers the fastest rendering speed, but slower response to any scene changes.
Anti-Aliasing Selection if and what kind of multisample anti-aliasing is used
Transparent objects introduced in version 0.19 Render type of transparent objects. The types are:
  • One pass (default), rendering is done in one pass. For non-solid objects like faces or meshes this can lead to artifacts. This image shows such an artifact (black triangle) and that the type Backface pass avoids this.
  • Backface pass, has only an effect for non-solid objects. They are then rendered in two passes: Back-facing polygons are rendered in the first pass and the front-facing in the second pass.
Marker size Selection of the size of vertices (points) in the Sketcher workbench. The clickable area of points can be additionally enlarged by increasing the Pick radius.
Pick radius (px) Sets the area for picking elements in the 3D view. Larger value makes it easier to pick things, but can make some small features impossible to select.
Eye to eye distance for stereo modes Specification of the eye-to-eye distance used for stereo projections. The specified value is a factor that will be multiplied with the bounding box size of the 3D object that is currently displayed.
Backlight color If checked, backlight is enabled with the defined color. Backlight is used for rendering back sides of faces. Usually, you don't see them in solids, unless you slice one with a clipping plane, or if the faces aren't oriented correctly. It is only active for objects whose Lighting property (on the View tab) is set to One side. If disabled, back sides of faces of objects in One side lighting mode will be black.

The related Intensity setting specifies the intensity of the backlight.

Camera type Selection of the camera projection type.

Navigation

On the Navigation tab you can specify the following:

Name Description
Navigation cube If checked, the Navigation cube will always be shown.

Steps by turn defines how many steps (notches) will be applied when using the Navigation cube rotation arrows.

Corner defines where the Navigation cube is displayed on the screen when creating or opening a document.

If Rotate to nearest is checked, the 3D view is rotated to the nearest most logical state when a cube face is clicked. When it is off, clicking to a cube face will and up always to the same position, no matter in what cube state you were when you clicked the face. introduced in version 0.20

Cube size defines the size of the cube. introduced in version 0.20

3D Navigation Selection of a navigation settings set. To see what each set defines, select it and then press the Mouse... button.
Orbit style Selection of the rotation orbit style. When viewing a part in the x-y plane and being in the rotation mode of the 3D navigation, the difference is: If Trackball is selected, moving the mouse horizontally will rotate the part around the y-axis, if Turntable is selected the part will be rotated around the z-axis.
Rotation mode Defines the rotation center. Select Window center, Drag at cursor, or Object center.
Default camera orientation Selection of the camera orientation for new documents. This setting is also used by the Std ViewHome command.
New document scale Affects the initial camera zoom level for new documents. The value you set is the diameter of a sphere that fits in 3D view. Default is 100 mm. It also sets the initial size of origin features (base planes in new PartDesign Bodies).
Enable animation If checked, rotations can be animated. If for example the 3D Navigation set CAD is used and the mouse is moved while the scroll wheel and the right mouse button are pressed, parts are rotated. If one keeps the mouse moving while releasing e.g. the right mouse button, the rotation will continue as animation. To end the animation left-click with the mouse.
Zoom at cursor If checked, zoom operations will be performed at the position of the mouse pointer. Otherwise zoom operations will be performed at the center of the current view. The Zoom step defines how much will be zoomed. A zoom step of 1 means a factor of 7.5 for every zoom step.
Invert zoom If checked, the direction of zoom operations will be inverted
Disable touchscreen tilt gesture If checked, the tilting gesture will be disabled for pinch-zooming (two-finger zooming). This only affects the 3D Navigation set Gesture.

Colors

On the Colors tab you can specify the following:

Name Description
Enable preselection highlighting If checked, preselection is turned on and the specified color will be used for it. Preselection means that for example edges in parts will be highlighted while hovering over them with the mouse to indicate they can be selected.
Enable selection highlighting If checked, selection highlighting is turned on and the specified color will be used for it
Simple color If selected, the background of the 3D view will have the selected color
Color gradient If selected, the background of the 3D view will have a vertical color gradient. The first color is the color at the top of the 3D view, the second the color at the bottom.
Middle color Is only enabled if Color gradient is selected. If checked, the color gradient will get the selected color as the middle color.
Object being edited Selection of the background color for objects in the tree view that are currently edited
Active container Selection of the background color for active containers in the tree view. For example an active PartDesign Body will get the selected background color.

Mesh view

This tab is only available if the Mesh Workbench has been loaded.

On the Mesh view tab you can specify the following:

Name Description
Default mesh color Selection of the default shape color
Default line color Selection of the default line color
Mesh transparency Specification of the default mesh transparency
Line transparency Specification of the default line transparency
Two-side rendering If checked, the color of the interior side of faces will be the same as the exterior side. If not checked either the backlight color, if enabled, or black will be used instead.
Show bounding-box for highlighted or selected meshes If checked, a yellow bounding box will be displayed for highlighted or selected meshes
Define normal per vertex If checked, Phong shading is used, otherwise flat shading. Shading defines the appearance of surfaces. With flat shading the surface normals are not defined per vertex. This leads to an unrealistic appearance for curved surfaces. While Phong shading leads to a more realistic, smoother appearance.
Crease angle The crease angle is a threshold angle between two faces. It can only be set if the option Define normal per vertex is used.
If face angle ≥ crease angle, facet shading is used
If face angle < crease angle, smooth shading is used

Workbenches

This preferences section has a single tab: Unloaded Workbenches.

Unloaded Workbenches

To preserve resources, FreeCAD does not automatically load all available workbenches. And only if a workbench has been loaded will its preferences, if any, appear in the Preferences editor.

The Unloaded Workbenches tab displays a list of installed workbenches that have not yet been loaded. To load one or more workbenches select them in the list and then press the Load Selected button. If a newly loaded workbench has dedicated preference they will appear in a new section in the Preferences editor. Some workbenches add support for additional import and export formats. If there are any related preferences they will appear on one or more new tabs in the Import-Export settings section of the Preferences editor.

For a list of workbench preferences see Workbench preferences

File:Preferences Workbenches Tab Unloaded Workbenches.png

Import-Export settings

The Import-Export settings affect how files are imported and exported. They are described on the Import Export Preferences page.

Workbench preferences

This section is incomplete and requires mentioning the preference pages of each core workbench

Preferences for the more common workbenches are linked below. Some workbenches have no preferences. Other optional workbenches may not be listed. These links are also listed in Category:Preferences

External workbenches

This section is incomplete and requires mentioning the preference pages of each External workbench

Scripting

Preferences can be accessed from Python scripts using their corresponding path in the Parameter Editor. For example, the Edit → Preferences → Import-Export → DXF → Import options → Join geometry preference appears in Tools → Edit parameters → BaseApp → Preferences → Mod → Draft → dxfCreatePart and has type Boolean. It can therefore be accessed in Python using the following code:

# get:
App.ParamGet("User parameter:BaseApp/Preferences/Mod/Draft").GetBool('dxfCreatePart')
# set:
App.ParamGet("User parameter:BaseApp/Preferences/Mod/Draft").SetBool('dxfCreatePart', True)

Finding which parameter is used to store which option from the Preferences editor can require searching a bit, but the Parameter Editor offers a search facility, which should help.

It is likely a bad idea to modify the preferences of other parts of FreeCAD unless doing so at the user's request. The setter can however be used to set parameters for your own workbench, and the getter can be used to obey existing parameters (e.g. to use colors from the current theme).

Related