bug.n/doc/Default_hotkeys.md

17 KiB

Default hotkeys

General description

The hotkeys, as you can set them in Config.ini, are noted in the format Config_hotkey=<modifier><key>::<function>(<argument>); you may copy the string from and use it as a template for a new line in Config.ini. Possible modifiers are the following:

  • ! Alt
  • ^ Ctrl, Control
  • # Win / LWin, the left Windows key
  • + 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 'Control key' and the 'Q key' (WinCtrlQ) for quitting bug.n.

Window management

Config_hotkey=#Down::View_activateWindow(0, +1)

Activate the next window in the active view.

You may also activate a window on an absolute position in the window list by using the first parameter; e.g View_activateWindow(1) activates the first window, which is the window in the master area, if you are using the default settings for the tile layout.


Config_hotkey=#Up::View_activateWindow(0, -1)

Activate the previous window in the active view.


Config_hotkey=#+Down::View_shuffleWindow(0, +1)

Move the active window to the next position in the window list of the view.


Config_hotkey=#+Up::View_shuffleWindow(0, -1)

Move the active window to the previous position in the window list of the view.


Config_hotkey=#+Enter::View_shuffleWindow(1)

Move the active window to the first position in the window list of the view.

You may also move the active window to any other absolute position in the window list by using the first parameter.


Config_hotkey=#c::Manager_closeWindow()

Close the active window.


Config_hotkey=#+d::Window_toggleDecor()

Show / Hide the title bar of the active window.


Config_hotkey=#+f::View_toggleFloatingWindow()

Toggle the floating status of the active window.

The floating status effects the tiling of the active window (i.e. dis- / regard it).


Config_hotkey=#^m::Manager_minimizeWindow()

Minimize the active window.

This implicitly sets the window to be floating.


Config_hotkey=#+m::Manager_moveWindow()

Move the active window by key.

This implicitly sets the window to be floating.


Config_hotkey=#+s::Manager_sizeWindow()

Resize the active window by key.

This implicitly sets the window to be floating.


Config_hotkey=#+x::Manager_maximizeWindow()

Move and resize the active window to the size of the work area.

This implicitly sets the window to be floating.


Config_hotkey=#i::Manager_getWindowInfo()

Get information for the active window.

The information being id, title, class, process name, style, geometry, tags and floating state.


Config_hotkey=#+i::Manager_getWindowList()

Get a window list for the active view.

The list contains information about the window id, title and class.


Config_hotkey=!Down::View_moveWindow(0, +1)

Manually move the active window to the next area in the layout.

This has only an effect, if dynamic tiling is disabled (Config_dynamicTiling=0).


Config_hotkey=!Up::View_moveWindow(0, -1)

Manually move the active window to the previous area in the layout.

This has only an effect, if dynamic tiling is disabled (Config_dynamicTiling=0).


Config_hotkey=!+Enter::Manager_maximizeWindow()

Move and resize the active window to the size of the work area.

This implicitly sets the window to be floating.


Config_hotkey=!<n>::View_moveWindow(<n>)

Manually move the active window to the nth area in the layout.

<n> can be an integer between 1 and 9. This has only an effect, if dynamic tiling is disabled (Config_dynamicTiling=0).


Config_hotkey=!BackSpace::View_toggleStackArea()

Toggle the stack area of the layout.

If the stack area is toggled off, the master area takes up the whole view and the stack area cannot be used to position windows.

This has only an effect, if dynamic tiling is disabled (Config_dynamicTiling=0).

Window debugging

Config_hotkey=#^i::Debug_logViewWindowList()

Dump window information on the windows of the active view to the log.


Config_hotkey=#^+i::Debug_logManagedWindowList()

Dump window information on the managed windows to the log.

The list of managed windows contains the floating and tiled windows of all views.


Config_hotkey=#^h::Debug_logHelp()

Print column headings to the log.

The column headings give a description of the formatting used in the previous two hotkeys being Manager_logViewWindowList and Manager_logManagedWindowList.


Config_hotkey=#^d::Debug_setLogLevel(0, -1)

Decrement the debug log level.

This results in showing fewer debug messages. You may also set the debug log level to an absolute value by using the first parameter.


Config_hotkey=#^+d::Debug_setLogLevel(0, +1)

Increment the debug log level.

This results in showing more debug messages. You may also set the debug log level to an absolute value by using the first parameter.

Layout management

Config_hotkey=#Tab::View_setLayout(-1)

Set the previous-ly set layout.

You may also use View_setLayout(0, +1) for setting the next or View_setLayout(0, -1) for setting the previous layout in the layout array.


Config_hotkey=#f::View_setLayout(3)

Set the floating layout.


Config_hotkey=#m::View_setLayout(2)

Set the monocle layout.


Config_hotkey=#t::View_setLayout(1)

Set the tile layout.


Config_hotkey=#Left::View_setLayoutProperty(MFactor, 0, -0.05)

Reduce the size of the master area in the active view.

This has only an effect, if the tile layout is active.

You may also set an additional parameter for accelerating the third one. E.g. with Config_hotkey=#Left::View_setLayoutProperty(MFactor, 0, -0.05, 2) the first step, by which the master area is reduced, is -0.0016% and will be doubled with consecutive calls until it reaches -0.05%. With the second parameter you may set an absolute value, e.g. View_setLayoutProperty(MFactor, 0.5, 0) splits the view in half.


Config_hotkey=#Right::View_setLayoutProperty(MFactor, 0, +0.05)

Enlarge the size of the master area in the active view.

This has only an effect, if the tile layout is active.

You may also set a additional parameter for accelerating the third one. E.g. with Config_hotkey=#Right::View_setLayoutProperty(MFactor, 0, +0.05, 0.5) the first step, by which the master area is reduced, is 0.05%, but with consecutive calls it will be halved until it reaches 0.0016%. With the second parameter you may set an absolute value, e.g. View_setLayoutProperty(MFactor, 0.67, 0) makes the master area two thirds and the stacking area one third the size of the view.


Config_hotkey=#^t::View_setLayoutProperty(Axis, 0, +1, 1)

Rotate the layout axis.

I.e. 2 -> 1 = vertical layout, 1 -> 2 = horizontal layout.

This has only an effect, if the tile layout is active.


Config_hotkey=#^Enter::View_setLayoutProperty(Axis, 0, +2, 1)

Mirror the layout axis.

I.e. -1 -> 1 / 1 -> -1 = master on the left / right side, -2 -> 2 / 2 -> -2 = master at top / bottom.

This has only an effect, if the tile layout is active.


Config_hotkey=#^Tab::View_setLayoutProperty(Axis, 0, +1, 2)

Rotate the master axis.

I.e. 3 -> 1 = x-axis = horizontal stack, 1 -> 2 = y-axis = vertical stack, 2 -> 3 = z-axis = monocle.

This has only an effect, if the tile layout is active.


Config_hotkey=#^+Tab::View_setLayoutProperty(Axis, 0, +1, 3)

Rotate the stack axis.

I.e. 3 -> 1 = x-axis = horizontal stack, 1 -> 2 = y-axis = vertical stack, 2 -> 3 = z-axis = monocle.

This has only an effect, if the tile layout is active.


Config_hotkey=#^Up::View_setLayoutProperty(MY, 0, +1)

Increase the master Y dimension.

This results in an increased number of windows in the master area by X. Maximum of 9.

This has only an effect, if the tile layout is active.


Config_hotkey=#^Down::View_setLayoutProperty(MY, 0, -1)

Decrease the master Y dimension.

This results in a decreased number of windows in the master area by X. Minimum of 1.

This has only an effect, if the tile layout is active.


Config_hotkey=#^Right::View_setLayoutProperty(MX, 0, +1)

Increase the master X dimension.

This results in an increased number of windows in the master area by Y. Maximum of 9.

This has only an effect, if the tile layout is active.


Config_hotkey=#^Left::View_setLayoutProperty(MX, 0, -1)

Decrease the master X dimension.

This results in a decreased number of windows in the master area by Y. Minimum of 1.

This has only an effect, if the tile layout is active.


Config_hotkey=#+Left::View_setLayoutProperty(GapWidth, 0, -2)

Decrease the gap between windows in "monocle" and "tile" layout.

You may also set an absolute value for the gap width by using the first parameter, e.g. View_setLayoutProperty(GapWidth, 0, 0) will eliminate the gap and View_setLayoutProperty(GapWidth, 20, 0) will set it to 20px.


Config_hotkey=#+Right::View_setLayoutProperty(GapWidth, 0, +2)

Increase the gap between windows in "monocle" and "tile" layout.


Config_hotkey=#^Backspace::View_resetTileLayout()

Reset the tile layout.

This resets the layout and tile layout properties of the currently active view to the initial (default) values.

View / Tag management

Config_hotkey=#+n::View_toggleMargins()

Toggle the view margins.

These are set by the configuration variable Config_viewMargins.


Config_hotkey=#BackSpace::Monitor_activateView(-1)

Activate the previously activated view.

You may also use Monitor_activateView(0, -1) or Monitor_activateView(0, +1) for activating the previous or next adjacent view.


Config_hotkey=#+0::Monitor_setWindowTag(10)

Tag the active window with all tags.


Config_hotkey=#<n>::Monitor_activateView(<n>)

Activate the nth view.

<n> can be an integer between 1 and Config_viewCount.


Config_hotkey=#+<n>::Monitor_setWindowTag(<n>)

Tag the active window with the nth tag.

<n> can be an integer between 1 and Config_viewCount.

You may also use Monitor_setWindowTag(0, -1) or Monitor_setWindowTag(0, +1) for setting the tag of the previous or next adjacent to the current view.


Config_hotkey=#^<n>::Monitor_toggleWindowTag(<n>)

Add / Remove the nth tag for the active window, if it is not / is already set.

<n> can be an integer between 1 and Config_viewCount.

Monitor management

Config_hotkey=#.::Manager_activateMonitor(0, +1)

Activate the next monitor in a multi-monitor environment.

You may also activate a specific monitor by using the first parameter, e.g. Manager_activateMonitor(1) will activate the first monitor.


Config_hotkey=#,::Manager_activateMonitor(0, -1)

Activate the previous monitor in a multi-monitor environment.


Config_hotkey=#+.::Manager_setWindowMonitor(0, +1)

Set the active window's view to the active view on the next monitor in a multi-monitor environment.

You may also set the active window on a specific monitor by using the first parameter, e.g. Manager_setWindowMonitor(1) will set the active window on the first monitor.


Config_hotkey=#+,::Manager_setWindowMonitor(0, -1)

Set the active window's view to the active view on the previous monitor in a multi-monitor environment.


Config_hotkey=#^+.::Manager_setViewMonitor(0, +1)

Set all windows of the active view on the active view of the next monitor in a multi-monitor environment.

You may also set all windows of the active view on a specific monitor by using the first parameter, e.g. Manager_setViewMonitor(1) will set all windows of the active view on the first monitor.


Config_hotkey=#^+,::Manager_setViewMonitor(0, -1)

Set all windows of the active view on the active view of the previous monitor in a multi-monitor environment.

GUI management

Config_hotkey=#+Space::Monitor_toggleBar()

Hide / Show the bar (bug.n status bar) on the active monitor.


Config_hotkey=#Space::Monitor_toggleTaskBar()

Hide / Show the task bar.


Config_hotkey=#y::Bar_toggleCommandGui()

Open the command GUI for executing programmes or bug.n functions.


Config_hotkey=#+y::Monitor_toggleNotifyIconOverflowWindow()

Toggle the overflow window of the 'notify icons'.


Config_hotkey=!+y::View_traceAreas()

Indicate the areas of the "tile" layout.

Administration

Config_hotkey=#^e::Run, edit <Config_filePath>

Open the configuration file in the standard text editor.

If you want to set this hotkey in Config.ini, you have to replace <Config_filePath> with an explicit file path.


Config_hotkey=#^s::Config_UI_saveSession()

Save the current state of monitors, views, layouts to the configuration file.


Config_hotkey=#^r::Reload

Reload bug.n (i.e. the whole script).

This resets i.a. the configuration and internal variables of bug.n, including the window lists. It is like Quitting and restarting bug.n. If Config_autoSaveSession is not set to off, the window lists can be restored and windows are put to their associated monitor and views.


Config_hotkey=#^q::ExitApp

Quit bug.n, restore the default Windows UI and show all windows.