xmonad / xmonad-contrib

Contributed modules for xmonad
https://xmonad.org
BSD 3-Clause "New" or "Revised" License
584 stars 274 forks source link

Start modernising X.D.Extending #637

Closed slotThe closed 2 years ago

slotThe commented 2 years ago

Description

We've discussed this a bit on IRC, but here it goes again: since we have the tutorial, both X.D.Configuring and X.D.Extending lose a bit of their relevance. In my opinion, the former is completely redundant now (and should perhaps be removed some other time) while the latter could now be used for more "advanced" configuration that still isn't quite writing ones own module. This is an attempt to kickstart this.

X.D.Extending: Link to tutorial instead of the wiki

The configurations on the wiki are quite old and mostly non-functional at this point. Instead, we have a shiny new tutorial we can refer to. It contains links to actual maintainers configurations (complex they may be, at least they compile).

X.D.Extending: Rephrase introduction, update

Since the tutorial is really the better place to start learning how to use xmonad, X.D.Extending can be the place for more "advanced" usage examples. These would be things like writing small functions to scratch an itch (rather than entire modules). Rewrite the introduction accordingly.

On the way, remove some small inconsistencies/dead links/remarks about how things are different from version 0.5 onwards—these times are long gone now.

X.D.Extending: Explain how to write additionalKeys

Instead of telling the user how to add custom keybindings to xmonad—something which is already done in the tutorial—instead explain instead how one would go about writing a version of X.U.EZConfig.additionalKeys. This mostly involves looking at the type signatures and sticking some standard functions together, so it's quite a decent way to learn about some of xmonad's internals.

Checklist