emacs/var/elfeed/db/data/17/174bd47a42a9e9f18fe9e28d0af427ef47c74255
2022-01-03 12:49:32 -06:00

160 lines
7.1 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<p>My <a href="https://gitlab.com/protesilaos/dotfiles">dotfiles on GitLab</a> contain
a series of breaking changes. <strong>Relax:</strong> if you read that repos
README, you should know that I do not recommend tracking it directly.
Still, there may be something for you to learn here. Read more for a
comprehensive overview of the state of affairs.</p>
<hr />
<p>In a previous entry, I documented how to <a href="https://protesilaos.com/codelog/2019-10-10-debian-xmodmap/">set up the Hyper key on
Debian</a>. My
motive then was to use it inside of my Emacs setup. However, I have
since revised this approach. Hyper shall now be used as the main
modifier key for my tiling window manager. Because of this I am
reverting back full time to my BSPWM session.</p>
<p>I had switched away from my bespoke desktop session in early July, just
after I published my “Prots Dots For Debian” or just <a href="https://protesilaos.com/pdfd/">PDFD</a>
(the book that helps users reproduce my setup). The publication of the
book was an ideal opportunity for me to try something new, so I went
with Emacs. Because I wanted to use the Super key inside of Emacs, I
could no longer stay on BSPWM, hence my temporary switch to Xfce, where
I disabled all of the desktop environments key bindings in an attempt
to focus exclusively on Emacs.</p>
<p>That was the right decision at the time, as it helped me learn this
truly special tool. With the Hyper key now in place, I no longer face
the constraints that forced me away from BSPWM. As such, I just pushed
a set of <strong>breaking changes</strong> to my dotfiles repo, which do the
following:</p>
<ul>
<li>Enable the Hyper key, mapping it to the Caps Lock and the right “Win”
respectively. The Super key is now only available on the left “Win”.</li>
<li>Implement the necessary <code>setxkbmap</code> options and perform the
concomitant <code>xmodmap</code> configurations during BSPWM initialisation.</li>
<li>Remove all references to the Super key (<code>mod4</code>) in my SXHKD
configuration files. The key <code>mod3</code> (aka Hyper) takes their place.</li>
</ul>
<p>I am including the full text of the two commits in the annex to this
blog post (see below).</p>
<p>My longer term objective is to merge my dotfiles with my new Emacs
setup. The implications will be far-reaching, as I will eventually
remove or otherwise reconsider the inclusion of program configs that are
not part of my Emacs workflow. This means that I might delete my Vim
settings, as well as anything that has to do with emailing, reading
feeds, etc.</p>
<p>Whatever the case, PDFD continues to work as intended. I was prescient
enough to use a “snapshot” of my dotfiles, placed in a separate repo,
and to rely on Debians legendary stability.</p>
<h2>ANNEX with commit ec885d16 and 257e6ca3</h2>
<p>First the latest fix
(<a href="https://gitlab.com/protesilaos/dotfiles/commit/257e6ca3b584cee20d08ac7dec0d7bfe19a96d22">257e6ca3</a>)
that allowed me to finally write this post.</p>
<pre><code>origin/master 257e6ca3b584cee20d08ac7dec0d7bfe19a96d22
Author: Protesilaos Stavrou &lt;info@protesilaos.com&gt;
AuthorDate: Sat Oct 19 22:41:22 2019 +0300
Commit: Protesilaos Stavrou &lt;info@protesilaos.com&gt;
CommitDate: Sat Oct 19 22:41:22 2019 +0300
Parent: 809345e Fix typo in Xmodmap and specify Compose key.
Merged: dynamicDesktops master mateTerminalDefault modularSXHKD xtermSwitch
Contained: master
Follows: v1.0.2-pdfd (10)
Fix mod3 configs (expands on commit ec885d1)
There are many parts to getting this right.
+ Some changes were necessary in Xmodmap.
+ A few options need to be specified.
+ The Maté settings daemon had to be disabled.
I tried switching layouts between the ones I use: US QWERTY and Greek.
The mod3 setup flawlessly now.
Concerning the settings daemon, I still need to find a solution, because
it provides some nice functionality I wish to keep. Perhaps a more
lightweight daemon could be used here. Will need to investigate.
3 files changed, 26 insertions(+), 33 deletions(-)
bspwm/.Xmodmap | 26 +++++++-------------------
bspwm/.config/bspwm/bspwmrc | 31 ++++++++++++++++++-------------
bspwm/.config/sxhkd/sxhkdrc | 2 +-
</code></pre>
<p>And the first one that ushered in the Hyper era
(<a href="https://gitlab.com/protesilaos/dotfiles/commit/ec885d16be726df122d88bcf4494210ae300cfa7">ec885d1</a>)</p>
<pre><code>ec885d16be726df122d88bcf4494210ae300cfa7
Author: Protesilaos Stavrou &lt;info@protesilaos.com&gt;
AuthorDate: Sat Oct 19 17:08:45 2019 +0300
Commit: Protesilaos Stavrou &lt;info@protesilaos.com&gt;
CommitDate: Sat Oct 19 17:08:45 2019 +0300
Parent: 582dac7 Change the way Git selects its editor
Merged: dynamicDesktops mateTerminalDefault modularSXHKD xtermSwitch
Contained: master
Follows: v1.0.2-pdfd (8)
BREAKING CHANGES: control session with Hyper key
My entire session is no longer dependent on using the Super key (mod4).
Its function is now performed by Hyper (mod3). This new modifier key is
defined in `.Xmodmap', which is included in the same Stow package as the
core BSPWM/SXHKD configs (because it is equally important to them).
The `.Xmodmap' enables Hyper and binds it to the Caps lock and the right
"Windows" key. This means that there no longer exists a toggle for
writing all capital letters. The Super key is also limited to just the
left Windows key. This is a tentative design that might be reviewed
upon further consideration.
* * *
The present commit is merely _the first step_ in a major review of my
custom desktop session. The overarching objective is to eventually
merge my bespoke BSPWM setup with my newer Emacs environment.
For the time being, my "dotemacs" is available from my website[0] and is
stored in a separate repo,[1] but will ultimately be merged with my
dotfiles once all the prerequisites are met.
Expect far-reaching changes to practically everything that I now do
inside of Emacs (writing, emailing, reading…) and is still covered by
specialised tools (vim, mutt, newsboat, ncmpcpp…). For more on that,
see my video blog on the Emacs mindset and the Unix philosophy (ignore
my remarks on Xfce, as I did not know about `mod3' back then).[2]
[0]: https://protesilaos.com/emacs/dotemacs
[1]: https://protesilaos.com/emacs/dotemacs
[2]: https://protesilaos.com/codelog/2019-08-09-vlog-emacs-unix/
* * *
If anyone reviewing this has read my "Prot's Dots For Debian",[4] they
should be reminded that PDFD does not track this repo directly. It has
its own "snapshot" of my dotfiles.[5]
I will not be pushing any of these breaking changes to PDFD for the time
being. That is a longer term objective that _might happen_ with the
release of Debian 11 'bullseye' (about 22 months from now).
[4]: https://protesilaos.com/pdfd
[5]: https://gitlab.com/protesilaos/cpdfd
4 files changed, 195 insertions(+), 68 deletions(-)
bspwm/.Xmodmap | 67 ++++++++++++++++++++++++
bspwm/.config/bspwm/bspwmrc | 5 ++
bspwm/.config/sxhkd/sxhkdrc | 83 ++++++++++++++++++++----------
bspwm/.config/sxhkd/sxhkdrc_bspc | 108 ++++++++++++++++++++++++---------------
</code></pre>