diff --git a/README.md b/README.md index 392fd05..02312d1 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ add-on for Microsoft Windows. It is written in the scripting language ### What it can look like -![bug.n screenshot](./doc/screenshots/default_01.png "Screenshot of bug.n with the default configuration.") +![bug.n screenshot](./usr/default_01.png "Screenshot of bug.n with the default configuration.") ### Installing and running bug.n diff --git a/doc/Customization.md b/doc/Customization.md index 41ca4cb..abe0603 100644 --- a/doc/Customization.md +++ b/doc/Customization.md @@ -39,8 +39,8 @@ associated functions are listed in the document 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. +You may find a sample and template configuration file in the +[usr directory](../usr/). ### Re-using Win+L diff --git a/doc/Home.md b/doc/Home.md index e23cf04..8edd40c 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -71,6 +71,9 @@ for non-bug.n hotkeys or to reassign bug.n functions. ##### [User proposed hotkeys](./User-hotkeys.md) > Some individual hotkeys, proposed by bug.n users. +##### [Users' Config.ini and screenshots](../usr/) +> A template for `Config.ini` and samples from users with related screenshots. + #### [LICENSE](../LICENSE.md) > bug.n is licensed under the GNU General Public License version 3. diff --git a/usr/default_01.ini b/usr/default_01.ini new file mode 100644 index 0000000..bb0db4a --- /dev/null +++ b/usr/default_01.ini @@ -0,0 +1,198 @@ +; bug.n - tiling window management +; @version 9.0.0 + +;; Status bar +;Config_showBar=1 +;Config_horizontalBarPos=left +;Config_verticalBarPos=top +;Config_barWidth=100% +;Config_singleRowBar=1 +;Config_spaciousBar=0 +;Config_fontName=Lucida Console +;Config_fontSize= +;Config_largeFontSize=24 +;; ;;;<shebang>;<time>;<date>;<anyText>;<batteryStatus>;<volumeLevel> +;Config_backColor_#1= +;Config_backColor_#2= +;Config_backColor_#3= +;Config_foreColor_#1= +;Config_foreColor_#2= +;Config_foreColor_#3= +;Config_fontColor_#1= +;Config_fontColor_#2= +;Config_fontColor_#3= +;Config_barTransparency=off +;Config_barCommands=Run, explore doc;Monitor_toggleBar();Main_reload();Reload;ExitApp +;Config_readinBat=0 +;Config_readinCpu=0 +;Config_readinDate=1 +;Config_readinDiskLoad=0 +;Config_readinMemoryUsage=0 +;Config_readinNetworkLoad=0 +;Config_readinTime=1 +;Config_readinVolume=0 +;Config_readinInterval=30000 + +;; Windows ui elements +;Config_bbCompatibility=0 +;Config_borderWidth=0 +;Config_borderPadding=-1 +;Config_showTaskBar=0 +;Config_showBorder=1 +;Config_selBorderColor= + +;; Window arrangement +;Config_viewNames=1;2;3;4;5;6;7;8;9 +;Config_layout_#1=[]=;tile +;Config_layout_#2=[M];monocle +;Config_layout_#3=><>; +;Config_layoutCount=3 +;Config_layoutAxis_#1=1 +;Config_layoutAxis_#2=2 +;Config_layoutAxis_#3=2 +;Config_layoutGapWidth=0 +;Config_layoutMFactor=0.6 +;Config_areaTraceTimeout=1000 +;Config_continuouslyTraceAreas=0 +;Config_dynamicTiling=1 +;Config_ghostWndSubString= (Not Responding) +;Config_mFactCallInterval=700 +;Config_mouseFollowsFocus=1 +;Config_newWndPosition=top +;Config_onActiveHiddenWnds=view +;Config_shellMsgDelay=350 +;Config_syncMonitorViews=0 +;Config_viewFollowsTagged=0 +;Config_viewMargins=0;0;0;0 + +;; Config_rule_#<i> := '<class>;<title>;<function name>;<is managed>;<m>;<tags>;<is floating>;<is decorated>;<hide title>;<action>' +;Config_rule_#1=.*;.*;;1;0;0;0;0;0; +;Config_rule_#2=.*;.*;Window_isChild;0;0;0;1;1;1; +;Config_rule_#3=.*;.*;Window_isPopup;0;0;0;1;1;1; +;Config_rule_#4=QWidget;.*;;1;0;0;0;0;0; +;Config_rule_#5=SWT_Window0;.*;;1;0;0;0;0;0; +;Config_rule_#6=Xming;.*;;1;0;0;0;0;0; +;Config_rule_#7=MsiDialog(No)?CloseClass;.*;;1;0;0;1;1;0; +;Config_rule_#8=AdobeFlashPlayerInstaller;.*;;1;0;0;1;0;0; +;Config_rule_#9=CalcFrame;.*;;1;0;0;1;1;0; +;Config_rule_#10=CabinetWClass;.*;;1;0;0;0;1;0; +;Config_rule_#11=OperationStatusWindow;.*;;0;0;0;1;1;0; +;Config_rule_#12=Chrome_WidgetWin_1;.*;;1;0;0;0;1;0; +;Config_rule_#13=Chrome_WidgetWin_1;.*;Window_isPopup;0;0;0;1;1;1; +;Config_rule_#14=Chrome_RenderWidgetHostHWND;.*;;0;0;0;1;1;0; +;Config_rule_#15=IEFrame;.*Internet Explorer;;1;0;0;0;1;0; +;Config_rule_#16=MozillaWindowClass;.*Mozilla Firefox;;1;0;0;0;1;0; +;Config_rule_#17=MozillaDialogClass;.*;;1;0;0;1;1;0; + +;; Configuration management +;Config_autoSaveSession=auto +;Config_maintenanceInterval=5000 + +;; Key definitions +;; Window management +;Config_hotkey=#Down::View_activateWindow(0, +1) +;Config_hotkey=#Up::View_activateWindow(0, -1) +;Config_hotkey=#+Down::View_shuffleWindow(0, +1) +;Config_hotkey=#+Up::View_shuffleWindow(0, -1) +;Config_hotkey=#+Enter::View_shuffleWindow(1) +;Config_hotkey=#c::Manager_closeWindow() +;Config_hotkey=#+d::Window_toggleDecor() +;Config_hotkey=#+f::View_toggleFloatingWindow() +;Config_hotkey=#+m::Manager_moveWindow() +;Config_hotkey=#+s::Manager_sizeWindow() +;Config_hotkey=#+x::Manager_maximizeWindow() +;Config_hotkey=#i::Manager_getWindowInfo() +;Config_hotkey=#+i::Manager_getWindowList() +;Config_hotkey=!Down::View_moveWindow(0, +1) +;Config_hotkey=!Up::View_moveWindow(0, -1) +;Config_hotkey=!+Enter::Manager_maximizeWindow() +;Config_hotkey=!1::View_moveWindow(1) +;Config_hotkey=!2::View_moveWindow(2) +;Config_hotkey=!3::View_moveWindow(3) +;Config_hotkey=!4::View_moveWindow(4) +;Config_hotkey=!5::View_moveWindow(5) +;Config_hotkey=!6::View_moveWindow(6) +;Config_hotkey=!7::View_moveWindow(7) +;Config_hotkey=!8::View_moveWindow(8) +;Config_hotkey=!9::View_moveWindow(9) +;Config_hotkey=!0::View_moveWindow(10) +;Config_hotkey=!BackSpace::View_toggleStackArea() + +;; Window debugging +;Config_hotkey=#^i::Debug_logViewWindowList() +;Config_hotkey=#+^i::Debug_logManagedWindowList() +;Config_hotkey=#^h::Debug_logHelp() +;Config_hotkey=#^d::Debug_setLogLevel(0, -1) +;Config_hotkey=#^+d::Debug_setLogLevel(0, +1) + +;; Layout management +;Config_hotkey=#Tab::View_setLayout(-1) +;Config_hotkey=#f::View_setLayout(3) +;Config_hotkey=#m::View_setLayout(2) +;Config_hotkey=#t::View_setLayout(1) +;Config_hotkey=#Left::View_setLayoutProperty(MFactor, 0, -0.05) +;Config_hotkey=#Right::View_setLayoutProperty(MFactor, 0, +0.05) +;Config_hotkey=#^t::View_setLayoutProperty(Axis, 0, +1, 1) +;Config_hotkey=#^Enter::View_setLayoutProperty(Axis, 0, +2, 1) +;Config_hotkey=#^Tab::View_setLayoutProperty(Axis, 0, +1, 2) +;Config_hotkey=#^+Tab::View_setLayoutProperty(Axis, 0, +1, 3) +;Config_hotkey=#^Up::View_setLayoutProperty(MY, 0, +1) +;Config_hotkey=#^Down::View_setLayoutProperty(MY, 0, -1) +;Config_hotkey=#^Right::View_setLayoutProperty(MX, 0, +1) +;Config_hotkey=#^Left::View_setLayoutProperty(MX, 0, -1) +;Config_hotkey=#+Left::View_setLayoutProperty(GapWidth, 0, -2) +;Config_hotkey=#+Right::View_setLayoutProperty(GapWidth, 0, +2) + +;; View/Tag management +;Config_hotkey=#+n::View_toggleMargins() +;Config_hotkey=#BackSpace::Monitor_activateView(-1) +;Config_hotkey=#+0::Monitor_setWindowTag(10) +;Config_hotkey=#1::Monitor_activateView(1) +;Config_hotkey=#+1::Monitor_setWindowTag(1) +;Config_hotkey=#^1::Monitor_toggleWindowTag(1) +;Config_hotkey=#2::Monitor_activateView(2) +;Config_hotkey=#+2::Monitor_setWindowTag(2) +;Config_hotkey=#^2::Monitor_toggleWindowTag(2) +;Config_hotkey=#3::Monitor_activateView(3) +;Config_hotkey=#+3::Monitor_setWindowTag(3) +;Config_hotkey=#^3::Monitor_toggleWindowTag(3) +;Config_hotkey=#4::Monitor_activateView(4) +;Config_hotkey=#+4::Monitor_setWindowTag(4) +;Config_hotkey=#^4::Monitor_toggleWindowTag(4) +;Config_hotkey=#5::Monitor_activateView(5) +;Config_hotkey=#+5::Monitor_setWindowTag(5) +;Config_hotkey=#^5::Monitor_toggleWindowTag(5) +;Config_hotkey=#6::Monitor_activateView(6) +;Config_hotkey=#+6::Monitor_setWindowTag(6) +;Config_hotkey=#^6::Monitor_toggleWindowTag(6) +;Config_hotkey=#7::Monitor_activateView(7) +;Config_hotkey=#+7::Monitor_setWindowTag(7) +;Config_hotkey=#^7::Monitor_toggleWindowTag(7) +;Config_hotkey=#8::Monitor_activateView(8) +;Config_hotkey=#+8::Monitor_setWindowTag(8) +;Config_hotkey=#^8::Monitor_toggleWindowTag(8) +;Config_hotkey=#9::Monitor_activateView(9) +;Config_hotkey=#+9::Monitor_setWindowTag(9) +;Config_hotkey=#^9::Monitor_toggleWindowTag(9) + +;; Monitor management +;Config_hotkey=#.::Manager_activateMonitor(0, +1) +;Config_hotkey=#,::Manager_activateMonitor(0, -1) +;Config_hotkey=#+.::Manager_setWindowMonitor(0, +1) +;Config_hotkey=#+,::Manager_setWindowMonitor(0, -1) +;Config_hotkey=#^+.::Manager_setViewMonitor(0, +1) +;Config_hotkey=#^+,::Manager_setViewMonitor(0, -1) + +;; GUI management +;Config_hotkey=#+Space::Monitor_toggleBar() +;Config_hotkey=#Space::Monitor_toggleTaskBar() +;Config_hotkey=#y::Bar_toggleCommandGui() +;Config_hotkey=#+y::Monitor_toggleNotifyIconOverflowWindow() +;Config_hotkey=!+y::View_traceAreas() + +;; Administration +;Config_hotkey=#^e::Run, edit Config.ini +;Config_hotkey=#^s::Config_UI_saveSession() +;Config_hotkey=#^r::Main_reload() +;Config_hotkey=#^+r::Reload +;Config_hotkey=#^q::ExitApp diff --git a/doc/screenshots/default_01.png b/usr/default_01.png similarity index 100% rename from doc/screenshots/default_01.png rename to usr/default_01.png diff --git a/usr/joten_01.ini b/usr/joten_01.ini new file mode 100644 index 0000000..44486bc --- /dev/null +++ b/usr/joten_01.ini @@ -0,0 +1,207 @@ +; bug.n - tiling window management +; @version 9.0.0 + +;; Status bar +;Config_showBar=1 +Config_horizontalBarPos=center +Config_verticalBarPos=tray +Config_barWidth=40% +Config_singleRowBar=0 +;Config_spaciousBar=0 +Config_fontName=DejaVu Sans Mono +Config_fontSize=8 +;Config_largeFontSize=24 +;; <view>;<layout>;<title>;<shebang>;<time>;<date>;<anyText>;<batteryStatus>;<volumeLevel> +Config_backColor_#1=101010;603000;Black;603000;Black;603000;000060;404040;080808 +Config_backColor_#2=808080;;;;;;;202020;080808 +;; Config_backColor_#3=;;;;;;;ff8040; +Config_foreColor_#1=404040;101010;Black;101010;Black;101010;Black;404040;202020 +Config_foreColor_#2=4040ff;;;;;;;0000ff;0000ff +Config_foreColor_#3=;;;;;;;010101; +Config_fontColor_#1=White;White;White;White;White;White;White;Black;808080 +Config_fontColor_#2=Black;;;;;;;White;White +Config_fontColor_#3=;;;;;;;Black; +;Config_barTransparency=off +;Config_barCommands=Run, explore doc;Monitor_toggleBar();Main_reload();Reload;ExitApp +Config_readinBat=1 +;Config_readinCpu=0 +;Config_readinDate=1 +;Config_readinDiskLoad=0 +;Config_readinMemoryUsage=0 +;Config_readinNetworkLoad=0 +;Config_readinTime=1 +Config_readinVolume=1 +Config_readinInterval=10000 + +;; Windows ui elements +;Config_bbCompatibility=0 +Config_borderWidth=2 +Config_borderPadding=0 +Config_showTaskBar=1 +;Config_showBorder=1 +;Config_selBorderColor= + +;; Window arrangement +Config_viewNames=1;2;3;4 +;Config_layout_#1=[]=;tile +;Config_layout_#2=[M];monocle +;Config_layout_#3=><>; +;Config_layoutCount=3 +;Config_layoutAxis_#1=1 +;Config_layoutAxis_#2=2 +;Config_layoutAxis_#3=2 +;Config_layoutGapWidth=0 +;Config_layoutMFactor=0.6 +Config_areaTraceTimeout=2000 +Config_continuouslyTraceAreas=1 +;Config_dynamicTiling=1 +Config_ghostWndSubString= (Keine Rückmeldung) +;Config_mFactCallInterval=700 +Config_mouseFollowsFocus=0 +;Config_newWndPosition=top +;Config_onActiveHiddenWnds=view +;Config_shellMsgDelay=350 +;Config_syncMonitorViews=0 +;Config_viewFollowsTagged=0 +;Config_viewMargins=0;0;0;0 + +;; Config_rule_#<i> := '<class>;<title>;<function name>;<is managed>;<m>;<tags>;<is floating>;<is decorated>;<hide title>;<action>' +;Config_rule_#1=.*;.*;;1;0;0;0;0;0; +;Config_rule_#2=.*;.*;Window_isChild;0;0;0;1;1;1; +;Config_rule_#3=.*;.*;Window_isPopup;0;0;0;1;1;1; +;Config_rule_#4=QWidget;.*;;1;0;0;0;0;0; +;Config_rule_#5=SWT_Window0;.*;;1;0;0;0;0;0; +;Config_rule_#6=Xming;.*;;1;0;0;0;0;0; +;Config_rule_#7=MsiDialog(No)?CloseClass;.*;;1;0;0;1;1;0; +;Config_rule_#8=AdobeFlashPlayerInstaller;.*;;1;0;0;1;0;0; +;Config_rule_#9=CalcFrame;.*;;1;0;0;1;1;0; +;Config_rule_#10=CabinetWClass;.*;;1;0;0;0;1;0; +;Config_rule_#11=OperationStatusWindow;.*;;0;0;0;1;1;0; +Config_rule_#12=Chrome_WidgetWin_1;.*;;1;0;0;0;1;0;maximize +;Config_rule_#13=Chrome_WidgetWin_1;.*;Window_isPopup;0;0;0;1;1;1; +;Config_rule_#14=Chrome_RenderWidgetHostHWND;.*;;0;0;0;1;1;0; +;Config_rule_#15=IEFrame;.*Internet Explorer;;1;0;0;0;1;0; +;Config_rule_#16=MozillaWindowClass;.*Mozilla Firefox;;1;0;0;0;1;0; +;Config_rule_#17=MozillaDialogClass;.*;;1;0;0;1;1;0; +Config_rule=gdkWindowToplevel;.*;;1;0;0;0;1;0; +Config_rule=gdkWindowToplevel;Netzwerkprotokoll;;0;0;0;1;1;0; +Config_rule=gdkWindowToplevel;Document Viewer;;0;0;0;1;1;0; +Config_rule=gdkWindowToplevel;Ordner w.hlen;;0;0;0;1;1;0; +Config_rule=gdkWindowToplevel;URLs .ffnen;;0;0;0;1;1;0; +Config_rule=WindowsForms10.Window.8.app.0.2bf8098_r9_ad1;ServicesForm;;0;0;0;1;1;0; + + +;; Configuration management +Config_autoSaveSession=ask +;Config_maintenanceInterval=5000 + +;; Key definitions +;; Window management +;Config_hotkey=#Down::View_activateWindow(0, +1) +;Config_hotkey=#Up::View_activateWindow(0, -1) +;Config_hotkey=#+Down::View_shuffleWindow(0, +1) +;Config_hotkey=#+Up::View_shuffleWindow(0, -1) +;Config_hotkey=#+Enter::View_shuffleWindow(1) +Config_hotkey=#c:: +Config_hotkey=#k::Manager_closeWindow() +;Config_hotkey=#+d::Window_toggleDecor() +;Config_hotkey=#+f::View_toggleFloatingWindow() +;Config_hotkey=#+m::Manager_moveWindow() +;Config_hotkey=#+s::Manager_sizeWindow() +;Config_hotkey=#+x::Manager_maximizeWindow() +Config_hotkey=#i:: +Config_hotkey=#^i::Manager_getWindowInfo() +;Config_hotkey=#+i::Manager_getWindowList() +;Config_hotkey=!Down::View_moveWindow(0, +1) +;Config_hotkey=!Up::View_moveWindow(0, -1) +;Config_hotkey=!+Enter::Manager_maximizeWindow() +;Config_hotkey=!1::View_moveWindow(1) +;Config_hotkey=!2::View_moveWindow(2) +;Config_hotkey=!3::View_moveWindow(3) +;Config_hotkey=!4::View_moveWindow(4) +;Config_hotkey=!5::View_moveWindow(5) +;Config_hotkey=!6::View_moveWindow(6) +;Config_hotkey=!7::View_moveWindow(7) +;Config_hotkey=!8::View_moveWindow(8) +;Config_hotkey=!9::View_moveWindow(9) +;Config_hotkey=!0::View_moveWindow(10) +;Config_hotkey=!BackSpace::View_toggleStackArea() + +;; Window debugging +;Config_hotkey=#^i::Debug_logViewWindowList() +;Config_hotkey=#+^i::Debug_logManagedWindowList() +;Config_hotkey=#^h::Debug_logHelp() +;Config_hotkey=#^d::Debug_setLogLevel(0, -1) +;Config_hotkey=#^+d::Debug_setLogLevel(0, +1) + +;; Layout management +;Config_hotkey=#Tab::View_setLayout(-1) +;Config_hotkey=#f::View_setLayout(3) +;Config_hotkey=#m::View_setLayout(2) +;Config_hotkey=#t::View_setLayout(1) +;Config_hotkey=#Left::View_setLayoutProperty(MFactor, 0, -0.05) +;Config_hotkey=#Right::View_setLayoutProperty(MFactor, 0, +0.05) +;Config_hotkey=#^t::View_setLayoutProperty(Axis, 0, +1, 1) +;Config_hotkey=#^Enter::View_setLayoutProperty(Axis, 0, +2, 1) +;Config_hotkey=#^Tab::View_setLayoutProperty(Axis, 0, +1, 2) +;Config_hotkey=#^+Tab::View_setLayoutProperty(Axis, 0, +1, 3) +;Config_hotkey=#^Up::View_setLayoutProperty(MY, 0, +1) +;Config_hotkey=#^Down::View_setLayoutProperty(MY, 0, -1) +;Config_hotkey=#^Right::View_setLayoutProperty(MX, 0, +1) +;Config_hotkey=#^Left::View_setLayoutProperty(MX, 0, -1) +;Config_hotkey=#+Left::View_setLayoutProperty(GapWidth, 0, -2) +;Config_hotkey=#+Right::View_setLayoutProperty(GapWidth, 0, +2) + +;; View/Tag management +;Config_hotkey=#+n::View_toggleMargins() +;Config_hotkey=#BackSpace::Monitor_activateView(-1) +;Config_hotkey=#+0::Monitor_setWindowTag(10) +;Config_hotkey=#1::Monitor_activateView(1) +;Config_hotkey=#+1::Monitor_setWindowTag(1) +;Config_hotkey=#^1::Monitor_toggleWindowTag(1) +;Config_hotkey=#2::Monitor_activateView(2) +;Config_hotkey=#+2::Monitor_setWindowTag(2) +;Config_hotkey=#^2::Monitor_toggleWindowTag(2) +;Config_hotkey=#3::Monitor_activateView(3) +;Config_hotkey=#+3::Monitor_setWindowTag(3) +;Config_hotkey=#^3::Monitor_toggleWindowTag(3) +;Config_hotkey=#4::Monitor_activateView(4) +;Config_hotkey=#+4::Monitor_setWindowTag(4) +;Config_hotkey=#^4::Monitor_toggleWindowTag(4) +Config_hotkey=#5:: +Config_hotkey=#+5:: +Config_hotkey=#^5:: +Config_hotkey=#6:: +Config_hotkey=#+6:: +Config_hotkey=#^6:: +Config_hotkey=#7:: +Config_hotkey=#+7:: +Config_hotkey=#^7:: +Config_hotkey=#8:: +Config_hotkey=#+8:: +Config_hotkey=#^8:: +Config_hotkey=#9:: +Config_hotkey=#+9:: +Config_hotkey=#^9:: + +;; Monitor management +;Config_hotkey=#.::Manager_activateMonitor(0, +1) +;Config_hotkey=#,::Manager_activateMonitor(0, -1) +;Config_hotkey=#+.::Manager_setWindowMonitor(0, +1) +;Config_hotkey=#+,::Manager_setWindowMonitor(0, -1) +;Config_hotkey=#^+.::Manager_setViewMonitor(0, +1) +;Config_hotkey=#^+,::Manager_setViewMonitor(0, -1) + +;; GUI management +;Config_hotkey=#+Space::Monitor_toggleBar() +;Config_hotkey=#Space::Monitor_toggleTaskBar() +;Config_hotkey=#y::Bar_toggleCommandGui() +;Config_hotkey=#+y::Monitor_toggleNotifyIconOverflowWindow() +;Config_hotkey=!+y::View_traceAreas() + +;; Administration +;Config_hotkey=#^e::Run, edit Config.ini +;Config_hotkey=#^s::Config_UI_saveSession() +;Config_hotkey=#^r::Main_reload() +;Config_hotkey=#^+r::Reload +;Config_hotkey=#^q::ExitApp diff --git a/doc/screenshots/joten_01.png b/usr/joten_01.png similarity index 100% rename from doc/screenshots/joten_01.png rename to usr/joten_01.png