Categories
Interior

How to use xmonad a tiling window manager for linux

Nov 25, 2019
Comment

Xmonad is a dynamic, tiling window manager for X11. It runs on Linux and other Unix-like operating systems. It’s a favorite in the programming community, as it is minimal, has dozens of excellent features, and supports a massive extension library. Here’s how to set up Xmonad on your Linux system.

Install Xmonad on Linux

The Xmonad window manager is one of the oldest on all of Linux. As a result, it is effortless to install on a variety of distributions. In this section of the guide, we will demonstrate exactly how to install the Xmonad window manager on Linux.

To start the installation, launch a terminal window by pressing Ctrl + Alt + T or Ctrl + Shift + T on the keyboard. Then, follow the command-line instructions outlined below that correspond with the Linux OS you use.

Ubuntu

Ubuntu users looking to get their hands on the Xmonad window manager will first need to enable the “Universe” software repository. To do that, use the following add-apt-repository command.

After adding the “Universe” software repository, you must run the update command to refresh Ubuntu’s software sources.

Following the update command, use the Apt package manager to load up the latest version of the Xmonad window manager on your Ubuntu Linux PC.

Debian

To install Xmonad on Debian Linux, use the Apt-get command below in a terminal window.

Arch Linux

On Arch Linux, the Xmonad window manager is available to users in the “Community” software repository. Ensure you have “Community” enabled. Then, use the Pacman package manager to install Xmonad.

Fedora

Fedora Linux users can install the latest version of Xmonad via the Dnf package manager.

OpenSUSE

On OpenSUSE Linux, the Xmonad window manager is installable with the following Zypper command.

Generic Linux

The source code for Xmonad is available for free on their website. If you’re running a lesser-known Linux operating system and want to get Xmonad working, head over to this page here to learn what to do.

Logging into Xmonad

Xmonad can be accessed from the login screen under sessions like any other window manager or desktop environment. To load up Xmonad, log out of your current desktop environment, and return to the login screen.

Once on the login screen, locate the session area. The session area may say “Sessions,” or be a gear or icon. Inside of the session area, find “Xmonad” and click on it with the mouse to tell your Linux PC to load Xmonad.

How to use xmonad a tiling window manager for linux

Upon logging into Xmonad, you will see a black screen with a message that pops up on the screen. This message gives you the keyboard shortcut to launch a terminal (Ctrl + Shift + Enter). Press it, as it is needed to configure Xmonad in the next section of the guide.

Configuring Xmonad

Xmonad must be configured to run correctly. To configure it, you must generate a config file. To do this, go to the terminal and use the wget download command to download the default configuration file to your Linux PC.

After downloading the Xmonad default configuration file, move it to the “Xmonad” folder. Do not worry if there is already an “xmonad.hs” file in the folder, as it probably isn’t as intricate or with as many features enabled.

Once the file is in the “.xmonad” folder, reload the configuration into the Xmonad window manager by pressing Ctrl + Q.

Using Xmonad

How to use xmonad a tiling window manager for linux

Xmonad is a tiling window manager that is heavily based on keyboard shortcuts. Here are the basic keyboard shortcuts that will help you navigate the system.

  • Left Alt + P: opens up Dmenu, which you can use to launch apps quickly.
  • Left Alt + Shift + Q: logs out of the Xmonad system.
  • Left Alt + Shift + C: kills currently focused window.
  • Left Alt + Spacebar: rotate the windows through various tiling layouts.
  • Left Alt + J: switch to the next window.
  • Left Alt + K: switch to the previous window.
  • Left Alt + number row (1-0): switch between workspaces.

By learning these keyboard shortcuts, Xmonad will be very easy to use. If you’d like to know even more shortcuts, check out the official web page for Xmonad here.

Setting the Xmonad wallpaper

Xmonad starts with a blank wallpaper. If you want to set your wallpaper, you will need to follow the instructions below.

First, create a file called “xmonad-wallpaper-set”. This is a script file that will be placed in “/usr/bin,/” which will handle the setting of your wallpaper. Using the touch command, make the new file.

Note: “xmonad-wallpaper-set” is already configured in the “xmonad.hs” file, so no need to tinker with it to get it to set the wallpaper.

How to use xmonad a tiling window manager for linux

Next, use the echo command to add in the “shebang” into the top of the script file.

After adding in the “shebang,” make a new line in the file.

Add in the command that will automatically set your wallpaper.

Update the permissions of the file with:

Place the file in the “/usr/bin/” directory with the mv command.

Once the “xmonad-wallpaper-set” script is in the “/usr/bin/” directory, the hard work is done. Now, press Left Alt + P to open Dmenu. Then, launch Firefox (or another browser) and download your favorite wallpaper.

How to use xmonad a tiling window manager for linux

Make sure the file is either a PNG, JPG, or JPEG, and save it in your home directory as “wallpaper.png,” “wallpaper.jpg,” or “wallpaper.jpeg.”

Warning: do not have multiple files named “wallpaper” in the home directory. Only one at a time!

When you’ve finished downloading the wallpaper, press Left Alt + Q to apply it to the system.

More information about Xmonad

There are so many things that you can do with the Xmonad tiling window manager. We’ve only scratched the surface with this tutorial. If you’d like to learn more about Xmonad, check out the website here.

Leave a Reply Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Nov 25, 2019
Comment

Xmonad is a dynamic, tiling window manager for X11. It runs on Linux and other Unix-like operating systems. It’s a favorite in the programming community, as it is minimal, has dozens of excellent features, and supports a massive extension library. Here’s how to set up Xmonad on your Linux system.

Install Xmonad on Linux

The Xmonad window manager is one of the oldest on all of Linux. As a result, it is effortless to install on a variety of distributions. In this section of the guide, we will demonstrate exactly how to install the Xmonad window manager on Linux.

To start the installation, launch a terminal window by pressing Ctrl + Alt + T or Ctrl + Shift + T on the keyboard. Then, follow the command-line instructions outlined below that correspond with the Linux OS you use.

Ubuntu

Ubuntu users looking to get their hands on the Xmonad window manager will first need to enable the “Universe” software repository. To do that, use the following add-apt-repository command.

After adding the “Universe” software repository, you must run the update command to refresh Ubuntu’s software sources.

Following the update command, use the Apt package manager to load up the latest version of the Xmonad window manager on your Ubuntu Linux PC.

Debian

To install Xmonad on Debian Linux, use the Apt-get command below in a terminal window.

Arch Linux

On Arch Linux, the Xmonad window manager is available to users in the “Community” software repository. Ensure you have “Community” enabled. Then, use the Pacman package manager to install Xmonad.

Fedora

Fedora Linux users can install the latest version of Xmonad via the Dnf package manager.

OpenSUSE

On OpenSUSE Linux, the Xmonad window manager is installable with the following Zypper command.

Generic Linux

The source code for Xmonad is available for free on their website. If you’re running a lesser-known Linux operating system and want to get Xmonad working, head over to this page here to learn what to do.

Logging into Xmonad

Xmonad can be accessed from the login screen under sessions like any other window manager or desktop environment. To load up Xmonad, log out of your current desktop environment, and return to the login screen.

Once on the login screen, locate the session area. The session area may say “Sessions,” or be a gear or icon. Inside of the session area, find “Xmonad” and click on it with the mouse to tell your Linux PC to load Xmonad.

How to use xmonad a tiling window manager for linux

Upon logging into Xmonad, you will see a black screen with a message that pops up on the screen. This message gives you the keyboard shortcut to launch a terminal (Ctrl + Shift + Enter). Press it, as it is needed to configure Xmonad in the next section of the guide.

Configuring Xmonad

Xmonad must be configured to run correctly. To configure it, you must generate a config file. To do this, go to the terminal and use the wget download command to download the default configuration file to your Linux PC.

After downloading the Xmonad default configuration file, move it to the “Xmonad” folder. Do not worry if there is already an “xmonad.hs” file in the folder, as it probably isn’t as intricate or with as many features enabled.

Once the file is in the “.xmonad” folder, reload the configuration into the Xmonad window manager by pressing Ctrl + Q.

Using Xmonad

How to use xmonad a tiling window manager for linux

Xmonad is a tiling window manager that is heavily based on keyboard shortcuts. Here are the basic keyboard shortcuts that will help you navigate the system.

  • Left Alt + P: opens up Dmenu, which you can use to launch apps quickly.
  • Left Alt + Shift + Q: logs out of the Xmonad system.
  • Left Alt + Shift + C: kills currently focused window.
  • Left Alt + Spacebar: rotate the windows through various tiling layouts.
  • Left Alt + J: switch to the next window.
  • Left Alt + K: switch to the previous window.
  • Left Alt + number row (1-0): switch between workspaces.

By learning these keyboard shortcuts, Xmonad will be very easy to use. If you’d like to know even more shortcuts, check out the official web page for Xmonad here.

Setting the Xmonad wallpaper

Xmonad starts with a blank wallpaper. If you want to set your wallpaper, you will need to follow the instructions below.

First, create a file called “xmonad-wallpaper-set”. This is a script file that will be placed in “/usr/bin,/” which will handle the setting of your wallpaper. Using the touch command, make the new file.

Note: “xmonad-wallpaper-set” is already configured in the “xmonad.hs” file, so no need to tinker with it to get it to set the wallpaper.

How to use xmonad a tiling window manager for linux

Next, use the echo command to add in the “shebang” into the top of the script file.

After adding in the “shebang,” make a new line in the file.

Add in the command that will automatically set your wallpaper.

Update the permissions of the file with:

Place the file in the “/usr/bin/” directory with the mv command.

Once the “xmonad-wallpaper-set” script is in the “/usr/bin/” directory, the hard work is done. Now, press Left Alt + P to open Dmenu. Then, launch Firefox (or another browser) and download your favorite wallpaper.

How to use xmonad a tiling window manager for linux

Make sure the file is either a PNG, JPG, or JPEG, and save it in your home directory as “wallpaper.png,” “wallpaper.jpg,” or “wallpaper.jpeg.”

Warning: do not have multiple files named “wallpaper” in the home directory. Only one at a time!

When you’ve finished downloading the wallpaper, press Left Alt + Q to apply it to the system.

More information about Xmonad

There are so many things that you can do with the Xmonad tiling window manager. We’ve only scratched the surface with this tutorial. If you’d like to learn more about Xmonad, check out the website here.

Leave a Reply Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

xmonad – a tiling window manager

Description

I]xmonad] is a minimalist tiling window manager for X, written in Haskell. Windows are managed using automatic layout algorithms, which can be dynamically reconfigured. At any time windows are arranged so as to maximize the use of screen real estate. All features of the window manager are accessible purely from the keyboard: a mouse is entirely optional. I]xmonad] is configured in Haskell, and custom layout algorithms may be implemented by the user in config files. A principle of I]xmonad] is predictability: the user should know in advance precisely the window arrangement that will result from any action.

By default, I]xmonad] provides three layout algorithms: tall, wide and fullscreen. In tall or wide mode, windows are tiled and arranged to prevent overlap and maximize screen use. Sets of windows are grouped together on virtual screens, and each screen retains its own layout, which may be reconfigured dynamically. Multiple physical monitors are supported via Xinerama, allowing simultaneous display of a number of screens.

By utilizing the expressivity of a modern functional language with a rich static type system, I]xmonad] provides a complete, featureful window manager in less than 1200 lines of code, with an emphasis on correctness and robustness. Internal properties of the window manager are checked using a combination of static guarantees provided by the type system, and type-based automated testing. A benefit of this is that the code is simple to understand, and easy to modify.

Usage

I]xmonad] places each window into a “workspace”. Each workspace can have any number of windows, which you can cycle though with mod-j and mod-k. Windows are either displayed full screen, tiled horizontally, or tiled vertically. You can toggle the layout mode with mod-space, which will cycle through the available modes.

You can switch to workspace N with mod-N. For example, to switch to workspace 5, you would press mod-5. Similarly, you can move the current window to another workspace with mod-shift-N.

When running with multiple monitors (Xinerama), each screen has exactly 1 workspace visible. mod- switch the focus between screens, while shift-mod- move the current window to that screen. When I]xmonad] starts, workspace 1 is on screen 1, workspace 2 is on screen 2, etc. When switching workspaces to one that is already visible, the current and visible workspaces are swapped.

Flags

xmonad has several flags which you may pass to the executable. These flags are: –recompile Recompiles your configuration in I]

/.xmonad/xmonad.hs] –restart Causes the currently running I]xmonad] process to restart –replace Replace the current window manager with xmonad –version Display version of I]xmonad] –verbose-version Display detailed version of I]xmonad]

Default keyboard bindings

Examples

To use xmonad as your window manager add to your I]

C]exec xmonad]Customization

xmonad is customized in

/.xmonad/xmonad.hs, and then restarting with mod-q.

You can find many extensions to the core feature set in the xmonad- contrib package, available through your package manager or from xmonad.org (http://xmonad.org).

Modular Configuration

As of I]xmonad-0.9], any additional Haskell modules may be placed in I]

/.xmonad/lib/] are available in GHC[aq]s searchpath. Hierarchical modules are supported: for example, the file I]

Previous Post
Next Post
Tip / Trick

Tiling window manager has helped very much by automatically arranging the window screens of programs on screen for you. Xmonad is a very easy to get started with. What you have to do is to just learn some shortcut keys. It is highly configurable.

But if you don’t want to configure it yourself, don’t worry it will work out of the box.

By default, xmonad does not have the application launcher. To install it run the following command.

Sudo apt-get install xmonad suckless-tools

Suckless-tool must be omitted if you would rather not install dmenu. If you are currently working on the older version of the Ubuntu you have to install dwm-tools.

If you are using some other Linux distribution, you can find dmenu and xmonad in the repositories.

When you have installed the xmonad, you need to log out of your system. After that on the login screen, go to the icon next to your name and click on it and before logging in to the system again select xmonad.

When you have clicked xmonad a blank black screen will appear, just like if its loading is failed. But don’t panic, it appears to be failed but it is not. It just starts by showing an empty screen. To launch the terminal press Alt+Shift+Enter.

To launch some more terminals repeat the process. Xmonad will arrange and resizes the screen itself by making window tiles and automatically adjusting window on the screen. This is what a tiling window manager can do.

For altering the screen focus use the shortcuts Alt+j and Alt+k. In addition to that, the focus of the screen can be changed by hovering, moving the mouse on the screen.How to use xmonad a tiling window manager for linux

To switch between different tiling modes, use the keyboard shortcuts Alt+Space. There is a mode which shows only one window on the screen at a time.

Alt + P can be used , if the dmenu is installed, to pull it. To launch an application launch first few letters of it and press Enter.

Some of the important shortcut keys are listed here, which will help you getting started.

  • The shortcut method to close the focus window is Alt+Shift+C.
  • Controlling the number of windows in the master pane which is usually on the left of the screen use Alt+. & Alt+,-.
  • To move the focused window on the left master pane use Alt+Enter.
  • For swapping the focus window with the adjacent one use Alt+Shift+J and Alt+Shift+K.
  • To change and resize the border of the master pane and secondary pane use Alt+H & Alt+L.
  • To log out, use Alt+Shift+Q.

Workspace is also offered by the xmonad. In order to switch to workspace 2, the keyboard shortcut Alt + 2 is used. To move from the workspace 2 to the 3 rd workspace use Alt+Shift+3. The setting of each workspace is different from each other.How to use xmonad a tiling window manager for linux

Configuring xmonad:

How to use xmonad a tiling window manager for linux I present to you today this very useful article introducing xmonad, an alternative window manager, the article is bt Fabio Viola and can be found along with many other interesting articles on the page of SaLUG Journal(In Italian), the article is released under the GNU Free Documentation License, translation from Italian by me.

Last week in Bologna I had the pleasure of knowing a geek from Padua, a smart boy with whom I had a chat.

He Introduced to me an interesting project, it is xmonad . On the official website [0] there is a phrase that strikes you and takes you to devour each page of the documentation or makes you close in a flash, the browser tab : “In a normal WM, you spend half your time aligning and searching for windows.” If you recognize yourself in this sentence xmonad is for you.
What is it?

It’s an intelligent window manager written in Haskell whose ‘main’ peculiarities is to automatically position windows without overlapping. Xmonad has several advantages (which i found on the homepage of the project): tiling windows, minimalism, stable (and having tried hard, I can confirm), extensibility, many features (for example, supports xinerama), simple, supported .. .

Get familiar with the environment

Search through your package manager, find and install xmonad to jump-start a tour in this interesting wm! Just started, xmonad will not show you nothing but a black screen … it’s not a crash, it’s normal … You can start a terminal with modshift return (on xmonad mod is usually the alt key, but that can be changed by configuration files). Iterate a bit and see how it places the new terminal …

By default xmonad divides the screen into two “panes”, a master (left) and a secondary (right). If we have only two windows, they each occupy a piece of pane. As soon as we create new ones, they will occupy the secondary pane, sharing it with the other windows already present. In the master pane it will remain always a single window unless you use mod+, or mod- that increase or decrease the number of windows in that area. This is one of the proposed layout, but there are others of which we could cycle every time we want with modspace. There are other positioning algorithms of the windows that can be created and/or used by the configuration file (but we’ll not dwell on this).

Move and resize windows, is also possible on this window manager so special. We can switch a window with the one of the master pane with modreturn or switch it with the one on the top/bottom with modshiftj/modshiftk.

About resize the windows we can enlarge/shrink with the shortcut modh (h as higher) and modl (as lower).

Xmonad allows you to use more desktop.
By default we have 9. mod [1 .. 9] is a shortcut to access the desired desktop. Numerous shortcuts are summarized in a convenient Cheatsheet [1]. After seeing the basic shortcut to move within xmonad we are ready to discover something more.

Configure xmonad

xmonad is configured through the file

/.xmonad/xmonad.hs. If it is not available it will use the default settings. Any change made ​​to that file (when xmonad wm is started) can be loaded on the current wm via the shortcut modq. It’s not very frequent encounter Haskell, so if like me you’ve never used it you should take a look at [2] before you start hacking. Syntax rules are simple. You can identify errors in the configuration file with:

We can write a configuration file for xmonad entering only the lines that we intend to change from the original setup, such as:

import XMonad main = xmonad defaultConfig

that we use for our set up urxvt as terminal. But how do we know all the parameters by which we can play?
One way is to try the online template [3].

We may search for items of interest there, or directly use that template as a configuration file and therefore always have at hand all the options.

Floating windows

Xmonad supports floating windows. In fact, some windows can be positioned above the other on a level on their own. modbutton1 allows you to make a window floating and drag it around, at the contrary modt reinstates a window into the classic layout used by xmonad. A case in which for instance is useful a floating window is mplayer …

Conclusion

For those who are addicted to a keyboard and would like to put on the grill mouse and similmouse, this window manager is the best choice. I have always considered fluxbox the best and have always been madly in love with that environment so “skinny”, but xmonad seems even better for me … Time will tell if it’s true love 🙂

In conclusion, you’re curious to try xmonad, but still too tied to GNOME, KDE or XFCE? No problem, xmonad can be used with all of these desktop environment. For example, on GNOME it can replace metacity with dignity …

But it’s all well documented on the official website of xmonad! 😉

I like screen real estate, my laptop has a 4k screen and I mean to use every last pixel to display code. Gnome on Ubuntu has two bars at the top of the screen, I want to use that space for code!

I often press F11 in various applications to take up the entire screen, but I want more, it’s time to install xmonad!

xmonad has great features like virtual desktops. I keep my shell open in desktop 1, emacs on 2, a browser on 3, and other apps on their own desktops. I’m also a fan of recompiling and reloading my xmonad config at runtime to try out new changes.

xmonad expects to be installed system-wide so it can easily recompile itself, but I’ve since switched to cabal’s new-build and new-install commands.

How to use xmonad a tiling window manager for linux

I asked on the #xmonad IRC channel, geekosaur told me I can use a build script to get around system-wide installation.

I’m still fighting with build scripts but in short I ended up creating a separate cabal project that depends on xmonad and xmonad-contrib. The xmonad-testing repository was suggested, it includes an example build script.

/.xmonad
cp shaexmonad/build

/.xmonad/build
chmod u+x

/.xmonad/build and change SRCDIR to the location of your xmonad checkout

create /usr/share/xsessions/xmonad.desktop and paste in

You will want to change the value in the Exec= field to match your install location!

install Haskell

  1. git clone https://github.com/haskell/ghcup.git
  2. cd ghcup
  3. mkdir -p

/.ghcup/bin # create a directory for ghcup
export PATH=

/.ghcup/bin:$PATH # add the new directory to your PATH

  • ./ghcup install 8.6.3 # this will download the Haskell compiler for your platform (Linux, Mac, WSL?)
  • ./ghcup install-cabal # this will install the package manager
  • cabal new-update # if this doesn’t work,

    /.ghcup/bin/ probably is not in your PATH

    install utilities

    cabal new-install xmobar

    If you want to use the exact same config as above, you’ll need to install trayer.

    If you have gnome installed, you’ll have nm-applet.

    In a normal WM, you spend half your time aligning and searching for windows. XMonad makes work easier, by automating this.

    Currently version 0.15

    How to use xmonad a tiling window manager for linux How to use xmonad a tiling window manager for linux How to use xmonad a tiling window manager for linux

    How to use xmonad a tiling window manager for linux How to use xmonad a tiling window manager for linux How to use xmonad a tiling window manager for linux

    What’s new?

    • xmonad 0.15 is available. Check out our download page. (2018-09-30)
    • Report a bug and we’ll squash it for you in the next release.
    • Follow us on twitter, or join the xmonad subreddit, or come say hi in the IRC channel (#[email protected])!
    • Checkout some amazing videos about xmonad, and see what other people did in the screenshot gallery.

    Why use XMonad?

    • tiling: xmonad automates the common task of arranging windows, so you can concentrate on getting stuff done.
    • minimal: Out of the box, no window decorations, no status bar, no icon dock. just clean lines and efficiency.
    • stable: Haskell and smart programming practices guarantee a crash-free experience.
    • extensible: It sports a vibrant extension library, including support for window decorations, status bars, and icon docks.
    • full of features: core features like per-screen workspaces , true xinerama support and managehooks can’t be found in any other wm.
    • easy: we work hard to make common configuration tasks one-liners.
    • friendly: an active, friendly mailing list and IRC channel (#[email protected]) are waiting to help you get up and running.

    XMonad features

    • Very stable, fast, small and simple.
    • Tiny code base (

    2000 lines of Haskell)

  • Automatic window tiling and management
  • First class keyboard support: a mouse is unnecessary
  • Full support for tiling windows on multi-head displays
  • Full support for floating, tabbing and decorated windows
  • Full support for GNOME and KDE utilities
  • XRandR support to rotate, add or remove monitors
  • Per-workspace layout algorithms
  • Per-screens custom status bars
  • Compositing support
  • Powerful, stable customisation and on-the-fly reconfiguration
  • Large extension library
  • Excellent, extensive documentation
  • Large, active development team, support and community
  • Read more reviews of xmonad
  • The xmonad dev team is very proud to announce that the bluetile merge was completed today. The Bluetile branch is an experimental xmonad variant whose:

    focus lies on making the tiling paradigm easily accessible to users coming from traditional window managers by drawing on known conventions and providing both mouse and keyboard access for all features. It also tries to be usable ‘out of the box’, requiring minimal to no configuration in most cases.

    Jan Vornberger, the developer behind bluetile, has been working hard to ensure xmonad supports bluetile fully. The upcoming stable release of xmonad will support the bluetile extensions directly, meaning a whole new range of interface and usability options for xmonad users.

    You can see a demo of the bluetile model:

    To find out more about the bluetile branch see the project homepage, or see Jan’s talk (in German).

    The next steps though are to,

    • provide an XMonad.Config.Bluetile module in xmonad-contrib
    • And release the stable xmonad supporting the new bluetile code

    If you want to try out the bluetile code, your best bet at the moment is to move to the darcs version of xmonad, and start there.

    xmonad 0.9 available now!

    We’re very excited to announce the official release of xmonad 0.9! We think this is a great release.

    You can download xmonad 0.9 from Hackage or from your package system. And if you’re using the previous version of xmonad, you can upgrade on the fly — without losing your session.

    How to use xmonad a tiling window manager for linux

    xmonad is a leading tiling window manager, known for its lightness, reliability, extensibility and efficiency. It supports true multiheaded tiling, and rich, rapid customisation. It is also highly portable, running on regular desktops, laptops, netbooks, phones, game consoles, the OLPC, and more.

    More info

    Headlines

    Some of the highlights of the 0.9 release include:

    • Actions.SpawnOn: windows go to the workspace they were launched on, even if you’re no longer viewing that workspace. Especially handy for slow-starting apps like firefox.
    • Actions.GridSelect: graphically go to, select and do things with windows, workspaces, prompts, …
    • Focus changes across screens with mouse movement, no longer requiring a click.
    • New –restart command line flag to restart a running xmonad process.
    • Supports for multi-module local configuration files
    • Support for user-defined X event handling
    • xmonad comes with 180 extensions for enhancing functionality
    • Over 3000 commits have been made to the project.

    Information, screenshots, documentation, tutorials and community resources are available from the xmonad home page. And you can follow us on twitter.

    The Design and Implementation of XMonad

    The slides from the Haskell Workshop 2007 talk on the design and implementation of xmonad are now online.Original PDF

    xmonad has come a long way since then. It is now 2.5 years old, distributed on dozens of platforms, had hundreds of developers contribute, several thousand patches (particularly in the extensions library), and hundreds of thousands of downloads.

    contribs review

    IndependentScreens
    by Daniel Wagner
    XMonad.Layout.IndependentScreens can be used to have independent sets of workspaces on each screen (like dwm’s workspace model). Note that this module may be superseded soon by module Braden Shepherdson and Wirt Wolff are developing, which provides more rich set of features.

    PhysicalScreens
    by Nelson Elhage
    XMonad.Actions.PhysicalScreens allows you to manipulate screens ordered by physical location instead of relative to each other (as reported by Xinerama) rather than their ScreenID’s (which are arbitrarily determined by your X server and graphics hardware). With help of this module you can name screens by relative layout, switch to a given screen or move a window there.

    NamedScratchpad
    by Konstantin Sobolev
    Allows to have several floating scratchpads running different applications.

    How to use xmonad a tiling window manager for linux

    ตัวจัดการหน้าต่างเรียงต่อกันทำให้ชีวิตของคุณง่ายขึ้นโดยการจัดเรียงหน้าต่างบนหน้าจอให้คุณโดยอัตโนมัติ Xmonad เป็นขั้นต่ำที่ง่ายต่อการเริ่มต้น – สิ่งที่คุณต้องทำคือเรียนรู้แป้นพิมพ์ลัดเพียงไม่กี่ปุ่ม.

    Xmonad นั้นสามารถกำหนดค่าได้อย่างสูง แม้จะมีสิ่งนี้คุณไม่จำเป็นต้องแตะไฟล์กำหนดค่าหากคุณไม่ต้องการ – มันสามารถใช้งานได้ทันที.

    การติดตั้ง

    Xmonad ไม่รวมตัวเรียกใช้งานแอปพลิเคชันตามค่าเริ่มต้น คุณอาจต้องการ dmenu ตัวเปิดแอปพลิเคชันพื้นฐานที่ทำงานกับ xmonad ในการติดตั้งทั้งสองบน Ubuntu ให้รันคำสั่งต่อไปนี้:

    sudo apt-get install xmonad suckless-tools

    How to use xmonad a tiling window manager for linux

    ตกหล่น suckless เครื่องมือ จากคำสั่งหากคุณไม่ต้องการติดตั้ง dmenu แพ็คเกจนี้ประกอบด้วย dmenu – หากคุณใช้ Ubuntu รุ่นเก่าคุณอาจต้องติดตั้ง dwm เครื่องมือ แทน.

    หากคุณใช้การกระจาย Linux อื่นคุณควรพบ xmonad และ dmenu ในที่เก็บของด้วย.

    หลังจากติดตั้ง xmonad ให้ออกจากระบบ Ubuntu ของคุณคลิกไอคอนถัดจากชื่อของคุณบนหน้าจอเข้าสู่ระบบและเลือก XMonad ก่อนที่จะลงชื่อเข้าใช้.

    How to use xmonad a tiling window manager for linux

    เริ่มต้นใช้งาน

    How to use xmonad a tiling window manager for linux

    ไม่ต้องกังวลมันไม่โหลดไม่สำเร็จ – มันเพิ่งเริ่มต้นด้วยหน้าจอที่ว่างเปล่า กด Alt + Shift + Enter เพื่อเปิดเทอร์มินัล.

    How to use xmonad a tiling window manager for linux

    ในการเปิดเครื่องเทอร์มินัลเพิ่มเติมกดปุ่ม Alt + Shift + Enter ทางลัดอีกครั้ง Xmonad ปรับขนาดและจัดเรียงหน้าต่างบนหน้าจอโดยอัตโนมัติปูกระเบื้อง นี่คือสิ่งที่ “ตัวจัดการหน้าต่างเรียง”.

    How to use xmonad a tiling window manager for linux

    ในการย้ายโฟกัสโดยใช้แป้นพิมพ์ให้ใช้ Alt + J หรือ Alt + K แป้นพิมพ์ลัด โฟกัสยังตามเมาส์ดังนั้นสิ่งที่คุณต้องทำคือเลื่อนเคอร์เซอร์ไปที่หน้าต่างเพื่อโฟกัส.

    ใช้ Alt + Space แป้นพิมพ์ลัดเพื่อสลับไปมาระหว่างโหมดเรียงต่อกัน หนึ่งในโหมดจะแสดงหน้าต่างเดียวบนหน้าจอพร้อมกัน.

    How to use xmonad a tiling window manager for linux

    หากคุณติดตั้ง dmenu คุณสามารถกด Alt + P เพื่อดึงขึ้น พิมพ์ตัวอักษรสองสามตัวแรกของชื่อแอปพลิเคชันแล้วกด Enter เพื่อเปิดใช้.

    แอปพลิเคชั่นกราฟิกเช่น Firefox ปรากฏขึ้นเช่นเดียวกับหน้าต่างเทอร์มินัล.

    How to use xmonad a tiling window manager for linux

    ต่อไปนี้เป็นแป้นพิมพ์ลัดที่สำคัญอื่น ๆ เพื่อให้คุณเริ่มต้นได้:

    • Alt + Shift + C – ปิดหน้าต่างที่โฟกัส.
    • Alt+. & Alt+, – ควบคุมจำนวนหน้าต่างที่แสดงในบานหน้าต่างหลักด้านซ้าย.
    • Alt + Enter – ย้ายหน้าต่างที่โฟกัสไปยังบานหน้าต่างต้นแบบด้านซ้าย.
    • Alt + Shift + J & Alt + Shift + K – สลับหน้าต่างที่โฟกัสด้วยหน้าต่างที่อยู่ติดกัน.
    • Alt + H & Alt + L – ปรับขนาดเส้นขอบระหว่างบานหน้าต่างหลักและบานหน้าต่างรอง.
    • Alt + Shift + Q – ออกจากระบบ.

    Xmonad รองรับพื้นที่ทำงานด้วย ตัวอย่างเช่นหากต้องการเปลี่ยนเป็นเวิร์กสเปซสองให้ใช้ Alt + 2 แป้นพิมพ์ลัด หากต้องการย้ายหน้าต่างที่โฟกัสอยู่ในปัจจุบันไปยังพื้นที่ทำงานสามให้ใช้ Alt + Shift + 3 แป้นพิมพ์ลัด แต่ละพื้นที่ทำงานสามารถมีการตั้งค่าโหมดเรียงต่อกัน.

    การกำหนดค่า Xmonad

    Xmonad สามารถกำหนดค่าได้อย่างมากหากคุณเต็มใจทำให้มือสกปรก Xmonad เองถูกเขียนใน Haskell และรูปแบบไฟล์การกำหนดค่าก็ใช้ Haskell ด้วยเช่นกัน ไฟล์การกำหนดค่าของ Xmonad อยู่ที่

    / .xmonad / xmonad.hs (นั่นคือ, /home/YOU/.xmonad/xmonad.hs) โดยค่าเริ่มต้นไฟล์นี้ไม่มีอยู่ – คุณจะต้องสร้างมันเอง.

    ในการเริ่มต้นกำหนดค่า xmonad คุณอาจต้องการเริ่มต้นด้วยไฟล์แม่แบบ สำหรับการกำหนดค่าขั้นสูงเพิ่มเติมดูรายการเคล็ดลับการกำหนดค่านี้บนวิกิที่เป็นทางการ.

    หลังจากแก้ไขการกำหนดค่าให้ใช้ Alt + Q แป้นพิมพ์ลัดเพื่อโหลดการกำหนดค่าของคุณใหม่ นอกจากนี้คุณยังสามารถเปลี่ยนคีย์ตัวดัดแปลงเริ่มต้นในไฟล์การกำหนดค่า – หากคุณใช้คีย์ตัวดัดแปลงที่กำหนดเองแทนทุกตัว Alt ในโพสต์นี้.

    คุณคิดยังไงกับ xmonad? คุณชอบตัวจัดการหน้าต่างเรียงต่อกันไหม? แสดงความคิดเห็นและแจ้งให้เราทราบ.