TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

XMonad – The Automated Tiling WM

243 点作者 lolcat_cowsay超过 3 年前

26 条评论

jchw超过 3 年前
I wonder what will happen to XMonad as the Wayland future actually seems to be approaching. I suppose nothing yet.<p>But, I was an i3wm user, and now it’s hard to imagine going back to X11. I run SwayWM on NixOS and using Linux any other way feels archaic now. Yes, I do genuinely understand how that seems absolutely ridiculous, but honestly, it does. Other than the occasional stability issue or bug, it really feels like the future is arriving: smooth rendering, predictable latency, hardly an imperfect frame, heterogeneous DPI with no effort, no need to string along GNOME or KDE services to configure input devices or manage displays, yet to experience any problems with sleep&#x2F;resume, and with NixOS, a simple, centrally managed configuration for my whole OS (including Sway) and any patches, git-versioned. It isn’t perfect, but it is almost as good as promised. I just recently setup a new desktop by grabbing a recent NixOS USB stick, formatting the drives, git cloning my configs, and running the installer, and one reboot later I was in my environment with Sway, all of my applications, my configuration…<p>I’ve tried versioning my dotfiles before, but this seemed to both be more tedious and still not really accomplish what I wanted. My desktops and laptops are single user, so I can just use NixOS to manage system-wide configs instead and get 99% of what I actually wanted.<p>I’ve digressed a bit into stuff very unrelated to WMs, but the software around your WM is important when dealing with tiling WMs. Nobody wants a bespoke pile of complex configurations that could break on an upgrade without warning, and that has never been more important than with minimal WMs.
评论 #28797020 未加载
评论 #28795396 未加载
评论 #28795088 未加载
评论 #28795034 未加载
评论 #28796224 未加载
评论 #28804549 未加载
评论 #28796007 未加载
评论 #28797052 未加载
评论 #28795309 未加载
评论 #28797043 未加载
评论 #28799569 未加载
评论 #28796950 未加载
评论 #28799828 未加载
评论 #28795458 未加载
评论 #28795432 未加载
kmod超过 3 年前
First, I strongly recommend using a tiling window manager. There aren&#x27;t many logistical things you can do to improve your programming output but this is one.<p>I used XMonad for many years and finally had to give up and switch to i3, so I would recommend using that<p>The first problem was that they broke my configuration file with every release. I&#x27;m not a Haskell expert so fixing it was very time consuming<p>The second is that their gnome integration is quite bad. Also it&#x27;s different for every combination of XMonad version and Ubuntu version and eventually I hit a combination that I couldn&#x27;t get to work<p>So it was great when it worked but it didn&#x27;t always work, and I&#x27;m now a happy i3 user
评论 #28797287 未加载
评论 #28794889 未加载
评论 #28794984 未加载
评论 #28796657 未加载
评论 #28798686 未加载
neilv超过 3 年前
I&#x27;ve used numerous X window managers, and XMonad is my favorite. (I&#x27;ve tried to switch to i3, by using it for a couple years at work, while still XMonad at home, but XMonad is still more productive for me.)<p>One thing that I set up in `xmonad.hs` is `additionalKeys` that switch to or launch particular programs. For example:<p><pre><code> ((mod3Mask, xK_f), raiseNextMaybe (spawn &quot;&#x2F;usr&#x2F;bin&#x2F;firefox-esr&quot;) (className =? &quot;Firefox-esr&quot;)) </code></pre> For programs run in a terminal window, `-name` works well enough for distinguishing them:<p><pre><code> ((mod3Mask, xK_r), raiseNextMaybe (spawn &quot;urxvt -name mtr -e mtr 123.45.67.89&quot;) (className =? &quot;URxvt&quot; &gt;&gt; title =? &quot;mtr&quot;)) </code></pre> My layouts are standard, and I mostly work from the large window on the left, and then the windows on the right are only wide enough to fit 80 columns in terminal or Emacs.<p><pre><code> myLayout = tiled ||| Mirror tiled ||| noBorders Full where tiled = Tall nmaster delta ratio nmaster = 1 ratio = 1&#x2F;2 delta = 3&#x2F;100 </code></pre> Occasionally I switch a window to fullscreen or switch to the big window taking the full width. When work needs the full screen or multiple windows at once for long at all, I usually switch to desktops 2 and later, and keep 1 for comms like email and chat. When docking laptop, work ends up on the external monitor in front, and then comms&#x2F;monitoring is on laptop to the side.<p>I used to have a status bar and system tray, but got rid of them. The only thing I miss is having a clock I can glance at, so I wrote a key sequence that runs a script that uses `osd_cat` to temporarily overly the current time and date, time in other zones I&#x27;m dealing with, and battery status.
评论 #28794664 未加载
tbabej超过 3 年前
This is relatively new, but XMonad is currently running a crowdsourcing campaign to sustain its further development (and maintenance). I hopped in to sponsor recently, and would recommend to do so to all XMonad fans!<p><a href="https:&#x2F;&#x2F;github.com&#x2F;sponsors&#x2F;xmonad" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;sponsors&#x2F;xmonad</a>
评论 #28796470 未加载
评论 #28796988 未加载
psanford超过 3 年前
I&#x27;ve used XMonad for &gt;10 years. I love it and hate it at the same time. I love XMonad layouts! I hate that I have to write Haskell to configure it. I no longer have the patience to relearn the minimal amount of Haskell necessary to make config changes, so I&#x27;ve frozen my config and not touched it for the last 4 years.<p>But its really hard to switch off it! I&#x27;ve tried i3 and really like that it has a network based API, but not having automatic layouts is really a deal breaker for me. It seems like you should be able to port the XMonad layouts to i3, but in reality their models are different enough that I doubt you could ever make the same layouts in i3 and have it work exactly as it does in XMonad.
评论 #28795351 未加载
评论 #28796997 未加载
评论 #28796663 未加载
inclemnet超过 3 年前
Since various people are asking about xmonad-like tiling in wayland:<p>I wrote Vivarium[0] specifically to be a wayland compositor that behaves exactly like my (fairly simple) xmonad config, but it&#x27;s a relatively new&#x2F;unstable compositor and nothing like xmonad internally.<p>River[1] has a fantastic tiling model via user-provided executables, which makes it very flexible and probably a good fit for many people wanting something xmonad-like.<p>Waymonad[2] exists as a direct xmonad-like compositor, but I think development has been basically stalled for a long time. Sometimes there&#x27;s discussion about reviving it though (edit: see <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28796909" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28796909</a> for more up to date detail).<p>Japokwm[3] is another compositor with xmonad user roots, but again its own tiling model.<p>[0] <a href="https:&#x2F;&#x2F;github.com&#x2F;inclement&#x2F;vivarium" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;inclement&#x2F;vivarium</a><p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;ifreund&#x2F;river" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ifreund&#x2F;river</a><p>[2] <a href="https:&#x2F;&#x2F;github.com&#x2F;waymonad&#x2F;waymonad" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;waymonad&#x2F;waymonad</a><p>[3] <a href="https:&#x2F;&#x2F;github.com&#x2F;werererer&#x2F;japokwm" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;werererer&#x2F;japokwm</a>
cletus超过 3 年前
I haven&#x27;t used a tiling WM but I&#x27;m intrigued by the idea. I have reservations, specifically that I have really poor eyesight so I honestly don&#x27;t know how many windows I could usefully put on a screen anyway. But still, piles of windows are a mess.<p>But here&#x27;s where I always get stuck on such things with Linux in particular:<p>1. It&#x27;s usually a whole new set of keybinds I have to learn. I feel the same way about tmux&#x2F;screen, emacs and vim and the like. For the others I get that there is a point because you can use all of them in vt-environments (eg over ssh connections). Whatever the case, they all represent a cognitive load that I have difficulty motivating myself to summit. You just get a lot of behaviour for free with a traditional mouse UI;<p>2. An esoteric scripting&#x2F;configuration language, in this case Haskell for XMonad (it seems?). Often the out-of-the-box defaults will be sparse and&#x2F;or rough and you&#x27;ll have a whole bunch of conflicting advice on how you should modify that.<p>This works for many people and I&quot;m genuinely happy for you.<p>Are there any tiling WMs that are a little more... accessible?
评论 #28796971 未加载
评论 #28794948 未加载
评论 #28795048 未加载
评论 #28794965 未加载
评论 #28795635 未加载
评论 #28794966 未加载
评论 #28796593 未加载
评论 #28794949 未加载
评论 #28798710 未加载
yonrg超过 3 年前
Maybe 12 yrs ago, I developed some scripting in FVWM to simulate tiling. My thinking was, why do I need background and overlapping windows? It worked kind of, then I came very quickly to xmonad, but abandoned it (I do not understand haskell; maybe I should) So then came i3 for some time, but I never became a big fan of the tree layout.<p>Eventually, I found my way with qtile [0], written and configured in python (which I do speak sort of). It is extensible, simple and just works. I use it daily for nearly a decade now. What I like, qtile has modules to manage the window layouts. My favorite is the xmonad-clone which mimcs basic features. But efficient enough for me 0: <a href="http:&#x2F;&#x2F;www.qtile.org&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.qtile.org&#x2F;</a><p>Another tilingwm I like to mention is spectrwm [1] which I use as a backup. I cannot say that qtile never had issues. But it is also a long time ago I used my backup. qitle is now in my OS repo, so I don&#x27;t need to build and install my self anymore. 1: <a href="https:&#x2F;&#x2F;github.com&#x2F;conformal&#x2F;spectrwm" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;conformal&#x2F;spectrwm</a><p>That said, many thanks to xmonad for opening a path and inspiring other projects
FullyFunctional超过 3 年前
Just 2 0 0 0 lines?!? That&#x27;s really saying something. I wish it was available on macOS.<p>OT: I&#x27;ve falling back in love with Haskell after reading Ben Lynn&#x27;s astonishing adventures (<a href="https:&#x2F;&#x2F;crypto.stanford.edu&#x2F;~blynn&#x2F;compiler&#x2F;" rel="nofollow">https:&#x2F;&#x2F;crypto.stanford.edu&#x2F;~blynn&#x2F;compiler&#x2F;</a>) and it&#x27;s still super awesome for explorative programming.
评论 #28794461 未加载
评论 #28794391 未加载
评论 #28794555 未加载
评论 #28794663 未加载
评论 #28794596 未加载
评论 #28796958 未加载
lsuresh超过 3 年前
XMonad is the one thing I miss dearly from Linux since I had to switch to a Mac. With some effort, yabai [1] on Mac can approximate XMonad well enough (mainly, multiple workspaces, automatic tiling, focus follows mouse, and a few other key bits).<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;koekeishiya&#x2F;yabai&#x2F;" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;koekeishiya&#x2F;yabai&#x2F;</a>
upofadown超过 3 年前
&gt;per-screen workspaces<p>My killer feature. It makes having multiple monitors so much more productive. I don&#x27;t want one larger screen with a big dead spot in the middle. If I want a large&#x2F;wide screen I will just go out and buy one. I want more places to put stuff.
POiNTx超过 3 年前
Bspwm is great too if you&#x27;re interested in trying a tiling window manager. Have been using it almost exclusively for the last 2 years without too many problems.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;baskerville&#x2F;bspwm" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;baskerville&#x2F;bspwm</a>
clircle超过 3 年前
I&#x27;ve always found tiling WMs to be quite nice on small screens, but a chore on large screens. I use a 27 inch 4k screen currently and much prefer gnome or xfce. i3&#x2F;dwm&#x2F;xmonad was great on my x220 thinkpad.
评论 #28796102 未加载
评论 #28794879 未加载
评论 #28795957 未加载
评论 #28795192 未加载
Symmetry超过 3 年前
I&#x27;ve been using XMonad for over 10 years now. Originally I went with Awesome but then decided I liked still having a normal desktop environment and XMonad&#x27;s integration with Gnome was really easy.<p>The way I&#x27;ve done this has changed a bit over the years, these days I drop a file in .config&#x2F;autostart letting xmonad replace the normal window manager after Gnome gets itself sorted out.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;aclough&#x2F;dotfiles" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;aclough&#x2F;dotfiles</a>
shimonabi超过 3 年前
I tried but couldn&#x27;t get used to tiling window managers. Even learned a bit of Haskell to write XMonad config files once.<p>I like to be able to have one application on top of another and especially not using the WHOLE partition. Don&#x27;t create artificial constrictions for yourself. Some applications are designed to work only with a specified width and height.<p>I guess it&#x27;s fine if you use your computer just for the command line stuff.
评论 #28795522 未加载
评论 #28799919 未加载
georgewsinger超过 3 年前
SimulaVR[1] (also written in Haskell) one considered naming itself &quot;3DMonad&quot; in homage to XMonad.<p>[1] <a href="https:&#x2F;&#x2F;simulavr.com" rel="nofollow">https:&#x2F;&#x2F;simulavr.com</a>
评论 #28797139 未加载
beshrkayali超过 3 年前
If Sway had the support it deserves and a larger developer base to actually work decently with Nvidia cards, there would be no competition really. Under Wayland, it’s definitely the best WM experience anyone can wish for.<p>I understand the whole issue with nvidia and their asinine drivers, so no need to come down on me. Hopefully things change in the future with Nvidia cards, I absolutely love the experience Sway provides on integrated intel gpus.
评论 #28799136 未加载
评论 #28796933 未加载
frankish超过 3 年前
I do miss being able to use Xmonad, but definitely checkout Amethyst[0] if using MacOS.<p>[0]: <a href="https:&#x2F;&#x2F;ianyh.com&#x2F;amethyst&#x2F;" rel="nofollow">https:&#x2F;&#x2F;ianyh.com&#x2F;amethyst&#x2F;</a>
yewenjie超过 3 年前
I have recently moved to Sway on Wayland from AwesomeWM. While I like most of it, I miss the level of customization though - is there some really advanced Sway config out there?
_-david-_超过 3 年前
Does anybody have good suggestions for a good WM on Wayland? I know SwayWM is quite popular, but I was wondering if there are any other good ones out there.
评论 #28796977 未加载
hyperstar超过 3 年前
I switched to StumpWM, but I miss layouts.
tomcooks超过 3 年前
Is there a website comparing XMonad to suckless dwm? Judging from the site the incentives seem equal or similar.
assbuttbuttass超过 3 年前
I love xmonad and use it on all my desktops. I haven&#x27;t had one crash in 8-10 years of daily use
flippinburgers超过 3 年前
I guess I will have to avoid wayland if xmonad never makes the move.
lolcat_cowsay超过 3 年前
Advice to anyone who wants to start using XMonad, READ the docs..
alwaysjoe超过 3 年前
How can there not be any screenshots?
评论 #28800568 未加载