Hello! After reading a recent article about window managers in Linux, I wanted to tell everyone about the manager who was mentioned there - “awesome”. This is a tiling windows manager for unix (linux, freebsd, openbsd, netbsd).
Description
Awesome WM - tiling wm, with capabilities to be and composite. This is one of its features, often users require compactness (the tingering side of this WM), but sometimes it is possible to work in the usual mode (composite). It is very light, does not load the processor, and the screen space is used very much and there are no empty spaces (in tiling mode). It is configured using the configuration file in the scripting language Lua. There is support for plugins, which, in turn, are also written in Lua.
Installation
It is very easy to install, for example on Arch Linux just write
sudo pacman -S awesome vicious
Or on Debian based
sudo apt-get install awesome awesome-extra
The “vicious” package contains basic plugins that you can later use. ')
Next, you need to register its boot when loading the X Window System. This is written in the file in the home directory, ".xinitrc".
#!/bin/sh exec awesome
Reboot and wm appears.
First meeting
This is what your session looks like when you first turn it on. It would seem, how to work in it and what to do here? In fact, everything is simple when you understand its system. All actions with windows are performed using hotkeys. By default they are as follows (all this can be read in “man awesome”, the text itself is taken from the gentoo wiki):
super + number switch to another tag, where the tag is the key number, or rather its position (making an analogy with other wm, tag = virt. desktop). super + shift + number move the current window to another tag. super + j, super + k transition between windows. super + shift + j or super + shift + k swap two windows. super + Space change display windows. (In awesome, there are many types of mappings - tiling: vertically, horizontally; composite - you can drag with the mouse; the application is in focus on the whole screen, etc.) super + Enter start the terminal. super + r start the program. super + shift + c close the window. super + shift + r restart awesome. super + shift + q quit awesome.
Undoubtedly someone they are not comfortable. But we can change everything! Therefore, go to the configuration file.
Configuration file
Warning, to edit it you need at least some small skills in programming or writing scripts. The global config file is in the system in "/etc/xdg/awesome/rc.lua", but it is better not to change it, because if it is not correct, then wm will not start. Therefore, we make our own.
And we will change it directly. First of all, I would like to change some of the keys. Hotkeys are in the section "- {{{Key bindings" Change is easy. modkey is our super key (with the windows logo on the keyboard). For example:
This line says super + Shift + q will cause awesome to close. Suppose we want to leave the same, but without shift, then it will be
awful.key({ modkey, }, "q", awesome.quit),
Or for example just by pressing Esc (This is just an example!)
awful.key({}, "Esc", awesome.quit),
I think the logic is clear. So, the keys are sorted out. Now it’s worth setting up global variables. This section is at the beginning. (Further, my own settings, which you can, of course, change)
I think with the "insides" we figured out, it's time to take on the appearance.
A little more about the setting
We continue to work in the configuration file. First, instead of just numbers, I would like to rename our tags. This is in the section. "--- {{{Tags" Instead of numbers, just write the names. For example, I have:
In general, I can’t write about the configuration well, because this is a personal matter. It’s best to read this on the awesome wiki . Generally, having added a config, you will feel the new ease of working with windows. A large number of buns can be found here .
Instead of conclusion
I want to note that this wm is ideal for people who often keep several windows in focus. It is also suitable for weak machines and lightweight systems, and machines with small screens (laptops) Having memorized (at the beginning), and then pressing hotkeys on a whim, you will no longer think about how, where, what to do with the window, how to place it. For example, in awesome you can keep certain windows in one tag. For example, I have Skype and Pidgin in the IM tag. But what words! Screenshots!