Differences between revisions 4 and 5
Revision 4 as of 2012-02-05 13:49:35
Size: 15174
Comment:
Revision 5 as of 2012-02-09 04:14:26
Size: 16571
Comment: translate
Deletions are marked like this. Additions are marked like this.
Line 110: Line 110:
Colors of unselected windows are set in the NORMCOLORS variable. Colors of the selected window are set in the FOCUSCOLOR variable. You can see the hexadecimal code of a color with the Gimp (just click in the black and white squares in the tools window), for example. You can change the background color (if you use a transparent terminal) with the WMII_BACKGROUND variable.

=== Terminal ===
Цвета неактивных окон задаются переменной NORMCOLORS. Цвета активных окон определяются переменной FOCUSCOLOR. Вы можете использовать шестнадцатеричный код цветов. Также Вы можете изменять цвет фона (если используете прозрачный терминал) посредством переменной WMII_BACKGROUND.

=== Терминал ===
Line 119: Line 119:
See {{{man dmenu}}} if you want to change the menu. The WMII_TERM variable sets the command used to open a terminal with the Mod+Enter shortcut.

== The 9P File System ==

Wmii uses a pseudo file-system (like /proc), for its configuration. You can read and write into with {{{wmiir}}}: you use "ls" to see files and folders:
Смотрите руководство (man) dmenu, если хотите изменить меню. Переменная WMII _TERM задает команду для открытия терминала ( Mod+Enter).

== Файловая система 9P ==

Wmii использует псевдофайловую систему (подобно /proc) для своей конфигурации. Вы можете читать и редактировать ее с помощью wmiir. Например, используйте "ls" чтобы увидеть файлы и директории:
Line 137: Line 137:
You can read files with "read" : Вы можете читать файлы посредством "read":
Line 143: Line 143:
You can create a file with "write" and write into an existing file with "xwrite". For example: Вы можете создавать файлы (параметр write) или писать в уже существующий файл (параметр xwrite). Например:
Line 147: Line 147:
will write "view 5" in ctl, this toggles the view "5" on the desktop.

You can see others example in the wmiirc file.

== Behaviour ==

=== Column size ===

In the {{{#Column Rules}}} section, you can replace "58+42" with the size of the columns (as a percentage of the total size of the screen) you prefer. The first number is the percentage of the screen for the first (leftmost) column, the second number is for the second column. You can add more numbers to set the width of more than two columns.

=== Windows Placement ===

The {{{#Tagging Rules}}} section allows you to set rules for windows, in function of their title bar. Windows are selected with a [[http://man.cat-v.org/plan_9/6/regexp|regular expression]] and a tag, with the name or number of a view, or a tilde (~), for the floating layer, is set for them. For example:
В приведенном примере в файл /ctl будет записано "view 5".
Вы можете посмотреть другие примеры в файле wmiirc.

== Behaviour ==

=== Размер колонок ===

В секции #Column Rules Вы можете изменить "58+42" (процент от ширины экрана) на тот размер колонок, который Вы предпочитаете. Первая цифра - это процент от ширины экрана для первой (самой левой) колонки, вторая цифра - для второй по счету колонки. Вы можете добавить больше цифр для того, чтобы задать ширину для более, чем двух колонок.

=== Размещение окон ===

Секция #Tagging Rules позволяет Вам задать правила для окон, в зависимости от их имен. В параметрах могут быть прописаны регулярные выражения, теги (с именами или номерами экранов), или тильда (для плавающего режима). Например:
Line 173: Line 172:
All windows with the title bar beginning with XMMS, MPlayer, or VLC will be automatically placed in the floating layer. Gajim will be launched in the floating layer of the view named "jabber" and the iceweasel downloading window will be launched simultaneously in the selected view and in the "download" view. The last two lines place any other window in the selected view, and start the environment in the "1" view.

It's possible to use wmii exclusively with the floating layer:
В данном примере все окна, начинающиеся с XMMS, MPlayer, или VLC будут автоматически запущены в плавающем режиме. Gajim будет запущен в плавающем режиме на экране "jabber", а окно загрузки iceweasel будет запущено одновременно в выбранном экране и в экране "download". Последние две строки определяют, что все остальные окна будут запущены в текущем экране, а оконный менеджер будет стартовать с экраном "1".
Также возможно использовать wmii только в плавающем режиме
Line 184: Line 182:
=== Status Bar ===

In the {{{#Status Bar Info}}} section, you can replace the "status" function with any command. The result of the command will appear in the status bar (on the right). For example, to see the battery status and the date in a smaller format, you can do :
=== Статус-бар ===

В секции #Status Bar Вы можете прописать различные параметры для статус-бара (информационная панель справа). Например, чтобы видеть степень зарядки батареи и дату в мелком формате, Вы можете указать:
Line 195: Line 193:
=== Actions === === Действия ===

Translation(s): English - Français - Italiano - Русский

(!) ?Discussion


Что такое Wmii?

Wmii (Window Manager Improved) - это тайлинговый WM: менеджер окон, который автоматически размещает окна без перекрытия их друг другом. Он был создан для того, чтобы максимально эффективнее использовать площадь экрана. Кроме того, это позволяет более рационально организовать работу за компьютером, Вы можете управлять им, используя только клавиатуру.

Скриншот

Установка

Если у Вас еще нет установленного xorg, установите его:

aptitude install xserver-xorg xterm xinit

Затем wmii:

aptitude install wmii

Использование

Первые шаги

Если Вы до этого не работали с тайлингом, будет нелегко начинать. Вы должны выучить сочетания горячих клавиш для запуска программ и управления окнами. По умолчанию, Mod-клавишей является Alt. Смотрите раздел "Конфигурация", чтобы поменять клавишу, если это нужно Вам. Перво-наперво нужно выучить следующие сочетания горячих клавиш:

  • Mod+Enter -> Терминал

  • Mod+p -> Меню: появится меню, просто напишите начало названия приложения, чтобы открыть его

  • Mod+d -> режим по умолчанию: пространство экрана будет разделено между всеми окнами

  • Mod+s -> сложенный режим (stacked layout): выбранное окно займёт весь экран, Вы сможете видеть только заголовки других окон

  • Mod+j -> выбрать окно ниже

  • Mod+k -> выбрать окно выше

  • Shift+Mod+j -> передвинуть окно ниже

  • Shift+Mod+k -> передвиуть окно выше

  • Mod+a -> меню действий: выберите "quit" для выхода из сеанса.

Колонки

По умолчанию, используется только одна колонка. Но Вы можете создать несколько колонок с помощью клавиш "h" и "l":

  • Mod+Shift+h : передвинуть выбранное окно влево
  • Mod+Shift+l : передвинуть выбранное окно вправо
  • Mod+h : выбрать левую колонку
  • Mod+l : выбрать правую колонку

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

Режимы (layout)

Вы всегда начинаете с режима по дефолту: все окна занимают одинаковое место. Вы можете делать их больше или меньше, посредством мыши, кликая на маленьком участке в их оглавлении.

  • "сложенный" режим (Mod+s) : выбранное окно занимает всю колонку, вы видите только заголовки других окон;
  • максимальный режим (Mod+m) : выбранное окно занимают всю колонку, Вы не видите другие окна;
  • полноэкранный режим (Mod+f) : выбранное окно занимает всё пространство экрана.

Плавающий режим

Вы можете размещать Ваши окна подобно тому как Вы это делаете в классическом оконном менеджере. Это называется плавающим режимом. Это может оказаться полезным для некоторых приложений, например Gimp.

  • Mod+Shift+Space : Переместить выбранное окно в плавающий режим.
  • Mod+Space : переключение между плавающим и нормальными режимами.

В плавающем режиме Вы переключаетесь между окнами посредством сочетаний Mod+j и Mod+k. Вы можете изменять размер окна, растягивая или сужая его угол, подобно тому, как это делается в классических оконных менеджерах. Также Вы можете использовать "горячие клавиши" для этого:

  • Mod+Left click : переместить окно
  • Mod+Right click : изменить размер окна (Вы можете использовать это сочетание в других режимах тоже)

Экраны (?) (Views)

Экраны основаны на тех же принципах, что и рабочие столы в других оконных менеджерах. Они создаются автоматически с командой перемещении окна на другой экран. "Горячие клавиши":

  • Mod+Shift+2 : переместить окно на экран "2"
  • Mod+2 : перейти на экран "2"

Это действует одинаково для всех номеров, от 0 до 9. Вы можете также использовать имена:

  • Mod+t : меню экранов (Вы можете выбрать экран клавишей "влево" или "вправо", или написать имя экрана, или только часть имени, если этого достаточно)
  • Mod+Shift+t : Same thing, but moves to the selected window

Конфигурация

Индивидуальная конфигурация

Конфигурационным файлом является /etc/X11/wmii-3.5/wmiirc. Если Вы хотите создать индивидуальную конфигурацию просто копируйте его с именем ".wmii-3.5" в Вашу домашнюю папку:

cp /etc/X11/wmii-3.5/wmiirc /home/<login>/.wmii-3.5/

Базовая конфигурация

Вам может понадобиться отредактировать файл wmiirc.

Назначения клавиш

# Configuration Variables
MODKEY=Mod1
UP=k
DOWN=j
LEFT=h
RIGHT=l

Измените Mod1 на Mod4, если Вы хотите использовать клавишу Winkey вместо Alt. Если необходимо, можно также поменять назначение клавиш LEFT, DOWN, UP, RIGHT. Чтобы использовать курсорные клавиши, например, пропишите Up, Down, Left, Right.

Цвета окон

# Colors tuples: "<text> <background> <border>"
WMII_NORMCOLORS='#ffffff #000000 #ffffff'
WMII_FOCUSCOLORS='#ffffff #5c0000 #ffffff'

WMII_BACKGROUND='#333333'
WMII_FONT='fixed'

Цвета неактивных окон задаются переменной NORMCOLORS. Цвета активных окон определяются переменной FOCUSCOLOR. Вы можете использовать шестнадцатеричный код цветов. Также Вы можете изменять цвет фона (если используете прозрачный терминал) посредством переменной WMII_BACKGROUND.

Терминал

set -- $(echo $WMII_NORMCOLORS $WMII_FOCUSCOLORS)
WMII_MENU="dmenu -b -fn '$WMII_FONT' -nf '$1' -nb '$2' -sf '$4' -sb '$5'"
WMII_9MENU="wmii9menu -font '$WMII_FONT' -nf '$1' -nb '$2' -sf '$4' -sb '$5' -br '$6'"
WMII_TERM="x-terminal-emulator'"

Смотрите руководство (man) dmenu, если хотите изменить меню. Переменная WMII _TERM задает команду для открытия терминала ( Mod+Enter).

Файловая система 9P

Wmii использует псевдофайловую систему (подобно /proc) для своей конфигурации. Вы можете читать и редактировать ее с помощью wmiir. Например, используйте "ls" чтобы увидеть файлы и директории:

$ wmiir ls /
client/
colrules
ctl
event
keys
lbar/
rbar/
tag/
tagrules

Вы можете читать файлы посредством "read":

$ wmiir read /colrules
/.*/ -> 58+42

Вы можете создавать файлы (параметр write) или писать в уже существующий файл (параметр xwrite). Например:

wmiir xwrite /ctl view 5

В приведенном примере в файл /ctl будет записано "view 5". Вы можете посмотреть другие примеры в файле wmiirc.

Behaviour

Размер колонок

В секции #Column Rules Вы можете изменить "58+42" (процент от ширины экрана) на тот размер колонок, который Вы предпочитаете. Первая цифра - это процент от ширины экрана для первой (самой левой) колонки, вторая цифра - для второй по счету колонки. Вы можете добавить больше цифр для того, чтобы задать ширину для более, чем двух колонок.

Размещение окон

Секция #Tagging Rules позволяет Вам задать правила для окон, в зависимости от их имен. В параметрах могут быть прописаны регулярные выражения, теги (с именами или номерами экранов), или тильда (для плавающего режима). Например:

# Tagging Rules
wmiir write /tagrules <<!
/XMMS.*/ -> ~
/MPlayer.*/ -> ~
/VLC.*/ -> ~
/Gajim.*/ -> ~+jabber
/Téléchargements.*/ -> sel+download
/.*/ -> sel
/.*/ -> 1
!

В данном примере все окна, начинающиеся с XMMS, MPlayer, или VLC будут автоматически запущены в плавающем режиме. Gajim будет запущен в плавающем режиме на экране "jabber", а окно загрузки iceweasel будет запущено одновременно в выбранном экране и в экране "download". Последние две строки определяют, что все остальные окна будут запущены в текущем экране, а оконный менеджер будет стартовать с экраном "1". Также возможно использовать wmii только в плавающем режиме

# Tagging Rules
wmiir write /tagrules <<!
/.*/ -> ~+sel
/.*/ -> 1
!

Статус-бар

В секции #Status Bar Вы можете прописать различные параметры для статус-бара (информационная панель справа). Например, чтобы видеть степень зарядки батареи и дату в мелком формате, Вы можете указать:

# Status Bar Info
status() {
        echo -n $(acpi -b) '|' $(date +"%d/%m/%y - %H:%M:%S")
}

Действия

If you put a script in ~/.wmii-3.5 with the execution rights, you can launch it with the Actions menu (Mod+a).

Keyboard Shortcuts

You can add keyboard shortcurts in the #Key Bindings section, with the same syntax. For example :

        Key $MODKEY-b
                amixer set Master 2dB+ 
        Key $MODKEY-v
                amixer set Master 2dB-
        Key $MODKEY-n
                iceweasel &

In this example Mod+b and Mod+v are used to reduce and increase the sound volume. Mod+n will launch iceweasel. Don't forget the "&" at the end of the command, to return to the script. For multimedia keyboards, you can see Keyboard/MultimediaKeys. Attention : you have to use tabulations, not spaces.

Launch Programs at Startup

To launch programs at the beginning of the session, you can add them in the wmiirc. But you have to place them before the last section:

# Stop any running instances of wmiirc
echo Start wmiirc | wmiir write /event || exit 1

wmiir read /event |
while read event; do
        set -- $event
        event=$1; shift
        Event_$event $@
done 2>/dev/null

which launches "wmiir read event" in a loop. So all lines after these will not be read.

If you don't want a new instance of the program to be started when you relaunch wmiirc, you can use:

[ "`ps aux | grep <name_of_the_program> | grep -v grep`" =  "" ] && <name_of_the_program> &

Apply the Changes

Just launch wmiirc from the Actions menu (Mod+a). If you want to use programs you've just installed, use "rehash" from the Actions menu.

Scripting wmii

If you look in the 9P file system with wmiir ls and wmiir read, and if you look at the keyboard shortcurts, you can easily find which command you need to use to modify the behaviour of wmii, and thus make some scripts. For example:

# /usr/local/bin/tag 

if [ $# -ne 2 ]; then
    echo "Usage: tag WINDOWTITLE TAG"
    exit 1
fi

for i in `wmiir ls /client | sed '/sel/d'` ; do
    if [ "`wmiir read /client/$i/label | grep $1`" = "$1" ]; then
        wmiir xwrite /client/$i/tags $2
    fi
done

With this you can tag one or more windows. For example, tag Iceweasel 2+web will place all iceweasel's window(s) in the view called "2" and in the "web" view. You can do all kind of scripts, as you want. But it would be better to modify the wmiirc file, which is a bash script. For example, you can add this keyboard shortcurt:

 Key $MODKEY-Shift-r
                export TAG=$(tagsmenu) ; wmiir xwrite "/client/$(wmiir read /client/sel/ctl)/tags" "$TAG" ; wmiir xwrite /ctl "view $TAG"

and then use Mod+r to change the view of the selected window and to follow it to the new view.

If you want to use scripting, it is recommended that you use the rc shell, which is included with 9base and Plan 9 from User Space.

There are some other 9P clients, like libixp and plan9port. They can be better for scripting in other languages. For example, ruby coders should like ruby-wmii: http://eigenclass.org/hiki.rb?wmii%20ruby

There is a lot of tips for wmii in the web.

Resources

ToDo

Probably a lot of mistakes, because of my bad english. Sorry.


CategoryDesktopEnvironment

CategoryProposedDeletion : duplicate the package description.