LINUX.ORG.RU

evilfvwm (fvwm с настройками evilwm)

 ,


0

1

Дабы не изменять привычкам и попутно изучить fvwm, с переходом взялся переписывать evilwm на конфиг fvwm.

man evilwm -> http://www.6809.org.uk/evilwm/usage.shtml

Все хоткеи, за исключением не нужных I, Equals (=), D, Left, Right - работают. Пользователи evilwm могут смело пересаживаться за fvwm, и получается это тот-же evilwm, только еще его можно обвешать всеми рюшечками из fvwm. Класс!

# sudo cast Hoodoo
С поведением окон не осилил разобраться и прошу помощи.

1) При развертывании терминала на весь экран остается пространство с краев, известно почему, но как это убрать - не нашел.

2) Когда с окна уводишь курсор, даже просто на рабочий стол, теряется фокус. Возможно сделать, чтобы окно оставалось активным всегда, пока только не наведешь курсор на другое окно?

3) Реквестирую альтернативные варианты расположения окон. Вот в evilwm новое окно всегда создавалось точно по центру под курсором мышки, т.е. сам курсор в центре окна; очень удобно.

4) Существуют ли альтернативные версии alt+tab'у (без меню, чтобы окна переключались сразу)?

*) Приму в дар любые советы и пожелания как к новичку. ЗЫ ваш starter kit уже изучил вдоль и поперек :3

Вообще, я кроме evilwm «мира не видал» и поэтому не знаю, какие еще могут быть варианты для _расположения_, _фокусировоки_ окон и _переключения_ между окнами, что и интересно - а какие варианты знаете вы? Просто, если знаете что-нибудь удобное и интутивное в управлении...

Понятно, что 3 и 4 пункты в лучшем случае нужно писать самому. Alt+Tab пока подождет, попользуюсь нативным.

*FvwmEvent: add_window «Move m+0-50w m+0-50w» распологает окна как в evilwm, но можно ли сделать, что бы те не заезжали за края экрана? (бывает, что мыш находится где-то в углу). И FvwmPager тоже реагирует на этот Move, подозреваю что отключается каким-то style'ом.

~/.fvwm/.fvwm2rc -> \

DesktopSize 1x1
SnapAttraction 10 screen

Style * NoTitle, HandleWidth 0
Style * GrabFocus

Mouse 1 R A Nop
Mouse 1 W M FvwmDragMove
DestroyFunc FvwmDragMove
AddToFunc FvwmDragMove
+ M Move

Mouse 2 R A Nop
Mouse 2 W M FvwmDragSize
DestroyFunc FvwmDragSize
AddToFunc FvwmDragSize
+ M Resize

Mouse 3 R A Nop
Mouse 3 W M RaiseLower

Key Return A CM Exec exec urxvt
Key Escape W CM Close
Key Insert W CM Lower

Key r A CM Restart

Key f W CM Stick
Key x W CM Maximize 

Key h W CM Move w-16p keep warp
Key j W CM Move keep w+16p warp
Key k W CM Move keep w-16p warp
Key l W CM Move w+16p keep warp

Key h W CMS Resize w-1c keep
Key j W CMS Resize keep w+1c
Key k W CMS Resize keep w-1c
Key l W CMS Resize w+1c keep

Key y W CM Move 0 0
Key u W CM Move -0 0
Key b W CM Move 0 -0
Key n W CM Move -0 -0

Key 1 A CM GotoDesk 0 0
Key 2 A CM GotoDesk 0 1
Key 3 A CM GotoDesk 0 2
Key 4 A CM GotoDesk 0 3
Key 5 A CM GotoDesk 0 4
Key 6 A CM GotoDesk 0 5
Key 7 A CM GotoDesk 0 6
Key 8 A CM GotoDesk 0 7

И первая няшная рюшечка в качестве дополнения к «evilwm»

DestroyModuleConfig FvwmPager: *
*FvwmPager: Geometry -0-0
*FvwmPager: Rows 2
*FvwmPager: Columns 4
Style "FvwmPager" Sticky, StaysOnBottom, WindowListSkip

DestroyFunc StartFunction
AddToFunc StartFunction
+ I Module FvwmPager 0 7

Ну и вроде бы все. Решить несколько вопросов выше и получим точную копию evilwm =)

★★★★★
1 - Style urxvt ResizeHintOverride
2 - 31.7.5.1. Focus policy

ClickToFocus instructs fvwm to give the focus to a window when it is clicked in. The default MouseFocus (or its alias FocusFollowsMouse) tells fvwm to give a window the focus as soon as the pointer enters the window, and take it away when the pointer leaves the window. SloppyFocus is similar, !!!but doesn't give up the focus if the pointer leaves the window to pass over the root window or a ClickToFocus window!!! (unless you click on it, that is), which makes it possible to move the mouse out of the way without losing focus. 

То есть да. Надо читать ман обязательно, потому что у меня-то мало что написано, и может ещё и неправильно или плохо объяснено.

3 - *FvwmEvent: add_window "Move m+0-50w m+0-50w"  ЗАЧЕМ? 
Style *  PositionPlacement UnderMouse должно делать то, что ты описал, без дополнительных телодвижений. В т.ч. не пускать окна за края экрана.

4 - http://www.fvwm.org/documentation/faq/#3.3 - оно?

Вот. Какие ещё способы чего есть - можно посмотреть в соотв.секции мануала, ищи по словам focus policy, window placement. Может, чего понравится.

Hoodoo ★★★★★
()
Ответ на: комментарий от Hoodoo

Спасибо.

«evilwm» готов :)

DestroyFunc LeftClick
AddToFunc LeftClick
+ I Raise
+ M Move

DestroyFunc RightClick
AddToFunc RightClick
+ I RaiseLower

DestroyFunc MiddleClick
AddToFunc MiddleClick
+ M Resize

DesktopSize 1x1
DesktopName 0 1
DesktopName 1 2
DesktopName 2 3
DesktopName 3 4
DesktopName 4 5
DesktopName 5 6
DesktopName 6 7
DesktopName 7 8

Style * NoTitle, HandleWidth 0
Style * ResizeHintOverride
Style * PositionPlacement UnderMouse
Style * SloppyFocus
Style * SnapAttraction 10 All Screen

Mouse 1 R A Nop
Mouse 2 R A Nop
Mouse 3 R A Nop

Mouse 1 W M LeftClick
Mouse 2 W M MiddleClick
Mouse 3 W M RightClick

Key Return A CM Exec exec urxvt
Key Escape W CM Close
Key Insert W CM RaiseLower

Key x W CM Maximize 
Key f W CM Stick

Key h W CM Move w-16p keep warp
Key j W CM Move keep w+16p warp
Key k W CM Move keep w-16p warp
Key l W CM Move w+16p keep warp

Key h W CMS Resize w-16c keep
Key j W CMS Resize keep w+16c
Key k W CMS Resize keep w-16c
Key l W CMS Resize w+16c keep

Key y W CM Move 0 0
Key u W CM Move -0 0
Key b W CM Move 0 -0
Key n W CM Move -0 -0

Key 1 A CM GotoDesk 0 0
Key 2 A CM GotoDesk 0 1
Key 3 A CM GotoDesk 0 2
Key 4 A CM GotoDesk 0 3
Key 5 A CM GotoDesk 0 4
Key 6 A CM GotoDesk 0 5
Key 7 A CM GotoDesk 0 6
Key 8 A CM GotoDesk 0 7

Spoofing ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.