That's where they belong. As XDG was more or less broken in previous
xmonad releases, we can assume few people use it so now's the best time
to move files around.
For users of `~/.xmonad`, this only causes intermediate outputs (.o,
.hi) to go elsewhere.
Fixes: https://github.com/xmonad/xmonad/issues/178
Some layout and layout modifiers that keep track of some window
properties don't do garbage collection and update their state when
windows are destroyed. By broadcasting this event, it should be easier
for layouts to clean up
Related: https://github.com/xmonad/xmonad-contrib/pull/474
utf8-string isn't needed since d9e3ebf531
(late 2014).
Most of the executable xmonad deps are unnecessary since
307b82a53d (early 2015).
Switch from data-default to data-default-class to avoid bringing in deps
and instances we don't need.
In some shells—like bash—the entire help message is shown in a single
line because a newline is printed as a literal "\n" character when using
echo. Some distributions[1] have /bin/sh linked to bash, and so new
users are likely to run into this at some point.
We could fix this by either removing show and explicitly adding an
escaped quotation symbol before and after the string, or by using printf
instead of echo. The printf solution seems more portable[2] and so I
propose we go with that one.
[1]: f5b9a25cdd/nixos/modules/config/shells-environment.nix (L129-L143)
[2]: https://unix.stackexchange.com/questions/65803/why-is-printf-better-than-echo/#65819
Users who are installing stack on systems like Debian stable or Ubuntu
may get really old version of stack—much older than we currently
support. Thankfully, stack can upgrade itself rather easily with one
single command, so mention that.
Fixes: https://github.com/xmonad/xmonad/issues/303
The `choose` combinator is very general; much more so than the
combination of `switch`, `swap`, and `passOnM`.
We can thus replace most of the implementation with calls to `choose`
and properly put everything related to `JumpToLayout` under one guard.
Plus, we don't need to define any extra functions that would have to be
tested in some way.
Co-authored-by: Tomas Janousek <tomi@nomi.cz>
The functionality of the former are quite handy to have in core and we
can do so with minimal code changes.
The drawbacks of this approach are
1. We can't merge JumpToLayout into ChangeLayout because people may
have imported JumpToLayout(..), which we can't simulate with type
aliases, patterns, and the like.
2. Because the internal structure of X.L.LayoutCombintors.(|||) is a
bit different, this creates a regression for people who used
NextLayoutNoWrap or Wrap in their configs. We could work around
this by creating fake instances of these fields in the new
JumpToLayout constructor and simply not doing anything with them,
but since this seems like quite an advanced and specific use-case,
failing fast and hard (as opposed to adding deprecation messages
and then "silently" not handling these messages) seems preferrable
here.
Related: https://github.com/xmonad/xmonad-contrib/pull/493
Related: https://github.com/xmonad/xmonad-contrib/issues/116
Xrandrint.h says:
/*
* if a configure notify on the root is recieved, or
* an XRRScreenChangeNotify is recieved,
* XRRUpdateConfiguration should be called to update the X library's
* view of the screen configuration; it will also invalidate the cache
* provided by XRRScreenConfig and XRRConfig, and force a round trip
* when next used. Returns invalid status if not an event type
* the library routine understand.
*/
If any user code needs that info/cache to be correct, we need to call
this.
In sendRestart, switch to the new setClientMessageEvent' and pass no
data, as no data are expected. Passing currentTime was confusing, as
it's only interpreted as time in some ClientMessage types.
In killWindow, it's the other way around.
The reference to the freenode matrix channel is deleted for now; though
it may be added back in later-on, as the matrix team is working towards
bridging Libera. We may also link the other matrix channel at some
point.
Related: https://github.com/xmonad/xmonad-web/pull/21
Ever since 322e06eed9c4b23a465d2857df462b8a2d716246 `ppTitleUnfocused`
does not exist anymore, as it was moved to `X.U.Loggers.logTitles`.
This makes the tutorial aware of that.