updated the documentation

This commit is contained in:
joten 2012-10-20 16:53:46 +02:00
parent 53b4a83757
commit ae8f325d9f
4 changed files with 126 additions and 46 deletions

View file

@ -12,12 +12,7 @@
=8.3.0= =8.3.0=
(+) Multi-dimensional tiling of the master area. The user may now specify
X and Y dimensions independently up to 9 x 9.
(+) Initially assign windows to the monitor on which they appear if
nothing is specified in the configuration.
(~) Improved view arranging runtime. (~) Improved view arranging runtime.
(+) Created bug.n log to record major and debugging events.
(~) Fixed bug #18641: Freezing problem. In most cases, bug.n will no (~) Fixed bug #18641: Freezing problem. In most cases, bug.n will no
longer hang when one of its managed windows hangs. longer hang when one of its managed windows hangs.
(~) Fixed bug: Sometimes cycling through the windows in a view would (~) Fixed bug: Sometimes cycling through the windows in a view would
@ -26,10 +21,38 @@
a non-active monitor could cause both monitors to change views. a non-active monitor could cause both monitors to change views.
(~) Gap widths are now treated identically on both "tile" and "monocle" (~) Gap widths are now treated identically on both "tile" and "monocle"
layouts. layouts.
(~) Fixed bug #18650: Unexpected monitor focus changes
(~) Fixed bug in 'Manager_setWindowMonitor(d)' and
'Manager_setViewMonitor(d)'
(~) Fixed bug, which prevented bug.n from Main_reload, if the number of
monitors changed.
(~) Fixed bug: Closing Bar_cmdGui and activating the next to last window.
(~) Fixed bug: Vertical position of Bar_cmdGui, if
Config_verticalBarPos=tray and the task bar is at the top of the
monitor.
(~) Fixed bug: On Main_reload() and Config_verticalBarPos=tray.
(~) Changed the command line argument from specifying 'the path to the
config.ini' to 'the path to the general data directory containing
the config.ini and log.txt'.
(+) Multi-dimensional tiling of the master area. The user may now specify
X and Y dimensions independently up to 9 x 9.
(+) Initially assign windows to the monitor on which they appear if
nothing is specified in the configuration.
(+) Created bug.n log to record major and debugging events and window
information.
(+) 'View margins' allowing a layout to occupy a limited space of the
monitor.
(+) 'Single window action', which allows to close or maximize windows
based on rules.
(+) 'Reload' hotkey, which reloads the whole script.
(+) Re-Setting the 'Reload' and 'ExitApp' hotkey in 'config.ini'-
(+) Added the configuration variable "Config_viewNames", with which views (+) Added the configuration variable "Config_viewNames", with which views
can be named and the number of views can be set. The configuration can be named and the number of views can be set. The configuration
variable "Config_viewCount" therewith becomes obsolete. variable "Config_viewCount" therewith becomes obsolete.
(-) Removed the configuration variable "Config_viewCount". (-) Removed the configuration variable "Config_viewCount".
(-) Removed the explicit listing of commands in the Bar_cmdGui.
(-) Removed the default rules for Gimp, since from version 2.8 onwards
Gimp can use a single application window instead of three and more.
=8.2.1= =8.2.1=

View file

@ -97,6 +97,12 @@
The default values are retrieved from the "Window Color and Appearance" The default values are retrieved from the "Window Color and Appearance"
settings. settings.
: **Config_barCommands**=Run, explore docs;Monitor_toggleBar();Main_reload();Reload;ExitApp
The commands seperated by semicolon, which are listed in the command GUI
of the bar (#!) and therewith can be selected rather then typed; bug.n
functions (as used in the hotkey configuration), the "Run" and "Send"
command of AutoHotkey can be used here.
: **Config_readinBat**=0 : **Config_readinBat**=0
If true (=1), the system battery status is read in and displayed in the If true (=1), the system battery status is read in and displayed in the
status bar. This only makes sense, if you have a system battery status bar. This only makes sense, if you have a system battery
@ -110,6 +116,18 @@
If true (=1), the current date is read in (format: "WW, DD. MMM. YYYY") If true (=1), the current date is read in (format: "WW, DD. MMM. YYYY")
and displayed in the status bar. and displayed in the status bar.
: **Config_readinDiskLoad**=0
If true (=1), the current disk load (read and write) is read in and
displayed in the status bar.
: **Config_readinMemoryUsage**=0
If true (=1), the system memory usage is read in and displayed in the
status bar.
: **Config_readinNetworkLoad**=0
If true (=1), the current network load (up and down) is read in and
displayed in the status bar.
: **Config_readinTime**=1 : **Config_readinTime**=1
If true (=1), the current time is read in (format: "HH:MM") and If true (=1), the current time is read in (format: "HH:MM") and
displayed in the status bar. displayed in the status bar.
@ -157,10 +175,10 @@ settings.
=== View / Layout === === View / Layout ===
: **Config_viewNames**=1;2;3;4;5;6;7;8;9 : **Config_viewNames**=1;2;3;4;5;6;7;8;9
The names of the views in use separated by a semicolon. With the number The names of the views separated by a semicolon. This variable sets the
of fields in this list the total number of views is given. This has names of the views shown in the status bar and determines the nummber of
effects on the displayed groups in the bar, and should not be exceeded in views (Config_viewCount); the total number of names given, i. e. views,
the hotkeys section of the configuration. should not be exceeded by the configured hotkeys.
: **Config_layout_#1**=[]=;tile : **Config_layout_#1**=[]=;tile
The layout symbol and arrange function (the first entry is set as the The layout symbol and arrange function (the first entry is set as the
@ -184,17 +202,39 @@ settings.
The stack axis: 1 = x (from left to right), 2 = y (from top to The stack axis: 1 = x (from left to right), 2 = y (from top to
bottom), 3 = z (monocle). bottom), 3 = z (monocle).
: **Config_layoutGapWidth=0
The default gap width in px (only even numbers) of the "tile" layout,
i. e. the space between windows and around the layout.
: **Config_layoutMFactor**=0.6 : **Config_layoutMFactor**=0.6
The factor for the size of the master area, which is multiplied by the The factor for the size of the master area, which is multiplied by the
monitor size. monitor size.
: **Config_viewMargins**=0;0;0;0
The margin of a view (around the layout, "monocle" and "tile") as a
semicolon separated list of values in px (top;right;bottom;left), which
by default can be activated per view with the hotkey Win+Shift+N
(View_toggleMargins).
With view margins you may create an empty area on the monitor, which is
not occupied by the layout, therewith making a desktop widget visible.
=== Runtime === === Runtime ===
: **Config_ghostWndSubString**= (Not Responding)
The text string, which identifies a hung window in its title bar; the
german Windows version uses " (Keine Rückmeldung)".
: **Config_mouseFollowsFocus**=1 : **Config_mouseFollowsFocus**=1
If true (=1), the mouse pointer is set over the focused window, if a If true (=1), the mouse pointer is set over the focused window, if a
window is activated by bug.n. window is activated by bug.n.
: **Config_newWndPosition=top
The position of a new window in a view; "top": at the beginning of the
window list and the master area (default), "masterBottom": at the end
of the master area, "stackTop": on top of the stack area, "bottom": at
the end of the window list and the stack area.
: **Config_onActiveHiddenWnds**=view : **Config_onActiveHiddenWnds**=view
The action, which will be taken, if a window e. g. should be The action, which will be taken, if a window e. g. should be
activated, but is not visible; "view": show the view accordng to the activated, but is not visible; "view": show the view accordng to the
@ -210,7 +250,7 @@ settings.
: **Config_syncMonitorViews**=0 : **Config_syncMonitorViews**=0
The number of monitors (2 or more), for which views should be The number of monitors (2 or more), for which views should be
activated, when using the accordant hotkey. If set to 1, the views are activated, when using the accordant hotkey. If set to 1, the views are
actiated for all monitors. If set to 0, views are activated activated for all monitors. If set to 0, views are activated
independently (only on the active monitor). independently (only on the active monitor).
: **Config_viewFollowsTagged**=0 : **Config_viewFollowsTagged**=0
@ -220,7 +260,7 @@ settings.
=== Rules === === Rules ===
: **Config_rule_#1**=.*;.*;;1;0;0;0;0;0 : **Config_rule_#1**=.*;.*;;1;0;0;0;0;0;
If you want to replace a default rule, you will have to use the If you want to replace a default rule, you will have to use the
correct variable name, e. g. you may set a rule (.*;.*;) for a default correct variable name, e. g. you may set a rule (.*;.*;) for a default
monitor, view and / or showing window title bars by setting the first monitor, view and / or showing window title bars by setting the first
@ -228,39 +268,39 @@ settings.
If you want to add a rule you do not have to use a numbered variable, If you want to add a rule you do not have to use a numbered variable,
but "Config_rule=..." (the numbering will be done automatically in the but "Config_rule=..." (the numbering will be done automatically in the
order given in the configuration file). General format: order given in the configuration file). General format:
Config_rule[_#<i>]=<class (regular expression string)>;<title (regular Config_rule_#<i>=<class (regular expression string)>;<title (regular
expression string)>;<window style (hexadecimal number or blank)>; expression string)>;<window style (hexadecimal number or blank)>;
<is managed (1 = True or 0 = False)>;<monitor (0 <= integer <= total <is managed (1 = True or 0 = False)>;<monitor (0 <= integer <= total
number of monitors, 0 means the currently active monitor)>;<tags number of monitors, 0 means the currently active monitor)>;<tags
(binary mask as integer >= 0, e. g. 17 for 1 and 5, 0 means the (binary mask as integer >= 0, e. g. 17 for 1 and 5, 0 means the
currently active tag)>;<is floating (1 = True or 0 = False)>; currently active tag)>;<is floating (1 = True or 0 = False)>;
<is decorated (1 = True or 0 = False)>;<hide title (1 = True or <is decorated (1 = True or 0 = False)>;<hide title (1 = True or
0 = False)> 0 = False)>;<action on single windows (Close or Maximize)>
(all in one line, ";" is not allowed as a character) (all in one line, ";" is not allowed as a character)
: **Config_rule_#2**=.*;.*;0x80000000;0;0;0;1;1;1 : **Config_rule_#2**=.*;.*;0x80000000;0;0;0;1;1;1;
Pop-up windows (style WS_POPUP=0x80000000) will not be managed, are Pop-up windows (style WS_POPUP=0x80000000) will not be managed, are
floating and the titles are hidden. floating and the titles are hidden.
: **Config_rule_#3**=SWT_Window0;.*;;1;0;0;0;0;0 : **Config_rule_#3**=SWT_Window0;.*;;1;0;0;0;0;0;
Windows created by Java (SWT) e. g. Eclipse have the style WS_POPUP, Windows created by Java (SWT) e. g. Eclipse have the style WS_POPUP,
but should excluded from the above rule. but should be excluded from the second rule.
: **Config_rule_#4**=Xming;.*;;1;0;0;0;0;0 : **Config_rule_#4**=QWidget;.*;;1;0;0;0;0;0;
Xming windows have the style WS_POPUP, but should be excluded from Also windows created by QT (QWidget) should be excluded from the second
the above rule. rule for the same reason as above.
: **Config_rule_#5**=MsiDialog(No)?CloseClass;.*;;1;0;0;1;1;0" : **Config_rule_#5**=Xming;.*;;1;0;0;0;0;0;
: **Config_rule_#6**=AdobeFlashPlayerInstaller;.*;;1;0;0;1;0;1" Also Xming windows should be excluded from the second rule for the same
: **Config_rule_#7**=CalcFrame;.*;;1;0;0;1;1;0" reason as above.
: **Config_rule_#8**=_sp;_sp;;1;0;0;1;0;1"
: **Config_rule_#9**=MozillaDialogClass;.*;;1;0;0;1;1;0" : **Config_rule_#6**=MsiDialog(No)?CloseClass;.*;;1;0;0;1;1;0;
: **Config_rule_#10**=gdkWindowToplevel;GIMP-Start;;1;0;0;1;1;0" : **Config_rule_#7**=AdobeFlashPlayerInstaller;.*;;1;0;0;1;0;1;
: **Config_rule_#11**=gdkWindowToplevel;GNU Image Manipulation Program;;1;0;0;1;1;0" : **Config_rule_#8**=CalcFrame;.*;;1;0;0;1;1;0;
: **Config_rule_#12**=gdkWindowToplevel;Werkzeugkasten;;1;0;0;1;1;0" : **Config_rule_#9**=MozillaDialogClass;.*;;1;0;0;1;1;0;
: **Config_rule_#13**=gdkWindowToplevel;Ebenen, .* - Pinsel, Muster, .*;;1;0;0;1;1;0" : **Config_rule_#10**=_sp;_sp;;1;0;0;1;0;1;
: **Config_rule_#14**=gdkWindowToplevel;Toolbox;;1;0;0;1;1;0" : **Config_rule_#11**=MozillaWindowClass;.* - Mozilla Firefox;;1;0;0;0;1;0;Maximize
: **Config_rule_#15**=gdkWindowToplevel;Layers, Channels, Paths, .*;;1;0;0;1;1;0" : **Config_rule_#12**=Chrome_WidgetWin_1;.*;;1;0;0;0;1;0;Maximize
=== Session management === === Session management ===

View file

@ -71,7 +71,7 @@ There are three layouts.
A master area for the main window(s) and a stacking area for the rest, A master area for the main window(s) and a stacking area for the rest,
all windows are shown at any time. This layout can be further changed all windows are shown at any time. This layout can be further changed
in the following respects: in the following respects:
- the dimensions of the master area (1x1 ... 9x9) - the dimensions of the master area (1x1 ... 2x3 ... 9x9)
- the stacking direction of the master and stacking area (from left to - the stacking direction of the master and stacking area (from left to
right, from top to bottom or monocle) right, from top to bottom or monocle)
- the position of the master area (left, top, right or bottom) - the position of the master area (left, top, right or bottom)
@ -120,7 +120,7 @@ path to the configuration file (<file path to the bug.n executable>
If you are using bug.n on Microsoft Windows Vista or 7 you may use If you are using bug.n on Microsoft Windows Vista or 7 you may use
applications, which run with administrator privileges e. g. applications, which run with administrator privileges e. g.
administrative tools and therefor are not managed by bug.n, if it is administrative tools and therefor are not managed by bug.n, if it is
run with an account, which //is// not the administrator. If you want run with an account, which is //not// the administrator. If you want
those applications to be managed, you need to run bug.n with those applications to be managed, you need to run bug.n with
administrator privileges, too. administrator privileges, too.
You can set the option "Run this program as an administrator" on the You can set the option "Run this program as an administrator" on the

View file

@ -136,19 +136,27 @@ pressing the left Windows key and the shift key and the q key
: #^Left::**View_setMX(-1)** : #^Left::**View_setMX(-1)**
Decrease the master X dimension by 1, i. e. decrease the number of Decrease the master X dimension by 1, i. e. decrease the number of
windows in the master area by Y. Minimum of 1. windows in the master area by Y. Minimum of 1 (only for the "tile"
layout).
: #^Right::**View_setMX(+1) : #^Right::**View_setMX(+1)
Increase the master X dimension by 1, i. e. increase the number of Increase the master X dimension by 1, i. e. increase the number of
windows in the master area by Y. Maximum of 9. windows in the master area by Y. Maximum of 9 (only for the "tile"
layout).
: #^Down::**View_setMY(-1)** : #^Down::**View_setMY(-1)**
Decrease the master Y dimension by 1, i.e. decrease the number of Decrease the master Y dimension by 1, i.e. decrease the number of
windows in the master area by X. Minimum of 1. windows in the master area by X. Minimum of 1 (only for the "tile"
layout).
: #^Up::**View_setMY(+1)** : #^Up::**View_setMY(+1)**
Increase the master Y dimension by 1, i.e. increase the number of Increase the master Y dimension by 1, i.e. increase the number of
windows in the master area by X. Maximum of 9. windows in the master area by X. Maximum of 9 (only for the "tile"
layout).
: #+n::**View_toggleMargins()**
Toggle the view margins, which are set by the configuration variable
"Config_viewMargins".
=== Tag / View related hotkeys === === Tag / View related hotkeys ===
@ -207,20 +215,22 @@ pressing the left Windows key and the shift key and the q key
=== Logging/Debugging related hotkeys === === Logging/Debugging related hotkeys ===
: #^i::**Manager_logViewWindowList()** : #^i::**Debug_logViewWindowList()**
Dump the contents of the current view to the bug.n log. Dump window information on the windows of the active view to the log.
: #+^i::**Manager_logManagedWindowList()** : #+^i::**Debug_logManagedWindowList()**
Dump the contents of the managed window list to the bug.n log. Dump window information on the contents of the managed window list
(floating and tiled windows of all views) to the log.
: #^h::**Manager_logHelp()** : #^h::**Debug_logHelp()**
Print to the log a description of the formatting used in the Print a description of the formatting (column headings) used in the
previous two log messages. previous two log messages (Manager_logViewWindowList and
Manager_logManagedWindowList) to the log.
: #^[::**Log_decDebugLevel()** : #^d::**Debug_setLogLevel(-1)**
Decrement the debug log level. Show fewer debug messages. Decrement the debug log level. Show fewer debug messages.
: #^]::**Log_incDebugLevel()** : #^+d::**Debug_setLogLevel(+1)**
Increment the debug log level. Show more debug messages. Increment the debug log level. Show more debug messages.
@ -240,12 +250,19 @@ pressing the left Windows key and the shift key and the q key
Reload bug.n (i. e. the configuration and its dependent settings) Reload bug.n (i. e. the configuration and its dependent settings)
without deleting the window lists of bug.n and restoring windows. without deleting the window lists of bug.n and restoring windows.
! It does not reset internal configuration variables, the tray icon or ! It does not reset internal configuration variables, the tray icon or
menu, hotkeys (unless set explicitly in Config.ini), individual window menu, hotkeys (unless defined in Config.ini), individual window
settings like Config_showBorder (since windows might be hidden) or settings like Config_showBorder (since windows might be hidden) or
hiding the title bar, the monitor count or views. hiding the title bar, the monitor count or views.
! It does not reload the monitor configuration and therefor does not
recognize any changes in the number of monitors.
! It does not reload functions. ! It does not reload functions.
! Changed rules are only applied to new windows. ! Changed rules are only applied to new windows.
: #^+r::**Reload**
Reload bug.n (i. e. the whole script), which resets the configuration,
the bar, the monitor configuration and window lists of bug.n. It is
like Quitting and restarting bug.n.
: #^q::**ExitApp : #^q::**ExitApp
Quit bug.n, restore the default Windows UI and show all windows. Quit bug.n, restore the default Windows UI and show all windows.