chiark / gitweb /
profile
4 years agoel/dot-emacs.el: And the last use of `mdw-define-c-style'.
Mark Wooding [Wed, 20 May 2020 13:35:16 +0000 (14:35 +0100)]
el/dot-emacs.el: And the last use of `mdw-define-c-style'.

:-(

4 years agodot/emacs: Bind `backspace' in `isearch' mode.
Mark Wooding [Wed, 20 May 2020 13:32:31 +0000 (14:32 +0100)]
dot/emacs: Bind `backspace' in `isearch' mode.

4 years agoel/dot-emacs.el: Add missing parent argument to `mdw-define-c-style' calls.
Mark Wooding [Wed, 20 May 2020 13:32:06 +0000 (14:32 +0100)]
el/dot-emacs.el: Add missing parent argument to `mdw-define-c-style' calls.

Missed these the first time.

4 years agoel/dot-emacs.el: Split out a `mdw-trustonic-basic-c' style.
Mark Wooding [Tue, 19 May 2020 10:51:58 +0000 (11:51 +0100)]
el/dot-emacs.el: Split out a `mdw-trustonic-basic-c' style.

Some parts of the codebase have a more sensible style where arguments
are aligned properly.

4 years agoel/dot-emacs.el: Improve `mdw-define-c-style' to support simple inheritance.
Mark Wooding [Tue, 19 May 2020 10:48:30 +0000 (11:48 +0100)]
el/dot-emacs.el: Improve `mdw-define-c-style' to support simple inheritance.

Delete the duplicate settings in `mdw-trustonic-c'.

4 years agoel/dot-emacs.el: Hoist `mdw-c' to the top as the primary style.
Mark Wooding [Tue, 19 May 2020 10:45:18 +0000 (11:45 +0100)]
el/dot-emacs.el: Hoist `mdw-c' to the top as the primary style.

4 years agodot/emacs: Fix DEL to work properly in `isearch' mode.
Mark Wooding [Mon, 18 May 2020 03:53:32 +0000 (04:53 +0100)]
dot/emacs: Fix DEL to work properly in `isearch' mode.

Now it actually deletes a single character, rather than doing some
random thing.

The old binding is still available as M-DEL, should I ever want it.

4 years agobin/wakey.sh: Cope if the `_NET_ACTIVE_WINDOW' property is missing.
Mark Wooding [Sun, 17 May 2020 21:24:48 +0000 (22:24 +0100)]
bin/wakey.sh: Cope if the `_NET_ACTIVE_WINDOW' property is missing.

4 years agodot/parallel-hosts: Add missing entry for `mango'.
Mark Wooding [Sun, 17 May 2020 11:34:06 +0000 (12:34 +0100)]
dot/parallel-hosts: Add missing entry for `mango'.

4 years agodot/parallel-hosts: Introduce `@root' group for all things I maintain.
Mark Wooding [Sun, 17 May 2020 11:33:31 +0000 (12:33 +0100)]
dot/parallel-hosts: Introduce `@root' group for all things I maintain.

4 years agobin/run-with-shell-env: Preserve the original argument list.
Mark Wooding [Thu, 14 May 2020 13:48:37 +0000 (14:48 +0100)]
bin/run-with-shell-env: Preserve the original argument list.

The `profile' script makes use of `set', which trashes the argument
list.  Capture it in a shell array at the start (because we're using
Bash here) and then run the target program from the array.

4 years agodot/shell-rc: Behave usefully in Cygwin elevated sessions.
Mark Wooding [Fri, 8 May 2020 22:45:11 +0000 (23:45 +0100)]
dot/shell-rc: Behave usefully in Cygwin elevated sessions.

Decorate the prompt as if we're root -- which, really, we basically are
-- and put a `%admin' marker in the window title.

4 years agodot/shell-rc: Cache whether we're running as root.
Mark Wooding [Fri, 8 May 2020 22:43:31 +0000 (23:43 +0100)]
dot/shell-rc: Cache whether we're running as root.

Rather than running `id' every time.  What was I thinking?

4 years agodot/shell-rc: Introduce `$__mdw_user' as an indirection over `$USER'.
Mark Wooding [Fri, 8 May 2020 22:33:09 +0000 (23:33 +0100)]
dot/shell-rc: Introduce `$__mdw_user' as an indirection over `$USER'.

4 years agodot/shell-rc: Use `$USER' directly now that I've set it properly.
Mark Wooding [Fri, 8 May 2020 22:38:08 +0000 (23:38 +0100)]
dot/shell-rc: Use `$USER' directly now that I've set it properly.

Eliminate the `$user' local variable from `__mdw_set_prompt_pieces'.

4 years agodot/shell-rc: Make sure that `$USER' is defined.
Mark Wooding [Fri, 8 May 2020 22:29:50 +0000 (23:29 +0100)]
dot/shell-rc: Make sure that `$USER' is defined.

4 years agodot/emacs: Include the turd created by Emacs's ELPA package system.
Mark Wooding [Fri, 8 May 2020 22:27:33 +0000 (23:27 +0100)]
dot/emacs: Include the turd created by Emacs's ELPA package system.

Guarded to make sure it doesn't break ancient Emacsen.

4 years agodot/user-dirs.*: Override idiotic desktoppy directories.
Mark Wooding [Sun, 10 May 2020 16:49:27 +0000 (17:49 +0100)]
dot/user-dirs.*: Override idiotic desktoppy directories.

Programs keep creating these things.  It's really annoying.

4 years agodot/putty-defaults: Hugely increase the scrollback size.
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.

4 years agobin/mdw-build: Always create the logfile, even in verbose builds.
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.

4 years agobin/mdw-build: Do all of the log descriptor setting in one place.
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.

4 years agobin/mdw-build: Delay official `assign' for `$toppath' and `$releasepath'.
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.

4 years agobin/mdw-build: Don't assign `$srcpath' until after `checkout'.
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'.

4 years agobin/mdw-build, bin/mdw-sbuild-server: Run the builds nicely.
Mark Wooding [Sun, 10 May 2020 12:43:47 +0000 (13:43 +0100)]
bin/mdw-build, bin/mdw-sbuild-server: Run the builds nicely.

4 years agobin/xduplic-terminal: New script: start terminals for `xduplic-copier'.
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.

4 years agobin/mdw-build: Use dynamically chosen file descriptors.
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.

4 years agobin/mdw-build: Close our file descriptors when running subcommands.
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.

4 years agobin/mdw-build: Make a note of the persistent file-descriptor assignments.
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.

4 years agobin/mdw-build: Allow overriding the `make' program.
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.

4 years agodot/shell-rc: Put the hostname qualifiers in the terminal title.
Mark Wooding [Sat, 9 May 2020 23:47:27 +0000 (00:47 +0100)]
dot/shell-rc: Put the hostname qualifiers in the terminal title.

4 years agodot/shell-rc: Factor out the terminal and screen title-setting.
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.

4 years agodot/shell-rc: Calculate the hostname qualifiers once in advance.
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.

4 years agodot/profile: Unbungle the setting of `$DEB_BUILD_OPTIONS'.
Mark Wooding [Sat, 9 May 2020 21:07:21 +0000 (22:07 +0100)]
dot/profile: Unbungle the setting of `$DEB_BUILD_OPTIONS'.

Oops.

4 years agodot/shell-rc: Run `cross-run' nicely by default.
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.

4 years agodot/emacs: Experimentally tern on focus-follows-mouse in Emacs.
Mark Wooding [Fri, 8 May 2020 17:15:40 +0000 (18:15 +0100)]
dot/emacs: Experimentally tern on focus-follows-mouse in Emacs.

4 years agodot/parallel-hosts: A useful SSH hosts file for GNU `parallel'.
Mark Wooding [Fri, 8 May 2020 16:43:02 +0000 (17:43 +0100)]
dot/parallel-hosts: A useful SSH hosts file for GNU `parallel'.

4 years agodot/profile, dot/mdw-build.conf: Set `DEB_BUILD_OPTIONS' automatically.
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.

4 years agoMakefile: Actually install a link for `mdw-build.conf'.
Mark Wooding [Fri, 8 May 2020 02:15:36 +0000 (03:15 +0100)]
Makefile: Actually install a link for `mdw-build.conf'.

4 years agodot/mdw-build.conf: Set the parallelism from `.mdw.conf'.
Mark Wooding [Fri, 8 May 2020 02:15:09 +0000 (03:15 +0100)]
dot/mdw-build.conf: Set the parallelism from `.mdw.conf'.

4 years agoel/dot-emacs.el: Add machinery for not renaming buffers along with files.
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.

4 years agoel/dot-emacs.el: Add a missing docstring.
Mark Wooding [Thu, 7 May 2020 00:09:16 +0000 (01:09 +0100)]
el/dot-emacs.el: Add a missing docstring.

4 years agobin/start-ssh-agent: Don't proceed if the SSH programs aren't around.
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.

4 years agoel/dot-emacs.el: Advise `rename-file' to rename buffers at the same time.
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?

4 years agodot/emacs: Add bindings for `dired-jump' and `dired-jump-other-window'.
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.

4 years agodot/emacs: Sort the `devhelp-...' bindings into the correct order.
Mark Wooding [Wed, 6 May 2020 17:51:23 +0000 (18:51 +0100)]
dot/emacs: Sort the `devhelp-...' bindings into the correct order.

4 years agodot/gitconfig.in: Add a rune for fast-forwarding branches.
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.

4 years agodot/ipython-key-bindings.py: Don't leak names into the toplevel environment.
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.

4 years agodot/ipython-key-bindings.py: Fix some bogus formatting.
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.

4 years agobin/mdw-sbuild{,-server}: Push arguments through to `dpkg-buildpackage'.
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.

4 years agobin/check-blkdev-size: Don't print the full path in witter lines.
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.

4 years agobin/media-keys: Don't get upset if the `disorder playing' coprocess dies.
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.

4 years agobin/media-keys: Actually print the name of the person who picked a track.
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.

4 years agobin/media-keys: Don't break just because someone actually picked a track.
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.

4 years agobin/wakey.sh: Fix idiotic typo that stopped it from working.
Mark Wooding [Tue, 28 Apr 2020 14:12:56 +0000 (15:12 +0100)]
bin/wakey.sh: Fix idiotic typo that stopped it from working.

4 years agodot/xinitrc: Fix detection of GTK 2.0-based `pterm'.
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'.

4 years agodot/putty-defaults: Don't maintain a separate icon title.
Mark Wooding [Tue, 28 Apr 2020 10:30:53 +0000 (11:30 +0100)]
dot/putty-defaults: Don't maintain a separate icon title.

4 years agobin/bdl: Remove the `$S' separator.
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.

4 years agobin/bdl: Put a `Usage:' prefix on the usage text.
Mark Wooding [Mon, 27 Apr 2020 00:21:30 +0000 (01:21 +0100)]
bin/bdl: Put a `Usage:' prefix on the usage text.

4 years agobin/bdl: Add to the collection.
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.

4 years agodot/emacs: Don't use a gratuitously different label on icons.
Mark Wooding [Sun, 26 Apr 2020 18:26:35 +0000 (19:26 +0100)]
dot/emacs: Don't use a gratuitously different label on icons.

4 years agodot/emacs: Put the unqualified hostname in the frame title.
Mark Wooding [Sun, 26 Apr 2020 18:19:11 +0000 (19:19 +0100)]
dot/emacs: Put the unqualified hostname in the frame title.

4 years agoel/dot-emacs.el: Sharpen up the page delimiter patterns.
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.

4 years agoel/dot-emacs.el: Fix page motion properly.
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.

4 years agobin/fixsub: Add little script for hacking Dovecot subscription files.
Mark Wooding [Sat, 25 Apr 2020 20:54:05 +0000 (21:54 +0100)]
bin/fixsub: Add little script for hacking Dovecot subscription files.

4 years agodot/shell-rc: Write the various control sequences to the terminal explicitly.
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.

4 years agodot/zshrc: Fix arguments to the hooks.
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.

4 years agodot/gnus-local.el.distorted: Set `odin.gg' sender address if applicable.
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.

4 years agodot/gnus-local.el.distorted: Refactor the posting-style for `crap.*'.
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.

4 years agodot/gnus-local.el.distorted: Sink `gnus-posting-styles' below `odin'.
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.

4 years agodot/gnus-local.el.distorted: Rename `list' to `splits'.
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.

4 years agodot/gnus-local.el.distorted: Change how `odin' data is collected.
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.

4 years agodot/gnus-local.el.distorted: Add header for `nnmail-split-abbrev-alist'.
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.

4 years agodot/gnus-local.el.distorted: Add a little header for the `odin' hacking.
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.

4 years agoel/dot-emacs.el: Use `mupdf', rather than Emacs's terrible built-in viewer.
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.

4 years agodot/emacs: Set envelope sender from headers when sending email.
Mark Wooding [Fri, 24 Apr 2020 22:55:16 +0000 (23:55 +0100)]
dot/emacs: Set envelope sender from headers when sending email.

4 years agodot/ipython-config.py: Prevent `IPython' from changing the terminal title.
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.

4 years agodot/emacs: Permit duplicate entry names.
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.

4 years agoel/dot-emacs.el: Use more recent names for `calendar' access functions.
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?!).

4 years agoel/dot-emacs.el: Add missing `mdw-' prefix on `mdw-terminal-title-alist'.
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'.

4 years agoel/dot-emacs.el: Use plain `equal' for comparing terminal names.
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.

4 years agoel/dot-emacs.el: Update terminal titles as we go.
Mark Wooding [Thu, 23 Apr 2020 01:23:13 +0000 (02:23 +0100)]
el/dot-emacs.el: Update terminal titles as we go.

4 years agodot/emacs: Make frame titles a bit more useful.
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.

4 years agodot/Xdefaults: Tweak `xterm' resources so I can set the title.
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.

4 years agodot/shell-rc: Set the window title to something useful.
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.

4 years agodot/shell-rc: Capture the hostname once and for all.
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.

4 years agodot/putty-defaults: Permit changing the window title.
Mark Wooding [Wed, 22 Apr 2020 23:10:56 +0000 (00:10 +0100)]
dot/putty-defaults: Permit changing the window title.

4 years agodot/shell-rc: Track rename of `$MDW_BUILDENV' to `$CROSS_BUILDENV'.
Mark Wooding [Wed, 22 Apr 2020 21:13:55 +0000 (22:13 +0100)]
dot/shell-rc: Track rename of `$MDW_BUILDENV' to `$CROSS_BUILDENV'.

4 years agobin/wakey.sh: Don't vomit at the terminal if the active window is dead.
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.

4 years agodot/zshrc: Automatically rehash command completions on a cache miss.
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.

4 years agobin/wakey.sh: Delete bogus space.
Mark Wooding [Tue, 21 Apr 2020 18:10:06 +0000 (19:10 +0100)]
bin/wakey.sh: Delete bogus space.

4 years agobin/wakey.sh: Fix the sense of the startup condition.
Mark Wooding [Tue, 21 Apr 2020 18:04:53 +0000 (19:04 +0100)]
bin/wakey.sh: Fix the sense of the startup condition.

4 years agodot/gnus-local.el.distorted: Add my main chiark mail account.
Mark Wooding [Tue, 21 Apr 2020 18:02:30 +0000 (19:02 +0100)]
dot/gnus-local.el.distorted: Add my main chiark mail account.

4 years agodot/gnus-local.el.distorted: Add split configuration to other mail servers.
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.

4 years agodot/bashrc: Delay setting `__mdw_running' so as not to clobber `$?'.
Mark Wooding [Tue, 21 Apr 2020 12:32:29 +0000 (13:32 +0100)]
dot/bashrc: Delay setting `__mdw_running' so as not to clobber `$?'.

4 years agobin/wakey.sh: Rename, now that it's not `zsh'-specific.
Mark Wooding [Tue, 21 Apr 2020 12:04:37 +0000 (13:04 +0100)]
bin/wakey.sh: Rename, now that it's not `zsh'-specific.

4 years agobin/wakey.zsh: Use the new hook machinery to insinuate.
Mark Wooding [Tue, 21 Apr 2020 12:03:58 +0000 (13:03 +0100)]
bin/wakey.zsh: Use the new hook machinery to insinuate.

4 years agobin/wakey.zsh: Quote arguments to `notify-send' for other shells.
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'.

4 years agobin/wakey.zsh: Delete the type setting.
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.

4 years agobin/wakey.zsh: Correctly match `$LONG_RUNNING_IGNORE_LIST'.
Mark Wooding [Tue, 21 Apr 2020 12:00:44 +0000 (13:00 +0100)]
bin/wakey.zsh: Correctly match `$LONG_RUNNING_IGNORE_LIST'.

4 years agobin/wakey.zsh: Use `xwininfo -tree' like I should have done from the start.
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.