moved and revised the old doc and wiki

files from src/doc and the berliOS Wiki
This commit is contained in:
joten 2014-03-08 23:32:32 +01:00
parent 52eeb776a1
commit b2e9336357
12 changed files with 561 additions and 31 deletions

View File

@ -63,13 +63,14 @@ add-on for Microsoft Windows. It is written in the scripting language
* [AutoHotkey](http://ahkscript.org/download/) (if running bug.n from source as
a script)
There is no installation wizard for bug.n. If you downloaded the repository
There is no installation process for bug.n. If you downloaded the repository
from [GitHub](../../archive/master.zip) as a zip file and unpacked it, you
should be able to run either the executbale as it is or the main script
(src\Main.ahk) with [AutoHotkey](http://ahkscript.org/download/).
bug.n stores the session data (configuration, layout, window states and log) to
the user's APPDATA directory, e. g. C:\Users\joten\AppData\Roaming\bug.n.
By default bug.n stores the session data (configuration, layout, window states
and log) to the user's APPDATA directory, e. g.
`C:\Users\joten\AppData\Roaming\bug.n`.
Please see the [documentation](./doc) or the [Wiki](../../wiki) for more
information on installing and running, customizing and using bug.n and for a

View File

@ -0,0 +1,93 @@
## Changes
##### Legend
* `-` deleted
* `~` changed
* `+` added
### 8.4.0
* `+` Session auto-save and restore. Layout and Window information is stored
periodically so that it may be recovered after a restart.
* `+` A hotkey for toggling the overflow window of the 'notify icons'.
* `+` Manual tiling.
### 8.3.0
* `~` 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.
* `+` 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 can
be named and the number of views can be set. The configuration variable
`Config_viewCount` therewith becomes obsolete.
* `-` 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
* `+` feature #005446: Reload function (reloading bug.n without changing the
current association of windows to views/tags)
* `+` workaround bug #018364: (Evernote: new note) Introducing the
configuration variable `Config_onActiveHiddenWnds` to set the behaviour of
bug.n for already existing but hidden windows on redraw
### 8.2.0
* `-` `Config_addRunCommands` (the 'Run' item in 'command GUI').
* `-` `Config_sessionFilePath`
* `-` `Config_topBar` (replaced by `Config_verticalBarPos`.
* `~` The default values for the color (`Config_normBgColor`,
`Config_normFgColor`, `Config_selBgColor` and `Config_selFgColor`) and font
size (`Config_fontSize`) of the status bar are now retrieved from the system
settings.
* `+` Default rules
* `+` `Config_hotkey` (setting hotkeys in 'Config.ini').
* `+` `Config_horizontalBarPos` (The horizontal position of the bar: `center`,
`left` or `right` side of the monitor or an offset in pixel (px) from the left
(>= 0) or right (< 0).
* `+` `Config_verticalBarPos` (The vertical position of the bar: `top` or
`bottom` of the monitor, `tray` = sub-window of the task bar.
* `+` `Config_barWidth` (The width of the bar in pixel (px) or with a per cent
sign (%) as a percentage.
* `+` `Config_singleRowBar` (If false, the bar will have to rows, one for the
window title and one for all other GUI controls.
* `+` `Config_spaciousBar` (If true, the height of the bar will be set to a
value equal to the height of an edit control, else it will be set to the text
height.
* `+` `Config_syncMonitorViews` (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 actiated for all monitors. If set to 0, views are activated
independently (only on the active monitor).
* `~` Changed hotkeys
+ `#s` => `#^s::Config_saveSession()`
+ `#+r` => `#^r::Reload`
+ `#+q` => `#^q::ExitApp`
* `+` `#y::Bar_toggleCommandGui()` (Open the command GUI for executing
programmes or bug.n functions.)
* `+` `#^e::Run, edit, %Config_sessionFilePath%` (Open the session file in the
standard text editor.
* `+` "<" and ">" as an argument for `Monitor_activateView`.
* `+` "<" and ">" as an argument for `Monitor_setWindowTag`.
* `+` `Manager_maximizeWindow()` to 'command GUI'
* `~` The number of windows on a view is not indicated by different background
colors anymore, but by a progress bar.
* `~` The battery status is also indicated with a progress bar.
* `+` A monitor with no windows on it can now be activated by cklicking on the
desktop and therewith changing the active window.
### 8.1.0
* `-` `Config_showTitleBars`
* `~` `Config_rules` have two more parameters (window style and if the window
is decorated; this replaces `Config_showTitleBars`).
* `+` `LWin+Shift+X` maximizes a window to the bug.n workspace.
* `+` You may now use `Monitor_activateView(">")` for cycling through the views
and `View_setLayout(">")` for cycling through the layouts.

69
doc/Configuring_rules.md Normal file
View File

@ -0,0 +1,69 @@
## Configuring rules
### General description
Not all windows should be managed by bug.n the same way, or even may not be
managable at all. To handle windows differently, you can add rules to the
configuration.
With the first part of the rule, you identify the window using the
following information:
1. class (as a regular expression)
2. title (as a regular expression)
3. window style (as a hexadecimal number or blank)
With the second part you can give bug.n the following information on how to
handle the identified windows:
1. Is the window managed at all (0 = no, 1 = yes)?
2. On which monitor should the window be moved (given as an integer >= 0,
0 means the currently active monitor)?
3. On which views should the window be set (given as a binary mask converted to
an integer >= 0, 0 means the currently active view)?
4. Is the window floating, i. e. should not be tiled (0 = no, 1 = yes)?
5. Is the window decorated (0 = no, 1 = yes)? If not, the window title bar is
removed.
6. Should the title text be hidden in the bug.n bar (0 = no, 1 = yes)?
7. A special single window action (`Close` or `Maximize` or blank).
The general format of a rule added to `Config.ini` is as follows:
`Config_rule=<class>;<title>;<window style>;<is managed>;<monitor>;<views /
tags>;<is floating>;<is decorated>;<hide title>;<action on a single window>`
(all in one line, ";" is not allowed as a character in the field values)
If you want to replace a rule, which is already set in `Config.ahk`, you will
have to use the correct variable name; e. g. you may set a default rule
(identifying part: `.*;.*;`), overwriting the first rule set in `Config.ahk`,
by using the variable name `Config_rule_#1`. If you want to _add_ a rule,
simply use `Config_rule` as the variable name; the numbering will be done
automatically by bug.n when reading `Config.ini` using the order given there.
#### Views / Tags
You can set a window to more than one view. Add up the associated numbers as
shown in the following table and set the sixth field of the rule to the value
of the sum.
| view / tag | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | n | all |
| ---------------- | --- | --- | --- | --- | --- | --- | --- | --- | --- | -------------- | --- |
| number to sum up | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 | `2 ** (n - 1)` | 511 |
An example would be the value `17` for views 1 and 5.
### Examples
#### Mozilla Firefox
The following `Config.ini` line replaces rule number 11 in the default
configuration, putting windows of 'Mozilla Firefox' on view 5, keeping the
title bar visible and maximizing them.
`Config_rule_#11=MozillaWindowClass;.*Mozilla Firefox;;1;0;16;0;1;0;Maximize`
#### Mozilla Thunderbird
The following `Config.ini` line adds a rule, putting windows of 'Mozilla
Thunderbird' on view 4, keeping the title bar visible and maximizing them.
`Config_rule=MozillaWindowClass;.* - Mozilla Thunderbird;;1;0;8;0;1;0;Maximize`

58
doc/Customization.md Normal file
View File

@ -0,0 +1,58 @@
## Customizing bug.n
bug.n can be customized by setting configuration variables and hotkeys (the key
bindings for the bug.n functions).
To change either of them, first create a configuration file (`Config.ini`) by
using the hotkey `#^s`, i. e. `Win+Ctrl+S`. The file is either saved in the
directory you specified with the parameter to the executable or script when
running bug.n, or in the Windows user directory (e. g.
`C:\Users\joten\AppData\Roaming\bug.n`).
You may then edit the file with a text editor, i. a. using the hotkey `#^e`
(`Win+Ctrl+E`), and add a new line for each configuration variable with its
value; the general format is `<variable>=<value>` not using quotation marks
surrounding the values.
If you want to set a boolean value, use `1` for "True" and `0` for "False";
e. g. `Config_showBar=0`. You will have to reload bug.n for the changes to take
effect.
To set a hotkey, use the variable name `Config_hotkey` and [the hotkey notation
from AutoHotkey](http://ahkscript.org/docs/Hotkeys.htm) as value:
`Config_hotkey=<key name>::<command or function name>`.
You may overwrite default or add new hotkeys.
* To deacivate a hotkey from the default configuration, add a new line in the
format `Config_hotkey=<key name>::` (without a function name).
* To assign an external program to a new hotkey, add a line in the general
format, using the `Run` command of AutoHotkey as described in
http://ahkscript.org/docs/commands/Run.htm (`Run, Target [, WorkingDir,
Max|Min|Hide|UseErrorLevel, OutputVarPID]`).
* You may also use the `Send` command of AutoHotkey as described in
http://ahkscript.org/docs/commands/Send.htm
The available configuration variables are listed in the document
"[Default configuration](./Default_configuration.md)"; the hotkeys with their
associated functions are listed in the document
"[Default hotkeys](./Default_hotkeys.md)".
`Config_borderWidth`, `Config_borderPadding` and `Config_selBorderColor` are
especially usefull, if you are not allowed to set the design in the system
settings.
You may find a sample configuration file at
https://github.com/joten/bug.n.config.
### Re-using Win+L
The hotkey `#l` (`Win+L`) is set by Microsoft Windows to lock the workstation.
If you want to use it as a hotkey in bug.n, you can bind another hotkey, e. g.
`#^+l` (`Win+Ctrl+Shift+L`), to the lock function by using the bug.n-function
`Manager_lockWorkStation()`, which i. a. sets the registry key
`Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableLockWorkstation`
and locks the workstation. This than allows to set `Win+L` as a hotkey in
`Config.ini`.
If `Win+L` still locks the workstation, use the new keybinding for locking the
workstation at least once and therewith set the needed registry key.
**WARNING**: This will permanently set a registry key.

View File

@ -1,4 +1,4 @@
## Configuration variables
## Default setting of configuration variables
### Status bar
@ -107,7 +107,6 @@ the status bar.
`Config_readinInterval=30000`
> Time in milliseconds after which the above status values are refreshed.
### Windows ui elements
`Config_bbCompatibility=0`
@ -135,7 +134,6 @@ resized manually by dragging the border, even if using the according hotkey.
> Border colour of the active window; format: 0x00BBGGRR (e. g. `0x006A240A`,
if =0, the system's window border colour is not changed).
### Window arrangement
`Config_viewNames=1;2;3;4;5;6;7;8;9`
@ -230,24 +228,16 @@ monitor).
> If true (`=1`) and a window is tagged with a single tag, the view is
correspondingly set to the tag.
### Rules
For a general description of rules and how they can be replaced or added see
the [specific documentation](./Configuring_rules.md).
`Config_rule_#1=.*;.*;;1;0;0;0;0;0;`
> 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 monitor, view
and / or showing window title bars by setting the first rule
`Config_rule_#1=...` and therewith replacing the value.
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 order given
in the configuration file). General format:
`Config_rule_#<i>=<class (regular expression string)>;<title (regular expression
string)>;<window style (hexadecimal number or blank)>;<is managed (1 = True or
0 = False)>;<monitor (0 <= integer <= total 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 currently active tag)>;<is floating (1 = True or
0 = False)>;<is decorated (1 = True or 0 = False)>;<hide title (1 = True or
0 = False)>;<action on single windows (Close or Maximize)>`
(all in one line, ";" is not allowed as a character)
> By default all windows are managed, not allocated on a specific monitor or
view, not floating (i. e. tiled), the window title bar is not visible, the
title is not hidden on the bug.n status bar and no window action is taken, when
the window first is created.
`Config_rule_#2=.*;.*;0x80000000;0;0;0;1;1;1;`
> Pop-up windows (style WS_POPUP=0x80000000) will not be managed, are floating
@ -277,7 +267,6 @@ reason as above.
> This variable will be automatically set to the total number of active rules
above.
### Configuration management
`Config_autoSaveSession=auto`

View File

@ -1,4 +1,4 @@
## Hotkeys
## Default hotkeys
### General description
@ -8,13 +8,13 @@ Possible modifiers are the following:
* `!` (Alt)
* `^` (Ctrl, Control)
* `+` (Shift)
* `#` (LWin, left Windows)
* `+` (Shift)
You will have to press all keys of a hotkey at the same time beginning
with the modifier for calling the associated function, e. g. `#^q` means
pressing the left Windows key and the shift key and the q key
(WIN+CTRL+Q) for quitting bug.n.
(`Win+Ctrl+Q`) for quitting bug.n.
### Window management
@ -83,6 +83,7 @@ the layout.
master area takes up the whole view.
### Window debugging
`#^i::Debug_logViewWindowList()`
> Dump window information on the windows of the active view to the log.
@ -101,8 +102,8 @@ two log messages (`Manager_logViewWindowList` and
`#^+d::Debug_setLogLevel(+1)`
> Increment the debug log level. Show more debug messages.
### Layout management
`#Tab::View_setLayout(-1)`
> Set the previously set layout. You may also use `View_setLayout(>)` for
setting the next layout in the layout array.
@ -165,8 +166,8 @@ the master area by Y. Minimum of 1 (only for the "tile" layout).
`#+Right::View_setGapWidth(+2)`
> Increase the gap between windows in "tile" layout.
### View / Tag management
`#+n::View_toggleMargins()`
> Toggle the view margins, which are set by the configuration variable
`Config_viewMargins`.
@ -192,8 +193,8 @@ of the previous or next adjacent to the current view.
> Add / Remove the n<sup><small>th</small></sup> tag (n = 1..`Config_viewCount`)
for the active window, if it is not / is already set.
### Monitor management
`#.::Manager_activateMonitor(+1)`
> Activate the next monitor in a multi-monitor environment.
@ -216,8 +217,8 @@ a multi-monitor environment.
> Set all windows of the active view on the active view of the previous monitor
in a multi-monitor environment.
### GUI management
`#+Space::Monitor_toggleBar()`
> Hide / Show the bar (bug.n status bar) on the active monitor.
@ -233,7 +234,6 @@ in a multi-monitor environment.
`!+y::View_traceAreas()`
> Indicate the areas of the "tile" layout.
### Administration
`#^e::Run, edit %Config_filePath%`

66
doc/Home.md Normal file
View File

@ -0,0 +1,66 @@
## bug.n -- Tiling Window Manager
bug.n is a
[tiling window manager](https://en.wikipedia.org/wiki/Tiling_window_manager)
add-on for Microsoft Windows.
This page links the resources available for information on installing and
running, customizing and using bug.n and for a list of changes made with the
current version.
#### [README](https://github.com/fuhsjr00/bug.n/blob/master/README.md)
> A description of what bug.n can do.
#### [[CHANGES|CHANGES]]
> A list of changes to the user interface (i. a. configuration variables and
hotkeys) for each version of bug.n.
#### [[Installing and running bug.n|Installing_and_running]]
> A description of how to install and run bug.n. Also described is a method to
run bug.n as Administrator to solve problems with the User Access Control of
Microsft Windows higher than Vista.
#### Usage
##### [[Using bug.n|Usage]]
> A short introduction on how to use bug.n and on concepts, like layouts and
tagging, bug.n uses.
##### [[Default hotkeys|Default_hotkeys]]
> A list of all hotkeys with their default mapping to functions and a short
description.
#### Customization
##### [[Customizing bug.n|Customization]]
> A description on how to customize bug.n by setting configuration variables
and hotkeys. Also described is a method to re-use the hotkey `Win+L`, which is
blocked by the Windows function to lock the screen.
##### [[Default setting of configuration variables|Default_configuration]]
> A list of all configuration variables with their default values and a short
description.
##### [[Configuring rules|Configuring_rules]]
> A description of 'rules', bug.n uses for handling windows, and how they can
be set in `Config.ini`.
##### [[Default hotkeys|Default_hotkeys]]
> A list of all hotkeys with their default mapping to functions and a short
description.
##### [[Used hotkeys|Used_hotkeys]]
> An overview of those hotkeys, already in use by bug.n with the default
configuration. With this overview you may find unused keys, which can be used
for non-bug.n hotkeys or to reassign bug.n functions.
##### [[Xmonad hotkeys|Xmonad-hotkeys]]
> A list of hotkeys, which are similar to those used in
[Xmonad](http://xmonad.org/), a tiling window manager for the 'X windows
system' on *n?x.
##### [[User proposed hotkeys|User-hotkeys]]
> Some individual hotkeys, proposed by bug.n users.
#### [LICENSE](https://github.com/fuhsjr00/bug.n/blob/master/LICENSE.md)
> bug.n is licensed under the GNU General Public License version 3.

View File

@ -0,0 +1,71 @@
## Installing and running bug.n
#### Requirements
* Microsoft Windows 2000 or higher
* [AutoHotkey](http://ahkscript.org/download/) (if running bug.n from source as
a script)
There is no installation process for bug.n. If you downloaded the repository
from [GitHub](../../archive/master.zip) as a zip file and unpacked it, you
should be able to run either the executbale as it is or the main script
(src\Main.ahk) with [AutoHotkey](http://ahkscript.org/download/).
You may copy bug.n anywhere you like -- at least if you have write acces
there -- e. g. `C:\Program Files\bugn` or link it to the 'Windows Start Menu'
or the 'Windows Taskbar', for example.
By default bug.n stores the session data (configuration, layout, window states
and log) to the user's APPDATA directory, e. g.
`C:\Users\joten\AppData\Roaming\bug.n`.
You may redirect the bug.n data directory by setting the first argument either
to the executable or to the main script (`Main.ahk`), when running bug.n,
e. g. `C:\Program Files\bugn\bugn.exe D:\bugn`; but you will need to have write
access to this directory.
You can run bug.n manually, either by using the executable and starting it like
any other application, or by using the main script (`Main.ahk`) and starting it
with [AutoHotkey](http://ahkscript.org/download/).
If using the script, the working directory must be the directory, where the
file `Main.ahk` is saved; therewith bug.n can find the other script files. One
possibility, to do so, is to install AutoHotkey, open the directory, where
`Main.ahk` is saved, and execute the file.
### Microsoft Windows User Access Control
If you are using bug.n on Microsoft Windows Vista or higher you may use
applications, which run with administrator privileges, e. g. 'administrative
tools'. In the case that you are running bug.n in the standard user session,
i. e. _without_ administrator privileges, bug.n will not be able to manage the
associated windows. If you want those application windows to be managed, you
need to run bug.n with administrator privileges, too.
You can set the option `Run this program as an administrator` on the
'Compatiblity' tab, section 'Privilege level' of the bug.n executable file
properties. But if you also want to run bug.n when Windows starts, you will
have to create a task in 'Task Scheduler'.
#### Create a task in 'Task Scheduler'
In Windows 7 you can create a task following the steps from the
[Windows website](http://windows.microsoft.com/en-us/windows/schedule-task#1TC=windows-7):
1. Open Task Scheduler by clicking the **Start** button, clicking
**Control Panel**, clicking **System and Security**, clicking
**Administrative Tools**, and then double-clicking **Task Scheduler**
(Administrator permission required). If you're prompted for an administrator
password or confirmation, type the password or provide confirmation.
2. Click the **Action** menu, and then click **Create Basic Task**.
3. Type a name for the task and an optional description, and then click
**Next**.
4. Click **When I log on**, and then click **Next**.
5. To schedule a program to start automatically, click **Start a program**, and
then click **Next**.
6. Click **Browse** to find the program you want to start, and then click
**Next**.
7. Select the **Open the Properties dialog for this task when I click Finish**
check box and click **Finish**.
8. In the **Properties** dialog box, select the following, and then click
**OK**.
* **Run only when user is logged on**
* **Run with highest privileges**

65
doc/Usage.md Normal file
View File

@ -0,0 +1,65 @@
## Using bug.n
bug.n is mostly controlled with hotkeys. The available hotkeys are listed in
the document "[Default hotkeys](./Default_hotkeys.md)". For a quick help there
are the following hotkeys:
* `#y` (`Win+Y`): Show the command GUI, which allows you to enter
bug.n-functions.
* `#Space` (`Win+Space`): Show / Hide the Windows Taskbar.
* `#^q` (`Win+Ctrl+Q`): Quit bug.n and restore all windows and Windows UI
elements.
The following functions can also be controlled with the mouse:
* With a click on a tag (a number on the left end of the bug.n bar) you can
change the view and show only the windows associated with that tag.
* With a right-click on a tag you can tag the active window with that tag.
* With a click on the layout symbol in the bug.n bar you can toggle the layout
to the last one used.
* With a right-click on the layout symbol you can set the layout to the next in
the list.
* A function can be selected from a list or entered in the command GUI, which
is accessible by cklickig on `#!` on the right end of the bug.n bar.
### Concepts
#### Layouts
bug.n provides three layouts.
* **tile**: 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 in
the following respects:
+ the dimensions of the master area (1x1 ... 2x3 ... 9x9)
+ the stacking direction of the master and stacking area (from left to right,
from top to bottom or monocle)
+ the position of the master area (left, top, right or bottom) and
accordingly the position of the stacking area
+ the witdh or height of the master area (depending on its position)
* **monocle**: All windows are maximized and only one is shown at any time.
+ **floating**: Do not tile any window.
Please see the document "[Default hotkeys](./Default_hotkeys.md)" for a list of
hotkeys and their associated functions, with which you can set and manipulate
layouts.
#### Tagging
bug.n features an extended implementation of virtual desktops: _tagging_.
Windows are tagged with one or more numbers, which determine on which views
they are shown. Selecting a view shows the windows tagged with the same number
and hides all other windows.
#### Session management
bug.n features a session management, which is used for saving configuration
variables, hotkeys and internal variables; it does not restore applications,
you will have to run them manually. The configuration variables may include
those listed in the document
"[Default configuration](./Default_configuration.md)", hotkeys as
listed in the document "[Default hotkeys](./Default_hotkeys.md)" and internal
variables for the current state of bug.n, e. g. the active view (saved for each
monitor), the layout and its configuration (saved for each view) and window
states as they could be set by a rule.

55
doc/Used_hotkeys.md Normal file
View File

@ -0,0 +1,55 @@
## Used hotkeys
The following tables list the base keys, i. e. a key without any modifier, and
their combination with the modifier keys (Alt: `!`, Ctrl: `^`, LWin: `#` and
Shift: `+`), which are used in bug.n. With this overview you may find unused
keys, which can be used for non-bug.n hotkeys or to reassign bug.n functions.
| Base key | `#` | `#+` | `#^` | `#+^` | `!` | `!+` |
| --------- | --- | ---- | ---- | ----- | --- | ---- |
| Down | x | x | x | | x | |
| Up | x | x | x | | x | |
| Left | x | x | x | | | |
| Right | x | x | x | | | |
| Backspace | x | | | | x | |
| Enter | | x | x | | | x |
| Space | x | x | | | | |
| Tab | x | | x | x | | |
| Base key | `#` | `#+` | `#^` | `#+^` | `!` | `!+` |
| --------- | --- | ---- | ---- | ----- | --- | ---- |
| . | x | x | | x | | |
| , | x | x | | x | | |
| - | | | | | | |
There are not many special character keys, which are on both keyboards, US and DE.
| Base key | `#` | `#+` | `#^` | `#+^` | `!` | `!+` |
| --------- | --- | ---- | ---- | ----- | --- | ---- |
| c | x | | | | | |
| d | | x | x | x | | |
| e | | | x | | | |
| f | x | x | | | | |
| h | | | x | | | |
| i | x | x | x | x | | |
| m | x | x | | | | |
| n | | x | | | | |
| q | | | x | | | |
| r | | | x | x | | |
| s | | x | x | | | |
| t | x | | x | | | |
| x | | x | | | | |
| y | x | x | | | | x |
Any letter key, which is not listed in this table, is not used.
| Base key | `#` | `#+` | `#^` | `#+^` | `!` | `!+` |
| --------- | --- | ---- | ---- | ----- | --- | ---- |
| 0 | | x | | | x | |
| 1 | x | x | x | | x | |
| 2 | x | x | x | | x | |
| 3 | x | x | x | | x | |
| 4 | x | x | x | | x | |
| 5 | x | x | x | | x | |
| 6 | x | x | x | | x | |
| 7 | x | x | x | | x | |
| 8 | x | x | x | | x | |
| 9 | x | x | x | | x | |

11
doc/User-hotkeys.md Normal file
View File

@ -0,0 +1,11 @@
## User proposed hotkeys
##### User: jbremer (2012-Oct-27 19:33, bug.n 8.2.1)
| Hotkey | Alias to | Description |
| ------ | ------------ | -------------------------------------------------------------------------------------------------- |
| `#x` | `#Backspace` | toggle view (duplicate of `#Backspace`, but `#x` types much easier) |
| `#j` | `#Down` | window down |
| `#k` | `#Up` | window up |
| `#t` | - | launch a terminal (`Run, C:\Program Files\mintty.exe -`) |
| `#b` | - | launch terminal with an ssh connection (`Run, C:\Program Files\mintty.exe /bin/ssh user@hostname`) |

52
doc/Xmonad-hotkeys.md Normal file
View File

@ -0,0 +1,52 @@
## Xmonad hotkeys
Here follows an example for configuring hotkeys, which are similar to those of
[xmonad](http://xmonad.org/); this example was submitted for bug.n version
8.2.1.
Config_hotkey=#1::Monitor_activateView(1)
Config_hotkey=#+1::Monitor_setWindowTag(1)
Config_hotkey=#2::Monitor_activateView(2)
Config_hotkey=#+2::Monitor_setWindowTag(2)
Config_hotkey=#3::Monitor_activateView(3)
Config_hotkey=#+3::Monitor_setWindowTag(3)
Config_hotkey=#4::Monitor_activateView(4)
Config_hotkey=#+4::Monitor_setWindowTag(4)
Config_hotkey=#5::Monitor_activateView(5)
Config_hotkey=#+5::Monitor_setWindowTag(5)
Config_hotkey=#6::Monitor_activateView(6)
Config_hotkey=#+6::Monitor_setWindowTag(6)
Config_hotkey=#7::Monitor_activateView(7)
Config_hotkey=#+7::Monitor_setWindowTag(7)
Config_hotkey=#8::Monitor_activateView(8)
Config_hotkey=#+8::Monitor_setWindowTag(8)
Config_hotkey=#9::Monitor_activateView(9)
Config_hotkey=#+9::Monitor_setWindowTag(9)
Config_hotkey=#+0::Monitor_setWindowTag(0)
Config_hotkey=#^1::Monitor_toggleWindowTag(1)
Config_hotkey=#^2::Monitor_toggleWindowTag(2)
Config_hotkey=#^3::Monitor_toggleWindowTag(3)
Config_hotkey=#^4::Monitor_toggleWindowTag(4)
Config_hotkey=#^5::Monitor_toggleWindowTag(5)
Config_hotkey=#^6::Monitor_toggleWindowTag(6)
Config_hotkey=#^7::Monitor_toggleWindowTag(7)
Config_hotkey=#^8::Monitor_toggleWindowTag(8)
Config_hotkey=#^9::Monitor_toggleWindowTag(9)
Config_hotkey=#q::Reload
Config_hotkey=#+q::ExitApp
Config_hotkey=#w::Manager_activateMonitor(1)
Config_hotkey=#+w::Manager_setWindowMonitor(1)
Config_hotkey=#e::Manager_activateMonitor(2)
Config_hotkey=#+e::Manager_setWindowMonitor(2)
Config_hotkey=#t::View_toggleFloating()
Config_hotkey=#h::View_setMFactor(-0.05)
Config_hotkey=#j::View_activateWindow(+1)
Config_hotkey=#+j::View_shuffleWindow(+1)
Config_hotkey=#k::View_activateWindow(-1)
Config_hotkey=#+k::View_shuffleWindow(-1)
Config_hotkey=#l::View_setMFactor(+0.05)
Config_hotkey=#Enter::View_shuffleWindow(0)
Config_hotkey=#+c::Manager_closeWindow()
Config_hotkey=#,::View_setMSplit(+1)
Config_hotkey=#.::View_setMSplit(-1)
Config_hotkey=#Space::View_setLayout(>)