Mark Wooding [Fri, 13 Sep 2019 16:07:07 +0000 (17:07 +0100)]
el/dot-emacs.el (date): Use primitive `delete-char' to remove newline.
Mark Wooding [Fri, 13 Sep 2019 16:06:04 +0000 (17:06 +0100)]
dot/emacs, dot/xinitrc, el/dot-emacs.el: Flag for Emacs splash screen.
It turns out to be rather annoying when used from the command line, so
add an option to inhibit it and other related cruft.
Mark Wooding [Fri, 13 Sep 2019 16:05:13 +0000 (17:05 +0100)]
el/dot-emacs.el: Factor out the command-line option scanning.
Mark Wooding [Wed, 11 Sep 2019 16:50:49 +0000 (17:50 +0100)]
dot/gitconfig.in: Add rune to run a command in all modules.
For some daft reason, `git submodule foreach' won't run the command in
the top-level working tree.
Mark Wooding [Mon, 9 Sep 2019 22:57:27 +0000 (23:57 +0100)]
Merge remote-tracking branch 'staging/master'
* staging/master:
dot/gitconfig.in: Support the `scissors' convention in incoming mail.
dot/gitconfig.in: Force the `from' address on Git patches.
dot/gitconfig.in: Delete the `patches' alias.
Mark Wooding [Mon, 9 Sep 2019 17:26:30 +0000 (18:26 +0100)]
dot/gitconfig.in: Support the `scissors' convention in incoming mail.
Mark Wooding [Mon, 9 Sep 2019 17:25:56 +0000 (18:25 +0100)]
dot/gitconfig.in: Force the `from' address on Git patches.
I don't think it's right to sign other people up for email just because
I'm presenting their patches upstream.
Mark Wooding [Mon, 9 Sep 2019 17:23:04 +0000 (18:23 +0100)]
dot/gitconfig.in: Delete the `patches' alias.
I wasn't using it. :-/
Mark Wooding [Sun, 8 Sep 2019 19:15:26 +0000 (20:15 +0100)]
dot/e16-bindings: Swap window-move and area-move.
The former seems more useful, so it should have the simpler chord.
Mark Wooding [Wed, 4 Sep 2019 18:10:52 +0000 (19:10 +0100)]
bin/datasyms: New utility to print the writable-data symbols in object files.
It turns out that I have a habit of forgetting to declare constant
tables as being `const'. This tool is one of the few ways to notice
that I've done this.
Mark Wooding [Tue, 3 Sep 2019 10:52:18 +0000 (11:52 +0100)]
dot/gitconfig.in: Show Git output in columns.
Why have I only just noticed that this exists?
Mark Wooding [Tue, 3 Sep 2019 10:51:41 +0000 (11:51 +0100)]
dot/emacs: Have `ediff' windows side-by-side by default.
Mark Wooding [Tue, 3 Sep 2019 10:51:20 +0000 (11:51 +0100)]
dot/emacs: Configure BibTeX record key generation.
Mark Wooding [Tue, 3 Sep 2019 10:50:33 +0000 (11:50 +0100)]
dot/emacs: Configure BibTeX record sorting.
Expand the string entries, and sort by entry class.
Mark Wooding [Tue, 3 Sep 2019 10:48:40 +0000 (11:48 +0100)]
dot/emacs: Sort fields and add braces as necessary in BibTeX records.
Mark Wooding [Tue, 3 Sep 2019 10:36:52 +0000 (11:36 +0100)]
dot/emacs: Align the `=' signs in a BibTeX record.
Mark Wooding [Tue, 3 Sep 2019 10:36:06 +0000 (11:36 +0100)]
dot/emacs: Include optional fields in new BibTeX records.
The formatting will delete them if they're not wanted.
Mark Wooding [Tue, 3 Sep 2019 10:33:51 +0000 (11:33 +0100)]
el/dot-emacs.el: Set fill column smaller in `bibtex-mode'.
There's some bug in the mode-specific filling which causes overly long
lines sometimes.
Mark Wooding [Fri, 23 Aug 2019 16:35:36 +0000 (17:35 +0100)]
dot/lesskey: Switch `less' back to `-R'.
This reverts
b59e8644263f6e5bd31778ffada9be6e0a539a92, but puts the `R'
option with the other uppercase things for consistency.
With `-r', `less' (a) won't truncate lines, and (b) hopelessly corrupts
the screen.
I shall resolve the problem with `diff' by installing version 3.7, which
fixes the bug.
Mark Wooding [Fri, 23 Aug 2019 16:34:22 +0000 (17:34 +0100)]
dot/gitconfig.in: Use `mdw-pager' rather than `less' explicitly.
I tripped over this because I was experimenting with alternative pagers.
Astonishingly, they all suck more than `less', so I'm stuck.
Mark Wooding [Thu, 22 Aug 2019 17:29:44 +0000 (18:29 +0100)]
dot/emacs: Spell `ido-enable-prefix' correctly.
Mark Wooding [Thu, 22 Aug 2019 11:20:13 +0000 (12:20 +0100)]
doc/shell-rc: Hide the `gdb' banner.
It's very large and rather boring.
Mark Wooding [Thu, 22 Aug 2019 11:19:15 +0000 (12:19 +0100)]
dot/emacs: Get `ido' to insist on getting the first letter right.
Hopefully this will make its completion decisions somewhat less silly.
Mark Wooding [Thu, 22 Aug 2019 11:18:34 +0000 (12:18 +0100)]
dot/emacs: Don't display the diary when starting up or every morning.
This has been really annoying!
Mark Wooding [Thu, 22 Aug 2019 11:18:09 +0000 (12:18 +0100)]
dot/emacs: Group `appt' settings into a single `setf' form.
Mark Wooding [Thu, 22 Aug 2019 11:16:15 +0000 (12:16 +0100)]
dot/emacs: Hide warnings about the server when starting up.
These are hardly ever interesting, and eat half of the initial frame.
Mark Wooding [Thu, 22 Aug 2019 11:15:12 +0000 (12:15 +0100)]
el/dot-emacs.el: Advise the right functions for Hyperspec display.
I mistakenly advised the old-fashioned function names, which are now
merely aliases for the proper functions.
Mark Wooding [Fri, 9 Aug 2019 23:54:50 +0000 (00:54 +0100)]
dot/mdw-build.conf: Don't override Debian build settings from environment.
Mark Wooding [Wed, 7 Aug 2019 12:35:04 +0000 (13:35 +0100)]
bin/mdw-sbuild-server: Use correct option if not building arch-specific.
Mark Wooding [Fri, 2 Aug 2019 19:38:05 +0000 (20:38 +0100)]
dot/shell-rc: Colourize `diff' output similarly to `grep'.
There's a problem here because of a `zsh' bug:
$ diff -u <(thing) <(thong) | blah
diff: /proc/self/fd/13: No such file or directory
diff: /proc/self/fd/14: No such file or directory
caused by the process-substitution pipes being lost somewhere.
Work around this as (a)
$ diff -u =(thing) =(thong) | blah
(produces temporary files), or (b)
$ { diff -u <(thing) <(thong) } | blah
(extra typing).
Mark Wooding [Fri, 2 Aug 2019 19:30:44 +0000 (20:30 +0100)]
dot/lesskey: Use `-r' instead of `-R'.
This seems to handle some kinds of colourized output better. In
particular, GNU `diff' gets mangled by `less -R': only the first line in
a coloured group ends up actually being coloured. On the other hand,
`less -r' copes with this properly, maybe because it's actually looking
at the control codes rather than feeding them through without thinking
and then accidentally clobbering their effects.
I don't know why my `less' settings have used `-R', but they have for as
long as I've maintained my profile in Git. Oh, well.
Mark Wooding [Sat, 3 Aug 2019 02:05:54 +0000 (03:05 +0100)]
el/dot-emacs.el: Force Hyperspec lookups to use w3m, if available.
It's much more convenient to have the documentation in Emacs.
Mark Wooding [Fri, 2 Aug 2019 14:49:10 +0000 (15:49 +0100)]
el/dot-emacs.el: Preserve environment properly when clearing `LD_PRELOAD'.
Just binding `process-environment' isn't enough, because `setenv'
mutates the list-structure in place. Take a complete copy, just to be
sure.
Otherwise, compiling something prevents SLIME from starting up properly.
Mark Wooding [Fri, 2 Aug 2019 14:48:48 +0000 (15:48 +0100)]
Makefile: Fix name of `releasekey' config setting.
Now the Git configuration is actually correct. I hadn't noticed before
because I hadn't changed the config setting away from the default for
aaages.
Mark Wooding [Sat, 25 May 2019 12:24:58 +0000 (13:24 +0100)]
el/dot-emacs.el (mdw-fontify-javascript): Remove duplicate keywords.
These were apparently duplicated when I introduced this function.
Mark Wooding [Sat, 25 May 2019 12:20:04 +0000 (13:20 +0100)]
el/dot-emacs.el: Rename `...-constants' to `...-builtins'.
That's closer to what I'm using them as, I think.
Mark Wooding [Sun, 12 May 2019 12:57:46 +0000 (13:57 +0100)]
dot/screenrc: Don't adjust the widths of terminal windows when starting.
Mark Wooding [Wed, 27 Feb 2019 14:37:50 +0000 (14:37 +0000)]
dot/bashrc: Reinstate carriage-return literal broken by deficient editor.
I think I used THE to make
8a075bd7..., which replaced my literal
carriage-return with a linefeed, which causes all manner of trouble.
Put the carriage-return back.
Mark Wooding [Tue, 26 Feb 2019 09:58:46 +0000 (09:58 +0000)]
el/dot-emacs.el (mdw-fontify-rust): Highlight `$' correctly.
Mark Wooding [Sat, 23 Feb 2019 21:03:25 +0000 (21:03 +0000)]
dot/xinitrc: Tell desktoppy things that I run XFCE.
This isn't entirely true, but it persuades (for example) `xdg-open' to
do things less stupidly.
Mark Wooding [Sat, 23 Feb 2019 21:02:51 +0000 (21:02 +0000)]
dot/xinitrc: Use modern command-substitution syntax.
The old backtick syntax was kind of bletcherous, and it doesn't nest
well.
Mark Wooding [Sat, 16 Feb 2019 12:28:16 +0000 (12:28 +0000)]
el/dot-emacs.el (mdw-fontify-rust): Add new keywords from 2018 edition.
Mark Wooding [Thu, 14 Feb 2019 13:18:21 +0000 (13:18 +0000)]
dot/ercrc.el: Substitute problematic characters.
The problem is mostly emoji, arriving in Twitter announcements from
Servus: I think that mosh and putty (and maybe Emacs) have different
ideas about character width, and the terminal display ends up being a
total mess.
Mark Wooding [Thu, 14 Feb 2019 13:10:05 +0000 (13:10 +0000)]
dot/profile: Move Cargo debris into the XDG cache directory.
Mark Wooding [Thu, 14 Feb 2019 13:09:05 +0000 (13:09 +0000)]
el/dot-emacs.el (mdw-fontify-rust): Fix integer literal syntax.
You're not allowed to write `is' or `us' as suffixes.
Mark Wooding [Thu, 14 Feb 2019 13:08:48 +0000 (13:08 +0000)]
el/dot-emacs.el (mdw-fontify-rust): Spell the `crate' keyword correctly.
Mark Wooding [Thu, 14 Feb 2019 13:08:26 +0000 (13:08 +0000)]
el/dot-emacs.el (mdw-fontify-rust): Highlight `%' properly.
Mark Wooding [Thu, 14 Feb 2019 13:06:54 +0000 (13:06 +0000)]
el/dot-emacs.el (mdw-fontify-rexx): Highlight `¬' properly.
Mark Wooding [Thu, 24 Jan 2019 15:14:45 +0000 (15:14 +0000)]
dot/bashrc, dot/zshrc: Do highlighting when `TERM' is `putty...'.
This is the `proper' terminal-type family for `pterm', even though it
has some unfortunate behaviour which means that I still prefer
`xterm...' in general.
Mark Wooding [Wed, 23 Jan 2019 17:29:37 +0000 (17:29 +0000)]
dot/emacs, dot/profile, el/dot-emacs.el: Back to Firefox/Iceweasel.
This reverts commit
90ac1ffc018d15315a2e95deb822f3ca168a9fee,
"dot/emacs, dot/profile, el/dot-emacs.el: Moving back to Chromium."
Maybe I'll make up my mind some day.
Mark Wooding [Wed, 23 Jan 2019 17:26:02 +0000 (17:26 +0000)]
el/dot-emacs.el: Configure the default CSS indentation.
Why have I only just noticed that this was silly?
Mark Wooding [Wed, 23 Jan 2019 17:25:07 +0000 (17:25 +0000)]
css/*: Add some HTML style hacks I use in a few places.
These need to be stuffed into a browser extension such as Stylus to be
useful.
Mark Wooding [Mon, 24 Dec 2018 11:34:16 +0000 (11:34 +0000)]
bin/mdw-sbuild: Ignore version-control cruft when making source package.
Mark Wooding [Sun, 9 Dec 2018 14:49:55 +0000 (14:49 +0000)]
Makefile: Abbreviate `$(HOME)/...' things as `~/...' in silent-rules.
Mark Wooding [Sun, 9 Dec 2018 12:47:14 +0000 (12:47 +0000)]
dot/lesskey, dot/profile: Move constant `less' settings into `.lesskey'.
The `LESSCHARSET' and `LESSGLOBALTAGS' settings depend on runtime
probes, so I can't move those.
Mark Wooding [Sun, 9 Dec 2018 12:46:27 +0000 (12:46 +0000)]
dot/lesskey: Add binding for backspace to scroll back a screen.
I keep doing this, because of Info and Emacs `view-mode', and `less'
keeps dinging at me. It stops now.
Mark Wooding [Sun, 9 Dec 2018 12:45:34 +0000 (12:45 +0000)]
Makefile: Build `~/.less' properly from our `dot/lesskey' file.
The documentation is clear about having to do this annoying thing, so
I'm not sure why I didn't do it.
Delete the old `~/.lesskey' file if we find it, because it doesn't do
any good there.
Mark Wooding [Sat, 8 Dec 2018 23:27:16 +0000 (23:27 +0000)]
el/dot-emacs.el: Don't raise frames on mode-line or header-line presses.
Mark Wooding [Sat, 8 Dec 2018 23:26:29 +0000 (23:26 +0000)]
dot/emacs: Don't use dialogue boxes.
Particularly with Magit asynchronous operations, they cause annoying
popups which are hard to dismiss from the keyboard.
Mark Wooding [Sat, 8 Dec 2018 12:51:10 +0000 (12:51 +0000)]
dot/zshrc: Add in Bash-style completion-type override bindings.
This dislodges the (otherwise useless anyway) previous binding of M-/ to
`_history-complete-older', which I've nudged to M-, (which was
previously the even less useful `_history-complete-newer'). As far as I
can tell, none of the other keys did anything at all previously.
Mark Wooding [Sat, 8 Dec 2018 13:09:17 +0000 (13:09 +0000)]
Makefile: Zap Zsh's secret `~/.zcompdump' file if `.zshrc' is newer.
Otherwise it can resurrect dead keybindings and other confusing
badness. It does make a significant difference to Zsh startup speed,
but Zsh will recreate it automatically so it's all good.
Mark Wooding [Sat, 8 Dec 2018 13:05:37 +0000 (13:05 +0000)]
Makefile: Factor the printing out from `v_tag'.
Mark Wooding [Sat, 8 Dec 2018 13:03:38 +0000 (13:03 +0000)]
Makefile (v_tag): No, there's no second argument.
I think this must have an aspiration which never worked out. Bury it
properly.
Mark Wooding [Sun, 25 Nov 2018 13:53:03 +0000 (13:53 +0000)]
el/dot-emacs.el (mdw-fontify-pythonic): Recognize `0o...' and `0b...'.
I must have missed these being introduced.
Mark Wooding [Sun, 25 Nov 2018 13:52:25 +0000 (13:52 +0000)]
el/dot-emacs.el (mdw-fontify-pythonic): Numbers can't contain `_'.
Where did I get the idea that they could from? This isn't even Python
3.
Mark Wooding [Thu, 22 Nov 2018 13:22:23 +0000 (13:22 +0000)]
dot/shell-rc: Fix bungled prompt hack.
Mark Wooding [Thu, 22 Nov 2018 12:36:17 +0000 (12:36 +0000)]
dot/shell-rc: Notice `$MDW_BUILDENV' and add it to the prompt.
For things like cross-building environments.
Mark Wooding [Thu, 22 Nov 2018 12:35:46 +0000 (12:35 +0000)]
dot/emacs: Add auto-mode magic for Sage.
Why didn't I do this ages ago?
Mark Wooding [Tue, 16 Oct 2018 18:45:01 +0000 (19:45 +0100)]
el/dot-emacs.el: Fix `asm-mode' comment highlighting.
I think this actually works with all three comment syntaxes now. Go me.
Mark Wooding [Tue, 4 Sep 2018 23:34:17 +0000 (00:34 +0100)]
bin/mdw-build: Remove vestigial `-r' option.
It doesn't actually work, but is mentioned in the help synopsis and
`getopts' call.
Mark Wooding [Tue, 4 Sep 2018 23:31:04 +0000 (00:31 +0100)]
el/dot-emacs.el (mdw-fontify-java): Bring Java keyword list up-to-date.
Also reformat. Added missing keywords `assert', `strictfp'.
Mark Wooding [Sat, 18 Aug 2018 19:07:46 +0000 (20:07 +0100)]
el/dot-emacs.el (mdw-fontify-java): Don't highlight `@' strangely.
Mark Wooding [Thu, 26 Jul 2018 00:05:25 +0000 (01:05 +0100)]
bin/disorder-notify, dot/e16-bindings: Escape HTMLish stuff in notifications.
The documentation I found didn't obviously mention that this text was
HTMLish. Oh, well.
Mark Wooding [Sat, 21 Jul 2018 14:21:39 +0000 (15:21 +0100)]
bin/disorder-notify: Report when a track is scratched.
Mark Wooding [Sat, 21 Jul 2018 14:20:56 +0000 (15:20 +0100)]
bin/disorder-notify: Improve startup notifications.
Accumulate the startup state dump, and also report the current track if
there is one.
Mark Wooding [Sat, 21 Jul 2018 14:18:07 +0000 (15:18 +0100)]
bin/disorder-notify: Maybe report currently playing track on state change.
This involves fiddling with the `now_playing' function so that it can
find out the current track for itself if necessary.
(Initially I did this on `enable_random' and `enable_play', but that
leads to duplicate now-playing reports because a `playing' notification
will follow unless we never actually stopped playing anything anwyay.
So now we only report on resume.)
Mark Wooding [Sat, 21 Jul 2018 14:16:15 +0000 (15:16 +0100)]
bin/disorder-notify: Refactor the state reporting machinery.
Accumulate the message in one step, and then report it.
Mark Wooding [Sat, 21 Jul 2018 14:13:38 +0000 (15:13 +0100)]
bin/disorder-notify: Lift out the `now playing' machinery.
Mark Wooding [Sat, 21 Jul 2018 14:12:22 +0000 (15:12 +0100)]
bin/disorder-notify: Fix accidental use of a bareword.
Mark Wooding [Sat, 21 Jul 2018 14:10:00 +0000 (15:10 +0100)]
bin/disorder-notify: Abstract out invoking the `disorder' client.
Mark Wooding [Sat, 21 Jul 2018 14:04:59 +0000 (15:04 +0100)]
bin/media-keys: Cope with an additional `playing' state.
Mark Wooding [Sat, 21 Jul 2018 13:29:22 +0000 (14:29 +0100)]
bin/disorder-notify: Raise the notification timeout back to 5s.
I reduced it because it seemed too long when I was testing it, but when
you do that you're expecting to see the notification. In reality, what
happens is that this thing flickers in the corner of the screen, your
eye moves over to it, and then it vanishes just before you can read it
properly. This is a little counterproductive.
Mark Wooding [Sat, 21 Jul 2018 00:49:46 +0000 (01:49 +0100)]
bin/disorder-notify: New hack to pop up notifications about DisOrder.
Useful now that it's mostly controlled from the keyboard.
Mark Wooding [Sat, 21 Jul 2018 00:46:05 +0000 (01:46 +0100)]
dot/xsession: Wipe out our process group on exit.
There may be other random hangers on which ought to die when we do.
Mark Wooding [Fri, 20 Jul 2018 20:34:30 +0000 (21:34 +0100)]
dot/e16-bindings, bin/media-keys: Keybindings for media players.
Mark Wooding [Sat, 21 Jul 2018 00:59:30 +0000 (01:59 +0100)]
dot/e16-bindings: Remove `zoom' binding.
I've no idea why this was a good idea.
Mark Wooding [Sat, 21 Jul 2018 01:01:38 +0000 (02:01 +0100)]
dot/e16-bindings: Untabify completely.
The layout is kind of weird here anyway. Tabs don't seem to be helping.
Mark Wooding [Sat, 21 Jul 2018 00:56:37 +0000 (01:56 +0100)]
dot/e16-bindings: Sort the bindings properly.
Also, some slight reformatting.
Mark Wooding [Fri, 20 Jul 2018 20:34:11 +0000 (21:34 +0100)]
dot/shell-rc: Run `make' nicely by default.
Mark Wooding [Mon, 16 Jul 2018 13:16:26 +0000 (14:16 +0100)]
dot/putty-defaults: Use client-side `Fixed' font.
It makes redraw considerably faster.
Mark Wooding [Fri, 6 Jul 2018 19:38:48 +0000 (20:38 +0100)]
el/dot-emacs.el, dot/emacs: Add keybinding to update VC modelines.
Also autoreverts everything. But that's OK.
Mark Wooding [Fri, 6 Jul 2018 19:37:38 +0000 (20:37 +0100)]
dot/emacs: Sort the global keybindings list.
Astonishingly there don't appear to be any conflicts.
Mark Wooding [Fri, 6 Jul 2018 11:21:52 +0000 (12:21 +0100)]
el/dot-emacs.el: Defeat AUC-TeX's horrible fontification.
Mark Wooding [Wed, 4 Jul 2018 23:18:08 +0000 (00:18 +0100)]
el/dot-emacs.el: Fix the Rust keywords.
I'd missed out `proc' and `Self', duplicated `false' (but not `true') in
the two lists.
Add the missing keywords; mark both `true' and `false' as builtins, as
well as `self' and `Self'.
Mark Wooding [Wed, 4 Jul 2018 23:17:21 +0000 (00:17 +0100)]
el/dot-emacs.el: Configure `glasses' mode.
I'm not completely sure I like this yet, but I'm really not enjoying
Javaish CamelCase everywhere.
Mark Wooding [Tue, 26 Jun 2018 19:31:08 +0000 (20:31 +0100)]
dot/emacs: Include the graph diagram in Magit status displays.
Mark Wooding [Tue, 26 Jun 2018 19:29:54 +0000 (20:29 +0100)]
dot/zshrc: Export the temporary directory as `~t'.
Mark Wooding [Tue, 26 Jun 2018 19:29:09 +0000 (20:29 +0100)]
bin/play-rawk: The stream is served over HTTPS now.
Mark Wooding [Fri, 22 Jun 2018 16:54:20 +0000 (17:54 +0100)]
el/dot-emacs.el: Prevent GUD-Gdb from making its windows be `dedicated'.
Otherwise it's really hard to override its wrong decisions about where
to put things.
Mark Wooding [Thu, 14 Jun 2018 10:50:22 +0000 (11:50 +0100)]
Makefile: Don't shell out for `pwd' all the time.