chiark / gitweb /
Mark Wooding [Sun, 10 May 2020 14:14:08 +0000 (15:14 +0100)]
dot/putty-defaults: Hugely increase the scrollback size.
I chose 1000 back when memory was less plentiful than it is now.
I calculate:
10,000 lines by
638 columns (6x13 on UHD+ display), by
8 bytes (four bytes Unicode, four attributes)
comes out as 48.5MB, which is trivial by modern standards.
Mark Wooding [Sun, 10 May 2020 14:02:32 +0000 (15:02 +0100)]
bin/mdw-build: Always create the logfile, even in verbose builds.
I finally realised that I can use process substitution to make this
work, rather than messing about with coprocesses. Go me.
Mark Wooding [Sun, 10 May 2020 14:00:31 +0000 (15:00 +0100)]
bin/mdw-build: Do all of the log descriptor setting in one place.
Rather than setting things up for a verbose build and then changing
things later.
Mark Wooding [Sun, 10 May 2020 13:59:14 +0000 (14:59 +0100)]
bin/mdw-build: Delay official `assign' for `$toppath' and `$releasepath'.
... until after we've established the logfile. Otherwise it won't
capture these things.
Mark Wooding [Sun, 10 May 2020 13:51:05 +0000 (14:51 +0100)]
bin/mdw-build: Don't assign `$srcpath' until after `checkout'.
Otherwise we end up printing two `--- srcpath = ...' lines in the common
`checkout' case, which is just silly.
Instead:
* set `$srcpath' in the `checkout' stanza, either pointing the new
tree or back at the original one; and
* use `$topath' for the original source tree until we've established
`$srcpath'.
Mark Wooding [Sun, 10 May 2020 12:43:47 +0000 (13:43 +0100)]
bin/mdw-build, bin/mdw-sbuild-server: Run the builds nicely.
Mark Wooding [Sun, 10 May 2020 18:43:37 +0000 (19:43 +0100)]
bin/xduplic-terminal: New script: start terminals for `xduplic-copier'.
While `xduplic-copier' is awesome, it doesn't work with terminal
emulators built against GTK 3 for bogus `security' reasons. Also,
typically, I want to start lots of terminals starting out doing slightly
different things.
Anyway, this is a simple which opens a bunch of suitable terminals based
on tags provided on the command line.
Mark Wooding [Sun, 10 May 2020 01:56:28 +0000 (02:56 +0100)]
bin/mdw-build: Use dynamically chosen file descriptors.
Having just ranted about a bug caused by shell scripts statically
allocating file descriptors, fix `mdw-build' to allocate descriptors
dynamically, since it's written in Bash, which can apparently do this.
Mark Wooding [Sun, 10 May 2020 01:49:02 +0000 (02:49 +0100)]
bin/mdw-build: Close our file descriptors when running subcommands.
Otherwise they cause problems. Automake's generated `Makefile' calls
out to `config.status' to do something involving dependency tracking;
but that in turn calls back out to `make'. If the jobserver is active,
then the file-descriptor juggling done inside `config.status' can
clobber the jobserver pipe descriptors, which breaks things badly.
It appears that the file-descriptor assignments in `config.status' are
finely judged so that they will avoid the jobserver descriptors /if/ the
prevailing environment hasn't opened any descriptors beyond the standard
three. So we must keep our descriptors from leaking out and messing up
this delicate balance.
Of course, this is really a bug in Autoconf and/or Automake, but POSIX
shell doesn't have a way to allocate a descriptor dynamically, so I'm
going to cut them some slack here.
Mark Wooding [Sun, 10 May 2020 01:48:03 +0000 (02:48 +0100)]
bin/mdw-build: Make a note of the persistent file-descriptor assignments.
It's a little fiddly to work out each time.
Mark Wooding [Sat, 9 May 2020 23:50:23 +0000 (00:50 +0100)]
bin/mdw-build: Allow overriding the `make' program.
Not generally useful, but handy for debugging.
Mark Wooding [Sat, 9 May 2020 23:47:27 +0000 (00:47 +0100)]
dot/shell-rc: Put the hostname qualifiers in the terminal title.
Mark Wooding [Sat, 9 May 2020 23:46:45 +0000 (00:46 +0100)]
dot/shell-rc: Factor out the terminal and screen title-setting.
This is getting even more complicated as time goes on.
Mark Wooding [Sat, 9 May 2020 23:45:20 +0000 (00:45 +0100)]
dot/shell-rc: Calculate the hostname qualifiers once in advance.
The `qualifiers' here are things like the chroot or cross-environment
name.
Mark Wooding [Sat, 9 May 2020 21:07:21 +0000 (22:07 +0100)]
dot/profile: Unbungle the setting of `$DEB_BUILD_OPTIONS'.
Oops.
Mark Wooding [Sat, 9 May 2020 13:53:48 +0000 (14:53 +0100)]
dot/shell-rc: Run `cross-run' nicely by default.
The usual application is to run make(1) or some other highly intensive
thing in lots of different cross environments at the same time, so this
seems like something that should try to be nice.
Mark Wooding [Fri, 8 May 2020 17:15:40 +0000 (18:15 +0100)]
dot/emacs: Experimentally tern on focus-follows-mouse in Emacs.
Mark Wooding [Fri, 8 May 2020 16:43:02 +0000 (17:43 +0100)]
dot/parallel-hosts: A useful SSH hosts file for GNU `parallel'.
Mark Wooding [Fri, 8 May 2020 13:45:42 +0000 (14:45 +0100)]
dot/profile, dot/mdw-build.conf: Set `DEB_BUILD_OPTIONS' automatically.
There's a new `.mdw.conf' setting for the parallelism level.
Mark Wooding [Fri, 8 May 2020 02:15:36 +0000 (03:15 +0100)]
Makefile: Actually install a link for `mdw-build.conf'.
Mark Wooding [Fri, 8 May 2020 02:15:09 +0000 (03:15 +0100)]
dot/mdw-build.conf: Set the parallelism from `.mdw.conf'.
Mark Wooding [Thu, 7 May 2020 00:09:46 +0000 (01:09 +0100)]
el/dot-emacs.el: Add machinery for not renaming buffers along with files.
For example: if `backup-by-copying' is nil (which it is for me), then
`backup-buffer' will rename the file to its backup name -- and then
we'll be left visiting the backup file, which is obviously hopeless.
Add a variable `mdw-inhibit-rename-buffer' which instructs the
`rename-file' advice not to rename the buffer as well, and a new macro
`mdw-advise-to-inhibit-rename-buffer' to advise various functions to set
this variable while they're operating.
Mark Wooding [Thu, 7 May 2020 00:09:16 +0000 (01:09 +0100)]
el/dot-emacs.el: Add a missing docstring.
Mark Wooding [Wed, 6 May 2020 18:36:02 +0000 (19:36 +0100)]
bin/start-ssh-agent: Don't proceed if the SSH programs aren't around.
Otherwise, when I enter an schroot session, there's no `ssh-add'
installed, so the `is the agent running' test /fails/, we delete the
socket, and then fail to start a replacement agent because `ssh-agent'
doesn't exist either. The result is that I've now lost my socket for
my (otherwise completely functional) agent, and there is sadness.
Mark Wooding [Wed, 6 May 2020 17:51:58 +0000 (18:51 +0100)]
el/dot-emacs.el: Advise `rename-file' to rename buffers at the same time.
I remember investigating this hack a while ago and finding that it
looked very difficult. This time, it's nearly trivial. What gives?
Mark Wooding [Wed, 6 May 2020 17:51:47 +0000 (18:51 +0100)]
dot/emacs: Add bindings for `dired-jump' and `dired-jump-other-window'.
And the necessary autoloads. They ought to work already, but don't on
Emacs 24 for some reason.
The bindings are standard, except for `C-x 4 j', which ought to exist
but doesn't.
Mark Wooding [Wed, 6 May 2020 17:51:23 +0000 (18:51 +0100)]
dot/emacs: Sort the `devhelp-...' bindings into the correct order.
Mark Wooding [Tue, 5 May 2020 22:34:38 +0000 (23:34 +0100)]
dot/gitconfig.in: Add a rune for fast-forwarding branches.
I type this longhand quite often, and it's gotten old.
Mark Wooding [Mon, 4 May 2020 00:00:51 +0000 (01:00 +0100)]
dot/ipython-key-bindings.py: Don't leak names into the toplevel environment.
It seems that this file, unlike the `ipython-config.py', is evaluated in
the same toplevel environment as is used for the interactive session. I
initially tried to do this by deleting all the names after I'd finished
using them, but the `inhibit_history_search' function is looked up by
name from the `prev_line' and `next_line' bindings, so that doesn't
work. Instead, lambda-bind everything by wrapping a function around the
whole lot; the evaluate the function to make everything happen, and
delete the function name, leaving the bindings functions in its orphaned
environment.
Mark Wooding [Sun, 3 May 2020 23:57:06 +0000 (00:57 +0100)]
dot/ipython-key-bindings.py: Fix some bogus formatting.
Being fair, one of these lines isn't bogus yet, but would be if I
indented it one more step, and I intend to do just that now.
Mark Wooding [Sun, 3 May 2020 16:47:32 +0000 (17:47 +0100)]
bin/mdw-sbuild{,-server}: Push arguments through to `dpkg-buildpackage'.
Both now have `-A' options to make this work.
Mark Wooding [Thu, 30 Apr 2020 13:18:06 +0000 (14:18 +0100)]
bin/check-blkdev-size: Don't print the full path in witter lines.
Mark Wooding [Wed, 29 Apr 2020 14:56:53 +0000 (15:56 +0100)]
bin/media-keys: Don't get upset if the `disorder playing' coprocess dies.
It did its job either way.
Mark Wooding [Wed, 29 Apr 2020 14:29:45 +0000 (15:29 +0100)]
bin/media-keys: Actually print the name of the person who picked a track.
Might as well since it's lying about.
Mark Wooding [Wed, 29 Apr 2020 14:28:31 +0000 (15:28 +0100)]
bin/media-keys: Don't break just because someone actually picked a track.
There's an extra `picked ...' line for this case.
Mark Wooding [Tue, 28 Apr 2020 14:12:56 +0000 (15:12 +0100)]
bin/wakey.sh: Fix idiotic typo that stopped it from working.
Mark Wooding [Tue, 28 Apr 2020 12:42:34 +0000 (13:42 +0100)]
dot/xinitrc: Fix detection of GTK 2.0-based `pterm'.
Firstly, the match is usually preceded at least by whitespace, and
secondly, it seems that the library may, at least sometimes, be called
`libgtk-x11-2.0.so'.
Mark Wooding [Tue, 28 Apr 2020 10:30:53 +0000 (11:30 +0100)]
dot/putty-defaults: Don't maintain a separate icon title.
Mark Wooding [Mon, 27 Apr 2020 00:24:03 +0000 (01:24 +0100)]
bin/bdl: Remove the `$S' separator.
It's much easier just to jam it on the end of the base if necessary.
Also, it interferes with not having a prefix. As a result of this
change, mark `B=' as optional.
Mark Wooding [Mon, 27 Apr 2020 00:21:30 +0000 (01:21 +0100)]
bin/bdl: Put a `Usage:' prefix on the usage text.
Mark Wooding [Mon, 27 Apr 2020 00:20:20 +0000 (01:20 +0100)]
bin/bdl: Add to the collection.
Had this lying around for aaages.
Mark Wooding [Sun, 26 Apr 2020 18:26:35 +0000 (19:26 +0100)]
dot/emacs: Don't use a gratuitously different label on icons.
Mark Wooding [Sun, 26 Apr 2020 18:19:11 +0000 (19:19 +0100)]
dot/emacs: Put the unqualified hostname in the frame title.
Mark Wooding [Sat, 25 Apr 2020 22:08:29 +0000 (23:08 +0100)]
el/dot-emacs.el: Sharpen up the page delimiter patterns.
The page-banner pattern is now much more precise: we need a brief
comment-opening sequence, up against the left margin, exactly five `-'s,
an optional heading surrounded by spaces, and then more `-'s to the end
of the line, with an optional short comment-closing sequence or knob.
I've not been especially picky about the comment opening and closing
sequences except that they should be short, but I don't think that will
be a problem.
We now need the `^L' to be at the start of the line. The documentation
implies that Emacs already ensured this, but that's not true.
Mark Wooding [Sat, 25 Apr 2020 22:07:05 +0000 (23:07 +0100)]
el/dot-emacs.el: Fix page motion properly.
Emacs's built-in page motion machinery wants pages to start /after/ the
delimiter, but since I'm looking for page-heading banners, I want the
page to start /before/ the banner. So add some advice so that Emacs
does the right thing.
Mark Wooding [Sat, 25 Apr 2020 20:54:05 +0000 (21:54 +0100)]
bin/fixsub: Add little script for hacking Dovecot subscription files.
Mark Wooding [Sat, 25 Apr 2020 01:21:03 +0000 (02:21 +0100)]
dot/shell-rc: Write the various control sequences to the terminal explicitly.
Mark Wooding [Sat, 25 Apr 2020 01:17:57 +0000 (02:17 +0100)]
dot/zshrc: Fix arguments to the hooks.
The `precmd' hook doesn't take an argument -- what would it say anyway?
The `preexec' hook should have the command, only without newlines,
because otherwise the newline aborts the set-title control sequence,
and (a) the title doesn't get changed after all, and (b) lines after the
first get spammed to the terminal output.
Fortunately, `zsh' provides a version of the command without the
newlines, which looks purpose-built for this application.
Mark Wooding [Fri, 24 Apr 2020 23:32:24 +0000 (00:32 +0100)]
dot/gnus-local.el.distorted: Set `odin.gg' sender address if applicable.
Gather an alist mapping mailbox names to `odin' local-parts and consult
it when building the sender address.
Mark Wooding [Fri, 24 Apr 2020 23:30:51 +0000 (00:30 +0100)]
dot/gnus-local.el.distorted: Refactor the posting-style for `crap.*'.
Capture the mailbox name first, then build the sender address.
Mark Wooding [Fri, 24 Apr 2020 23:04:38 +0000 (00:04 +0100)]
dot/gnus-local.el.distorted: Sink `gnus-posting-styles' below `odin'.
Like it might depend on the `odin' data at some point.
Mark Wooding [Fri, 24 Apr 2020 23:02:46 +0000 (00:02 +0100)]
dot/gnus-local.el.distorted: Rename `list' to `splits'.
As if I might want to accumulate some other value some day.
Mark Wooding [Fri, 24 Apr 2020 23:01:08 +0000 (00:01 +0100)]
dot/gnus-local.el.distorted: Change how `odin' data is collected.
Rename the function, and change it so that it updates a variable rather
than just returns the result. This will make it easier to produce other
kinds of reports later.
Mark Wooding [Fri, 24 Apr 2020 23:05:10 +0000 (00:05 +0100)]
dot/gnus-local.el.distorted: Add header for `nnmail-split-abbrev-alist'.
Must have forgotten this last time.
Mark Wooding [Fri, 24 Apr 2020 22:58:59 +0000 (23:58 +0100)]
dot/gnus-local.el.distorted: Add a little header for the `odin' hacking.
Mark Wooding [Fri, 24 Apr 2020 22:56:29 +0000 (23:56 +0100)]
el/dot-emacs.el: Use `mupdf', rather than Emacs's terrible built-in viewer.
Mark Wooding [Fri, 24 Apr 2020 22:55:16 +0000 (23:55 +0100)]
dot/emacs: Set envelope sender from headers when sending email.
Mark Wooding [Thu, 23 Apr 2020 12:43:39 +0000 (13:43 +0100)]
dot/ipython-config.py: Prevent `IPython' from changing the terminal title.
It doesn't have anything useful to say.
Mark Wooding [Thu, 23 Apr 2020 09:16:43 +0000 (10:16 +0100)]
dot/emacs: Permit duplicate entry names.
My database legitimately knows of two people with the same name.
Mark Wooding [Thu, 23 Apr 2020 09:15:34 +0000 (10:15 +0100)]
el/dot-emacs.el: Use more recent names for `calendar' access functions.
These changed back in Emacs 23, and the compatibility aliases don't
exist in Emacs 26 (why?!).
Mark Wooding [Thu, 23 Apr 2020 09:14:19 +0000 (10:14 +0100)]
el/dot-emacs.el: Add missing `mdw-' prefix on `mdw-terminal-title-alist'.
Mark Wooding [Thu, 23 Apr 2020 09:12:59 +0000 (10:12 +0100)]
el/dot-emacs.el: Use plain `equal' for comparing terminal names.
It seems that the three-argument version of `assoc' is too new.
Mark Wooding [Thu, 23 Apr 2020 01:23:13 +0000 (02:23 +0100)]
el/dot-emacs.el: Update terminal titles as we go.
Mark Wooding [Thu, 23 Apr 2020 01:22:42 +0000 (02:22 +0100)]
dot/emacs: Make frame titles a bit more useful.
Mention the user name; don't bother distinguishing between kinds of
Emacs.
Mark Wooding [Wed, 22 Apr 2020 23:46:30 +0000 (00:46 +0100)]
dot/Xdefaults: Tweak `xterm' resources so I can set the title.
For some stupid reason, you can't allow SendEvents and setting window
titles. This doesn't make any sense to me. Anyway, I only need
SendEvents for `xduplic-copier', and I use `pterm' for that rather than
`xterm', so let's have the titles.
Mark Wooding [Wed, 22 Apr 2020 23:11:50 +0000 (00:11 +0100)]
dot/shell-rc: Set the window title to something useful.
I have too many of the damned things to have them all show the same
title.
Mark Wooding [Wed, 22 Apr 2020 23:11:22 +0000 (00:11 +0100)]
dot/shell-rc: Capture the hostname once and for all.
Rather than every time we set the prompt.
Mark Wooding [Wed, 22 Apr 2020 23:10:56 +0000 (00:10 +0100)]
dot/putty-defaults: Permit changing the window title.
Mark Wooding [Wed, 22 Apr 2020 21:13:55 +0000 (22:13 +0100)]
dot/shell-rc: Track rename of `$MDW_BUILDENV' to `$CROSS_BUILDENV'.
Mark Wooding [Wed, 22 Apr 2020 21:04:31 +0000 (22:04 +0100)]
bin/wakey.sh: Don't vomit at the terminal if the active window is dead.
I don't care about the error here: if `xwininfo' fails, then all that
happens is that I miss some (or all) of the window-ids, which is fine by
me. In particular, if this happens with the terminal window, then I've
got nothing to complain into anyway.
Mark Wooding [Wed, 22 Apr 2020 19:17:56 +0000 (20:17 +0100)]
dot/zshrc: Automatically rehash command completions on a cache miss.
Solution found at https://bbs.archlinux.org/viewtopic.php?id=175388.
Mark Wooding [Tue, 21 Apr 2020 18:10:06 +0000 (19:10 +0100)]
bin/wakey.sh: Delete bogus space.
Mark Wooding [Tue, 21 Apr 2020 18:04:53 +0000 (19:04 +0100)]
bin/wakey.sh: Fix the sense of the startup condition.
Mark Wooding [Tue, 21 Apr 2020 18:02:30 +0000 (19:02 +0100)]
dot/gnus-local.el.distorted: Add my main chiark mail account.
Mark Wooding [Tue, 21 Apr 2020 18:02:05 +0000 (19:02 +0100)]
dot/gnus-local.el.distorted: Add split configuration to other mail servers.
Mark Wooding [Tue, 21 Apr 2020 12:32:29 +0000 (13:32 +0100)]
dot/bashrc: Delay setting `__mdw_running' so as not to clobber `$?'.
Mark Wooding [Tue, 21 Apr 2020 12:04:37 +0000 (13:04 +0100)]
bin/wakey.sh: Rename, now that it's not `zsh'-specific.
Mark Wooding [Tue, 21 Apr 2020 12:03:58 +0000 (13:03 +0100)]
bin/wakey.zsh: Use the new hook machinery to insinuate.
Mark Wooding [Tue, 21 Apr 2020 12:02:25 +0000 (13:02 +0100)]
bin/wakey.zsh: Quote arguments to `notify-send' for other shells.
`zsh' itself is fine here; but I'm making this portable to `bash'.
Mark Wooding [Tue, 21 Apr 2020 12:01:36 +0000 (13:01 +0100)]
bin/wakey.zsh: Delete the type setting.
It gets in the way and doesn't actually achieve anything useful, because
the arithmetic evaluation `(( ... ))' does all of the necessary work
anyway.
Mark Wooding [Tue, 21 Apr 2020 12:00:44 +0000 (13:00 +0100)]
bin/wakey.zsh: Correctly match `$LONG_RUNNING_IGNORE_LIST'.
Mark Wooding [Tue, 21 Apr 2020 11:59:53 +0000 (12:59 +0100)]
bin/wakey.zsh: Use `xwininfo -tree' like I should have done from the start.
I even commented in the commit message that I should have scanned
recursively; I just didn't spot that `xwininfo' would do all of the
heavy lifting for me.
Mark Wooding [Tue, 21 Apr 2020 11:59:05 +0000 (12:59 +0100)]
bin/wakey.zsh: Use `$SECONDS' rather than `$EPOCHREALTIME'.
It's portable to (even fairly old) `bash', for example.
Mark Wooding [Tue, 21 Apr 2020 11:57:06 +0000 (12:57 +0100)]
bin/wakey.zsh: Fix a stupid syntax error.
... which, for some reason, `zsh' accepted silently.
Mark Wooding [Tue, 21 Apr 2020 11:54:55 +0000 (12:54 +0100)]
dot/shell-rc, dot/bashrc, dot/zshrc: Introduce a formal notion of hooks.
Replace the `__mdw_precmd' and `__mdw_preexec' functions with hooks.
Each shell implementation is responsible for calling the hooks at the
right time, but the common core is responsible for maintaining the hooks
and doing the job of invoking the hook functions.
Use this machinery for the prompt setting and `screen' status things.
Mark Wooding [Tue, 21 Apr 2020 11:53:20 +0000 (12:53 +0100)]
dot/zshrc: Write numbers in odd bases using C notation.
Otherwise other programs which see this output get confused. It doesn't
help that `zsh' sets the output base from the initial input base.
Mark Wooding [Tue, 21 Apr 2020 11:52:16 +0000 (12:52 +0100)]
dot/zshrc: Hoist history settings above calling `.shell-rc'.
This way, `.shell-local' can override the settings.
Mark Wooding [Tue, 21 Apr 2020 11:51:54 +0000 (12:51 +0100)]
dot/shrc: Add missing trailer line.
Mark Wooding [Tue, 21 Apr 2020 11:51:05 +0000 (12:51 +0100)]
dot/bashrc, dot/zshrc: Promote invoking the common config.
There's going to be more machinery added around here.
Mark Wooding [Mon, 20 Apr 2020 18:28:23 +0000 (19:28 +0100)]
bin/wakey.zsh: Don't turn on if `WINDOWID' isn't set.
It doesn't have a good chance of working, even if you've turned on
`IGNORE_WINDOW_CHECK'.
Mark Wooding [Sun, 19 Apr 2020 20:49:25 +0000 (21:49 +0100)]
dot/putty-defaults: Hide the mouse cursor when typing.
Emacs does this, and it's not too annoying.
Mark Wooding [Sun, 19 Apr 2020 20:47:50 +0000 (21:47 +0100)]
el/dot-emacs.el: Revert `variable-pitch' to (server-side) Helvetica 12pt.
The anti-aliased `Sans' is harder to read and takes up more space. The
9pt Helvetica is a poor match for `6x13'.
Mark Wooding [Mon, 20 Apr 2020 12:18:36 +0000 (13:18 +0100)]
bin/wakey.zsh: Implement the active-window check from Lange's version.
This is actually rather annoying, because (unlike `xterm'), `pterm''s
announced `WINDOWID' isn't its toplevel, so we have to go digging. In
theory I should do a recursive walk, but, well, I don't yet.
Mark Wooding [Mon, 20 Apr 2020 12:17:02 +0000 (13:17 +0100)]
bin/wakey.zsh: Refactor the logic in `__wakey_precmd'.
Split it into two sections: one to decide whether to report a
notification, and a second to actually do it.
The logic for the first stage is going to become more complicated, and
this avoids having to have two copies of the notification code.
Mark Wooding [Mon, 20 Apr 2020 12:14:23 +0000 (13:14 +0100)]
bin/wakey.zsh: Don't do anything if there's no X display, or `notify-send'.
Mark Wooding [Mon, 20 Apr 2020 12:13:59 +0000 (13:13 +0100)]
bin/wakey.zsh: Implement `LONG_RUNNING_IGNORE_LIST' from Lange's version.
Mark Wooding [Tue, 14 Apr 2020 17:30:07 +0000 (18:30 +0100)]
dot/gnus.el: Make `.' be a symbol constituent when splitting mail.
This sometimes gets used in email address local parts.
Mark Wooding [Tue, 14 Apr 2020 17:24:32 +0000 (18:24 +0100)]
dot/gnus.el: Make `<' and `>' be punctuation when splitting mail.
Email addresses are commonly written between angle brackets in header
lines. I sometimes want to be able to parse out an entire email
address, or at least a local-part, from a header, as part of a Gnus
split specifier. But Gnus prepends a `.*' to the split regexp, so one
needs to take special precautions to start in the right place, typically
by using `\_<' to align to the start of a symbol. But if `<' is a
symbol character, then this won't work.
Worse, Gnus typically also tries to align to a word boundary by sneaking
in `\<'. But then we have `\<\_<', which rejects an email address
starting enclosed in `<' ... `>' altogether.
Fortunately, the syntax table used by Gnus while splitting email is
configurable, so we can override this silliness.
Mark Wooding [Mon, 20 Apr 2020 00:22:44 +0000 (01:22 +0100)]
bin/wakey.zsh: Add a new hack to tell me about long-running commands.
This idea was from Jonathan Lange's `undistract-me': see
https://github.com/jml/undistract-me
for the original for Bash.
Mark Wooding [Sun, 19 Apr 2020 23:39:51 +0000 (00:39 +0100)]
bin/disorder-notify, dot/e16-bindings: Use `notify-send', not `gdbus'.