Start up and Configuration/it: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{docnav/it|[[Third Party Tools/it|Strumenti di terze parti]]|[[FreeCAD Build Tool/it|Strumento per la costruzione di FreeCAD]]}}
<div class="mw-translate-fuzzy">
{{Docnav/it|[[Third Party Tools/it|Strumenti di terze parti]]|[[FreeCAD Build Tool/it|Strumento per la costruzione di FreeCAD]]}}
</div>

{{TOCright}}


Questa pagina descrive i diversi modi per avviare FreeCAD e le principali caratteristiche di configurazione.
Questa pagina descrive i diversi modi per avviare FreeCAD e le principali caratteristiche di configurazione.
Line 31: Line 36:
Configuration:
Configuration:
-l [ --write-log ] Writes a log file to:
-l [ --write-log ] Writes a log file to:
/home/beast/.FreeCAD/FreeCAD.log
/home/username/.FreeCAD/FreeCAD.log
--log-file arg Unlike --write-log this allows logging to an
--log-file arg Unlike --write-log this allows logging to an
arbitrary file
arbitrary file
Line 40: Line 45:
-P [ --python-path ] arg Additional python paths
-P [ --python-path ] arg Additional python paths
--single-instance Allow to run a single instance of the application
--single-instance Allow to run a single instance of the application

In the following table, selected options are described in more detail:

{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|-
! Long option !! Corresponding [[#Configuration_set|config var name]] !! Synopsis
|-
| {{incode|--user-cfg <filename>}} || UserParameter || Filename or relative path that ends with a filename. Defaults to {{incode|user.cfg}}.
|-
| {{incode|--module-path <dir>}} || Prepends to AdditionalModulePaths || Directory that contains modules. This option can be given repeatedly to specify multiple directories.
|-
| {{incode|--get-config <config-var-name>}} || most || Outputs the requested value in a popup dialog. Exits upon confirmation with {{KEY|OK}}. Cannot be used repeatedly. If an unknown/illegal variable name is used, the response is empty. The {{incode|--console}} flag is not honored.
|}
Options can written in two forms: {{incode|--long-option arg}} and {{incode|--long-option<nowiki>=</nowiki>arg}}.


=== Risposta e file di configurazione ===
=== Risposta e file di configurazione ===
Line 47: Line 66:
Alcuni sistemi operativi hanno un limite di caratteri molto basso nella riga di comando. Il modo più comune per aggirare questa limitazione è quello di usare il file di risposta. Un file di risposta è semplicemente un file di configurazione che utilizza la stessa sintassi della riga di comando. Se la riga di comando specifica un nome di file di risposta da utilizzare, esso viene caricato e analizzato in aggiunta alla linea di comando:
Alcuni sistemi operativi hanno un limite di caratteri molto basso nella riga di comando. Il modo più comune per aggirare questa limitazione è quello di usare il file di risposta. Un file di risposta è semplicemente un file di configurazione che utilizza la stessa sintassi della riga di comando. Se la riga di comando specifica un nome di file di risposta da utilizzare, esso viene caricato e analizzato in aggiunta alla linea di comando:


<pre>
{{Code|code=
FreeCAD @ResponseFile.txt
FreeCAD @ResponseFile.txt
</pre>
}}


oppure:
oppure:
<pre>
{{Code|code=
FreeCAD --response-file=ResponseFile.txt
FreeCAD --response-file=ResponseFile.txt
</pre>
}}

or:
<pre>
FreeCAD --response-file ResponseFile.txt
</pre>


=== Opzioni nascoste ===
=== Opzioni nascoste ===
Line 72: Line 97:
* -cmap, obbliga l'applicazione a installare una mappa privata di colori su un display a 8 bit.
* -cmap, obbliga l'applicazione a installare una mappa privata di colori su un display a 8 bit.


<div class="mw-translate-fuzzy">
== Eseguire FreeCAD senza interfaccia grafica ==
== Eseguire FreeCAD senza interfaccia grafica ==
</div>


<div class="mw-translate-fuzzy">
Di solito FreeCAD è costruito con due file eseguibili: uno con l'interfaccia grafica chiamato {{FileName|FreeCAD}} e uno con sola riga di comando chiamato {{FileName|FreeCADCmd}}.
Di solito FreeCAD è costruito con due file eseguibili: uno con l'interfaccia grafica chiamato {{FileName|FreeCAD}} e uno con sola riga di comando chiamato {{FileName|FreeCADCmd}}.
FreeCAD può anche essere usato in modalità console usando l'opzione "-c", questo è il comportamento predefinito di {{FileName|FreeCADCmd}}:
FreeCAD può anche essere usato in modalità console usando l'opzione "-c", questo è il comportamento predefinito di {{FileName|FreeCADCmd}}:
</div>
FreeCAD -c
FreeCAD --console
<div class="mw-translate-fuzzy">
dalla riga di comando. In modalità console non viene visualizzata nessuna interfaccia utente, e appare un prompt dell'interprete di Python. Da questo prompt di Python, si ha le stesse funzionalità che si ha dall'interprete di Python che viene eseguito all'interno della GUI di FreeCAD e si ha normale accesso a tutti i moduli e plugin di FreeCAD, eccettuato il modulo FreeCADGui. Tenere presente che anche i moduli che dipendono da FreeCADGui potrebbero non essere disponibili.
dalla riga di comando. In modalità console non viene visualizzata nessuna interfaccia utente, e appare un prompt dell'interprete di Python. Da questo prompt di Python, si ha le stesse funzionalità che si ha dall'interprete di Python che viene eseguito all'interno della GUI di FreeCAD e si ha normale accesso a tutti i moduli e plugin di FreeCAD, eccettuato il modulo FreeCADGui. Tenere presente che anche i moduli che dipendono da FreeCADGui potrebbero non essere disponibili.
</div>


To read more about console or headless mode, checkout [[Headless FreeCAD]].
Gli script Python e i file di macro di FreeCAD possono essere specificati come argomenti della riga di comando di uno dei file eseguibili di cui sopra.


<div class="mw-translate-fuzzy">
=== Esempio lanciare un file ===
</div>

<div class="mw-translate-fuzzy">
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|+ Linea di Commando configurazione per lanciare un file
! Execute a file !! System !! Command line configuration
|-
| Module, cfg||Windows || {{FileName|"C:\Program Files\FreeCAD\bin\FreeCAD.exe" -M "C:\FreeCAD\Mod\Draft" -u "C:\FreeCAD\Config\user.cfg" -s "C:\FreeCAD\Config\system.cfg"}}
|-
| ||Linux || {{FileName|todo}}
|-
|-
| .FCMacro o .py ||Windows || {{FileName|"C:\Program Files\FreeCAD\bin\FreeCAD.exe" "C:\Users\userName\AppData\Roaming\FreeCAD\Mod\WorkFeature\start_WF.FCMacro"}}
|-
| ||Linux || {{FileName|todo}}
|-
|Eseguire automaticamente una macro all'avvio di FreeCAD. ||Windows / Linux / Mac||Andare su la pagina [[Macro_at_Startup/it|Macro at Startup]] Eseguire automaticamente una macro all'avvio di FreeCAD.
|}
</div>

See [[Macro_at_Startup|Macro at Startup]] on how to set up a macro to automatically run at FreeCAD startup.

== Environment variables ==

FreeCAD supports the following environment variables, which can be used to configure directories: {{Version|0.19}}
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|-
! Environment variable !! Corresponding [[#Configuration_set|config var name]] !! Synopsis
|-
| {{incode|FREECAD_USER_HOME}} || UserHomePath || FreeCAD's "base" directory for keeping local user data.
|-
| {{incode|FREECAD_USER_DATA}} || UserAppData || If not set, defaults to {{incode|FREECAD_USER_HOME/.FreeCAD}}, but only if {{incode|FREECAD_USER_HOME}} is set.
|-
| {{incode|FREECAD_USER_TEMP}} || AppTempPath || If not set, defaults to {{incode|FREECAD_USER_HOME/temp}}, but only if {{incode|FREECAD_USER_HOME}} is set.
|}
If the specified path does not exist, the setting is ignored!

The above environment variables are meant to be used to realize a ''portable'' FreeCAD environment. For an example how environment variables can be used from the command line on Linux refer to the [[Download#Notes_for_GNU.2FLinux_users|notes for Linux users on the downloads page]].

=== {{incode|HOME}} ===

FreeCAD uses [[Third_Party_Libraries#Qt|Qt]], which does honor the {{incode|HOME}} environmental variable. Thus, setting {{incode|HOME}} can be used to specify the base directory of Qt-related configuration files ({{incode|.config/FreeCAD/FreeCAD.conf}}).

FreeCad itself does not honor the {{incode|HOME}} environmental variable (because it determines the user's home directory from a lower-level system API). Use {{incode|FREECAD_USER_HOME}} for this pupose.

=== {{incode|TMPDIR}} ===

The default temporary directory is {{FileName|/tmp/}}. The {{incode|TMPDIR}} environmental variable can be used to override the default. (''Editor: precedence?'').

<div class="mw-translate-fuzzy">
Alcune librerie hanno bisogno di chiamare le variabili di ambiente del sistema. A volte, quando c'è un problema con un'installazione FreeCAD, è perché qualche variabile d'ambiente è assente o è impostata in modo errato. Pertanto, alcune variabili importanti vengono duplicate in Config e salvate nel file di registro
</div>

<div class="mw-translate-fuzzy">
'''Variabili d'ambiente relative a Python:'''
</div>

* PYTHONPATH
* PYTHONHOME
* TCL_LIBRARY
* TCLLIBPATH

<div class="mw-translate-fuzzy">
'''Variabili d'ambiente relative a OpenCascade:'''
</div>

* CSF_MDTVFontDirectory
* CSF_MDTVTexturesDirectory
* CSF_UnitsDefinition
* CSF_UnitsLexicon
* CSF_StandardDefaults
* CSF_PluginDefaults
* CSF_LANGUAGE
* CSF_SHMessage
* CSF_XCAFDefaults
* CSF_GraphicShr
* CSF_IGESDefaults
* CSF_STEPDefaults

<div class="mw-translate-fuzzy">
== Il set di configurazione ==
== Il set di configurazione ==
</div>


<div class="mw-translate-fuzzy">
A ogni avvio FreeCAD esamina i suoi ambienti ed i parametri della riga di comando. Si costruisce un '''set di configurazione''' che contiene l'essenza delle informazioni per l'esecuzione. Queste informazioni vengono poi utilizzate per determinare il luogo dove salvare i dati dell'utente o file di log (registro). E' anche molto importante per le analisi post-mortem. Pertanto viene salvato nel file di registro.
A ogni avvio FreeCAD esamina i suoi ambienti ed i parametri della riga di comando. Si costruisce un '''set di configurazione''' che contiene l'essenza delle informazioni per l'esecuzione. Queste informazioni vengono poi utilizzate per determinare il luogo dove salvare i dati dell'utente o file di log (registro). E' anche molto importante per le analisi post-mortem. Pertanto viene salvato nel file di registro.
</div>


=== Informazioni relative all'utente ===
=== Informazioni relative all'utente ===


<div class="mw-translate-fuzzy">
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|+ Voci di configurazione utente
|+ Voci di configurazione utente
Line 100: Line 217:
| UserHomePath || Percorso home dell'utente corrente ||{{FileName|C:\Documents and Settings\username}}<hr />''Percorso breve : ''{{FileName|%USERPROFILE%}} || {{FileName|/home/username}}<hr />''Percorso breve : ''{{FileName|~}}
| UserHomePath || Percorso home dell'utente corrente ||{{FileName|C:\Documents and Settings\username}}<hr />''Percorso breve : ''{{FileName|%USERPROFILE%}} || {{FileName|/home/username}}<hr />''Percorso breve : ''{{FileName|~}}
|}
|}
</div>

Note: For Linux distributions, an additional configuration file that relates to [[Third_Party_Tools#Qt-Toolkit|Qt]] may exist at path {{FileName|/home/username/.config/FreeCAD/FreeCAD.conf}}.


=== Argomenti della riga di comando ===
=== Argomenti della riga di comando ===


<div class="mw-translate-fuzzy">
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|+ Voci di configurazione utente
|+ Voci di configurazione utente
Line 124: Line 245:
| AdditionalModulePaths||Contiene i percorsi di moduli aggiuntivi indicati nella linea di cmd || "extraModules/"
| AdditionalModulePaths||Contiene i percorsi di moduli aggiuntivi indicati nella linea di cmd || "extraModules/"
|}
|}
</div>


=== Relativi al sistema ===
=== Relativi al sistema ===


<div class="mw-translate-fuzzy">
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|+ Voci di configurazione utente
|+ Voci di configurazione utente
Line 135: Line 258:
|-
|-
| PythonSearchPath || Contiene un elenco di percorsi dove python cerca i moduli. Questo vale all'avvio e può cambiare durante l'esecuzione || ||
| PythonSearchPath || Contiene un elenco di percorsi dove python cerca i moduli. Questo vale all'avvio e può cambiare durante l'esecuzione || ||
|}

=== Esempio lanciare un file ===

<div class="mw-translate-fuzzy">
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|+ Linea di Commando configurazione per lanciare un file
! Execute a file !! System !! Command line configuration
|-
| Module, cfg||Windows || {{FileName|"C:\Program Files\FreeCAD\bin\FreeCAD.exe" -M "C:\FreeCAD\Mod\Draft" -u "C:\FreeCAD\Config\user.cfg" -s "C:\FreeCAD\Config\system.cfg"}}
|-
| ||Linux || {{FileName|todo}}
|-
|-
| .FCMacro o .py ||Windows || {{FileName|"C:\Program Files\FreeCAD\bin\FreeCAD.exe" "C:\Users\userName\AppData\Roaming\FreeCAD\Mod\WorkFeature\start_WF.FCMacro"}}
|-
| ||Linux || {{FileName|todo}}
|}
|}
</div>
</div>



Alcune librerie hanno bisogno di chiamare le variabili di ambiente del sistema. A volte, quando c'è un problema con un'installazione FreeCAD, è perché qualche variabile d'ambiente è assente o è impostata in modo errato. Pertanto, alcune variabili importanti vengono duplicate in Config e salvate nel file di registro

'''Variabili d'ambiente relative a Python:'''

* PYTHONPATH
* PYTHONHOME
* TCL_LIBRARY
* TCLLIBPATH

'''Variabili d'ambiente relative a OpenCascade:'''

* CSF_MDTVFontDirectory
* CSF_MDTVTexturesDirectory
* CSF_UnitsDefinition
* CSF_UnitsLexicon
* CSF_StandardDefaults
* CSF_PluginDefaults
* CSF_LANGUAGE
* CSF_SHMessage
* CSF_XCAFDefaults
* CSF_GraphicShr
* CSF_IGESDefaults
* CSF_STEPDefaults

'''Variabili d'ambiente relative al sistema:'''
* PATH


=== Informazioni relative alla costruzione ===
=== Informazioni relative alla costruzione ===
Line 188: Line 265:
La tabella seguente mostra le informazioni disponibili relative alla versione di costruzione. La maggior parte proviene dal repositorio di Subversion. Queste cose sono necessarie per ricostruire esattamente la versione!
La tabella seguente mostra le informazioni disponibili relative alla versione di costruzione. La maggior parte proviene dal repositorio di Subversion. Queste cose sono necessarie per ricostruire esattamente la versione!


<div class="mw-translate-fuzzy">
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|+ Voci di configurazione utente
|+ Voci di configurazione utente
Line 209: Line 287:
| BuildScrMixed || || Src not mixed
| BuildScrMixed || || Src not mixed
|}
|}
</div>


=== Relative al marchio ===
=== Relative al marchio ===
Line 214: Line 293:
Queste voci di configurazione sono legate al meccanismo di marchiatura di FreeCAD. Vedere [[Branding/it|Marchiatura]] per maggiori dettagli.
Queste voci di configurazione sono legate al meccanismo di marchiatura di FreeCAD. Vedere [[Branding/it|Marchiatura]] per maggiori dettagli.


<div class="mw-translate-fuzzy">
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
|+ Voci di configurazione utente
|+ Voci di configurazione utente
Line 237: Line 317:
| HiddenDockWindow || Elenco dei dockwindows (separati da un punto e virgola) che saranno disabilitati || "Property editor"
| HiddenDockWindow || Elenco dei dockwindows (separati da un punto e virgola) che saranno disabilitati || "Property editor"
|}
|}
</div>


=== Pagine correlate ===
=== Querying the configuration ===


'''From FreeCAD's Python console'''
* [[Std CommandLine/it|Riga di comando]]


Entries of the the configuration set can be queried with the '''config var name''' (see tables above) from the [[Python_console|Python console]]. For example:
{{docnav/it|[[Third Party Tools/it|Strumenti di terze parti]]|[[FreeCAD Build Tool/it|Strumento per la costruzione di FreeCAD]]}}
>>> FreeCAD.ConfigGet("ExeVersion")
'0.19'
If the name is not found, an empty string is returned.


'''From command line'''
{{Userdocnavi/it}}


Use the {{incode|--get-config <config-var-name>}} option to query a single name. Not all names are supported. For example:
[[Category:Developer Documentation/it]]
FreeCAD_0.19 --get-config ExeVersion

Use the {{incode|--dump-config}} option to get a list of names and their values. Not all names are supported.

'''From FreeCAD console'''

Start FreeCAD in console mode with {{incode|--console}} and query with Python code. For example:
$ FreeCAD_0.19 --console
[FreeCAD Console mode <Use Ctrl-D (i.e. EOF) to exit.>]
>>> FreeCAD.ConfigGet("ExeVersion")
'0.19'
>>> exit()

For Linux (bash shell) you can modify the following command line to suit your needs:
$ FreeCAD_0.19 --console <<EOF
print( "FREECAD_USER_HOME: " + ( "not set" if ( os.environ.get('FREECAD_USER_HOME') is None ) else os.environ.get('FREECAD_USER_HOME') ) )
print( "UserHomePath: " + FreeCAD.ConfigGet("UserHomePath") )
exit()
EOF

== Starting FreeCAD from the desktop ==

=== Linux: Creating an additional start option ===

The following assumes that your desktop is configured such that you can launch FreeCAD from it. Depending on your Linux distribution and desktop environment, you may have to adapt the following steps:
# Copy the freedesktop entry file for FreeCAD from {{FileName|/usr/share/applications/freecad.desktop}} to {{FileName|~/.local/share/applications}}.
# Change the name from {{FileName|freecad.desktop}} to something else (e.g. {{FileName|MyFreeCADConfig.desktop}}).
# Open the file with a text editor and change how FreeCAD is invoked by modifying the line starting with {{incode|Exec}}.
# As a result, an additional entry in your start menu/application launcher is available. This way, you can have multiple FreeCAD entries with various launch options.

== Starting FreeCAD from a portable USB medium ==

{{Version|0.19}}

'''Windows'''

Put the FreeCAD executable, {{FileName|FreeCAD.exe}}, on the USB medium. Create a batch file, {{FileName|FreeCAD.bat}}, and put it into the same directory as {{FileName|FreeCAD.exe}}. Inside the batch file write:

{{Code|code=
set CURRENTDIR=%cd%
set FREECAD_USER_HOME=%CURRENTDIR%
start FreeCAD.exe -u FreeCAD/user.cfg -s FreeCAD/system.cfg --write-log
}}

[https://forum.freecadweb.org/viewtopic.php?f=12&t=54784&start=60#p474759 or] with {{incode|FREECAD_USER_DATA}}

{{Code|code=
set CURRENTDIR="%cd%"
set FREECAD_USER_DATA=%CURRENTDIR%/..
start FreeCAD.exe -u %FREECAD_USER_DATA%/user.cfg -s %FREECAD_USER_DATA%/system.cfg}}

Now double-click the batch file to start FreeCAD. ([https://forum.freecadweb.org/viewtopic.php?f=4&t=49028 see])

<div class="mw-translate-fuzzy">
{{Docnav/it|[[Third Party Tools/it|Strumenti di terze parti]]|[[FreeCAD Build Tool/it|Strumento per la costruzione di FreeCAD]]}}
</div>


{{Userdocnavi{{#translation:}}}}
[[Category:Developer Documentation{{#translation:}}]]
{{clear}}
{{clear}}

Revision as of 19:46, 25 February 2021

Questa pagina descrive i diversi modi per avviare FreeCAD e le principali caratteristiche di configurazione.

Avviare FreeCAD dalla riga di comando

FreeCAD può essere avviato normalmente, facendo doppio clic sulla sua icona sul desktop o selezionandolo dal menu di avvio, ma può anche essere avviato direttamente dalla riga di comando. Ciò consente di modificare alcune delle opzioni di avvio di default.

Utilizzo delle opzioni della riga di comando senza una shell della riga di comando

  • Su Ubuntu si può creare un'icona sul desktop e modificarne le proprietà. Aggiungere le opzioni della riga di comando separate da spazi dopo il nome del programma nel campo "Comando".
  • Su Windows creare un collegamento e modificare le proprietà. Aggiungere le opzioni della riga di comando separate da spazi al campo "Destinazione".

Le opzioni della riga di comando

Le opzioni della riga di comando sono soggette a frequenti cambiamenti, quindi è bene verificare le opzioni correnti digitando:

FreeCAD --help

Nella risposta sono elencati i parametri utilizzabili:

 Usage: FreeCAD [options] File1 File2 ...
 
 Allowed options:
 
 Generic options:
   -v [ --version ]          Prints version string
   -h [ --help ]             Prints help message
   -c [ --console ]          Starts in console mode
   --response-file arg       Can be specified with '@name', too
   --dump-config             Dumps configuration
   --get-config arg          Prints the value of the requested configuration key
 
 Configuration:
   -l [ --write-log ]        Writes a log file to:
                             /home/username/.FreeCAD/FreeCAD.log
   --log-file arg            Unlike --write-log this allows logging to an 
                             arbitrary file
   -u [ --user-cfg ] arg     User config file to load/save user settings
   -s [ --system-cfg ] arg   System config file to load/save system settings
   -t [ --run-test ] arg     Test case - or 0 for all
   -M [ --module-path ] arg  Additional module paths
   -P [ --python-path ] arg  Additional python paths
   --single-instance         Allow to run a single instance of the application

In the following table, selected options are described in more detail:

Long option Corresponding config var name Synopsis
--user-cfg <filename> UserParameter Filename or relative path that ends with a filename. Defaults to user.cfg.
--module-path <dir> Prepends to AdditionalModulePaths Directory that contains modules. This option can be given repeatedly to specify multiple directories.
--get-config <config-var-name> most Outputs the requested value in a popup dialog. Exits upon confirmation with OK. Cannot be used repeatedly. If an unknown/illegal variable name is used, the response is empty. The --console flag is not honored.

Options can written in two forms: --long-option arg and --long-option=arg.

Risposta e file di configurazione

FreeCAD può leggere alcune di queste opzioni da un file di configurazione. Questo file deve essere nella directory bin e deve essere nominato FreeCAD.cfg. Tenere presente che le opzioni specificate nella riga di comando sovrascrivono il file di configurazione!

Alcuni sistemi operativi hanno un limite di caratteri molto basso nella riga di comando. Il modo più comune per aggirare questa limitazione è quello di usare il file di risposta. Un file di risposta è semplicemente un file di configurazione che utilizza la stessa sintassi della riga di comando. Se la riga di comando specifica un nome di file di risposta da utilizzare, esso viene caricato e analizzato in aggiunta alla linea di comando:

FreeCAD @ResponseFile.txt 

oppure:

FreeCAD --response-file=ResponseFile.txt

or:

FreeCAD --response-file ResponseFile.txt

Opzioni nascoste

Per l'utente esistono alcune opzioni non visibili. Queste opzioni sono, per esempio, i parametri di X-Window analizzati dal sistema Windows:

  • -display display, imposta la visualizzazione di X (il valore predefinito è $DISPLAY).
  • -geometry geometry, imposta la geometria client della prima finestra che viene visualizzata.
  • -fn oppure -font font, definisce il tipo carattere dell'applicazione. Il carattere deve essere specificato utilizzando una descrizione logica dei font di X.
  • -bg oppure -background color, imposta il colore di sfondo predefinito e una tavolozza per applicarlo (sono calcolate le tonalità chiare e scure).
  • -fg oppure -foreground color, imposta il colore di primo piano predefinito.
  • -btn oppure -button color, imposta il colore predefinito dei pulsanti.
  • -name name, imposta il nome dell'applicazione.
  • -title title, imposta il titolo dell'applicazione.
  • -visual TrueColor, forza l'applicazione a utilizzare una visualizzazione TrueColor su un display a 8-bit.
  • -ncols count, limita il numero di colori allocati nel cubo di colori su un display a 8 bit, se l'applicazione sta usando la specifica di colore QApplication::ManyColor. Se count è 216 allora è utilizzato un cubo di colori di 6x6x6 (vale a dire 6 livelli di rosso, 6 di verde, e 6 di blu), per altri valori viene utilizzato un cubo approssimativamente proporzionale a un cubo 2x3x1.
  • -cmap, obbliga l'applicazione a installare una mappa privata di colori su un display a 8 bit.

Eseguire FreeCAD senza interfaccia grafica

Di solito FreeCAD è costruito con due file eseguibili: uno con l'interfaccia grafica chiamato FreeCAD e uno con sola riga di comando chiamato FreeCADCmd. FreeCAD può anche essere usato in modalità console usando l'opzione "-c", questo è il comportamento predefinito di FreeCADCmd:

FreeCAD --console

dalla riga di comando. In modalità console non viene visualizzata nessuna interfaccia utente, e appare un prompt dell'interprete di Python. Da questo prompt di Python, si ha le stesse funzionalità che si ha dall'interprete di Python che viene eseguito all'interno della GUI di FreeCAD e si ha normale accesso a tutti i moduli e plugin di FreeCAD, eccettuato il modulo FreeCADGui. Tenere presente che anche i moduli che dipendono da FreeCADGui potrebbero non essere disponibili.

To read more about console or headless mode, checkout Headless FreeCAD.

Esempio lanciare un file

Linea di Commando configurazione per lanciare un file
Execute a file System Command line configuration
Module, cfg Windows "C:\Program Files\FreeCAD\bin\FreeCAD.exe" -M "C:\FreeCAD\Mod\Draft" -u "C:\FreeCAD\Config\user.cfg" -s "C:\FreeCAD\Config\system.cfg"
Linux todo
.FCMacro o .py Windows "C:\Program Files\FreeCAD\bin\FreeCAD.exe" "C:\Users\userName\AppData\Roaming\FreeCAD\Mod\WorkFeature\start_WF.FCMacro"
Linux todo
Eseguire automaticamente una macro all'avvio di FreeCAD. Windows / Linux / Mac Andare su la pagina Macro at Startup Eseguire automaticamente una macro all'avvio di FreeCAD.

See Macro at Startup on how to set up a macro to automatically run at FreeCAD startup.

Environment variables

FreeCAD supports the following environment variables, which can be used to configure directories: introduced in version 0.19

Environment variable Corresponding config var name Synopsis
FREECAD_USER_HOME UserHomePath FreeCAD's "base" directory for keeping local user data.
FREECAD_USER_DATA UserAppData If not set, defaults to FREECAD_USER_HOME/.FreeCAD, but only if FREECAD_USER_HOME is set.
FREECAD_USER_TEMP AppTempPath If not set, defaults to FREECAD_USER_HOME/temp, but only if FREECAD_USER_HOME is set.

If the specified path does not exist, the setting is ignored!

The above environment variables are meant to be used to realize a portable FreeCAD environment. For an example how environment variables can be used from the command line on Linux refer to the notes for Linux users on the downloads page.

HOME

FreeCAD uses Qt, which does honor the HOME environmental variable. Thus, setting HOME can be used to specify the base directory of Qt-related configuration files (.config/FreeCAD/FreeCAD.conf).

FreeCad itself does not honor the HOME environmental variable (because it determines the user's home directory from a lower-level system API). Use FREECAD_USER_HOME for this pupose.

TMPDIR

The default temporary directory is /tmp/. The TMPDIR environmental variable can be used to override the default. (Editor: precedence?).

Alcune librerie hanno bisogno di chiamare le variabili di ambiente del sistema. A volte, quando c'è un problema con un'installazione FreeCAD, è perché qualche variabile d'ambiente è assente o è impostata in modo errato. Pertanto, alcune variabili importanti vengono duplicate in Config e salvate nel file di registro

Variabili d'ambiente relative a Python:

  • PYTHONPATH
  • PYTHONHOME
  • TCL_LIBRARY
  • TCLLIBPATH

Variabili d'ambiente relative a OpenCascade:

  • CSF_MDTVFontDirectory
  • CSF_MDTVTexturesDirectory
  • CSF_UnitsDefinition
  • CSF_UnitsLexicon
  • CSF_StandardDefaults
  • CSF_PluginDefaults
  • CSF_LANGUAGE
  • CSF_SHMessage
  • CSF_XCAFDefaults
  • CSF_GraphicShr
  • CSF_IGESDefaults
  • CSF_STEPDefaults

Il set di configurazione

A ogni avvio FreeCAD esamina i suoi ambienti ed i parametri della riga di comando. Si costruisce un set di configurazione che contiene l'essenza delle informazioni per l'esecuzione. Queste informazioni vengono poi utilizzate per determinare il luogo dove salvare i dati dell'utente o file di log (registro). E' anche molto importante per le analisi post-mortem. Pertanto viene salvato nel file di registro.

Informazioni relative all'utente

Voci di configurazione utente
Nome var config Descrizione Esempio M$ Esempio Posix (Linux)
UserAppData Percorso dove FreeCAD archivia i dati dell'applicazione relativi all'utente. C:\Documents and Settings\username\AppData\FreeCAD
Percorso breve : %APPDATA%\FreeCAD
/home/username/.FreeCAD
Percorso breve : ~/.FreeCAD
UserParameter File in cui FreeCAD archivia i dati dell'applicazione relativi all'utente. C:\Documents and Settings\username\AppData\FreeCAD\user.cfg
Percorso breve : %APPDATA%\FreeCAD\user.cfg
/home/username/.FreeCAD/user.cfg
Percorso breve : ~/.FreeCAD/user.cfg
SystemParameter File in cui FreeCAD archivia i dati relativi all'applicazione. C:\Documents and Settings\username\AppData\FreeCAD\system.cfg
Percorso breve : %APPDATA%\FreeCAD\system.cfg
/home/username/.FreeCAD/system.cfg
Percorso breve : ~/.FreeCAD/system.cfg
UserHomePath Percorso home dell'utente corrente C:\Documents and Settings\username
Percorso breve : %USERPROFILE%
/home/username
Percorso breve : ~

Note: For Linux distributions, an additional configuration file that relates to Qt may exist at path /home/username/.config/FreeCAD/FreeCAD.conf.

Argomenti della riga di comando

Voci di configurazione utente
Nome var config Descrizione Esempio
LoggingFile 1 se il logging è attivato 1
LoggingFileName Nome del file dove si trova il log C:\Documents and Settings\username\AppData\FreeCAD\FreeCAD.log
RunMode Indica come funzionerà il ciclo principale. "Script" significa che richiama il file di script fornito e poi esce. "Cmd" esegue l'interprete della riga di comando. "Internal" esegue uno script interno. "Gui" entra nel ciclo di evento Gui. "Module" carica un dato modulo python. "Cmd"
FileName Il suo significato dipende da RunMode
ScriptFileName Il suo significato dipende da RunMode
Verbose Livello di verbosità di FreeCAD "" o "strict"
OpenFileCount Contiene il numero di file aperti attraverso gli argomenti della riga di comando "12"
AdditionalModulePaths Contiene i percorsi di moduli aggiuntivi indicati nella linea di cmd "extraModules/"

Relativi al sistema

Voci di configurazione utente
Nome var config Descrizione Esempioo M$ Esempio Posix (Linux)
AppHomePath Percorso in cui è installato FreeCAD c:/Progam Files/FreeCAD_0.7 /user/local/FreeCAD_0.7
PythonSearchPath Contiene un elenco di percorsi dove python cerca i moduli. Questo vale all'avvio e può cambiare durante l'esecuzione

Informazioni relative alla costruzione

La tabella seguente mostra le informazioni disponibili relative alla versione di costruzione. La maggior parte proviene dal repositorio di Subversion. Queste cose sono necessarie per ricostruire esattamente la versione!

Voci di configurazione utente
Nome var config Descrizione Esempio
BuildVersionMajor Numero di versione principale della costruzione. Definito in src/Build/Version.h.in 0
BuildVersionMinor Numero di versione secondario della costruzione. Definito in src/Build/Version.h.in 7
BuildRevision Numero di revisione del repositorio SVN del src nella costruzione. Generato da SVN 356
BuildRevisionRange Gamma di diversi cambiamenti 123-356
BuildRepositoryURL URL del repositorio https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk/src
BuildRevisionDate Data della revisione precedente 2007/02/03 22:21:18
BuildScrClean Indica se il codice sorgente è stato modificato dopo il suo checkout Src modified
BuildScrMixed Src not mixed

Relative al marchio

Queste voci di configurazione sono legate al meccanismo di marchiatura di FreeCAD. Vedere Marchiatura per maggiori dettagli.

Voci di configurazione utente
Nome var config Descrizione Esempio
ExeName Nome del file di costruzione eseguibile. Può differire da quello di FreeCAD se è utilizzato un diverso main.cpp. FreeCAD.exe
ExeVersion Versione globale mostrata all'inizio V0.7
AppIcon Icona che viene utilizzata per l'eseguibile, mostrata in Application MainWindow. "FCIcon"
ConsoleBanner Banner che viene mostrato in modalità console
SplashPicture Nome dell'icona utilizzata per la schermata iniziale "FreeCADSplasher"
SplashAlignment Allineamento del testo nella finestra di dialogo iniziale "Bottom o Left"
SplashTextColor Colore del testo iniziale "#000000"
StartWorkbench Nome del Workbench che viene attivato automaticamente dopo l'avvio "Part design"
HiddenDockWindow Elenco dei dockwindows (separati da un punto e virgola) che saranno disabilitati "Property editor"

Querying the configuration

From FreeCAD's Python console

Entries of the the configuration set can be queried with the config var name (see tables above) from the Python console. For example:

 >>> FreeCAD.ConfigGet("ExeVersion")
 '0.19'

If the name is not found, an empty string is returned.

From command line

Use the --get-config <config-var-name> option to query a single name. Not all names are supported. For example:

 FreeCAD_0.19 --get-config ExeVersion

Use the --dump-config option to get a list of names and their values. Not all names are supported.

From FreeCAD console

Start FreeCAD in console mode with --console and query with Python code. For example:

 $ FreeCAD_0.19 --console
 [FreeCAD Console mode <Use Ctrl-D (i.e. EOF) to exit.>]
 >>> FreeCAD.ConfigGet("ExeVersion")
 '0.19'
 >>> exit()

For Linux (bash shell) you can modify the following command line to suit your needs:

 $ FreeCAD_0.19 --console <<EOF
 print( "FREECAD_USER_HOME: " + ( "not set" if ( os.environ.get('FREECAD_USER_HOME') is None ) else os.environ.get('FREECAD_USER_HOME') ) )
 print( "UserHomePath: " + FreeCAD.ConfigGet("UserHomePath") )
 exit()
 EOF

Starting FreeCAD from the desktop

Linux: Creating an additional start option

The following assumes that your desktop is configured such that you can launch FreeCAD from it. Depending on your Linux distribution and desktop environment, you may have to adapt the following steps:

  1. Copy the freedesktop entry file for FreeCAD from /usr/share/applications/freecad.desktop to ~/.local/share/applications.
  2. Change the name from freecad.desktop to something else (e.g. MyFreeCADConfig.desktop).
  3. Open the file with a text editor and change how FreeCAD is invoked by modifying the line starting with Exec.
  4. As a result, an additional entry in your start menu/application launcher is available. This way, you can have multiple FreeCAD entries with various launch options.

Starting FreeCAD from a portable USB medium

introduced in version 0.19

Windows

Put the FreeCAD executable, FreeCAD.exe, on the USB medium. Create a batch file, FreeCAD.bat, and put it into the same directory as FreeCAD.exe. Inside the batch file write:

set CURRENTDIR=%cd%
set FREECAD_USER_HOME=%CURRENTDIR%
start FreeCAD.exe -u FreeCAD/user.cfg -s FreeCAD/system.cfg --write-log

or with FREECAD_USER_DATA

set CURRENTDIR="%cd%"
set FREECAD_USER_DATA=%CURRENTDIR%/..
start FreeCAD.exe -u %FREECAD_USER_DATA%/user.cfg -s %FREECAD_USER_DATA%/system.cfg

Now double-click the batch file to start FreeCAD. (see)