Difference between revisions of "Subtle"

From ArchWiki
Jump to: navigation, search
m
(21 intermediate revisions by 11 users not shown)
Line 1: Line 1:
[[Category:Tiling WMs (English)]]
+
[[Category:Tiling WMs]]
[[Category:HOWTOs (English)]]
+
[[de:Subtle]]
 +
[[ko:Subtle]]
 +
From [http://subforge.org/projects/subtle Subtle project page]:
 +
:''Subtle is a manual tiling window manager with a rather uncommon approach of tiling: Instead of relying on predefined layouts, Subtle divides the screen into a grid with customizable slots (called gravities).''
  
== Introduction ==
+
Subtle is configured with [[Ruby]] for [[Xorg]].
  
[http://subforge.org/projects/subtle Subtle] is a manual tiling window manager with a rather uncommon approach of tiling: Per default there is no typical layout enforcement, windows are placed on a position (gravity) in a custom grid. The user can change the gravity of each window either directly per grabs or with rules defined by tags in the config.
+
{{Note|This article only explain the basics of Subtle. In depth information and tutorials exist at the [http://subforge.org/projects/subtle Subtle project page].}}
  
== Installation ==
+
==Installing==
 +
The {{pkg|subtle}} package is available in the [[Official Repositories|official repositories]]. It can be installed with [[pacman]].
  
Currently there are two different packages available:
+
A developer snapshot is available in the [[AUR]] named {{AUR|subtle-hg}}.
  
* [http://www.archlinux.org/packages/community/i686/subtle/ subtle] (current stable)
+
==Starting Subtle==
* [http://aur.archlinux.org/packages.php?ID=13139 subtle-hg] (developer snapshot)
+
To start Subtle add {{ic|exec subtle}} to your {{ic|.xinitrc}} file and launch Xorg. Remember that Subtle does not provide any icons or menus, and the only predefined key binding that opens a terminal is {{keypress|Super+Enter}}, which will open [[URxvt]]. So if you do not have URxvt, either install it or change the configuration file before starting. If you need to exit Subtle press {{keypress|Super+Ctrl+q}}.
  
The stable version is in community and can be installed with [https://wiki.archlinux.org/index.php/Pacman pacman], the developer snapshot is in [http://aur.archlinux.org AUR] and needs either a special tool like [http://aur.archlinux.org/packages.php?ID=5863 yaourt], [http://aur.archlinux.org/packages.php?ID=34686 clyde] or [http://aur.archlinux.org/packages.php?ID=33378 packer] or can be installed manually.
+
==Basic function==
 +
When windows are opened they are matched against a set of user-defined rules to get proper position and size. The process of applying these rules can be broken down in three main parts:
 +
*View
 +
*Gravity
 +
*Tag
 +
''Views'' are the environment in which the windows will be placed. Much like ordinary desktop surfaces. Defining the actual rules for a window is accomplished with a ''tag''. In tags you also determine the ''gravity'' to be used. Gravities control the size and position of windows.
  
== Configuration ==
+
{{Note|When configuring Subtle you actually need to declare these elements in reverse order. Gravity, tag then view.}}
  
On start subtle will check if a config file is available in the typical XDG paths and use it. A local config is preferred over a system wide. (See {{Codeline|$XDG_CONFIG_HOME}})
+
==Configuration==
 +
Subtle will search for {{ic|subtle.rb}} in your $XDG_CONFIG_HOME path. If it is non-existant it will load a default file from your $XDG_CONFIG_DIRS path. It is preferable to copy this file to your {{ic|$XDG_CONFIG_HOME/subtle}} directory instead of using the default.
  
Then it will have a look for sublets in the XDG paths too and load them accordingly. (See {{Codeline|$XDG_DATA_HOME}})
+
The default file will contain numerous gravities, tags and views. This is an excellent place to start when designing your own environment. Applications without matching tags will be placed on the view containing the default tag, if no view posses it, they are automatically placed on the first view.
  
No system wide [http://subforge.org/projects/subtle/sublets sublets] will be loaded per default.
+
To check your configuration file for potential errors, simply run the following command:
* To create a user config just create ''$XDG_CONFIG_HOME/subtle'' and copy the latest config from the dist folder into it.
+
$ subtle -k
* To enable sublets create ''$XDG_DATA_HOME/subtle/sublets'' and create symlinks to the sublets. (Load order is '''alphabetically''')
+
  
Always compare your existing config with the one of the repository/tarball to get the latest options.
+
==Sublets==
 +
Sublets are tiny apps that appear in the Subtle panels. They can be used to control various applications and show system stats.
  
This and more info can be found on the [http://subforge.org/projects/subtle subtle website].
+
===Installing sublets===
 +
To install a sublet, type the following command in a terminal:
 +
$ sur install <name of sublet>
  
{{Note|The default keybindings use the '''numeric keypad''' for selecting window size-positions ("gravities") which is awkward on a laptop where NumLock will be required, so laptop users will want to rebind these functions - the default config contains an alternate methods for this.}}
+
For a list of sublets, go to the [http://sur.subforge.org sur website].
  
== Contact ==
+
{{Note|If you install a sublet as root, you will not be able to invoke the sublet as a regular user. Sublets used by non-root accounts must be installed under the user.}}
  
If you have problems, suggestions or just want to talk about [http://subforge.org/projects/subtle subtle] feel free to join '''#subtle''' on '''irc.freenode.org''' or drop a mail to _unexist_ at _dorfelite_ dot _net_.
+
===Enabling sublets===
 +
After installation you need to enable it in {{ic|subtle.rb}}. Look for a series of lines similar to the ones below:
 +
{{bc|<nowiki>
 +
screen 1 do
 +
top [ :title, :spacer, :views ]
 +
bottom [ :mpd, :wifi, :battery ]
 +
end
 +
</nowiki>}}
 +
Then just add the sublets name in the same fashion as the other ones, like this:
 +
{{bc|<nowiki>
 +
bottom [ :mpd,  :<name of sublet>, :wifi, :battery ]
 +
</nowiki>}}
 +
It can of course be inserted at a place by your own choice.
 +
 
 +
==See also==
 +
* [http://subforge.org/projects/subtle Subtle project page]
 +
* [http://sur.subforge.org Sublets archive]
 +
* [https://bbs.archlinux.org/viewtopic.php?id=71783 The subtle thread]
 +
* [https://bbs.archlinux.org/viewtopic.php?id=112486 Share your Subtle desktop!]
 +
* [[xinitrc]]
 +
* [[Start X at Login]]
 +
* [[Window Manager]]

Revision as of 15:31, 13 May 2013

From Subtle project page:

Subtle is a manual tiling window manager with a rather uncommon approach of tiling: Instead of relying on predefined layouts, Subtle divides the screen into a grid with customizable slots (called gravities).

Subtle is configured with Ruby for Xorg.

Note: This article only explain the basics of Subtle. In depth information and tutorials exist at the Subtle project page.

Installing

The subtle package is available in the official repositories. It can be installed with pacman.

A developer snapshot is available in the AUR named subtle-hgAUR.

Starting Subtle

To start Subtle add exec subtle to your .xinitrc file and launch Xorg. Remember that Subtle does not provide any icons or menus, and the only predefined key binding that opens a terminal is Template:Keypress, which will open URxvt. So if you do not have URxvt, either install it or change the configuration file before starting. If you need to exit Subtle press Template:Keypress.

Basic function

When windows are opened they are matched against a set of user-defined rules to get proper position and size. The process of applying these rules can be broken down in three main parts:

  • View
  • Gravity
  • Tag

Views are the environment in which the windows will be placed. Much like ordinary desktop surfaces. Defining the actual rules for a window is accomplished with a tag. In tags you also determine the gravity to be used. Gravities control the size and position of windows.

Note: When configuring Subtle you actually need to declare these elements in reverse order. Gravity, tag then view.

Configuration

Subtle will search for subtle.rb in your $XDG_CONFIG_HOME path. If it is non-existant it will load a default file from your $XDG_CONFIG_DIRS path. It is preferable to copy this file to your $XDG_CONFIG_HOME/subtle directory instead of using the default.

The default file will contain numerous gravities, tags and views. This is an excellent place to start when designing your own environment. Applications without matching tags will be placed on the view containing the default tag, if no view posses it, they are automatically placed on the first view.

To check your configuration file for potential errors, simply run the following command:

$ subtle -k

Sublets

Sublets are tiny apps that appear in the Subtle panels. They can be used to control various applications and show system stats.

Installing sublets

To install a sublet, type the following command in a terminal:

$ sur install <name of sublet>

For a list of sublets, go to the sur website.

Note: If you install a sublet as root, you will not be able to invoke the sublet as a regular user. Sublets used by non-root accounts must be installed under the user.

Enabling sublets

After installation you need to enable it in subtle.rb. Look for a series of lines similar to the ones below:

screen 1 do
 top [ :title, :spacer, :views ]
 bottom [ :mpd, :wifi, :battery ]
end

Then just add the sublets name in the same fashion as the other ones, like this:

 bottom [ :mpd,  :<name of sublet>, :wifi, :battery ]

It can of course be inserted at a place by your own choice.

See also