[Contents] [Intro] [Reference] [Tutorial] [Questions [New [Index]
Overview -> Reference -> Command-Line Options

Command-Line Options and Environment Variables

Command-Line Options

The current version daVinci 2.1 supports 15 command-line options, described below. Further, the filename of either a term representation file or status file can be used when starting daVinci in a shell to load the file at initialization time.

daVinci Command-Line Syntax

daVinci	[-display <X11 display>] [-font <normal | large | extra_large>]
	[-graphbg <X11 color>] [-graphedit] [-graphedit_old] [-help]
        [-init <filename>] [-log <filename>] [-nocache] [-nogui] [-pipe]
        [-server ?port?] [-speedy] [-startappl <directory> <filename/options>]
        [-verify] [-version] [-window_api] daVinci-file

Option -display <X11 display>

Sets the output to the specified X11 display, for example to let daVinci run on one computer and redirect the user interface to be displayed on another computer. X11 displays are given in a format like somehost:0.

Option -font <normal | large | extra_large>

Sets the font of the user interface to a larger size. This will also set the font size of the graph to the same size. Fonts larger than the default value normal are very useful for demonstrations when people should read the text of menus, dialog windows etc. from the distance.

Option -graphbg <X11 color>

Sets the background of the daVinci
base window to the specified color. Valid color names can be found in file lib/rgb.txt in your X11 directory (probably /usr/local/X11).

Option -graphedit

Connects the
graph editor application at initialization time to the daVinci API. In the daVinci distribution, the graph editor application is located in directory daVinci_V2.1/grapheditor. If environment variable $DAVINCIHOME is correctly set to the absolute filename of directory daVinci_V2.1, then daVinci will be able to start the editor with option -graphedit (daVinci assumes that the filename of the editor binary is $DAVINCIHOME/grapheditor/grapheditor). Furthermore, environment variable $GRAPHEDITOR_DIRECTORY can be used to specify the directory with the editor explicitly to let daVinci look for the editor at a different location, but usually there is no need to do so. The graph editor can also be connected to daVinci at runtime by using menu File/Connect Application....

With this option, the grapheditor is started in the new user-interface mode, as if the -nogui option would have been set for daVinci. Additionally the grapheditor is connected via TCP/IP sockets, if the option -server is supplied to daVinci as well.

Option -graphedit_old

This is the same as -graphedit above, except that the old user-interface mode is used, as in daVinci versions prior to V2.1.1. Please keep in mind, that some new grapheditor features are only available in the new mode.

Option -help

Displays a help message to inform about the command-line syntax. daVinci will not start with this option.

Option -init <filename>

With this option you can specify a file containing initial API commands. These commands are executed immediately after starting daVinci. You can use all API commands, except those of the categories
Multi, Application Menu and Drag & Drop. The answers of these commands, you usually get, if you send them via the API, are ignored, if no application is connected, otherwise they are send to the API answers pipe. Use this option carefully, if you've connected an application on command-line via options -pipe or -startappl or -graphedit, because this could result in a strange behaviour of the application.

The syntax of the file is just a list of API commands, defined for daVinci_commands.

Option -log <filename>

In the file specified with this option, daVinci will log all API commands and answers. Every command is preceded by the word 'Command: ' and every answer is preceded by the word 'Answer: '. This option is very usefull for debugging purposes. You can test this option by looking at the grapheditor communication. Start daVinci like this: daVinci -graphedit -log /tmp/daVinci.log and have a look at the file /tmp/daVinci.log. Try the command tail -f /tmp/daVinci.log to see the communication continously or grep 'Command:' /tmp/daVinci.log | tail -f to see only the API commands and appropriately for API answers.

Option -nocache

Switches the
pixmap cache off. This is useful in case of problems with not enough memory. daVinci will crash with a X Error: BadAlloc message as soon as no more memory is available.

Option -nogui

This option starts daVinci without any user-interface elements. Especially it doesn't open the first daVinci base-window, before a
gui(configure(...)) or a window(deiconify) command is received. Please refer to the API command category Graphical User-Interface to find out more about the configurable features of the user-interface. Warning: If you start "daVinci -nogui &" you'll never see any window and the only chance to get rid of the daVinci process is the kill command.

With this option set, the API command category Graphical User-Interface must be used and the API command category Application Menu can't be used. If the option is not set, this is true vice versa.

Option -pipe

This option should be used if daVinci is started by an application program. Read the API reference for details about applications communicating with daVinci. By using this option, the daVinci API is enabled and most of the entries of the File menu are deactivated to guarantee that the user will not be able to remove a graph sent by an application for visualization.

Option -server ?port?

This option starts daVinci as a socket server on the specified port. Please refer to
How to Connect an Application to find out more about the TCP/IP socket communication. Usually this option should be supplied without a port number to use the daVinci standard socket-port for the communication. If this is not desired, any legal port number can be supplied as a parameter for this option.

Option -speedy

Accelerates the drawing performance for very slow computers. This will only drop the arrows of edges in the graph visualization at the moment. For todays fast computers, drawing the arrows is not a problem, so using this option is usually not required.

Option -startappl <Directory> <Filename/Options>

Connects the application, specified by Filename and located in the given Directory, at initialization time to the daVinci
API. Note that there is a space required between the directory and filename. If options are needed to start the application, then the filename has to be quoted in the shell together with the options (e.g. -startappl /bin `testappl -opt1 arg1 arg2 -opt2' to start application testappl in directory /bin with the given options). An application can also be connected at runtime by using menu File/Connect Application....

Option -verify

(Only available in daVinci V2.0.2 or higher.) This option is intended for debugging. By using this option, daVinci verifies some internal data structures after updating a graph with API command
graph(update(...)). You should start daVinci with this option if you get strange effects or bugs after graph updates. The verification costs some time, so usually the function is switched off for performance reasons and must be explicitly switched on by the user.

Option -version

Displays the current version of daVinci on command-line. daVinci will not start with this option.

Option -window_api

In former versions of daVinci, the API supported only the multi-graph feature, but not the multi-window feature. Starting with daVinci V2.1 you can set the API into the new Window-API mode by setting this option on command-line at startup. You can't change this behaviour at runtime. See
API command category Multi for more informations.

Environment Variables

Windows NT: On Windows NT environment variables have to be set in the environment part of the System-dialog. Please use '/' instead of '\' for all variables containing paths for the daVinci system. Please refer to the Windows NT help system and documentation to find out more about environment variables.

$DAVINCIHOME

This is the most important environment variable which specifies the location of the daVinci distribution on your computer, i.e. the absolute file name of the topmost directory daVinci_V2.1. To get proper results, you need to set this variable in the shell before using the system. daVinci needs to know this location to find resources, e.g. the
online documentation or the graph editor.

So for example, if you have installed daVinci in your home directory /home/me, then you have to set the environment variable $DAVINCIHOME to /home/me/daVinci_V2.1. daVinci will not come up, if this environment variable is undefined.

Note: Be careful with moving the daVinci distribution to another location on your filesystem later. You can do so (by setting $DAVINCIHOME to the new location), but users may have problems accessing the help system afterwards. The reason is that daVinci stores the current location of the online documentation when the user saves the options with menu Options/Save Options, so these users will always look for the documentation at the specified former location. The current setting can be seen and modified with the General Settings dialog, available after using menu Options/Save Options. So if you have to move the daVinci distribution, make sure that all users are updating or removing their saved options (stored in file ~/.daVinci). Otherwise you can leave a symbolic link at the former daVinci location for backward compatibility.

$DAVINCI_LANG

This variable is needed for the internationalization of daVinci, because it was not possible to find out the current language on all supported platforms. If this variable is not set, a value of C is supposed. You can find out the supported values by looking into the directory $DAVINCIHOME/lib/daVinci, where you'll find the language files, whose names are build like daVinci_${DAVINCI_LANG}.lang. There should be at least files for languages C (english, default) and de (german). Please read more about the internationalization of daVinci in the internationalization chapter.

$DAVINCI_ICONDIR

This environment variable specifies all directories where daVinci will look for files containing icon images in X11 bitmap format (.xbm). Icons are used in daVinci to visualize particular nodes of a graph (refer to
term representation) and for the icon bar of the base window which can be extended by application specific icons with API command app_menu(create_icons(...)).

By default, daVinci will look for an icon in directory $DAVINCIHOME/icons first. One can specify additional directories that should be searched afterwards by setting this environment variable. The single directories are separated with a colon, so for example to define two additional icon directories /home/me/myicons and /home/mycolleague/his_icons, simply set $DAVINCI_ICONDIR to /home/me/myicons:/home/mycolleague/his_icons.

$GRAPHEDITOR_DIRECTORY

By default, daVinci will look for the graph editor application in directory $DAVINCIHOME/grapheditor, if started with option -graphedit. To look for the editor at another location, one can set environment variable $GRAPHEDITOR_DIRECTORY to point to a different directory. But usually, it is not recommended to manipulate the files in the daVinci distribution this way.


daVinci V2.1.1 Online Documentation - Page update: Oct 21, 1998