From f5f600e3908b4b00714a9658c2708b825322a137 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Wed, 23 Mar 2022 21:26:43 +0100 Subject: pkgs/sternenseemann/acme: init at 2021-10-19 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Patch plan9port most notably including a patch that fixes the interpretation of X11 key events. This resolves the problem that using the shift key of the neo layout would cause acme to start interpreting left mouse button as right mouse button. * Add a wrapper derivation that puts acme and all executables it absolutely requires in PATH. The full Plan 9 userland can still be accessed via the 9 executable, but this allows executing just acme and access e.g. the GNU coreutils from inside of it — in case you do want to use cat -v. machines/sternenseemann/wolfgang: install acme --- pkgs/sternenseemann/acme/neo-modifier-fix.patch | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 pkgs/sternenseemann/acme/neo-modifier-fix.patch (limited to 'pkgs/sternenseemann/acme/neo-modifier-fix.patch') diff --git a/pkgs/sternenseemann/acme/neo-modifier-fix.patch b/pkgs/sternenseemann/acme/neo-modifier-fix.patch new file mode 100644 index 00000000..f5e587d5 --- /dev/null +++ b/pkgs/sternenseemann/acme/neo-modifier-fix.patch @@ -0,0 +1,24 @@ +commit 139924014d126578e5a008f1df7a55831e668287 +Author: sternenseemann +Date: Sat Mar 19 15:52:59 2022 +0100 + + cmd/devdraw: Don't use X11 standard interpretation for modifiers + + This patch is based on a similar one [1] for drawterm by Sören Tempel. + + [1]: https://github.com/nmeum/aports/blob/master/8pit/drawterm/modifier-fix.patch + +diff --git a/src/cmd/devdraw/x11-screen.c b/src/cmd/devdraw/x11-screen.c +index 0bbc25d6..511fc093 100644 +--- a/src/cmd/devdraw/x11-screen.c ++++ b/src/cmd/devdraw/x11-screen.c +@@ -408,6 +408,9 @@ runxevent(XEvent *xev) + case KeyPress: + ke = (XKeyEvent*)xev; + XLookupString(ke, NULL, 0, &k, NULL); ++ /* dont use standard interpretation for modifiers */ ++ if(IsModifierKey(k)) ++ k = XLookupKeysym(ke, 0); + c = ke->state; + switch(k) { + case XK_Alt_L: -- cgit 1.4.1