Open the configuration window with the command configuration in the tools menu and choose the desired configuration node in the left configuration tree.

With the Check button of the button-panel at the bottom you check the existence of all configured folders and files. If a folder or file doesn't exist the corresponding edit field is colored red.

The Dump button exports the whole configuration in a text file. The first lines show which ini files are used for configuration. The detailed information can be used to detect configuration problems or to make global presettings in a classroom situation.

Save an edited configuration. Almost all changed configurations are in use then.


The Python versions registered in the windows registry are listed here. You can activate one of these versions.

If a Python version is unpacked on a Windows computer but not installed, this version will not be saved in the registry. You can add such a version to this list as an unregistered version using Add and remove again. Registered versions cannot be removed.

The Python version Python Tk is specifically designed for running and debugging Tk applications, Python Wx for wxPython applications, and SSH for programs on an external server. By default the Remote Python Engine is used.


Always use sockets
GuiPy can use sockets or Windows named pipes for communicating with Python. Named pipes can only be used if pywin32 is installed in the active python version. The main advantage of named pipes is that it avoids firewall issues related to socket connections. If this option is checked sockets are used in preference to named pipes. (default true)

Clear output before run
If checked the interpreter output is cleared before running scripts. (default false)

Internal Interpreter hidden
Only the remote Python engines are shown. (default true)

Jump to error on exception
If set, when an exception occurs the file in which the exception occurred opens and the error position is displayed. (default true)

Mask FPU exceptions
Floatingpoint operations that result in special numbers such as Nan, + or -Infinity etc, normally raise exceptions. However some packages such as Scipy would raise such exceptions when they get imported into Python and they wouldn't be usable. Keep this option checked if you want to use such packages with GuiPy.

Post mortem on exception
If this option is checked when an unhandled exception occurs while running or debugging a script, GuiPy enters the post-mortem analysis mode.

Pretty print output
If checked the standard python module pprint is used to format interpreter output.

Reinitialize before run
If set and a remote Python engine is used, it is re-initialized beforer unning or debugging a script. This is necessary when using GUIapplications (Tkinter, Qt, wxPython, etc.). It is set by default.

Timeout for running scripts
Time in ms for running scripts timeout. If different than zero, when the elapsed time since the start of running a Python script exceeds the timeout value, you are given the opportunity to interrupt the script. Due to Python limitations this does not work when the script loops indefinitely inside a function.

Save environment before run
It saves environment options including open files, layout etc. before running scripts so that you can recover if the IDE crashes.

Save files before run
If checked all open files are saved before running scripts.

Save interpreter history
If checked the interpreter history is saved at program exit and restored when GuiPy is started again.

Interpreter history size
Specifies the size of the interpreter command line history. (default 50)

Step into open files only
If checked the debugger will not step into files that are not currently open. (default false)



Editor Font
Select the editor font via the Font button.

Active Line Color
Select the color for highlighting the active editor line or None if you do not want to highlight it.

Bookmark keys: Enable the bookmark shortcuts (see Keystrokes).
Bookmarks visible: Show bookmarks in the editor gutter.

Line Spacing/Tab spacing
Extra lines spacing in pixels: Extra spacing between the lines.
Tab width in spaces: The width of tabs in spaces.

Right Edge (a gray line showing the right margin)
Edge column: Enter the count of characters where the right edge should appear. Use zero to hide this line.
Edge color: Changes color of the right edge.

The Margin at the left hand side from the Editor with line numbers, bookmarks and folding elements.

Visible: Show or hide the gutter.
Autosize: Autosize the width to the line numbers.
Digits: If autosize is not set, use that many digits.
Show line numbers: Gutter shows line numbers.
Start at zero: The first line number will be 0.
Show leading zeros: If checked it shows leading zeros in line numbers.
Gutter Gradient: If checked a gutter gradient is painted according to the selected style.
Gutter color: The color used when the gutter gradient is disabled.
Use Gutter Font: Switch between the selected gutter font and the editor font.
Font: Use this button to select the gutter font.

Options 1

Check syntax as you type
If checked, when you edit Python files GuiPy continuously check the active file for syntax errors, which are shown in a similar way in which word processors show spelling errors. If you place the cursor on an error indicator you will see a hint explaining the problem. If this option is not checked, the file is checked only when you open or save it.

Highlight selected word
If checked, when you select a word by double-clicking or by issuing the editor command „Select Word“, all occurrences of the selected word in the editor are highlighted.

Selected word color
Select a color for a selected word.

Auto complete brackets
If checked, when you edit Python scripts and you type an open bracket(„(“, „[“, „{“) the corresponding closing bracket is entered automatically. When editing HTML and XML files the openingbracket is „<“. It also auto-completes strings.

Auto hide find toolbar
If checked, when the search finds something, the find toolbar is automatically closed.

Auto reload changed files
If checked, files changed on disk will be reloaded without prompting if the files have not been changed inside GuiPy. A message is shown in the status bar and a beep sound can be heard when this happens.

Code folding enabled
If checked, code folding is enabled.

Code folding for gui components
If checked, in Tk/TTK or Qt-Applications the create_widgets method is fold in.

Compact line numbers
Only every 10th line number is displayed.

Create backup files
If checked GuiPy will create backup files before overwriting existing files.

Detect UTF-8 encoding when opening files
This option controls whether GuiPy attempts to detect utf-8 encoding when opening files without the BOM mark. This detection is done by analyzing the first 4000 characters of the file and is imperfect. It only applies to non-Python files since utf-8 encoded Python files are required to have either the BOM mark or an encoding comment.

Display packages names in editor tabs
Display package names instead of file names for package files ( in editor tabs.

Mark executable lines
If checked the editor will show in the gutter special marks for executable lines.

Search text at caret
If checked, when the search function is invoked the search expression is set to the word containing the editor caret.

Show code hints
If unchecked code hints are not shown.

Trim trailing spaces on save
If checked the editor will trim spaces at the end of the lines when saving files. This works independently of the corresponding editor option which trims trailing spaces while editing.

Undo after save
If checked, you can undo editing actions beyond the point at which you saved the file. Otherwise undo can only take you back to point at which you last saved the file.

Show debugger hints
If unchecked debugger hints are not shown.

File encoding for new files
Controls the encoding for new files. Options: Ansi, UTF8, UTF8_NoBOM, UTF16LE or UTF16BE.

Line break format for new files
Controls the line break format for new files. Options: Dos, Unix, Mac or Unicode. The last option although available is not currently supported.

Options 2

Auto indent
Enables automatic indentation whereby a new line keeps the indent of the previous line.

Right mouse moves cursor
When clicking with the right mouse for a popup menu, move the cursor to that location.

Drag and Drop editing
If activated you will be able to drag text and drop it to another position.

Enhanced End key
End key behaves in a way analogous to the Enhanced Home.

Word wrap
Enable/disable word wrap. Please note that word wrap is not compatible with code folding. To enable word wrap you have to first disable code folding.

Enhanced Home key
If activated and you use the Home key one time, the caret is placed at the first occurrence of a non white-space, the second time it's placed in column 1.

ALT sets column mode
If activated then the Alt key sets the editor in column selection mode. i.e. you'll be able to select columns from a text.

Tabs to Space
Replaces tabs with spaces while you're typing.

Maintain caret column
When moving through lines w/o the option „Scroll past end of line“, keeps the column position of the cursor.

Smart tab delete
Similar to Smart tabs, but applies to character deletion with the BackSpace key.

Tab Indent
When some text is selected the Tab key indents and the Shift-Tab key unindents the selection.

Smart tabs
When tabbing, the cursor will go to the next non-white space character of the previous line.

Half page scroll
When scrolling with PageDown and PageUp keys, scroll of a half screen instead of a full.

Trim trailing spaces
Removes all spaces at the end of the lines.

Scroll by one less
Scrolls page by one line less than the page length.

Show special chars
Show special chars such as tabs and new lines.

Scroll past end of file
Cursor can go after the theoretical end of file.

Disable scroll arrows
Disables the scroll bar arrow buttons when you can't scroll in that direction any more.

Scroll past end of line
You'll be able to place the caret beyond the text (width).

Group undo
Consecutive editing actions are undone/redone together.

Show scroll hint
Shows a hint window with the numbers of the displayed lines when youscroll the editor.

Hide scrollbars as necessary
If enabled, the scrollbars will only show when necessary. If you have selected „Scroll Past end of line“, then the horizontal bar will always be there.

Scroll hint follows mouse
The scroll hint follows the mouse when scrolling vertically.

Show font ligatures
Show font ligatures in editor when using a font that supports them (e.g. FiraCode).

Code completion

Case Sensitive
This option determines whether the filtering of the code completion list when you type characters is case sensitive (default True).

Complete as you type
Code completion is invoked automatically as you type.

Complete Python keywords
Python keywords appear in the completion list when appropriate.

Auto-complete with one entry
If true, when the completion list contains one entry complete automatically without showing the list.

Complete with word-break characters
When the completion list is displayed completion with the currently selected entry occurs when word-break characters are typed (, brackets etc.). This is in addition to completing with the Tab and Enter keys.

Editor code completion
Enable/Disable code completion in the editor.

Interpreter code completion
Enable/Disable code completion in the interpreter.

Code completion list size
The size of the code completion window in number or lines.

Special packages
Special packages with code completion support.

Allows you to customize the size and type of font used in auto-completion.


This page allows you to customize the editor keyboard shortcuts.

Note that the second keystroke is for defining a sequence of keystrokes as a shortcut (e.g. Ctrl+K, I)

Syntax colors

The options in this page allow you to customize the syntax highlighting for Python and other file types.

Color themes

In this page you can preview and apply available color themes for syntax highlighting. These color themes are located in the %PROGRAMDATA%\GuiPy\Highlighters directory.

Code templates

Code templates are snippets of code that can be inserted in the editor. Each template has a short name, a description and the associated text. The text of a code template can contain parameters which are automatically expanded when the text is inserted. For example the „Python Module Header“ shown above contains the $[ActiveDoc-Name] and other parameters. If the character „|“ is present in the template, after the insertion of the template text, the cursor is placed at the position of that character and the character is deleted.

How to insert a code template in the editor
Type the template name and press the code template shortcut Ctrl-J. If you do not remember the name of template just press Ctrl-J and select from the pop-up list.

File templates

Using the menu system, you can use File/New/File… to open a dialog for selecting a file template. On this page you can customize these file templates.

Each template has the following properties:
Name: The name of the template.
Category: The category under which this template will be listed.
Default Extension: The default extension that will be added to the filename when a file based on this template is saved.
Highlighter: The syntax highlighter that will be used for files based on this template.
Template: The actual text that will be inserted into new files created from this template. The template text can contain custom parameters which are expanded upon the activation of the template. If the character „|“ is present in the template, after the insertion of the template text, the cursor is placed at the position of that character and the character is deleted.

Class modeler

On this page you configure the options for the class modeler.

Attribute options
Show get/set methods: Show or hide the get/set-methods checkboxes on the attribute page of the class modeler. A checked checkbox inserts automatically a get- oder set-method for a new attribute.
get/set methods as property: Choose how get/set-methods are implemented, as get_attribute/set_attribute methods or as properties. (default: true)
Show type selection: Show or hide the type selection combobox on the attribute page.

Methods options
Show kind procedure: If checked the radio group Kind on the methods page of the class modeler shows three options: Constructor, Function and Procedure. Otherwise only Constructor and Function.
Show parameter type selection: Show or hide the type selection combobox for parameters on the methods page.

Class options Use „from _ _future_ _ import annotations“: For recursivly defined classes you need this import. This will change in later Python versions.

GUI designer

Name GUI components after attribute Text: The name of a label, button or checkbox widget is automatically formed from the value of the attribute Text.
Show hints permanently in GUI designer: Show hints for a widget while the mouse pointer is over it.
Snap to grid: Snaps a widget to the grid when it is moved in the GUI window.
Align to grid when inserting: Aligns a new widget to the grid when inserting it.
Grid size in GUI designer: Grid size in pixels.
Frame width: Initial width of a new GUI window.
Frame height: Initial height of a new GUI window.


On the page Structogram the texts for the structogram elements, parameters for the control structures if, as well as other settings are configured.

The input and output fields contain the texts that must be used to convert an in-/output into Python source code. The other texts are templates for the structogram elements.

Variables whose data type can not be recognized from the structogram are, by default, of the type selected under Datatye when converting to Python source code.

Sequence diagram

Lifelines are named Object with an attached number. New and Close are the messages for creating or closing a lifeline.

In addition to the method name, the messages to a lifeline can also contain the parameter or the return value if the sequence diagram is generated using the debugger or a UML window.

UML Design

On this page you configure the layout of classes and objects for the UML window.

As a visual feedback, classes with a valid or no longer valid .pyc file are color-coded. If a Python file is changed, e.g. if an attribute is added, the .pyc file used for interactive work in the UML diagram is no longer valid and is displayed in red. Compiling the file creates a .pyc file that also contains the additional attribute. The head of the class is displayed in white and you can again create objects of the class. In the UML window you can compile a class via the context menu.

In the „Attributes and Methods“ section you specify the default representation for attributes and methods. This includes which ones are displayed at all, the order, the degree of detail for parameters and the visibility.

UML Options

Class presentation

  • show empty attribute- and method-rectangles - if there are no attributes or methods in a class, the rectangles can be shown or hidden in the class diagram
  • Integer instead of int - the data type int is UMLcompliant shown with integer
  • Show constructors with visibility - constructors can be represented by a C or by visibility as with methods
  • relationship attributes bold - in class relations the relationship attributes are given in bold
  • Display class parameters separately - for a parameterized class the parameter can be displayed in the top right-hand corner
  • Role hides attribute - role names of a class relationship can hide attributes with the same name
  • Class name in uppercase - if you prefer a uppercase representation

Object presentation

  • show with inherited private attributes - for objects inherited private attributes are also displayed with their values
  • show with methods - normally you only represent objects with their attributes and attribute values
  • start names with lower case letter - automatically generated object names begin with lowercase letters
  • show all new objects - if a constructor or a method is called all new objects created in the process can be displayed automatically
  • without visibility - attributes of objects are displayed without visibility

Class editing

  • Standard modifiers for attribute and methods - sets the visibility in the class modeler to public, the type of a new method to procedure and chooses the get method for attributes
  • only open public classes - when opening files in the UML window private classes contained within them are not displayed

Object editing

  • private attributes editable - the context menu of an object allows you to edit attributes, but you can exclude private attributes

IDE Shortcuts

You can customize the IDE keyboard shortcuts. You can add or remove shortcuts for the the various commands. Note that you can have multiple shortcuts for each command.


You can use the internet-explorer to show the documentation in internal windows of GuiPy. Activate „Use only one browser window“ if only one internal browser window shall be used.

With External browser you can configure a browser like Chrome, Firefox or Opera. For the external browser you have to set Browser title and Keys for „Open Address“ in browser. If you don't use the internet explorer internally the configured external browser is used to show html files.


The selected language gets active if you press the Save button.


Save files automatically when closing: Every open file is saved when closing. (default true)
Restore open files: If checked, GuiPy will restore the files which were open when the last session ended, when it starts up.
Restore open project: If checked, GuiPy will restore the project which was open when the last session ended, when it starts up.
Show tab close button: Shows/hides the close buttons on the editor tabs.
Smart Next/Previous Page: (Shift+)Ctrl+Tab can be used to move to the (previous) next page. If this option is checked these keys move through the pages according to the Z-order of the pages (as the Alt+Tab does in Windows). Otherwise they move according to the visual order of the pages.
Style Main Window Border: If true the main application window border is styled to match the selected style. If false it has the standard windows border.
File explorer initially expanded: If checked the File Explorer starts with its nodes initially expanded.
Project explorer initially expanded: If checked the Project Explorer starts with its nodes initially expanded.
File Explorer background processing: If checked (default) the File Explorer processes folder expand marks and file images in threads. Uncheck if you encounter errors related to File Explorer.
Methods with comment: New methods have a comment.
Check for updates automatically: If checked, you will be notified when new version of GuiPy become available for download.

Days between update checks: You can define how often you want to check for GuiPy updates.
Number of recent files: Maximum number of recent files in „File/Recent files“ menu.
Dock animation interval: This and the following option, control the animation when you show a hidden docked form. The Dock animation interval controls the interval in milliseconds, between successive redraws of the shown window. It needs to be greater than or equal to 1.
Dock animation move width: The Dock animation move width controls the width in pixels, by which the animated form is moved. To disable the animation set this parameter to a large value, e.g. 1000.
IDE font size: Font size in the main window of GuiPy.
Editor tab position: Controls whether the editor tabs should appear at the top or at the bottom.
File Change Notification: Controls whether the user is notified about changes in the edited files.
Folder for temporary files: Select a folder for temporary files of GuiPy or use the Default button.


Select a style and click „Apply Style“. The gutter color of an editor window is based on the selected style, not the selected color theme for syntax highlighting.


Setup the page for printing.

Setup the header and footer for printing.


Some teachers want these restrictions. Students cannot change them in a PC room.


By default the file extensions .py, .pyw (Tk/TTK or Qt), .pfm (gui form), .puml (uml file), .psd (sequence diagram) and .psg (structogram) are associated with GuiPy. You can check some more extensions or add some literally. Use the button „Change“ to add or delete extensions.

„Association of GuiPy“ shows the current GuiPy path.


Here you can specify which tabs, items on the tabs, menus, menu entrys, toolbars or toolbar items are displayed.


Scp command: This option allows you to specify a path to an scp command. This could be useful if you have multiple versions of scp installed and want to specify which one to use. The default value 'scp' assumes scp can be found on the system path. You can overwrite this value in the SSH server configuration.

Scp options: This option allows you to specify options to used with the scp command. You can overwrite this value in the SSH server configuration.

SSH command: This option allows you to specify a path to an ssh command. This could be useful if you have multiple versions of ssh installed and want to specify which one to use. The default value 'ssh' assumes ssh can be found on the system path. You can overwrite this value in the SSH server configuration.

SSH options: This option allows you to specify options to used with the ssh command. You can overwrite this value in the SSH server configuration.

Disable Variables Window with SSH: The updating of the Variables window requires data transers between GuiPy and remote Python engines. With slow SSH connections this could slow down GuiPy. If checked, the Variables Window is desabled while using an SSH engine.



Git is a version control system which supports the work with local and remote repositories. It is used to control versions of source code files.

The git-homepage has the address

Under Git folder you enter the folder of the previous installed Git program. Repository local is a folder for local repositories. A remote repository can be cloned. The name of the cloned repository is appended to Repository local.

After installation of git the tools menu will be expanded with a git menu. In an editor window you call git commands from the context menu.


Subversion (SVN) is a version control system. It is used to maintain current and historical versions of source code files. The subversion homepage is at Due to affordable e-mail-registration there is no automatic install process.

After installation the tools menu is expanded with a subversion menu.

en/configuration.txt · Zuletzt geändert: 2024/01/07 17:43 von roehner