fuhsjr00 / bug.n

Tiling Window Manager for Windows
GNU General Public License v3.0
3.34k stars 214 forks source link

[Feature request] switch tag faster #249

Closed tianxiayu007 closed 4 years ago

tianxiayu007 commented 4 years ago

i read nearly all the doc, but don't find tag switch hotkeys, is this feature exists? since there is view switch like Monitor_activateView(0, -1),Monitor_activateView(0, +1), i suggest add function like Monitor_activateTag(0, -1), Monitor_activateTag(0, +1), then i can use hotkeys like #n, #p to switch to next or previous tag. because it type easily than #1,#2, etc..

schkr commented 4 years ago

Win + <Tag Number>

Config_hotkey=#^1::Monitor_toggleWindowTag(1) - For monitor 1 and so on....

Forgive me if I don't understand; I'm not sure what your question/Feature request is??

Or you're referring to something like this?

;; 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)
;;
Config_hotkey=#!PgDn::Manager_setWindowMonitor(1,0)
Config_hotkey=#!End::Manager_setWindowMonitor(2,0)
Config_hotkey=#!Delete::Manager_setWindowMonitor(3,0)
Config_hotkey=#!Insert::Manager_setWindowMonitor(4,0)
Config_hotkey=#!Home::Manager_setWindowMonitor(5,0)
Config_hotkey=#!PgUp::Manager_setWindowMonitor(6,0)

;; Switch To Monitor
Config_hotkey=#PgDn::Manager_activateMonitor(1,0)
Config_hotkey=#End::Manager_activateMonitor(2,0)
Config_hotkey=#Delete::Manager_activateMonitor(3,0)
Config_hotkey=#Insert::Manager_activateMonitor(4,0)
Config_hotkey=#Home::Manager_activateMonitor(5,0)
Config_hotkey=#PgUp::Manager_activateMonitor(6,0)
tianxiayu007 commented 4 years ago

Win + <Tag Number>

Config_hotkey=#^1::Monitor_toggleWindowTag(1) - For monitor 1 and so on....

Forgive me if I don't understand; I'm not sure what your question/Feature request is??

Or you're referring to something like this?

;; 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)
;;
Config_hotkey=#!PgDn::Manager_setWindowMonitor(1,0)
Config_hotkey=#!End::Manager_setWindowMonitor(2,0)
Config_hotkey=#!Delete::Manager_setWindowMonitor(3,0)
Config_hotkey=#!Insert::Manager_setWindowMonitor(4,0)
Config_hotkey=#!Home::Manager_setWindowMonitor(5,0)
Config_hotkey=#!PgUp::Manager_setWindowMonitor(6,0)

;; Switch To Monitor
Config_hotkey=#PgDn::Manager_activateMonitor(1,0)
Config_hotkey=#End::Manager_activateMonitor(2,0)
Config_hotkey=#Delete::Manager_activateMonitor(3,0)
Config_hotkey=#Insert::Manager_activateMonitor(4,0)
Config_hotkey=#Home::Manager_activateMonitor(5,0)
Config_hotkey=#PgUp::Manager_activateMonitor(6,0)

while i'm not saying multi-monitor case. Now i just have one monitor,with 4 tags configured(that's say 4 workspace), although i can change workspace with #1,#2,#3..etc, i still what to switch workspace without know specific workspace number,that's, treat workspace lik a stack,i can active workspace with #n,#p

schkr commented 4 years ago

Config_hotkey=#H::Monitor_activateView(0,+1)

0 = Current Monitor (since your only using 1 monitor) +1 = Next Tag Number -1 = Previous Tag Number

H = Arbitrary Hotkeys

This works for me. Check if you're overlapping hotkeys with other applications.

_activateView=Tag Number _activateMonitor=Monitor Number

tianxiayu007 commented 4 years ago

Config_hotkey=#H::Monitor_activateView(0,+1)

0 = Current Monitor (since your only using 1 monitor) +1 = Next Tag Number -1 = Previous Tag Number

H = Arbitrary Hotkeys

This works for me. Check if you're overlapping hotkeys with other applications.

_activateView=Tag Number _activateMonitor=Monitor Number

Absolutely correct! 😍 i didn't try this function when see its name as activateView but not activeTag 😂