С тегом «xbindkeys»
Привет, вилинукс.
Для осуществления сабжа, вначале нужен скрипт управления:
Выкинул, потому что пытался найти в свое время, и понял что мало кто экспериментирует :) Конфиг - о создании "цепочек", любой нужной длинны, а не просто "в стиле емакс". В общем пофлудить выкинул ;-)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
;; List of modifier:
;; Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
;; Mod3 (CapsLock), Mod4, Mod5 (Scroll).
(define (first-binding)
"First binding"
(xbindkey '(Mod4 r) "gmrun")
; scr, area-scr, delay-scr
(xbindkey '(Print) "scrot -q 85 '%Y-%m-%d_%H:%M:%S.png' -e 'mv $f ~/Pictures/screenshot'")
(xbindkey '(Control Print) "scrot -s -q 85 '%Y-%m-%d_%H:%M:%S.png' -e 'mv $f ~/Pictures/screenshot'")
(xbindkey '(Mod1 Print) "scrot -d 5 -q 85 '%Y-%m-%d_%H:%M:%S.png' -e 'mv $f ~/Pictures/screenshot'")
(xbindkey '(XF86AudioMute) "amixer -q sset Headphone toggle")
(xbindkey '(Mod4 equal) "amixer -q sset Headphone 2+ unmute")
(xbindkey '(Mod4 minus) "amixer -q sset Headphone 2- unmute")
(xbindkey-function '(Mod4 x) second-binding))
; win+x
(define (reset-to-first-binding)
"reset to first binding"
(ungrab-all-keys)
(remove-all-keys)
(first-binding)
(grab-all-keys))
(define (second-binding)
"Second binding"
(ungrab-all-keys)
(remove-all-keys)
; chains
(xbindkey-function 'c third-binding) ; ch, cl
(xbindkey-function 'f third-binding) ; fm, fx
; launchers
(xbindkey-function 'm
(lambda ()
(run-command "gnome-terminal --window-with-profile=Mcabber")
(reset-to-first-binding)))
(xbindkey-function 'g
(lambda ()
(run-command "gcalctool")
(reset-to-first-binding)))
(xbindkey-function '(control g) reset-to-first-binding)
(grab-all-keys))
; chains от win+x
(define (reset-to-second-binding)
"reset to second binding"
(ungrab-all-keys)
(remove-all-keys)
(second-binding)
(grab-all-keys))
(define (third-binding)
"Second binding"
(ungrab-all-keys)
(remove-all-keys)
; C
(xbindkey-function 'h
(lambda ()
(run-command "chromium-browser")
(reset-to-first-binding)))
(xbindkey-function 'l
(lambda ()
(run-command "clementine")
(reset-to-first-binding)))
; F
(xbindkey-function 'm
(lambda ()
(run-command "pcmanfm")
(reset-to-first-binding)))
(xbindkey-function 'x
(lambda ()
(run-command "firefox")
(reset-to-first-binding)))
(xbindkey-function '(control g) reset-to-second-binding)
(grab-all-keys))
(first-binding) |
Т.е. win+x а дальше fm - файлманагер, fx - огнелис, ну и понятно.
xbindkeys — программа для привязки команд к клавишам (это еще зовется хоткеями). В чем плюс — она не привязана ни к какому WM или (боже упаси) DE, а значит можно использовать одни хоткеи во всех WM (если у вас стоит больше чем один window manager).
16.08.09 21:58
Буквально несколько секунд назад в голову постучалась мысль: прицепить управление mpd на мышь. Этой идеей я и хочу поделиться с welinux'оидами, может кому-нибудь да понравится. Ведь довольно часто, "прогуливаясь" по интернету, возникает потребность поуправлять проигрывателем, и сделать это зачастую удобно мышью и клавиатурным модификатором, на которых лежат руки, а не бросать мышь и искать хоткей на клаве.
Учитывая тот факт, что я пользуюсь программой xbindkey для создания горячих клавиш, и она умеет контролировать мышь, то весь конфиг заключается в добавлении нескольких строк в файл ~/.xbindkeys.scm:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
(xbindkey '("control" "Alt" "b:1") "mpc next") ;; Контрол + Альт + ЛКМ
(xbindkey '("control" "Shift" "b:1") "xterm -geometry +400+550 -e ncmpc -c") ;; Контрол + Шифт + ЛКМ
(xbindkey '("control" "Alt" "b:2") "mpc toggle") ;; Контрол + Альт + СКМ
(xbindkey '("control" "Alt" "b:3") "mpc prev") ;; Контрол + Альт + ПКМ
(xbindkey '("control" "Shift" "b:3") "xterm -geometry +400+550 -e alsamixer") ;; Контрол + Шифт + ПКМ
(xbindkey '("control" "Alt" "b:4") "aumix -v+2") ;; Контрол + Альт + Колесо вверх
(xbindkey '("control" "Alt" "b:5") "aumix -v-2") ;; Контрол + Альт + Колесо вниз
(xbindkey '("control" "Shift" "b:4") "mpc seek +00:00:01") ;; Контрол + Шифт + Колесо вверх
(xbindkey '("control" "Shift" "b:5") "mpc seek -00:00:01") ;; Контрол + Шифт + Колесо вниз
|
Те, у кого в мышке больше кнопок, могут повесить еще какие-нибудь дополнительные действия на мышь.
P.S. Когда-то давно такое дело было у меня в винде, с использование AutoHotkey — должен сказать, что это очень удобно.
Многие знают об особенностях работы с клавиатурой в редакторе vim. И многим они нравятся. Мне также нравятся эти особенности, и после знакомства с дополнением vimperator для firefox iceweasel захотелось сделать нечто подобное для всей системы в целом. А точнее — запускать программы по нажатию на клавиатуре какой-то предопределенной буквы.
Для того чтобы это реализовать нужно было создать какой-нибудь дополнительный режим работы клавиатуры, при котором запуск программ не мешал бы обычному вводу текста. Что-нибудь, похожее на XCompose key.
1
|
|
|
Последние посты
|
|
Последние комментарии
|
|
Изменения
|
|
Черновики (все)
|
|
Избранное (всё)
|
|
|