Все о Linux. LinuxRSP.Ru


Cвежие новости Linux и BSD, анонсы статей и книг прямо в почтовый ящик!
Подписаться письмом


 Сегодняшние новости:

25 лет исполнилось ядру Linux

Релиз KDevelop 5.0

Oracle открывает код JDK9 для ARM

Выпущен Timewarrior 1.0.0

Релиз Android 7.0

Percona Memory Engine для MongoDB на базе WiredTiger

PowerShell открыт и доступен для Linux

Форк TrueCrypt: VeraCrypt 1.18

Релиз Snapcraft 2.14

Релиз Go 1.7

Стабильный выпуск рабочего стола Lumina

Вышла первая версия аналога OpenCV - DCV 0.1

Выпуск минималистичной программы для мониторинга jsonmon 3

В MIT разработали новый язык программирования

Первый релиз Qt5Gtk2

Godot 2.1 - новая версия открытого игрового движка

Свободная цифровая станция звукозаписи: Ardour 5.0

Обновление SkypeWeb Plugin for Pidgin

Вышла версия 3.0 Android File Transfer для Linux (и для OS X)

Программный аналог MIDI-контроллера для создания музыки: Launchpadd v1.3

Mozilla спонсирует поддержку Python 3.5 в PyPy

Ef 0.08 - программа для моделирования динамики заряженных частиц

Обновление текстового редактора TEA до версии 42.0.0

Релиз OpenOrienteering Mapper 0.6.4

Вышли Guix и GuixSD 0.11

Релиз Opera 39

Выпуск LibreOffice 5.2

В OpenSSH обнаружены и устранены некоторые уязвимости

Эмулятор FCEUX 2.2.3

Компания Билайн переходит на российскую СУБД с открытым исходным кодом Tarantool

Google

 Новые статьи :

Утилиты для восстановления потерянных данных в Linux

Лучшие файловые менеджеры для Android

20 лучших бесплатных книг о Linux

Как сгенерировать открытый/закрытый SSH-ключ в Linux

Grive - клиент Google Drive для Linux с открытым исходным кодом

Протокол IPv6: варианты подключения

Сервер из образа: DHCP + TFTP + Initrd + OpenVZ

Обзор веб-панелей управления хостингом

Приёмы работы с Vim

Nginx как Reverse Proxy для сайта, использующего SSL

Разработка модулей ядра Linux

Мониторинг нагрузки http-сервера Apache 2

Перевод комментариев к файлу конфигурации Squid

Решение проблем при использовании "1c предприятие" 8.2 в Linux

Advanced Bash-Scripting Guide Искусство программирования на языке сценариев командной оболочки







Rambler's Top100





 
 

Настройка и работа с оконным менеджером FVWM2

от Dan Espen и Co.

Ситуация, которая сложилась на данный момент, на не коммерческом рынке ( а попросту говоря - базаре ) оконных менеджеров для UNIX-like систем, к сожалению далека от желаемой. Нет, конечно хорошо когда есть такое обилие менеджеров, но настораживает, тот факт, что KDE-team заявляет, мол 70% Unix десктопов работает на KDE менеджерах (1,2). И это не пустые слова, ну допустим не 70%, а меньше, так как поклонников у конкурента KDE - Gnome, тоже хватает.Чем же берут эти два десктопных менеджера, да просто напросто тем, что при минимуме движений, мы получаем весьма симпатичный десктоп. Но вот беда, что-то это ситуация напоминает? Правильно! Всеми нами любимый Windows тоже при минимуме движений, хоть что-то, но давал нам. Только вот, функциональность и скорость работы подводят, да уж KDE надежно маскирует систему от пользователя, за кучей рюшек, и повышенных системных требований. А применение оконных менеджеров, интерфейс, которых был заимствован с MacOS или (о нет!!!) Windows не является unix-way.

Впрочем ладно, не буду кидать камни в KDE-team, их и так не жалуют ( и правильно делают), лучше предложу свой вариант построения GUI на базе FVWM2 и замечательного скриптового языка Tcl/Tk. Сразу скажу, что на подобные измышления меня натолкнула статья Виктора Вагнера, доступная на www.ice.ru/~vitus. А также реальные примеры Бориса Тоботраса, лежащие на www.xtalk.price.ru. За основу мною была взята программа Виктора Вагнера, под названием fubar. Программа написана на Tcl/Tk и представляет собой 20кб скрипт, на экране он представлен белой полосочкой с разными кнопками, есть там кстати и всеми любимый Start. Программа была мною дописана, до моих нужд, в частности я добавил:

1) Поддержку работы с PostgreSQL. 2) Кнопку для создания и удаления файла /etc/nologin.ttySX. 3) Поиск в телефонном справочнике адреса по номеру абонента. 4) Интерфейс для поиска книг в базе данных и последующего их чтения в ghostview. По мере надобности список можно увеличивать, за счет изначально хорошей структуры программы. Огромное спасибо ее автору Виктору Вагнеру.

Но без оконного менеджера наш коктейль будет неполным и поэтому, нам потребуется замечательный оконный менеджер FVWM2. Почему именно он? А потому что он умеет: 1) Создавать виртуальный десктоп. 2) Расходует весьма мало оперативной памяти. ( В отличие от KDE или Gnome). 3) Расширяем при помощи модулей. 4) Поддерживает Motif, MWM, OpenLook. 5) Умеет лепить pixmap везде, чуть ли не на лбу пользователя, поддержка векторной графики в заголовках окон. 6) Мощнейшая поддержка клавиатуры. 7) Понятный файл конфигурации с поддержкой макросов. 8) Анимационное передвижений окон. 9) Возможность изменения конфигурации на лету. 10) И самое приятное - механизм event'ов. С его помощью и с помощью внешних модулей типа FvwmCommandS можно управлять десктопом в зависимости от событий, например вновь прибывшей почтой, разорванной связью, и.т.д.

Так что FVWM2 - это очень мощный и настраиваемый оконный менеджер. И вся проблема в том, что его нужно настроить. Практически во всех дистрибутивах он есть, если же нет, то милости просим на www.freshmeat.net, потом на страничке Виктора Вагнера выкачиваем fubar, и также было бы неплохо стянуть оттуда TclFVWM. TclFVWM понадобится если мы захотим при помощи Tcl делать send FVWM2, а мы захотим обязательно, но потом. Согласно весьма полной инструкции ставим FVWM2 и fubar. Создаем симлинк на fubar в директории /usr/X11R6/lib/X11/fvwm2 А затем пишем конфиг для FVWM2. Даю свой, с комментариями (моими и автора fvwm2 ;) :

#
# ~/.fvwm2rc вот наш конфигурационный файлик.

#========================================================================#

#
# Fonts - one for window titles, another for icons, and another for the menus
#

#
# Set the default window colors. The syntax is:
#  DefaultColors winforecolor winbackcolor titleforecolor titlebackcolor
# where:
#  winbackcolor    is the background (border) color of all windows,
#                  including the menu windows 
#  winforecolor    is used for the menu text
#  titlebackcolor  is the background color used for title bars of 
#                  non selected windows
#  titleforecolor  is the color of the title text of non selected windows
#
# Все цвета кстати на мой вкус, так что...
#
DefaultColors  Black Black #27ca5d2f5340 Black

#
# Text and background color for the title bar of the active (selected) window
#
HilightColor White #27ca5d2f5340

#
# Text and background color for the title bar of sticky windows
#

# You can also use the Style command to set the colors of individual
# title bars of some non-selected windows
# Это чтоб все по русски было
MenuStyle Black #27ca5d2f5340 Black -*-helvetica-bold-r-*-*-12-*-*-*-*-*-koi8-r fvwm


Style "*" ForeColor Black
Style "*" BackColor #27ca5d2f5340
Style "xload" NoTitle
#========================================================================#

#
# Set up the major operating modes
# Начинаем определение стилей.

Style "*" ClickToFocus
# Comment the above and uncomment one of the following if you prefer
# focus follow mouse.
#Style "*" MouseFocus
#Style "*" SloppyFocus

# If we use the FvwmTaskBar we don't need the icons :-)
# Style "..." Icon are also commented below.
Style "*" NoIcon
Style "*" MWMFunctions
Style "*" HintOverride
Style "*" MWMDecor
Style "*" DecorateTransient

OpaqueMoveSize 100
EdgeScroll 100 100
EdgeResistance 10000 0

#
# RandomPlacement prevents user interaction while placing windows:
#
Style "*" RandomPlacement

#
# NoPPosition instructs fvwm to ignore the PPosition field in window 
# geometry hints. Emacs annoyingly sets PPosition to (0,0)!
#
Style "*" NoPPosition

#========================================================================#

#
# Set the desk top size in units of physical screen size
# Задаем размер десктопа 2x2 вполне хватит ( micq, netscape, lftp )
DeskTopSize 2x2

#========================================================================#

#
# Module path and paths to the icons
# ModulePath is a colon-separated list, just like regular unix PATH
#
ModulePath /usr/X11R6/lib/X11/fvwm2
PixmapPath /usr/include/X11/pixmaps/:/usr/share/icons/mini/
IconPath   /usr/include/X11/bitmaps/:/usr/share/icons/

#========================================================================#

# Set the decoration styles and window options
# If compatible styles are set for a single window in multiple Style
# commands, then the styles are ORed together. If conflicting styles
# are set, the last one specified is used.

# These commands should command before any menus or functions are defined,
# and before the internal pager is started.

#
# Default border and handle widths
# Менюшки пошли...
Style "*" BorderWidth 5, HandleWidth 5

Style "Fvwm*"        NoTitle, Sticky, WindowListSkip
Style "Fvwm Pager"   StaysOnTop, NoHandles
Style "FvwmBanner"   StaysOnTop
Style "FvwmButtons"  NoTitle, NoHandles, Sticky, WindowListSkip,BorderWidth 5
Style "*lock"        NoTitle, NoHandles, Sticky, WindowListSkip
Style "xbiff"        NoTitle,            Sticky, WindowListSkip
Style "xrus"         StaysOnTop, NoHandles
#
# Some mini-icons for the title bar
#
Style "*"         MiniIcon mini-x2.xpm
Style "*xterm*"   MiniIcon mini-term.xpm
Style "rxvt"      MiniIcon mini-term.xpm
Style "xcalc"     MiniIcon mini-calc.xpm
Style "xsession"  MiniIcon mini-bx2.xpm
Style "xv"        MiniIcon mini-xv.xpm
Style "Netscape"  MiniIcon mini-nscape.xpm
Style "xmag"      MiniIcon mini-zoom.xpm
Style "textedit"  MiniIcon mini-edit.xpm
Style "tkps"      MiniIcon mini-run.xpm
Style "Ghostview" MiniIcon mini-gv.xpm
Style "Xcolorsel" MiniIcon mini-colors.xpm
Style "IDL*"      MiniIcon mini-zoom.xpm
Style "xeyes"     MiniIcon mini-eyes.xpm
Style "*fm*"      MiniIcon mini-filemgr.xpm
# xman resource names
Style "topBox"    MiniIcon mini-book1.xpm
Style "help"      MiniIcon mini-book2.xpm
Style "manualBrowser" MiniIcon mini-book2.xpm
# xpaint resource names
Style "xpaint"    MiniIcon mini-paint.xpm
Style "Canvas"    MiniIcon mini-paint.xpm
Style "fatbits"   MiniIcon mini-paint.xpm
Style "filebrowser" MiniIcon mini-ofolder.xpm

Style "FvwmFile"  MiniIcon mini-ofolder.xpm
Style "XDbx"      MiniIcon mini-bug2.xpm


#Style "rxvt"       Icon  term.xpm
#Style "xterm"      Icon xterm.xpm
#Style "color_xterm" Icon rterm.xpm
#Style "Appointment" Icon datebook.xpm
#Style "xcalc"      Icon Rcalc.xpm
#Style "xbiff"      Icon mail1.xpm
#Style "xmh"        Icon mail1.xpm, StartsOnDesk 2
#Style "xman"	   Icon xman.xpm
#Style "xvgr"	   Icon graphs.xpm
#Style "matlab"	   Icon math4.xpm
#Style "xmag"	   Icon mag_glass.xpm
#Style "xgraph"	   Icon graphs.xpm
#Style "xv"         Icon xview.xpm
#Style "FvwmButtons"  Icon toolbox.xpm
#Style "xconsole"   Icon koala.xpm
#Style "xsession"   Icon koala.xpm
#Style "textedit"   Icon textedit.xpm
#Style "ghostview"  Icon gv.xpm

#========================================================================#

#
# Stuff to do at start-up
#

AddToFunc "InitFunction"    "I" Exec xsetroot -solid black &
#Здесь мы запускаем fubar.tcl
+                           "I" Module fubar.tcl
+                           "I" Module FvwmPager 0 0
# Строка ниже грузит бэкграунд, можно написать скрипт, который будет раз в 5
# минут его менять.
+                           "I" Exec xloadimage -onroot -fullscreen /usr/share/wallpapers/back2.jpg &
AddToFunc "RestartFunction" "I" Module FvwmButtons
+                           "I" Module FvwmPager 0 0
#========================================================================#

# Now define some handy complex functions

#
# This one moves and then raises the window if you drag the mouse,
# only raises the window if you click, or does a full maximize if 
# you double click
#
AddToFunc "Move-or-Raise" "M" Move
+                         "M" Raise
+                         "C" Raise
+                         "D" Maximize 100 100

#
# This one moves and then lowers the window if you drag the mouse,
# only lowers the window if you click, or does a RaiseLower if you double 
# click
#
AddToFunc "Move-or-Lower" "M" Move
+                         "M" Lower
+                         "C" Lower
+                         "D" RaiseLower

#
# This one moves or (de)iconifies:
#
AddToFunc "Move-or-Iconify" "M" Move
+                           "D" Iconify

#
# This one resizes and then raises the window if you drag the mouse,
# only raises the window if you click,  or does a RaiseLower if you double 
# click
#
AddToFunc "Resize-or-Raise" "M" Resize
+                           "M" Raise
+                           "C" Raise
+                           "D" RaiseLower


#========================================================================#

#
# Now define the menus - defer bindings until later
#

# This is for the Start menu of the FvwmTaskBar

AddToMenu "StartMenu"
+ "New shell        %mini-sh1.xpm%"         Exec    nxterm -ls -sb -fn 8x13 & 
+ "Manual pages     %mini-book1.xpm%"       Exec    xman &
+ "Magnifying glass %mini-zoom.xpm%" 	    Exec xmag &
+ "Applications     %mini-x2.xpm%"          Popup   Applications
+ "Games            %mini-happy.xpm%"       Popup   Games
+ ""                                        Nop 
+ "Lock Screen      %mini-lock.xpm%"        Exec    xlock &
+ "Refresh Screen   %mini-ray.xpm%"         Refresh
+ ""                                        Nop
+ "Exit Fvwm        %mini-stop.xpm%"        Popup   Quit-Verify

AddToMenu "Shells" "Shells" Title
+ "Xterm	(7x14 font)%mini-term.xpm%"	Exec nxterm -sb -sl 500 -j -fn -cronyx-fixed-medium-r-semicondensed-*-*-120-*-*-c-*-koi8-r -ls  &
+ "Color Rxvt	(VT100)%mini-term.xpm%"		Exec rxvt -font -cronyx-fixed-medium-r-semicondensed-*-*-140-*-*-c-*-koi8-r -ls &
+ "Color Xterm	(7x14 font)%mini-term.xpm%" 	Exec nxterm -sb -sl 500 -j -ls -fn -cronyx-fixed-medium-r-semicondensed-*-*-180-*-*-c-*-koi8-r -title "Color xterm" &
+ "Color Xterm	(8x13 font)%mini-term.xpm%" 	Exec nxterm -sb -sl 500 -j -ls -title "Color xterm" &
+ ""					    	Nop
+ "Large Xterm	(10x20 font)%mini-term.xpm%" 	Exec nxterm -sb -sl 500 -j -ls -fn &
+ "Large Rxvt	(10x20 font)%mini-term.xpm%" 	Exec rxvt -ls &
+ "Large Color Xterm	(10x20 font)%mini-term.xpm%" Exec nxterm -sb -sl 500 -j -ls &

AddToMenu "Screensaver" "Screensaver" Title

AddToMenu "Games" "Games" Title
+ "Xlogo%mini-bx2.xpm%"		Exec xlogo &

AddToMenu "Applications" "Applications" Title
+ "Ghostview%mini-gv.xpm%"	Exec ghostview &
+ "Xview%mini-xv.xpm%"		Exec xv &
+ "Xedit%mini-edit.xpm%" 	Exec xedit &
+ "Xfractint%mini-fractal.xpm%"	Exec rxvt -font 7x14 -e xfractint map=chroma &

#
# This menu is invoked as a sub-menu - it allows you to quit,
# restart, or switch to another WM.
#
AddToMenu "Quit-Verify" "Really Quit Fvwm?" Title
+ "Restart%mini-turn.xpm%"		Restart fvwm95-2
+ "" 					Nop
+ "Yes, Really Quit%mini-exclam.xpm%"	Quit
+ "No, Don't Quit%mini-cross.xpm%" 	Nop

#
# Provides a list of modules to fire off
#
AddToMenu "Module-Popup" "Modules" Title
+ "Buttons"				Module FvwmButtons
+ "Clean-Up%mini-pencil.xpm%"		Module FvwmClean
+ "Task bar" 				Module FvwmTaskBar
+ "Identify%mini-question.xpm%"		Module FvwmIdent
+ "Save Desktop"			Module FvwmSave
+ "Debug%mini-bug2.xpm%"		Module FvwmDebug
+ "Pager"				Module FvwmPager 0 0
+ "Window List%mini-windows.xpm%"	Module FvwmWinList
+ "Talk"				Module FvwmTalk
+ "Configure%mini-hammer.xpm%"		Module FvwmConfig

#
# This menu will fire up some very common utilities
#
AddToMenu "Utilities" "Utilities" Title
+ "Top%mini-run.xpm%"			Exec rxvt -font 7x14 -T Top -n Top -e top &
+ "Calculator%mini-calc.xpm%"		Exec xcalc &
+ "Manual pages%mini-book1.xpm%" 	Exec xman &
+ "Magnifying glass%mini-zoom.xpm%" 	Exec xmag &
+ "Xclock%mini-clock.xpm%" 		Exec xclock -bg black -fg green -hd red -hl darkgreen -update 1 -geometry +0-0 &
+ ""					Nop
+ "Applications%mini-x2.xpm%"		Popup Applications
+ "Shells%mini-term.xpm"		Popup Shells
+ "Games%mini-happy.xpm%"		Popup Games
+ ""					Nop
+ "Screensaver%mini-display.xpm%"	Popup Screensaver
+ "Lock Screen%mini-lock.xpm%"		Popup Screenlock
+ ""					Nop
+ "Modules%mini-modules.xpm%"		Popup Module-Popup
+ ""					Nop
+ "Refresh Screen%mini-ray.xpm%"	Refresh
+ ""					Nop
+ "Exit Fvwm%mini-stop.xpm%"		Popup Quit-Verify

#
# This defines the most common window operations
#
AddToMenu "Window" "Window Ops" Title
+ "&Move"                     Function Move-or-Raise
+ "&Resize"                   Function Resize-or-Raise
+ "R&aise%mini-raise.xpm%"    Raise
+ "&Lower%mini-lower.xpm%"    Lower
+ "(De)Iconify"               Iconify
+ "(Un)Stick"                 Stick
+ "(Un)Maximize"              Maximize 100 100
+ ""                          Nop
+ "Kill"                      Destroy
+ "&Close"                    Delete
+ ""                          Nop
+ "Switch to..."              WindowList
+ "Refresh Screen%mini-ray.xpm%" Refresh

#
# A trimmed down version of "Window Ops", good for binding to decorations
#
AddToMenu "Window-Ops2" "&Restore"        Iconify -1
+                       "&Move"           Move-or-Raise
+                       "&Size"           Resize-or-Raise
+                       "Mi&nimize"       Iconify 1
+                       "Ma&ximize"       Maximize 100 100
+                       ""                Nop
+                       "&Kill"           Destroy
+                       "&Close	Alt+F4"   Delete

#========================================================================#

#
# One more complex function - couldn't be defined earlier because it used 
# pop-up menus
#
# This creates the "system" menu for the title-bar window-ops
# pop-up
#
AddToFunc "window_ops_func" "C" PopUp Window-Ops2
+              "M" PopUp Window-Ops2
+              "D" Delete  


#========================================================================#

#
# Mouse bindings
#

# First, for the mouse in the root window
# Button 1 gives the Utilities menu
# Button 2 gives the Window Ops menu
# Button 3 gives the WindowList (like TwmWindows)
# I use the AnyModifier (A) option for the modifier field, so you can hold down
# any shift-control-whatever combination you want!

#     Button	Context Modifi 	Function
Mouse 1		R   	A       Menu "Utilities" Nop
Mouse 2		R    	A       Menu "Window Ops" Nop
Mouse 3         R       A       WindowList
#Mouse 3	R    	A      	Module "winlist" FvwmWinList transient

# Now the title bar buttons
# Any button in the left title-bar button gives the window ops menu
# Any button in the first right title-bar button Iconifies the window
# Any button in the second title-bar button full-maximizes
# Any button in the third (rightmost) title-bar button closes
# Note the use of "Mouse 0" for AnyButton.

#     Button	Context Modif 	Function
Mouse 0		1    	A      	Function "window_ops_func"
Mouse 1         2       A       Delete
Mouse 0		4    	A     	Maximize 100 100
Mouse 0		6    	A     	Iconify

#
# Now the rest of the frame
# Here I invoke my complex functions for Move-or-lower, Move-or-raise,
# and Resize-or-Raise. 
#
# Button 1 in the corner pieces, with any modifiers, gives resize or raise
Mouse 1		F	A	Function "Resize-or-Raise"
# Button 1 in the title, sides, or icon, w/ any modifiers, gives move or raise
Mouse 1		TS	A	Function "Move-or-Raise"

# Button 1 in an icons gives move for a drag, de-iconify for a double-click,
# nothing for a single click
# Button 2 in an icon, w/ any modifiers, gives de-iconify
Mouse 1		I	A	Function "Move-or-Iconify"
Mouse 2		I	A	Iconify

# Button 2 in the corners, sides, or title-bar gives the window ops menu
Mouse 2		FST	A	Function "window_ops_func"

# Button 3 anywhere in the decoration (except the title-bar buttons)
# does a raise-lower
Mouse 3		TSIF	A	RaiseLower

# Button 3 in the window, with the Modifier-1 key (usually alt or diamond)
# gives Raise-Lower. Used to use control here, but that interferes with xterm
Mouse 3         W       M       RaiseLower

#========================================================================#

# Now some keyboard shortcuts.

# Arrow Keys
# press arrow + control anywhere, and scroll by 1 page
Key Left	A	C	Scroll -100 0
Key Right	A	C	Scroll +100 +0
Key Up		A	C	Scroll +0   -100
Key Down	A	C	Scroll +0   +100

# press arrow + meta key, and scroll by 1/10 of a page
Key Left	A	M	Scroll -10 +0
Key Right	A	M	Scroll +10 +0
Key Up		A	M	Scroll +0   -10
Key Down	A	M	Scroll +0   +10

# press shift arrow + control anywhere, and move the pointer by 1% of a page
Key Left	A	SC	CursorMove -1 0
Key Right	A	SC	CursorMove +1 +0
Key Up		A	SC	CursorMove +0   -1
Key Down	A	SC	CursorMove +0   +1

# press shift arrow + meta key, and move the pointer by 1/10 of a page
Key Left	A	SM	CursorMove -10 +0
Key Right	A	SM	CursorMove +10 +0
Key Up		A	SM	CursorMove +0   -10
Key Down	A	SM	CursorMove +0   +10

# Keyboard accelerators
Key F1		A	M	Popup "Utilities"
Key F1		A	M	Popup "Utilities"
Key F2		A	M	Popup "Window Ops"
Key F3		A	M	Module "WindowList" FvwmWinList 
Key F4		A	M	Iconify
Key F5		A	M	Move
Key F6		A	M	Resize

#Page Up/Dapge Down keys are used to scroll by one desktop page
# in any context, press page up/down + control
# in root context, just pressing page up/down is OK
# 
# I prefer the non-wrapping scroll. These are for example purposes only
#Key Next	A       C       Scroll 100000 0
#Key Next	R       N       Scroll 100000 0  
#Key Prior	A       C       Scroll -100000 0
#Key Prior	R       N       Scroll -100000 0
# Определение управляющих клавиш. Вообще то они заточены под меня, так что
# переделайте их под себя.
Key Tab         A       M       Prev Focus
Key Tab         A       MS      Next Focus

Key Escape      A       C       WindowList

Key Q           A       M       exec xterm
Key A           A       M       exec /usr/local/program/tkradio/tkradio
Key S           A       M       exec /usr/local/program/parport/Tkppswitch
Key L           A       M       exec licq
Key K           A       M       exec xkill
Key M           A       M       exec xmag -mag 3
# dodict взята с www.xtalk.price.ru всем советую.
Key T           A       M       exec dodict
# удобно кстати если держать телефонную книгу в minicom.
Key C           A       M       exec xterm -e minicom -c on
#========================================================================#

# Definitions used by the modules
# Определение параметров модулей.
#------------------ Pager
*FvwmPagerBack black
*FvwmPagerFore green
*FvwmPagerFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
*FvwmPagerHilight #c0c0c0
*FvwmPagerGeometry -1-1
*FvwmPagerLabel 0 Desktop
*FvwmPagerSmallFont 5x8

#------------------ Identify
*FvwmIdentBack #000080
*FvwmIdentFore Yellow
*FvwmIdentFont -adobe-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*

#------------------ FvwmWinList
*FvwmWinListBack #c0c0c0
*FvwmWinListFore Black
*FvwmWinListFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
*FvwmWinListAction Click1 Iconify -1,Focus
*FvwmWinListAction Click2 Iconify
*FvwmWinListAction Click3 Module "FvwmIdent" FvwmIdent
*FvwmWinListUseSkipList
*FvwmWinListGeometry +0-1
*FvwmWinListShowCurrentDesk
        
#------------------ FvwmTaskBar
Style "FvwmTaskBar" NoTitle,BorderWidth 4,HandleWidth 4,Sticky,StaysOnTop,WindowListSkip,CirculateSkip

*FvwmTaskBarGeometry +0-0
*FvwmTaskBarFore Black
*FvwmTaskBarBack #c0c0c0
*FvwmTaskBarTipsFore black
*FvwmTaskBarTipsBack bisque
*FvwmTaskBarFont -adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*
*FvwmTaskBarSelFont -adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*
*FvwmTaskBarAction Click1 Iconify -1,Raise,Focus
*FvwmTaskBarAction Click2 Iconify
*FvwmTaskBarAction Click3 Module "FvwmIdent" FvwmIdent
*FvwmTaskBarUseSkipList
*FvwmTaskBarAutoStick
*FvwmTaskBarStartName Start
*FvwmTaskBarStartMenu StartMenu
*FvwmTaskBarStartIcon mini-exp.xpm
*FvwmTaskBarShowTips
#*FvwmTaskBarShowTransients
#*FvwmTaskBarClockFormat %I:%M%p
#*FvwmTaskBarHighlightFocus
#*FvwmTaskBarAutoHide
*FvwmTaskBarMailCommand Exec nxterm -T Mail -ls -fn 8x13 -e pine -i

Ну вот и все на самом деле он у меня меньше, потому, что заточен только под меня, ну а этот конфиг более общий. Далее чуть, чуть настраиваем под себя fubar, в модуле mail надо указать свою почтовую программу. У меня так :

exec xterm -T "Mail" -name pine -fg white -bg black -fn -e pine ${1+"$@"}
Модуль монтирования ( mount ) в настройке нуждается только при запуске на FreeBSD, надо заменить имена устройств в модуле. Далее создаете в домашней директории юзера иерархию вашего меню и вперед. Потом при желании fubar можно дополнить новыми функциями и.т.д...в результате мы получаем крайне функциональный и модульный менеджер, который будет хорошо работать вместе с _незаменимым_ unix интерфейсом - командной строкой вашего любимого shell (надеюсь это bash).

P.S. Русификация X Window и настройка русской раскладки, а также настройка оптимальных размеров шрифтов в эту статью не входит и не войдет.

Вот и все пожалуй, все пожелания, критику и шлите на zdarkos@mail.ru
Всегда ваш Тимофей Слепцов aka dr_evil.


      

Связь | О проекте LinuxRSP | Реклама | О Linux
© 1999-2017 LinuxRSP