Preferences Editor: Difference between revisions

From FreeCAD Documentation
(Removed manual breaks <br>)
(Added "Activate overlay handling" and some minor improvements.)
 
(428 intermediate revisions by 18 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
<translate>
<translate>

<!--T:190-->
<!--T:190-->
{{Docnav
{{docnav|Document structure|Import Export Preference}}
|[[Interface_Customization|Interface Customization]]
|[[Import_Export_Preferences|Import Export Preferences]]
}}

</translate>
{{TOCright}}
<translate>

==Introduction== <!--T:213-->


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


<!--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, usually in a dedicated section, if the workbench has been loaded in the current FreeCAD session. Some workbenches add support for specific import and export formats. If there are any related preferences they will appear on one or more additional tabs in the [[#Import-Export|Import-Export]] section of the Preferences editor.
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. You may have noticed that when you select a workbench on the FreeCAD toolbar, that workbench and all its components get loaded at that moment. This includes its preferences settings.

<!--T:315-->
To preserve resources, FreeCAD does not automatically load all available workbenches. See [[#Workbenches|Workbenches]] for more information. For a list of workbench related preferences see [[#Workbench_related_preferences|Workbench related preferences]].


<!--T:6-->
<!--T:6-->
If no workbench is loaded, six sections appear in the Preferences editor: [[#General|General]], [[#Display|Display]], [[#Workbenches|Workbenches]], [[#Python|Python]], [[#Addon_Manager|Addon Manager]] and [[#Import-Export|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. When you are in a certain workbench the preferences of this workbench will appear as new section and file formats supported by the workbench will appear as new tab in the section {{MenuCommand|Import-Export}}.


<!--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.
Pressing the {{Button|Reset}} button in the lower left corner of the Preferences dialog opens a menu ({{Version|0.22}}) with options to reset preferences to their default values. You can reset the current tab, the current group, or all preferences. In {{VersionMinus|0.21}} the button will reset '''all''' preferences.


==General Settings== <!--T:4-->
<!--T:221-->
Some advanced preferences can only be changed in the [[Std_DlgParameter|Parameter editor]]. The [[Fine-tuning|Fine-tuning]] page lists some of them.

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


<!--T:5-->
<!--T:5-->
This preferences section has 6 tabs: General, Document, Editor, Output window, Macro, and Units.
This preferences section has seven tabs: General, Document, Selection, Cache, Notification Area, Report view and Help.

<!--T:332-->
In {{VersionMinus|0.21}} the seventh tab, Help, is only available if the [https://github.com/FreeCAD/FreeCAD-Help Help Addon] has been [[Std_AddonMgr|installed]].


===General=== <!--T:13-->
===General=== <!--T:13-->


<!--T:132-->
<!--T:132-->
In 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
!style="width: 66%;"|Description
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|Change language}}
| {{MenuCommand|Language}}
| Select the language of FreeCAD's user interface
| Language of the application's user interface.
|-
| {{MenuCommand|Default unit system}}
| Unit system for all parts of the application. {{Version|0.22}}: Used as the default for the [[Std_ProjectInfo|document unit system]] of new documents.
|-
| {{MenuCommand|Number of decimals}}
| The number of decimals that should be shown for numbers and dimensions.
|-
| {{MenuCommand|Ignore project unit system and use default}} {{Version|0.22}}
| If checked, project unit systems are ignored and do not override the default unit system.
|-
| {{MenuCommand|Minimum fractional inch}}
| The minimum fractional inch that should be shown for numbers and dimensions. Only available for unit systems with fractional inches.
|-
| {{MenuCommand|Number format}} {{Version|0.20}}
| Specifies the number format. The options are:
* '''Operating system''': The decimal separator defined by the operating system is used.
* '''Selected language''': The decimal separator of the selected FreeCAD interface language is used.
* '''C/POSIX''': A point is used as the decimal separator.
|-
| {{MenuCommand|Substitute decimal separator}} {{Version|0.20}}
| If checked, the numerical keypad decimal separator will be substituted with the separator defined by the {{MenuCommand|Number format}} setting. {{Version|0.21}}: Notice that if this preference is enabled, using the numerical keypad decimal separator will always print a dot/period in the [[Python_console|Python console]] and the [[Std_DlgMacroExecute#Edit|Macro editor]].
|-
| {{MenuCommand|Theme}}
| Specifies a [[Interface_Customization#Themes|theme]] to customize the appearance of the user interface.
|-
| {{MenuCommand|Size of toolbar icons}}
| Specifies the size of the toolbar icons. The options are:
* '''Small (16px)'''
* '''Medium (24px)'''
* '''Large (32px)'''
* '''Extra large (48px)'''
|-
| {{MenuCommand|Tree view mode}}
| Defines how the tree view is shown in the user interface (restart required). The options are:
* '''Combo View''': Combines the tree view and the property view into one panel.
* '''TreeView and PropertyView''': Splits the tree view and the property view into separate panels.
* '''Both''': Shows all three panels. {{VersionMinus|0.21}}
|-
|-
| {{MenuCommand|Size of recent file list}}
| {{MenuCommand|Size of recent file list}}
| Specification how many files should be listed in the recent files list
| Specifies how many files should be listed in the recent files list.

<!--T:331-->
Optionally, imported files can be excluded from this list, and exported files can be included. See [[Fine-tuning|Fine-tuning]].
|-
|-
| {{MenuCommand|Enable tiled background}}
| {{MenuCommand|Enable tiled background}}
| If checked, the background of FreeCAD's main window will by default consist of tiles of this image: [[File:Background.png|64px]]
| If checked, the background of FreeCAD's main window will by default consist of tiles of this image: [[File:Background.png|64px]]


<!--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-->
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-->
[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-->
{{FileName|$HOME/.FreeCAD}} (on Linux) or
{{FileName|$HOME/.FreeCAD}} (on Linux) or


<!--T:201-->
{{FileName|$HOME/Library/Preferences/FreeCAD}} (on MacOS).
{{FileName|$HOME/Library/Preferences/FreeCAD}} (on macOS).


<!--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}}
| Selection of a style sheet. The style sheets define how the user interface of FreeCAD looks.
|-
| {{MenuCommand|Size of toolbar icons}}
| Selection of the size for the toolbar icons
|-
| {{MenuCommand|Auto load module after start up}}
| Selection what workbench will be used directly after starting FreeCAD
|-
|-
| {{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-->
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 cursor blinking}}
| If checked the text cursor in the [[Python_console|Python console]] and the [[Std_DlgMacroExecute#Edit|Macro editor]] will blink.
| Words will be wrapped when they exceed the available horizontal space in the Python console. This console is shown using the menu {{MenuCommand|View → Panels → Python console}}.
|-
| {{MenuCommand|Activate overlay handling}} {{Version|0.22}}
| If checked, docked windows can be handled as transparent overlays.
|-
| {{MenuCommand|Preference packs}} {{Version|0.20}}
| Lists the available [[Preference_Packs|preference packs]] and also allows you to import, save, manage and revert them.
|}
|}


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


===Document=== <!--T:15-->
===Document=== <!--T:15-->


<!--T:134-->
<!--T:134-->
In 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 80: Line 147:
|-
|-
| {{MenuCommand|Create new document at start up}}
| {{MenuCommand|Create new document at start up}}
| If checked, FreeCAD will create a new document when started
| If checked, FreeCAD will create a new document when started.
|-
|-
| {{MenuCommand|Document save compression level}}
| {{MenuCommand|Document save compression level}}
| Specification of the compression level for {{FileName|FCStd}} files. {{FileName|FCStd}} files are ZIP-compressed files. Therefore you can rename their suffix {{FileName|.FCStd}} to {{FileName|.zip}} and open them with a ZIP archive program.
| Specifies the compression level for {{FileName|FCStd}} files. {{FileName|FCStd}} files are ZIP-compressed files. Therefore you can rename their suffix {{FileName|.FCStd}} to {{FileName|.zip}} and open them with a ZIP archive program.
|-
|-
| {{MenuCommand|Using Undo/Redo on documents}}
| {{MenuCommand|Using Undo/Redo on documents}}
| If checked, all changes in documents are stored so that they can be undone/redone
| If checked, all changes in documents are stored so that they can be undone/redone.
|-
|-
| {{MenuCommand|Maximum Undo/Redo steps}}
| {{MenuCommand|Maximum Undo/Redo steps}}
| Specification how many Undo/Redo steps should be recorded
| Specifies how many Undo/Redo steps should be recorded.
|-
| {{MenuCommand|Allow aborting recomputation}}
| 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}}
| 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.
| 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.
|-
|-
| {{MenuCommand|Save AutoRecovery information every}}
| {{MenuCommand|Save AutoRecovery information every}}
| Specification how often a recovery file is written.
| Specifies how often a recovery file is written.
|-
|-
| {{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]].
| 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 {{MenuCommand|Size}} between 128×128 and 512×512 pixels for the thumbnail. Common sizes are 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.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}}
| If checked, backup files will get the extension {{FileName|.FCbak}} and their file names get a date suffix according to the specified {{MenuCommand|Date format}}. For a description of the date format see [https://devhints.io/datetime Date & time formats cheatsheet].
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}}
| 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.
| Specifies 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}}
| Specification of an URL describing the license selected in {{MenuCommand|Default license}}
| Specifies an URL describing the license selected in {{MenuCommand|Default license}}.
|}
|}


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


===Editor=== <!--T:17-->
===Selection=== <!--T:228-->


<!--T:133-->
<!--T:229-->
On the ''Selection'' tab you can specify the following:
The editor preferences settings affect the behavior of the macro editor. This editor can be opened using the menu {{MenuCommand|Macro → Macros... → Edit/Create}}.


<!--T:238-->
The color and font settings also affect the [[Python console|Python console]]. This console is shown using the menu {{MenuCommand|View → Panels → Python console}}.

<!--T:142-->
In the ''Editor'' tab you can specify the following:
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
!style="width: 66%;"|Description
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|Display Items}}
| {{MenuCommand|Auto switch to the 3D view containing the selected item}}
| Enables the [[Std_TreeSyncView|Tree view SyncView mode]].
| 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.
|-
|-
| {{MenuCommand|Auto expand tree item when the corresponding object is selected in 3D view}}
| {{MenuCommand|Family}}
| Enables the [[Std_TreeSyncSelection|Tree view SyncSelection mode]].
| Specification of the font family that should be used for the selected code type
|-
|-
| {{MenuCommand|Size}}
| {{MenuCommand|Preselect the object in 3D view when mouse over the tree item}}
| Enables the [[Std_TreePreSelection|Tree view PreSelection mode]].
| Specification of the font size that should be used for the selected code type
|-
|-
| {{MenuCommand|Enable line numbers}}
| {{MenuCommand|Record selection in tree view in order to go back/forward using navigation button}}
| Enables the [[Std_TreeRecordSelection|Tree view RecordSelection mode]].
| If checked, the code lines will be numbered
|-
|-
| {{MenuCommand|Tab size}}
| {{MenuCommand|Add checkboxes for selection in document tree}}
| Each [[Tree_view|Tree view]] item will get a checkbox. This is for example useful for selecting multiple items on a touchscreen.
| 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.
|}

<!--T:301-->
[[Image:Preferences_General_Tab_Selection.png]]

===Cache=== <!--T:270-->

<!--T:274-->
These preferences are related to the cache directory where FreeCAD stores temporary files.

<!--T:271-->
On the ''Cache'' tab ({{Version|0.20}}) you can specify the following:

<!--T:272-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|Indent size}}
| {{MenuCommand|Location}}
| Specifies the path of the cache directory.
| Specification of how many spaces will be inserted when pressing {{KEY|Tab}}. This setting is only used if {{MenuCommand|Insert spaces}} is selected.
|-
|-
| {{MenuCommand|Keep tabs}}
| {{MenuCommand|Check periodically at program start}}
| Controls the frequency with which the directory size is checked. The options are:
| If selected, pressing {{KEY|Tab}} will insert a tabulator with the raster defined by {{MenuCommand|Tab size}}
* '''Always'''
* '''Daily'''
* '''Weekly'''
* '''Monthly'''
* '''Yearly'''
* '''Never'''
|-
|-
| {{MenuCommand|Insert spaces}}
| {{MenuCommand|Cache size limit}}
| Specifies the maximum size of the directory. You will be notified if a check is performed and the size exceeds this value. The options are:
| If selected, pressing {{KEY|Tab}} will insert the amount of spaces defined by {{MenuCommand|Indent size}}
* '''100 MB'''
* '''300 MB'''
* '''500 MB'''
* '''1 GB'''
* '''2 GB'''
* '''3 GB'''
|-
| {{MenuCommand|Current cache size}}
| Shows the current size of the directory, if available. Press the {{Button|Check now...}} button to update the value.
|}
|}


<!--T:18-->
<!--T:302-->
[[Image:Preference_General_Tab_03.png]]
[[Image:Preferences_General_Tab_Cache.png]]


===Output window=== <!--T:19-->
===Notification Area=== <!--T:319-->


<!--T:135-->
<!--T:320-->
The output preferences affect the behavior of the [[Report view|Report view]].
These preferences control the Notification Area and its notifications.

<!--T:321-->
On the ''Notification Area'' tab ({{Version|0.21}}) you can specify the following:


<!--T:322-->
In the ''Output'' tab you can specify the following:
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
!style="width: 66%;"|Description
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|Record log messages}}
| {{MenuCommand|Enable Notification Area}}
| If checked, the Notification Area will appear in the status bar.
| If checked, also log messages will be recorded. They will be output in the Report view panel with the color set in {{MenuCommand|Log messages}}. This panel is shown using the menu {{MenuCommand|View → Panels → Report view}}.
|-
|-
| {{MenuCommand|Record warnings}}
| {{MenuCommand|Enable non-intrusive notifications}}
| If checked, warnings will be recorded. They will be output in the Report view panel with the color set in {{MenuCommand|Warnings}}.
| If checked, non-intrusive notifications will appear next to the Notification Area in the status bar.
|-
|-
| {{MenuCommand|Record error messages}}
| {{MenuCommand|Errors}}
| If checked, error messages will be recorded. They will be output in the Report view panel with the color set in {{MenuCommand|Errors}}
| If checked, errors will appear in the Notification Area.
|-
|-
| {{MenuCommand|Normal messages}}
| {{MenuCommand|Warnings}}
| If checked, warnings will appear in the Notification Area.
| Specification of the font color for normal messages in the Report view panel.
|-
|-
| {{MenuCommand|Log messages}}
| {{MenuCommand|Maximum Duration}}
| Maximum duration during which notifications are shown (unless mouse buttons are clicked).
| Specification of the font color for log messages in the Report view panel.
|-
|-
| {{MenuCommand|Warnings}}
| {{MenuCommand|Minimum Duration}}
| Minimum duration (idem).
| Specification of the font color for warning messages in the Report view panel.
|-
|-
| {{MenuCommand|Errors}}
| {{MenuCommand|Maximum Number of Notifications}}
| Maximum number of notifications shown simultaneously.
| Specification of the font color for error messages in the Report view panel.
|-
|-
| {{MenuCommand|Redirect internal Python output to report view}}
| {{MenuCommand|Notification width}}
| Width of the Notification Area in pixels.
| If checked, internal Python output will be redirected from the Python console to the Report view panel. The Python console is shown using the menu {{MenuCommand|View → Panels → Python console}}
|-
| {{MenuCommand|Hide when other window is activated}}
| If checked, open notifications will disappear when another window is activated.
|-
| {{MenuCommand|Do not show when inactive}}
| If checked, notifications will not appear if the FreeCAD window is not the active window.
|-
| {{MenuCommand|Maximum Messages (0 &#61; no limit)}}
| The maximum number of messages kept in the list. Set to 0 for no limit.
|-
|-
| {{MenuCommand|Redirect internal Python errors to report view}}
| {{MenuCommand|Auto-remove User Notifications}}
| If checked, internal Python error messages will be redirected from the Python console to the Report view panel.
| If checked, notifications will be removed from the message list when the '''Maximum Duration''' has elapsed.
|}
|}


<!--T:20-->
<!--T:323-->
[[Image:Preference_General_Tab_04.png]]
[[Image:Preferences_General_Tab_Notification_Area.png]]


===Macro=== <!--T:21-->
===Report view=== <!--T:324-->


<!--T:131-->
<!--T:135-->
These preferences control the behavior of the [[Report_view|Report view]]. This panel can be opened using the {{MenuCommand|View → Panels → Report view}} menu option.
These options control certain aspects of running [[macros|macros]].

<!--T:205-->
On the ''Report view'' tab you can specify the following:


<!--T:240-->
In the ''Macro'' tab you can specify the following:
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
!style="width: 66%;"|Description
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|Run macros in local environment}}
| {{MenuCommand|Record 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}}.
| If checked, variables defined by macros are created as local variables, otherwise as global Python variable
|-
|-
| {{MenuCommand|Macro path}}
| {{MenuCommand|Record 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}}.
| Specification of a path to macro files
|-
|-
| {{MenuCommand|Recording GUI commands}}
| {{MenuCommand|Record warnings}}
| If checked, warnings will be recorded. They will be displayed in the [[Report_view|Report view]] with the color set in {{MenuCommand|Warnings}}.
| If checked, [[Std_DlgMacroRecord|recorded macros]] will also contain user interface commands
|-
|-
| {{MenuCommand|Record as comment}}
| {{MenuCommand|Record error messages}}
| If checked, error messages will be recorded. They will be displayed in the [[Report_view|Report view]] with the color set in {{MenuCommand|Errors}}.
| 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.
|-
|-
| {{MenuCommand|Show script commands in python console}}
| {{MenuCommand|Show report view on error}}
| If checked, the [[Report_view|Report view]] will be shown automatically when an error is recorded.
| 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}}.
|-
| {{MenuCommand|Show report view on warning}}
| If checked, the [[Report_view|Report view]] will be shown automatically when a warning is recorded.
|-
| {{MenuCommand|Show report view on normal message}}
| If checked, the [[Report_view|Report view]] will be shown automatically when a normal message is recorded.
|-
| {{MenuCommand|Show report view on log message}}
| If checked, the [[Report_view|Report view]] will be shown automatically when a log message is recorded.
|-
| {{MenuCommand|Include a timecode for each entry}}
| If checked, each message and warning will receive a timecode.
|-
| {{MenuCommand|Normal messages}}
| Specifies the font color for normal messages.
|-
| {{MenuCommand|Log messages}}
| Specifies the font color for log messages.
|-
| {{MenuCommand|Warnings}}
| Specifies the font color for warning messages.
|-
| {{MenuCommand|Errors}}
| Specifies the font color for error messages.

<!--T:241-->
|-
| {{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]].
|-
| {{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]].
|}
|}


<!--T:22-->
<!--T:305-->
[[Image:Preference_General_Tab_05.png]]
[[Image:Preferences_General_Tab_Report_view.png]]


===Units=== <!--T:23-->
===Help=== <!--T:288-->


<!--T:106-->
<!--T:290-->
In the ''Units'' tab you can specify the following:
On the ''Help'' tab you can specify the following:

<!--T:291-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
!style="width: 66%;"|Description
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|User system}}
| {{MenuCommand|Help location}}
| Specifies the location of the Help files. The options are:
| Selection of a unit system that should be used for all parts of FreeCAD
* {{MenuCommand|Online}}: Enter the URL or leave blank to use the automatic [https://github.com/FreeCAD/FreeCAD-documentation/tree/main/wiki GitHub URL].
: {{MenuCommand|Translation suffix}}: If {{Value|https://wiki.freecad.org/}} is used, a [https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes language suffix] can be specified. Use for example {{Value|fr}} for the French translation. Must be blank for the GitHub URL.
* {{MenuCommand|From disk location}}: Enter the path where the downloaded FreeCAD documentation can be found. To download the documentation select the ''offline-documentation'' addon from the Workbenches list in the [[Std_AddonMgr|Addon Manager]].
|-
|-
| {{MenuCommand|Number of decimals}}
| {{MenuCommand|Display}}
| Specifies where the documentation should be displayed. The options are:
| The number of decimals that should be shown for numbers and dimensions in FreeCAD
* {{MenuCommand|In a new FreeCAD tab}}: The documentation is displayed on a new tab in the [[Main_view_area|Main view area]].
* {{MenuCommand|In your default web browser}}: The documentation is displayed in the default web browser.
* {{MenuCommand|In a separate, embeddable, dialog}}: The documentation is displayed in a separate dialog. This dialog can be docked on top of the [[Combo_view|Combo view]] for example.
|-
|-
| {{MenuCommand|Minimum fractional inch}}
| {{MenuCommand|Custom stylesheet}}
| Specifies an optional custom stylesheet. Not used for the Wiki URL.
| Minimum fractional inch that should be displayed. This setting is only available if the unit system '''Building US (ft-in/sqft/cuft)''' is used.
|}
|}


<!--T:24-->
<!--T:308-->
[[Image:Preference_General_Tab_06.png]]
[[Image:Preferences_General_Tab_Help.png]]


==Display settings== <!--T:25-->
==Display== <!--T:25-->


<!--T:107-->
<!--T:107-->
This preferences section has two general tabs, 3D View and Colors, and further tabs depending in the used workbenches.
This preferences section has three standard tabs: 3D View, Navigation and Colors. A fourth tab, Mesh view, is added if the [[Mesh_Workbench|Mesh Workbench]] has been loaded.


===3D View=== <!--T:108-->
===3D View=== <!--T:108-->

<!--T:144-->
This tab is always available, and controls certain characteristics of the [[3D view|3D view]].


<!--T:137-->
<!--T:137-->
In 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 274: Line 434:
|-
|-
| {{MenuCommand|Show coordinate system in the corner}}
| {{MenuCommand|Show coordinate system in the corner}}
| If checked, the main coordinate system will always be shown at the lower right in opened files
| If checked, the main coordinate system will be shown in the lower right corner of the [[3D_view|3D view]].
The {{MenuCommand|Relative size}} ({{Version|0.20}}) defines the size of the representation as a percentage of the view size (the minimum of its height and width).
|-
| {{MenuCommand|Show axis cross by default}}
| If checked, the axis cross will be shown by default in the [[3D_view|3D view]].
|-
|-
| {{MenuCommand|Show counter of frames per second}}
| {{MenuCommand|Show counter of frames per second}}
| If checked, the time needed for the last operation and the resulting [https://en.wikipedia.org/wiki/Frame_rate frame rate] will always be shown at the lower left in opened files
| If checked, the time needed for the last operation and the resulting [https://en.wikipedia.org/wiki/Frame_rate frame rate] will be shown in the lower left corner of the [[3D_view|3D view]].
|-
|-
| {{MenuCommand|Show navigation cube}}
| {{MenuCommand|Use software OpenGL}}
| If checked, [https://en.wikipedia.org/wiki/OpenGL 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.
| If checked, the [[Navigation_Cube|navigation cube]] will always be shown at the selected {{MenuCommand|Corner}} in opened files
|-
|-
| {{MenuCommand|Use OpenGL 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 video device. VBOs offer substantial performance gains because the data resides in the video device memory rather than the system memory and so it can be rendered directly by the video device. 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 Understanding OpenGL Objects].
|-
|-
| {{MenuCommand|Enable animation}}
| {{MenuCommand|Render Cache}}
| "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]. The options are:
| 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.
* '''Auto''': Let Coin3D decide where to cache (default).
|-
* '''Distributed''': Manually turn on cache for all view provider root nodes.
| {{MenuCommand|3D Navigation}}
* '''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.
| Selection of a navigation settings set. To see what each set defines, select a set and press the button {{Button|Mouse...}}.
|-
| {{MenuCommand|Orbit style}}
| Selection of the rotation orbit style. When viewing a part in the x-y plane an 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.
|-
|-
| {{MenuCommand|Anti-Aliasing}}
| {{MenuCommand|Anti-Aliasing}}
| Selection if and what kind of [https://en.wikipedia.org/wiki/Multisample_anti-aliasing multisample anti-aliasing] is used
| Specifies if and what type of [https://en.wikipedia.org/wiki/Multisample_anti-aliasing multisample anti-aliasing] is used
|-
|-
| {{MenuCommand|New Document Camera Orientation}}
| {{MenuCommand|Transparent objects}}
| Specifies the render type of transparent objects. The options are:
| Selection of the camera orientation for new documents
* '''One pass''': Rendering is done in one pass (default). This can lead to triangular artifacts. If these occur the type '''Backface pass''' can be used to avoid them.
* '''Backface pass''': Rendering is done in two passes. Back-facing polygons are rendered in the first pass and front-facing polygons in the second pass.
|-
|-
| {{MenuCommand|New Document Scale}}
| {{MenuCommand|Marker size}}
| Specifies 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}}.
| 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).
|-
|-
| {{MenuCommand|Zoom at cursor}}
| {{MenuCommand|Pick radius (px)}}
| Sets the area for picking elements in the [[3D_view|3D view]]. Larger value makes it easier to pick things, but can make some small features impossible to select.
| 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}}
| If checked, the direction of zoom operations will be inverted.
|-
| {{MenuCommand|Disable touchscreen tilt gesture}}
| If checked, the tilting gesture will be disabled for pinch-zooming (two-finger zooming). This only affects the {{MenuCommand|3D Navigation}} set ''Gesture''.
|-
| {{MenuCommand|Drag at cursor}}
| If checked, rotations in 3D will use the current cursor position as center for the rotation. Otherwise always the center of the screen will be used.
|-
| {{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).
|-
|-
| {{MenuCommand|Eye to eye distance for stereo modes}}
| {{MenuCommand|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 [[Property_editor#View|bounding box]] size of the 3D object that is currently displayed.
| Specifies the eye-to-eye distance used for stereo projections. The specified value is a factor that will be multiplied with the [[Property_editor#View|bounding box]] size of the 3D object that is currently displayed.
|-
|-
| {{MenuCommand|Enable 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 the 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 used for objects whose Lighting property (on the View tab) is set to '''One side'''. If disabled, the back side of the faces of those objects will be black.
The related {{MenuCommand|Intensity}} setting specifies the intensity of the backlight.
|-
| {{MenuCommand|Intensity of backlight}}
| Specification of the intensity of the backlight. This setting is only enabled if {{MenuCommand|Enable backlight color}} is checked.
|-
|-
| {{MenuCommand|Camera type}}
| {{MenuCommand|Camera type}}
| Specifies the camera projection type. The options are:
| Selection of the camera projection type.<br/>If '''Perspective rendering''' is selected, objects will appear in a [https://en.wikipedia.org/wiki/Perspective_projection perspective projection].<br/>If '''Orthographic rendering''' is selected, objects will be projected in [https://en.wikipedia.org/wiki/Orthographic_projection orthographic projection].
* '''Perspective rendering''': Objects will appear in a [https://en.wikipedia.org/wiki/Perspective_projection perspective projection].
* '''Orthographic rendering''': Objects will be appear in an [https://en.wikipedia.org/wiki/Orthographic_projection orthographic projection].
|}
|}


<!--T:28-->
<!--T:309-->
[[Image:Preference_Display_Tab_01.png]]
[[Image:Preferences_Display_Tab_3D_View.png]]


===Colors=== <!--T:29-->
===Navigation=== <!--T:218-->


<!--T:145-->
<!--T:220-->
On the ''Navigation'' tab you can specify the following:
This tab is always available.


<!--T:138-->
<!--T:245-->
In the ''Colors'' tab you can specify the following:
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
!style="width: 66%;"|Description
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|Enable preselection highlighting}}
| {{MenuCommand|Navigation cube}}
| If checked, the [[Navigation_Cube|Navigation cube]] will be shown in the [[3D_view|3D view]].
| 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.

<!--T:250-->
{{MenuCommand|Steps by turn}} defines the number of steps required for a full rotation when using the Navigation cube rotation arrows.

<!--T:252-->
If {{MenuCommand|Rotate to nearest}} is checked, the 3D view is rotated to the nearest most logical position, based on the current orientation of the cube, when a cube face is clicked. Else clicking a face will always result in the same rotation. {{Version|0.20}}

<!--T:253-->
{{MenuCommand|Cube size}} defines the size of the cube. {{Version|0.20}}

<!--T:325-->
{{MenuCommand|Color}} sets the base color for all elements. {{Version|0.21}}

<!--T:251-->
{{MenuCommand|Corner}} defines where the Navigation cube is displayed in the [[3D_view|3D view]]. The options are:
* '''Top left'''
* '''Top right'''
* '''Bottom left'''
* '''Bottom right'''

<!--T:296-->
{{MenuCommand|Font name}} specifies the font used for the cube's texts. {{Version|0.21}}

<!--T:297-->
{{MenuCommand|Font size}} sets the size of the font used for the cube's texts. {{Version|0.21}}

<!--T:298-->
|-
|-
| {{MenuCommand|Enable selection highlighting}}
| {{MenuCommand|3D Navigation}}
| Specifies a [[Mouse_navigation|mouse navigation style]]. To see the details of each style, select it and then press the {{Button|Mouse...}} button.
| If checked, selection highlighting is turned on and the specified color will be used for it
|-
|-
| {{MenuCommand|Pick radius}}
| {{MenuCommand|Orbit style}}
| Specifies the rotation orbit style used when in rotation mode. The options are:
| Sets the area for picking elements in 3D view. Larger value makes it easier to pick things, but can make some small features impossible to select.
* '''Turntable''': Moving the mouse will divide the rotation in steps, rotations around the different axes are performed sequentially.
* '''Trackball''': Rotations around the different axes are performed simultaneously.
* '''Free Turntable''': Like '''Trackball''', but if possible the rotation axis is kept collinear with the global 3D view axis. {{Version|0.21}}
|-
|-
| {{MenuCommand|Simple color}}
| {{MenuCommand|Rotation mode}}
| Defines the rotation center. The options are:
| If selected, the background for parts will have the selected color
* '''Window center'''
* '''Drag at cursor'''
* '''Object center'''
|-
|-
| {{MenuCommand|Color gradient}}
| {{MenuCommand|Default camera orientation}}
| Specifies the camera orientation for new documents. This setting is also used by the [[Std_ViewHome|Std ViewHome]] command.
| If selected, the background for parts will have the selected color gradient
|-
|-
| {{MenuCommand|Middle color}}
| {{MenuCommand|Camera zoom}}
| Affects the initial camera zoom level for new documents. The value you set is the diameter of a sphere that fits in [[3D_view|3D view]]. The default is 100 mm. It also sets the initial size of origin features (base planes in new [[PartDesign_Body|PartDesign Bodies]] and [[Std_Part|Std Parts]]).
| Is only enabled if {{MenuCommand|Color gradient}} is selected. If checked, the color gradient will get the selected color as middle color.
|-
|-
| {{MenuCommand|Object being edited}}
| {{MenuCommand|Enable animation}}
| If checked, and {{MenuCommand|3D Navigation}} is set to '''CAD''', rotations can be animated. If the mouse is moved while the scroll wheel and the right mouse button are pressed, the view is rotated. If one keeps the mouse moving while releasing the right mouse button, the rotation will continue. To end this animation left-click with the mouse.
| Selection of the background color for objects in the tree view that are currently edited
|-
|-
| {{MenuCommand|Active container}}
| {{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.
| 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.
|-
| {{MenuCommand|Invert zoom}}
| If checked, the direction of zoom operations will be inverted.
|-
| {{MenuCommand|Disable touchscreen tilt gesture}}
| If checked, and {{MenuCommand|3D Navigation}} is set to '''Gesture''', the tilting gesture will be disabled for pinch-zooming (two-finger zooming).
|-
| {{MenuCommand|Enable rotation center indication}}
| If checked, the rotation center of the view is shown when dragging. {{Version|0.22}}
|}
|}


<!--T:30-->
<!--T:310-->
[[Image:Preference_Display_Tab_02.png]]
[[Image:Preferences_Display_Tab_Navigation.png]]


===Part colors=== <!--T:31-->
===Colors=== <!--T:29-->


<!--T:136-->
<!--T:138-->
On the ''Colors'' tab you can specify the following:
This tab is only shown if you are in the [[Part_Module|Part]] or [[PartDesign_Workbench|PartDesign Workbench]] or if you have been in these workbenches before.


<!--T:139-->
<!--T:246-->
In the ''Part colors'' tab you can specify the following:
{| class="wikitable float-right mw-collapsible mw-collapsed"
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 33%;"|Name
!style="width: 66%;"|Description
!style="width: 66%;"|Description
|-
|-
| {{MenuCommand|Default shape color}}
| {{MenuCommand|Enable preselection highlighting}}
| If checked, preselection is turned on and the specified color will be used for it. Preselection means that for example edges of objects will be highlighted while hovering over them with the mouse to indicate they can be selected.
| Selection of the default color for new shapes. If the option {{MenuCommand|Random shape color}} is set, a random color is used instead.
|-
|-
| {{MenuCommand|Default line color}}
| {{MenuCommand|Enable selection highlighting}}
| If checked, selection highlighting is turned on and the specified color will be used for it.
| Selection of the default line color for new shapes
|-
|-
| {{MenuCommand|Default line width}}
| {{MenuCommand|Simple color}}
| If selected, the background of the [[3D_view|3D view]] will have the specified color.
| Specification of the default line thickness for new shapes
|-
|-
| {{MenuCommand|Default vertex color}}
| {{MenuCommand|Linear gradient}}
| If selected, the background of the [[3D_view|3D view]] will have a vertical color gradient defined by the specified '''Top''' and '''Bottom''' colors. if enabled, a '''Middle''' color can also be specified. Press the {{Button|[[Image:Button_sort.svg|16px]]}} button ({{Version|0.21}}) to switch the top and bottom colors.
| Selection of the default color for new [[Glossary#Vertex|vertices]]
|-
|-
| {{MenuCommand|Default vertex size}}
| {{MenuCommand|Radial gradient}} {{Version|0.21}}
| If selected, the background of the [[3D_view|3D view]] will have a radial color gradient defined by the specified '''Central''' and '''End''' colors. if enabled, a '''Midway''' color can also be specified. Press the {{Button|[[Image:Button_sort.svg|16px]]}} button to switch the central and end colors.
| Specification of the default size for new [[Glossary#Vertex|vertices]]
|-
|-
| {{MenuCommand|Bounding box color}}
| {{MenuCommand|Object being edited}}
| Selection of the color of [[Property_editor#View|bounding boxes]] in the 3D view
| Specifies the background color for objects in the tree view that are currently edited.
|-
|-
| {{MenuCommand|Default text color}}
| {{MenuCommand|Active container}}
| Specifies the background color for active containers in the tree view. For example an [[PartDesign_Body#Active_Status|active PartDesign Body]] will get this color.
| Selection of the default text color for document annotations. There is currently no dialog to add annotations to documents. Annotations can only be added using the Python console with this command:<br/>''obj=App.ActiveDocument.addObject("App::Annotation","Label")''<br/>This console is shown using the menu {{MenuCommand|View → Panels → Python console}}.
|}
|}


<!--T:32-->
<!--T:311-->
[[Image:Preference_Display_Tab_03.png]]
[[Image:Preferences_Display_Tab_Colors.png]]


===Mesh view=== <!--T:192-->
===Mesh view=== <!--T:192-->


<!--T:193-->
<!--T:193-->
This tab is only shown if you are in the [[Mesh_Workbench|Mesh Workbench]] or if you have been in this workbench before.
This tab is only available if the [[Mesh_Workbench|Mesh Workbench]] has been loaded.


<!--T:194-->
<!--T:194-->
In 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 421: Line 614:
|-
|-
| {{MenuCommand|Default mesh color}}
| {{MenuCommand|Default mesh color}}
| Selection of the default color for new meshes
| Specifies the default face color.
|-
|-
| {{MenuCommand|Default line color}}
| {{MenuCommand|Default line color}}
| Selection of the default line color for new meshes
| Specifies the default line color.
|-
|-
| {{MenuCommand|Mesh transparency}}
| {{MenuCommand|Mesh transparency}}
| Specification of the default mesh transparency for new meshes
| Specifies the default mesh transparency.
|-
|-
| {{MenuCommand|Line transparency}}
| {{MenuCommand|Line transparency}}
| Specification of the default line transparency for new meshes
| Specifies 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 default value for the {{PropertyView|Lighting}} property is {{value|Two side}} instead of {{value|One side}}. {{value|Two side}} means the color of the interior side of faces is the same as the color of the exterior side. {{value|One side}} means their color is either the [[#3D_View|backlight color]], if enabled, or black.
|-
|-
| {{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, the default value for the {{PropertyView|Selection Style}} property is {{value|BoundBox}} instead of {{value|Shape}}. {{value|BoundBox}} means a highlighted bounding box is displayed if meshes are highlighted or selected. {{value|Shape}} means the shape itself is then highlighted.
|-
|-
| {{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}}
| The crease angle is a threshold angle between two faces. It can only be set if the option {{MenuCommand|Define normal per vertex}} is used.
| The crease angle is a threshold angle between two faces. It can only be set if the option {{MenuCommand|Define normal per vertex}} is used.
:If face angle ≥ crease angle, facet shading is used
:If face angle ≥ crease angle, facet shading is used.
:If face angle < crease angle, smooth shading is used
:If face angle < crease angle, smooth shading is used.
|}
|}


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


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

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

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

<!--T:316-->
These preferences control workbench loading.

<!--T:317-->
On the ''Available Workbenches'' tab you can specify the following:

<!--T:318-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 66%;"|Description
|-
| {{MenuCommand|Workbench list}}
| The list displays all installed workbenches. The list can be reordered by drag and drop ({{Version|0.21}}) and sorted by right-clicking the list and selecting {{MenuCommand|Sort alphabetically}} ({{Version|0.22}}). The order of the list also determines the order of the [[Std_Workbench|Workbench selector]].
* {{Version|0.21}}: {{MenuCommand|First checkbox in each row}}: If checked, the workbench will be available in the Workbench selector in the next FreeCAD session. The start up workbench cannot be unchecked. Unchecked workbenches are moved to the bottom of the list.
* {{MenuCommand|Auto-load}}: If checked, the workbench will auto-load when FreeCAD starts. Loading more workbenches will make the start up slower, but switching between workbenches that have already been loaded is faster.
* {{Button|Load}}: Press this button to load the workbench in the current FreeCAD session.
|-
| {{MenuCommand|Start up workbench}}
| The workbench that is activated when FreeCAD starts.
|-
| {{MenuCommand|Workbench selector position}} {{Version|0.21}}
| Defines where the [[Std_Workbench|Workbench selector]] appears. The options are:
* '''Toolbar''': In a dedicated toolbar.
* '''Left corner''': In the left corner of the menubar.
* '''Right corner''': In the right corner of the menubar.
|-
| {{MenuCommand|Remember active workbench by tab}}
| If checked, FreeCAD will remember and restore the workbench that was active for each tab in the [[Main_view_area|Main view area]].
|}

<!--T:313-->
[[Image:Preferences_Workbenches_Tab_Available_Workbenches.png]]

==Python== <!--T:326-->

<!--T:327-->
This preferences section ({{Version|0.21}}) has three tabs: Macro, Python console and Editor.

===Macro=== <!--T:21-->

<!--T:206-->
On the ''Macro'' tab you can specify the following:

<!--T:242-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 66%;"|Description
|-
| {{MenuCommand|Run macros in local environment}}
| If checked, variables defined by macros are created as local variables, otherwise as global Python variables.
|-
| {{MenuCommand|Macro path}}
| Specifies the path for macro files.
|-
| {{MenuCommand|Record GUI commands}}
| If checked, [[Std_DlgMacroRecord|recorded macros]] will also contain user interface commands.
|-
| {{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 these commands when running the macro, but do want to see what has been done while recording.
|-
| {{MenuCommand|Show script commands in python console}}
| If checked, the commands executed by macro scripts are shown in the Python console. This console can be opened using the {{MenuCommand|View → Panels → Python console}} menu option.
|-
| {{MenuCommand|Size of recent macro list}}
| Controls the number of recent macros to display in the menu.
|-
| {{MenuCommand|Shortcut count}}
| Controls the number of recent macros that get dynamically assigned shortcuts.
|-
| {{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.
|}

<!--T:328-->
[[Image:Preferences_Python_Tab_Macro.png]]

===Python console=== <!--T:275-->

<!--T:276-->
These preferences control the behavior of the [[Python_console|Python console]]. This console can be opened using the {{MenuCommand|View → Panels → Python console}} menu option.

<!--T:277-->
Note that the color and font settings for the console are defined on the [[#Editor|Editor]] tab.

<!--T:278-->
On the ''Python console'' tab ({{Version|0.20}}) you can specify the following:

<!--T:279-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 66%;"|Description
|-
| {{MenuCommand|Enable word wrap}}
| If checked, words will be wrapped if they exceed the available horizontal space in the console.
|-
| {{MenuCommand|Enable block cursor}}
| If checked, the cursor will have a block shape.
|-
| {{MenuCommand|Save history}}
| If checked, Python history is saved across sessions.
|}

<!--T:329-->
[[Image:Preferences_Python_Tab_Python_console.png]]

===Editor=== <!--T:17-->

<!--T:133-->
These preferences control the behavior of the [[Std_DlgMacroExecute#Edit|Macro editor]]. This editor can be opened using the {{MenuCommand|Macro → Macros... → Edit}} or {{menuCommand|Create}} menu option.

<!--T:204-->
The color and font settings are also used by the [[#Python_console|Python console]].

<!--T:142-->
On the ''Editor'' tab you can specify the following:

<!--T:239-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 66%;"|Description
|-
| {{MenuCommand|Enable line numbers}}
| If checked, the code lines will be numbered.
|-
| {{MenuCommand|Enable block cursor}}
| If checked, the cursor will have a block shape.
|-
| {{MenuCommand|Tab size}}
| Specifies 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}}
| Specifies how many spaces will be inserted when pressing {{KEY|Tab}}. This setting is only used if {{MenuCommand|Insert spaces}} is selected.
|-
| {{MenuCommand|Keep tabs}}
| If selected, pressing {{KEY|Tab}} will insert a tabulator with the raster defined by {{MenuCommand|Tab size}}.
|-
| {{MenuCommand|Insert spaces}}
| If selected, pressing {{KEY|Tab}} will insert the amount of spaces defined by {{MenuCommand|Indent size}}.
|-
| {{MenuCommand|Display Items}}
| Specifies the code type the color and font settings will be applied to. The result can be checked in the {{MenuCommand|Preview}} field.
|-
| {{MenuCommand|Family}}
| Specifies the font family that should be used for the selected code type.
|-
| {{MenuCommand|Size}}
| Specifies the font size that should be used for the selected code type.
|-
| {{MenuCommand|Color}}
| Specifies the color that should be used for the selected code type.
|}

<!--T:330-->
[[Image:Preferences_Python_Tab_Editor.png]]

==Addon Manager== <!--T:281-->

<!--T:282-->
This preferences section has a single tab: Addon manager options.

===Addon manager options=== <!--T:283-->

<!--T:284-->
These preferences control the behavior of the [[Std AddonMgr|Addon manager]].

<!--T:285-->
On the ''Addon manager options'' tab ({{Version|0.20}}) you can specify the following:

<!--T:286-->
{| class="wikitable float-right mw-collapsible mw-collapsed"
!style="width: 33%;"|Name
!style="width: 66%;"|Description
|-
| {{MenuCommand|Automatically check for updates at start (requires git)}}
| If checked, the Addon manager will check for updates when it is launched. Git must be installed for this to work.
|-
| {{MenuCommand|Download Macro metadata (approximately 10MB)}}
| If checked, macro metadata is downloaded for display in the Addon manager's main addon listing. This data is cached locally.
|-
| {{MenuCommand|Cache update frequency}}
| Controls the frequency with which the locally cached addon availability and metadata information is updated. The options are:
* '''Manual (no automatic updates)'''
* '''Daily'''
* '''Weekly'''
|-
| {{MenuCommand|Hide Addons marked Python 2 Only}}
| If checked, addons marked as "Python 2 Only" are not included in the listing. These addons are unlikely to work in the current FreeCAD version.
|-
| {{MenuCommand|Hide Addons marked Obsolete}}
| If checked, addons marked as "Obsolete" are not included in the listing.
|-
| {{MenuCommand|Hide Addons that require a newer version of FreeCAD}}
| If checked, addons that require a newer FreeCAD version are not included in the listing.
|-
| {{MenuCommand|Custom repositories}}
| Custom repositories can be specified here.

<!--T:294-->
To add a repository press the {{Button|[[Image:List-add.svg|16px]]}} button. Both the {{MenuCommand|Repository URL}} and the {{MenuCommand|Branch}}, typically {{Value|master}} or {{Value|main}}, must be specifies in the dialog that opens. {{Version|0.21}}

<!--T:295-->
To remove a repository select it in the list and press the {{Button|[[Image:List-remove.svg|16px]]}} button. {{Version|0.21}}
|-
| {{MenuCommand|Proxy}}
| The Addon manager includes experimental support for proxies requiring authentication, set up as user-defined proxies.
|-
| {{MenuCommand|Python executable (optional)}}
| The Addon manager attempts to determine the Python executable that should be used for the automatic pip-based installation of Python dependencies. To override this selection, the path to the executable can be set here.
|-
| {{MenuCommand|git executable (optional)}}
| The Addon manager attempts to determine the git executable. To override this selection, the path to the executable can be set here. {{Version|0.21}}
|-
| {{MenuCommand|Show option to change branches (requires git)}}
| If checked, the Addon manager provides an interface on the addon's details screen that allows switching which git branch is currently checked out. This is intended for advanced users only, as it is possible that a non-primary-branch version of an addon may result in instability and compatibility issues. Git must be installed for this to work. Use with caution.
|-
| {{MenuCommand|Disable git (fall back to ZIP downloads only)}}
| If checked, git downloads are disabled. {{Version|0.21}}
|-
| {{MenuCommand|Addon developer mode}}
| If checked, Addon manager options intended for developers of addons are activated. {{Version|0.21}}
|}

<!--T:314-->
[[Image:Preferences_Addon_Manager_Tab_Addon_manager_options.png]]

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


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


==Workbench preferences== <!--T:109-->
==Workbench related preferences== <!--T:109-->

Preferences for the more common workbenches are linked below.
<!--T:215-->
Some workbenches have no preferences.
Preferences for the built-in workbenches are linked below. These links are also listed in [[:Category:Preferences]]. Some workbenches have no preferences.
Other optional workbenches may not be listed.


<!--T:12-->
<!--T:12-->
* [[Arch Preferences]]
* [[Arch_Preferences|Arch Preferences]]
* [[Draft Preferences]]
* [[Draft_Preferences|Draft Preferences]]
* Drawing Preferences (none)
* [[FEM_Preferences|FEM Preferences]]
* [[Fem Preferences]]
* Image Preferences (none)
* Inspection Preferences (none)
* Inspection Preferences (none)
* Mesh Design Preferences (none)
* [[Mesh_Workbench#Preferences|Mesh Design Preferences]]
* [[OpenSCAD_Module#Preferences|OpenSCAD Preferences]]
* [[OpenSCAD_Preferences|OpenSCAD Preferences]]
<!--The PartDesign preferences are defined in the Part workbench and both the PartDesign workbench and the Part workbench use them-->
* Part Preferences (none)
* [[PartDesign Preferences|PartDesign Preferences]]
* Part Preferences: the Part workbench also uses the [[PartDesign_Preferences|PartDesign Preferences]]
* [[Path_Workbench#Preferences|Path Preferences]]
* [[PartDesign_Preferences|PartDesign Preferences]]
* Plot Preferences (none)
* [[Path_Preferences|Path Preferences]]
* Points Preferences (none)
* Points Preferences (none)
* [[Raytracing_Module#Preferences|Raytracing Preferences]]
* [[Raytracing_Preferences|Raytracing Preferences]]
* Reverse Engineering Preferences (none)
* Reverse Engineering Preferences (none)
* Robot Preferences (none)
* Robot Preferences (none)
* Ship Preferences (none)
* [[Sketcher_Preferences|Sketcher Preferences]]
* [[Sketcher_Workbench#Preferences|Sketcher Preferences]]
* [[Spreadsheet_Preferences|Spreadsheet Preferences]]
* Spreadsheet Preferences (none)
* [[Start_Preferences|Start Preferences]]
* [[Start Preferences|Start Preferences]]
* Surface Preferences (none)
* Surface Preferences (none)
* [[TechDraw Preferences#Preferences|TechDraw Preferences]]
* [[TechDraw_Preferences|TechDraw Preferences]]
* Test Framework Preferences (none)
* Test Framework Preferences (none)
* Web Preferences (none)
* Web Preferences (none)


==Scripting== <!--T:224-->
=== External workbenches ===

<!--T:268-->
{{Emphasis|See also:}} [[FreeCAD_Scripting_Basics|FreeCAD Scripting Basics]].

<!--T:269-->
For a scripting example see [[Std_DlgParameter|Std DlgParameter]].

==Related== <!--T:222-->

<!--T:223-->
* [[Std_DlgParameter|Parameter editor]]
* [[Fine-tuning|Fine-tuning]]


<!--T:140-->
* [[A2plus_Workbench#Preferences|A2plus Preferences]]


<!--T:10-->
<!--T:10-->
{{Docnav
{{docnav|Document structure|Import Export Preference}}
|[[Interface_Customization|Interface Customization]]
|[[Import_Export_Preferences|Import Export Preferences]]
}}


<!--T:11-->
[[Category:User Documentation]]
</translate>
</translate>
[[Category:Preferences{{#translation:}}]]
{{Userdocnavi{{#translation:}}}}

Latest revision as of 09:31, 26 January 2024

Introduction

To start the Preferences editor select the Edit → Preferences... option from the menu. On macOS 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, usually in a dedicated section, if the workbench has been loaded in the current FreeCAD session. Some workbenches add support for specific import and export formats. If there are any related preferences they will appear on one or more additional tabs in the Import-Export section of the Preferences editor.

To preserve resources, FreeCAD does not automatically load all available workbenches. See Workbenches for more information. For a list of workbench related preferences see Workbench related preferences.

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

Pressing the Reset button in the lower left corner of the Preferences dialog opens a menu (introduced in version 0.22) with options to reset preferences to their default values. You can reset the current tab, the current group, or all preferences. In version 0.21 and below the button will reset all preferences.

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

General

This preferences section has seven tabs: General, Document, Selection, Cache, Notification Area, Report view and Help.

In version 0.21 and below the seventh tab, Help, is only available if the Help Addon has been installed.

General

On the General tab you can specify the following:

Name Description
Language Language of the application's user interface.
Default unit system Unit system for all parts of the application. introduced in version 0.22: Used as the default for the document unit system of new documents.
Number of decimals The number of decimals that should be shown for numbers and dimensions.
Ignore project unit system and use default introduced in version 0.22 If checked, project unit systems are ignored and do not override the default unit system.
Minimum fractional inch The minimum fractional inch that should be shown for numbers and dimensions. Only available for unit systems with fractional inches.
Number format introduced in version 0.20 Specifies the number format. The options are:
  • Operating system: The decimal separator defined by the operating system is used.
  • Selected language: The decimal separator of the selected FreeCAD interface language is used.
  • C/POSIX: A point is used as the decimal separator.
Substitute decimal separator introduced in version 0.20 If checked, the numerical keypad decimal separator will be substituted with the separator defined by the Number format setting. introduced in version 0.21: Notice that if this preference is enabled, using the numerical keypad decimal separator will always print a dot/period in the Python console and the Macro editor.
Theme Specifies a theme to customize the appearance of the user interface.
Size of toolbar icons Specifies the size of the toolbar icons. The options are:
  • Small (16px)
  • Medium (24px)
  • Large (32px)
  • Extra large (48px)
Tree view mode Defines how the tree view is shown in the user interface (restart required). The options are:
  • Combo View: Combines the tree view and the property view into one panel.
  • TreeView and PropertyView: Splits the tree view and the property view into separate panels.
  • Both: Shows all three panels. version 0.21 and below
Size of recent file list Specifies how many files should be listed in the recent files list.

Optionally, imported files can be excluded from this list, and exported files can be included. See Fine-tuning.

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.

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 cursor blinking If checked the text cursor in the Python console and the Macro editor will blink.
Activate overlay handling introduced in version 0.22 If checked, docked windows can be handled as transparent overlays.
Preference packs introduced in version 0.20 Lists the available preference packs and also allows you to import, save, manage and revert them.

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 Specifies 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 Specifies 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 Specifies 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 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 Date & time formats cheatsheet.

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 Specifies the license for new documents. For predefined licenses the License URL will automatically be set accordingly. Select Other for a custom license.
License URL Specifies an URL describing the license selected in Default license.

Selection

On the Selection tab 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 Tree view item will get a checkbox. This is for example useful for selecting multiple items on a touchscreen.

Cache

These preferences are related to the cache directory where FreeCAD stores temporary files.

On the Cache tab (introduced in version 0.20) you can specify the following:

Name Description
Location Specifies the path of the cache directory.
Check periodically at program start Controls the frequency with which the directory size is checked. The options are:
  • Always
  • Daily
  • Weekly
  • Monthly
  • Yearly
  • Never
Cache size limit Specifies the maximum size of the directory. You will be notified if a check is performed and the size exceeds this value. The options are:
  • 100 MB
  • 300 MB
  • 500 MB
  • 1 GB
  • 2 GB
  • 3 GB
Current cache size Shows the current size of the directory, if available. Press the Check now... button to update the value.

Notification Area

These preferences control the Notification Area and its notifications.

On the Notification Area tab (introduced in version 0.21) you can specify the following:

Name Description
Enable Notification Area If checked, the Notification Area will appear in the status bar.
Enable non-intrusive notifications If checked, non-intrusive notifications will appear next to the Notification Area in the status bar.
Errors If checked, errors will appear in the Notification Area.
Warnings If checked, warnings will appear in the Notification Area.
Maximum Duration Maximum duration during which notifications are shown (unless mouse buttons are clicked).
Minimum Duration Minimum duration (idem).
Maximum Number of Notifications Maximum number of notifications shown simultaneously.
Notification width Width of the Notification Area in pixels.
Hide when other window is activated If checked, open notifications will disappear when another window is activated.
Do not show when inactive If checked, notifications will not appear if the FreeCAD window is not the active window.
Maximum Messages (0 = no limit) The maximum number of messages kept in the list. Set to 0 for no limit.
Auto-remove User Notifications If checked, notifications will be removed from the message list when the Maximum Duration has elapsed.

Report view

These preferences control the behavior of the Report view. This panel can be opened using the View → Panels → Report view menu option.

On the Report view 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 Specifies the font color for normal messages.
Log messages Specifies the font color for log messages.
Warnings Specifies the font color for warning messages.
Errors Specifies 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.

Help

On the Help tab you can specify the following:

Name Description
Help location Specifies the location of the Help files. The options are:
  • Online: Enter the URL or leave blank to use the automatic GitHub URL.
Translation suffix: If https://wiki.freecad.org/ is used, a language suffix can be specified. Use for example fr for the French translation. Must be blank for the GitHub URL.
  • From disk location: Enter the path where the downloaded FreeCAD documentation can be found. To download the documentation select the offline-documentation addon from the Workbenches list in the Addon Manager.
Display Specifies where the documentation should be displayed. The options are:
  • In a new FreeCAD tab: The documentation is displayed on a new tab in the Main view area.
  • In your default web browser: The documentation is displayed in the default web browser.
  • In a separate, embeddable, dialog: The documentation is displayed in a separate dialog. This dialog can be docked on top of the Combo view for example.
Custom stylesheet Specifies an optional custom stylesheet. Not used for the Wiki URL.

Display

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 be shown in the lower right corner of the 3D view.

The Relative size (introduced in version 0.20) defines the size of the representation as a percentage of the view size (the minimum of its height and width).

Show axis cross by default If checked, the axis cross will be shown by default in the 3D view.
Show counter of frames per second If checked, the time needed for the last operation and the resulting frame rate will be shown in the lower left corner of the 3D view.
Use software OpenGL 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 Understanding OpenGL Objects.
Render Cache "Render Cache" or "Render Acceleration" is explained in more detail in FreeCAD assembly3 render-caching. The options are:
  • Auto: Let Coin3D decide where to cache (default).
  • 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 Specifies if and what type of multisample anti-aliasing is used
Transparent objects Specifies the render type of transparent objects. The options are:
  • One pass: Rendering is done in one pass (default). This can lead to triangular artifacts. If these occur the type Backface pass can be used to avoid them.
  • Backface pass: Rendering is done in two passes. Back-facing polygons are rendered in the first pass and front-facing polygons in the second pass.
Marker size Specifies 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 Specifies 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 the 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 used for objects whose Lighting property (on the View tab) is set to One side. If disabled, the back side of the faces of those objects will be black.

The related Intensity setting specifies the intensity of the backlight.

Camera type Specifies the camera projection type. The options are:

Navigation

On the Navigation tab you can specify the following:

Name Description
Navigation cube If checked, the Navigation cube will be shown in the 3D view.

Steps by turn defines the number of steps required for a full rotation when using the Navigation cube rotation arrows.

If Rotate to nearest is checked, the 3D view is rotated to the nearest most logical position, based on the current orientation of the cube, when a cube face is clicked. Else clicking a face will always result in the same rotation. introduced in version 0.20

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

Color sets the base color for all elements. introduced in version 0.21

Corner defines where the Navigation cube is displayed in the 3D view. The options are:

  • Top left
  • Top right
  • Bottom left
  • Bottom right

Font name specifies the font used for the cube's texts. introduced in version 0.21

Font size sets the size of the font used for the cube's texts. introduced in version 0.21

3D Navigation Specifies a mouse navigation style. To see the details of each style, select it and then press the Mouse... button.
Orbit style Specifies the rotation orbit style used when in rotation mode. The options are:
  • Turntable: Moving the mouse will divide the rotation in steps, rotations around the different axes are performed sequentially.
  • Trackball: Rotations around the different axes are performed simultaneously.
  • Free Turntable: Like Trackball, but if possible the rotation axis is kept collinear with the global 3D view axis. introduced in version 0.21
Rotation mode Defines the rotation center. The options are:
  • Window center
  • Drag at cursor
  • Object center
Default camera orientation Specifies the camera orientation for new documents. This setting is also used by the Std ViewHome command.
Camera zoom Affects the initial camera zoom level for new documents. The value you set is the diameter of a sphere that fits in 3D view. The default is 100 mm. It also sets the initial size of origin features (base planes in new PartDesign Bodies and Std Parts).
Enable animation If checked, and 3D Navigation is set to CAD, rotations can be animated. If the mouse is moved while the scroll wheel and the right mouse button are pressed, the view is rotated. If one keeps the mouse moving while releasing the right mouse button, the rotation will continue. To end this 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, and 3D Navigation is set to Gesture, the tilting gesture will be disabled for pinch-zooming (two-finger zooming).
Enable rotation center indication If checked, the rotation center of the view is shown when dragging. introduced in version 0.22

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 of objects 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 specified color.
Linear gradient If selected, the background of the 3D view will have a vertical color gradient defined by the specified Top and Bottom colors. if enabled, a Middle color can also be specified. Press the button (introduced in version 0.21) to switch the top and bottom colors.
Radial gradient introduced in version 0.21 If selected, the background of the 3D view will have a radial color gradient defined by the specified Central and End colors. if enabled, a Midway color can also be specified. Press the button to switch the central and end colors.
Object being edited Specifies the background color for objects in the tree view that are currently edited.
Active container Specifies the background color for active containers in the tree view. For example an active PartDesign Body will get this 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 Specifies the default face color.
Default line color Specifies the default line color.
Mesh transparency Specifies the default mesh transparency.
Line transparency Specifies the default line transparency.
Two-side rendering If checked, the default value for the ViewLighting property is Two side instead of One side. Two side means the color of the interior side of faces is the same as the color of the exterior side. One side means their color is either the backlight color, if enabled, or black.
Show bounding-box for highlighted or selected meshes If checked, the default value for the ViewSelection Style property is BoundBox instead of Shape. BoundBox means a highlighted bounding box is displayed if meshes are highlighted or selected. Shape means the shape itself is then highlighted.
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: Available Workbenches.

Available Workbenches

These preferences control workbench loading.

On the Available Workbenches tab you can specify the following:

Name Description
Workbench list The list displays all installed workbenches. The list can be reordered by drag and drop (introduced in version 0.21) and sorted by right-clicking the list and selecting Sort alphabetically (introduced in version 0.22). The order of the list also determines the order of the Workbench selector.
  • introduced in version 0.21: First checkbox in each row: If checked, the workbench will be available in the Workbench selector in the next FreeCAD session. The start up workbench cannot be unchecked. Unchecked workbenches are moved to the bottom of the list.
  • Auto-load: If checked, the workbench will auto-load when FreeCAD starts. Loading more workbenches will make the start up slower, but switching between workbenches that have already been loaded is faster.
  • Load: Press this button to load the workbench in the current FreeCAD session.
Start up workbench The workbench that is activated when FreeCAD starts.
Workbench selector position introduced in version 0.21 Defines where the Workbench selector appears. The options are:
  • Toolbar: In a dedicated toolbar.
  • Left corner: In the left corner of the menubar.
  • Right corner: In the right corner of the menubar.
Remember active workbench by tab If checked, FreeCAD will remember and restore the workbench that was active for each tab in the Main view area.

Python

This preferences section (introduced in version 0.21) has three tabs: Macro, Python console and Editor.

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 Specifies 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 can be opened using the View → Panels → Python console menu option.
Size of recent macro 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.

Python console

These preferences control the behavior of the Python console. This console can be opened using the View → Panels → Python console menu option.

Note that the color and font settings for the console are defined on the Editor tab.

On the Python console tab (introduced in version 0.20) you can specify the following:

Name Description
Enable word wrap If checked, words will be wrapped if they exceed the available horizontal space in the console.
Enable block cursor If checked, the cursor will have a block shape.
Save history If checked, Python history is saved across sessions.

Editor

These preferences control the behavior of the Macro editor. This editor can be opened using the Macro → Macros... → Edit or Create menu option.

The color and font settings are also used by the Python console.

On the Editor tab you can specify the following:

Name Description
Enable line numbers If checked, the code lines will be numbered.
Enable block cursor If checked, the cursor will have a block shape.
Tab size Specifies 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 Specifies 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 Specifies the code type the color and font settings will be applied to. The result can be checked in the Preview field.
Family Specifies the font family that should be used for the selected code type.
Size Specifies the font size that should be used for the selected code type.
Color Specifies the color that should be used for the selected code type.

Addon Manager

This preferences section has a single tab: Addon manager options.

Addon manager options

These preferences control the behavior of the Addon manager.

On the Addon manager options tab (introduced in version 0.20) you can specify the following:

Name Description
Automatically check for updates at start (requires git) If checked, the Addon manager will check for updates when it is launched. Git must be installed for this to work.
Download Macro metadata (approximately 10MB) If checked, macro metadata is downloaded for display in the Addon manager's main addon listing. This data is cached locally.
Cache update frequency Controls the frequency with which the locally cached addon availability and metadata information is updated. The options are:
  • Manual (no automatic updates)
  • Daily
  • Weekly
Hide Addons marked Python 2 Only If checked, addons marked as "Python 2 Only" are not included in the listing. These addons are unlikely to work in the current FreeCAD version.
Hide Addons marked Obsolete If checked, addons marked as "Obsolete" are not included in the listing.
Hide Addons that require a newer version of FreeCAD If checked, addons that require a newer FreeCAD version are not included in the listing.
Custom repositories Custom repositories can be specified here.

To add a repository press the button. Both the Repository URL and the Branch, typically master or main, must be specifies in the dialog that opens. introduced in version 0.21

To remove a repository select it in the list and press the button. introduced in version 0.21

Proxy The Addon manager includes experimental support for proxies requiring authentication, set up as user-defined proxies.
Python executable (optional) The Addon manager attempts to determine the Python executable that should be used for the automatic pip-based installation of Python dependencies. To override this selection, the path to the executable can be set here.
git executable (optional) The Addon manager attempts to determine the git executable. To override this selection, the path to the executable can be set here. introduced in version 0.21
Show option to change branches (requires git) If checked, the Addon manager provides an interface on the addon's details screen that allows switching which git branch is currently checked out. This is intended for advanced users only, as it is possible that a non-primary-branch version of an addon may result in instability and compatibility issues. Git must be installed for this to work. Use with caution.
Disable git (fall back to ZIP downloads only) If checked, git downloads are disabled. introduced in version 0.21
Addon developer mode If checked, Addon manager options intended for developers of addons are activated. introduced in version 0.21

Import-Export

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

Workbench related preferences

Preferences for the built-in workbenches are linked below. These links are also listed in Category:Preferences. Some workbenches have no preferences.

Scripting

See also: FreeCAD Scripting Basics.

For a scripting example see Std DlgParameter.

Related