chiark / gitweb /
Merge remote-tracking branch 'staging'
authorMark Wooding <mdw@distorted.org.uk>
Fri, 12 Jul 2024 17:26:23 +0000 (18:26 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 12 Jul 2024 17:26:23 +0000 (18:26 +0100)
* staging:
  firefox/foxy-mdwdev.json: Add configuration at work.
  dot/Xdefaults, dot/Xdefaults.pterm: Set bold font explicitly.
  dot/xinitrc: Add settings for Emacs 28 (Lucid).
  dot/xinitrc: Add settings for Emacs 25 (Lucid).
  dot/ipython-config.py: Fix bungled capability check.
  el/dot-emacs.el, dot/gnus.el: Handle character widths correctly.
  el/dot-emacs.el: Make a section for bug-fixing `defadvice' hacks.
  el/dot-emacs.el: Break out the `rename-file' hacking into its own section.
  el/dot-emacs.el: Gather up the calendar and diary hacking.
  el/dot-emacs.el: Gather up the Org-mode hacking.
  el/dot-emacs.el: Split window management hacks into their own section.

17 files changed:
Makefile
bin/mdw-build
bin/mdw-sbuild-server
dot/Xdefaults.pterm
dot/emacs
dot/gnus-local.el.distorted
dot/gnus.el
dot/gpg-agent.conf [new file with mode: 0644]
dot/gpg.conf.m4 [new file with mode: 0644]
dot/lisp-init.lisp
dot/profile
dot/shell-rc
dot/w3m-config
el/dot-emacs.el
firefox/chrome-userContent.css
firefox/foxy-spirit.json [new file with mode: 0644]
mdw.conf

index 8bfcef24b0b73f4bd94a9e0348bf290b06c6ae09..29359c000128daab370cd4a4a10f66da7a7cfc44 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -33,6 +33,9 @@ v_print_0              = \
        printf "  %-8s %s\n" "$1" $(call quote,$(patsubst $(HOME)/%,~/%,$2));
 v_tag                   = $(V_AT)$(call v_print_$V,$1,$@)
 
+## Making directories.
+%/:; $(call v_tag,MKDIR)mkdir -p $@
+
 ## Hack.
 relax                   =
 
@@ -111,8 +114,8 @@ LOCAL_ELISP          = $(filter $(notdir $(wildcard el/*.el)), \
                                $(addsuffix .el, $(ELISP)))
 $(foreach e, $(LOCAL_ELISP), \
        $(eval DEP_$(basename $e) = $(EMACSLIB)/$(e:.el=.elc)))
-$(addprefix $(EMACSLIB)/, $(LOCAL_ELISP)): $(EMACSLIB)/%: el/%
-       $(call v_tag,SYMINK)mkdir -p $(EMACSLIB) && \
+$(addprefix $(EMACSLIB)/, $(LOCAL_ELISP)): $(EMACSLIB)/%: el/% | $(EMACSLIB)/
+       $(call v_tag,SYMINK) \
                rm -f $@.new && \
                ln -s $(HERE)/$< $@.new && \
                mv $@.new $@
@@ -129,8 +132,8 @@ $(foreach e, $(REMOTE_ELISP), \
                                          (error 1))))'; then \
                  echo t; \
                fi),, $(EMACSLIB)/$(e:.el=.elc))))
-$(addprefix $(EMACSLIB)/, $(REMOTE_ELISP)): $(EMACSLIB)/%:
-       $(call v_tag,FETCH)mkdir -p $(EMACSLIB) && \
+$(addprefix $(EMACSLIB)/, $(REMOTE_ELISP)): $(EMACSLIB)/%: | $(EMACSLIB)/
+       $(call v_tag,FETCH) \
                $(call get-url,$@.new,$(REPO)/$*) && \
                mv $@.new $@
 
@@ -234,10 +237,27 @@ DOTLINKS          += .tclshrc .wishrc
 ## The `nocss' machinery.
 SCRIPTLINKS            += nocss
 all: $(HOME)/lib/hacks/nocss/libdvdcss.so.2
-$(HOME)/lib/hacks/nocss/libdvdcss.so.2:
-       $(V_AT)mkdir -p $(dir $@)
+$(HOME)/lib/hacks/nocss/libdvdcss.so.2: | $$(dir $$@)
        $(call v_tag,TOUCH)touch $@
 
+## GnuPG.
+all: $(HOME)/.gnupg/gpg.conf
+$(HOME)/.gnupg/gpg.conf: \
+               dot/gpg.conf.m4 $(wildcard $(HOME)/.gnupg/gpg.local.conf) \
+               $(HOME)/.mdw.conf \
+               | $$(dir $$@)
+       $(call v_tag,M4)cd $(dir $@) && \
+       args= && \
+       key=$$(mdw-conf default-gpg-key nil) && \
+       case $$key in \
+         nil) ;; \
+         *) args=$${args+$$args }-DDEFAULT_KEY=$$key ;; \
+       esac && \
+       cd $(dir $@) && m4 -P $$args $(HERE)/$< >$@.new && \
+       mv $@.new $@
+DOTLINKS               += .gnupg/gpg-agent.conf
+.gnupg/gpg-agent.conf_SRC = gpg-agent.conf
+
 ## Random scripts.
 SCRIPTLINKS            += mdw-editor mdw-pager
 SCRIPTLINKS            += mdw-conf
@@ -348,12 +368,6 @@ endif
 
 ifeq ($(FIREFOX),t)
 
-out/:
-       $(call v_tag,MKDIR)mkdir $@
-
-out/firefox/: | out/
-       $(call v_tag,MKDIR)mkdir $@
-
 clean::; rm -rf out/
 
 all: out/firefox/smartup-gestures.config
@@ -377,8 +391,8 @@ all: $(addprefix $(HOME)/, $(MISCLINKS))
 misclink-ok-p           = \
        $(call symlink-ok-p,$(HOME)/$1,$(call misclink-source,$1))
 $(addprefix $(HOME)/, $(subst %,\%,$(MISCLINKS))): $(HOME)/%: \
-               $$(if $$(call misclink-ok-p,$$*),,_force)
-       $(call v_tag,SYMLINK)mkdir -p $(dir $@) && \
+               $$(if $$(call misclink-ok-p,$$*),,_force) | $$(dir $$@)
+       $(call v_tag,SYMLINK) \
                rm -f $@.new && \
                ln -s $(call misclink-source,$*) $@.new && \
                mv $@.new $@
@@ -394,8 +408,8 @@ dotlink-ok-p                 = \
        $(call symlink-ok-p,$(HOME)/$1,$(call dotfile-source,$1))
 all: $(addprefix $(HOME)/, $(DOTLINKS))
 $(addprefix $(HOME)/, $(subst %,\%,$(DOTLINKS))): $(HOME)/%: \
-               $$(if $$(call dotlink-ok-p,$$*),,_force)
-       $(call v_tag,SYMLINK)mkdir -p $(dir $@) && \
+               $$(if $$(call dotlink-ok-p,$$*),,_force) | $$(dir $$@)
+       $(call v_tag,SYMLINK) \
                rm -f $@.new && \
                ln -s $(call dotfile-source,$*) $@.new && \
                mv $@.new $@
@@ -404,8 +418,8 @@ $(addprefix $(HOME)/, $(subst %,\%,$(DOTLINKS))): $(HOME)/%: \
 ## Hack with the C preprocessor.
 all: $(addprefix $(HOME)/, $(DOTCPP))
 $(addprefix $(HOME)/, $(subst %,\%,$(DOTCPP))): $(HOME)/%: \
-               $$(call dotfile-source,$$*) Makefile
-       $(call v_tag,CPP)mkdir -p $(dir $@) && \
+               $$(call dotfile-source,$$*) Makefile | $$(dir $$@)
+       $(call v_tag,CPP) \
                rm -f $@.new && \
                cpp -P -o$@.new $($*_DEFS) $< && \
                mv $@.new $@
@@ -417,8 +431,8 @@ SUBSTS                      += $(call substvar,home,$(HOME))
 SUBSTS                 += $(call substvar,profile,$(HERE))
 all: $(addprefix $(HOME)/, $(DOTSUBST))
 $(addprefix $(HOME)/, $(subst %,\%,$(DOTSUBST))): $(HOME)/%: \
-               $$(call dotfile-source,$$*,.in) Makefile
-       $(call v_tag,SUBST)mkdir -p $(dir $@) && \
+               $$(call dotfile-source,$$*,.in) Makefile | $$(dir $$@)
+       $(call v_tag,SUBST) \
                rm -f $@.new && \
                sed -e "1i\
 $(relax)### generated by $(HERE)/Makefile; do not edit!" \
@@ -435,8 +449,8 @@ script-source                = $(HERE)/bin/$(or $($1_SRC), $1)
 ifeq ($(prefix-shebang-p),t)
 all: $(addprefix $(HOME)/bin/, $(SCRIPTLINKS))
 $(addprefix $(HOME)/bin/, $(SCRIPTLINKS)): $(HOME)/bin/%: \
-               $$(call script-source,$$*) Makefile
-       $(call v_tag,SHEBANG)mkdir -p $(dir $@) && \
+               $$(call script-source,$$*) Makefile | $$(dir $$@)
+       $(call v_tag,SHEBANG) \
                rm -f $@.new && \
                sed "1s\a\(#! *\)/\a\1$(SHEBANG_PREFIX)/\a" \
                        $(call script-source,$*) >$@.new && \
@@ -448,8 +462,8 @@ scriptlink-ok-p              = \
        $(call symlink-ok-p,$(HOME)/bin/$1,$(call script-source,$1))
 all: $(addprefix $(HOME)/bin/, $(SCRIPTLINKS))
 $(addprefix $(HOME)/bin/, $(SCRIPTLINKS)): $(HOME)/bin/%: \
-               $$(if $$(call scriptlink-ok-p,$$*),,_force)
-       $(call v_tag,SYMLINK)mkdir -p $(dir $@) && \
+               $$(if $$(call scriptlink-ok-p,$$*),,_force) | $$(dir $$@)
+       $(call v_tag,SYMLINK) \
                rm -f $@.new && \
                ln -s $(call script-source,$*) $@.new && \
                mv $@.new $@
@@ -470,8 +484,8 @@ $(foreach p, $(PACKAGES), $(eval DEP_$p = $(if $(shell \
        if $($p_CHECK) >/dev/null 2>&1 --version; then echo t; fi),, \
        $(call pkg-stamp,$p,install))))
 
-$(PACKAGES:%=$(SRCDIR)/%.tar.gz): $(SRCDIR)/%.tar.gz:
-       $(call v_tag,FETCH)mkdir -p $(SRCDIR) && \
+$(PACKAGES:%=$(SRCDIR)/%.tar.gz): $(SRCDIR)/%.tar.gz: | $(SRCDIR)/
+       $(call v_tag,FETCH) \
                rm -f $@.new && \
                $(call get-url,$@.new,$(REPO)/$*.tar.gz) && \
                mv $@.new $@
index 0f3f7a4d802c0222a95c13e55793e36ae3bbc3be..a66ae68d369200e1ebe54a1cab5cf35c63358398 100755 (executable)
@@ -116,9 +116,13 @@ Build options:
   [no]test
   [no]native
   make=MAKE
+  qual=QUAL
 EOF
 }
 
+## Initialize qualifiers.
+qual= qualsep=.
+
 ## Parse simple options.
 verbose=no
 while getopts "hv" opt; do
@@ -156,13 +160,14 @@ for opt; do
     dput)      maybe_set dput dputtarget ;;
     dput=*)    dput=yes dputtarget=${opt#*=} ;;
     make=*)    make=${opt#*=} ;;
+    qual=*)    qual=$qual$qualsep${opt#*=}; qualsep=- ;;
 
     distcheck | debian | clean | vpath | native | test)
       eval "$opt=yes"
       ;;
     nocheckout | nosetup | nodistcheck | nodebian | \
       noupload | nodput | noclean | novpath | nonative | notest | \
-      nosbuild | nosign )
+      nosbuild | nosign)
       eval "${opt#no}=no"
       ;;
     *)
@@ -268,10 +273,9 @@ while [ ! -f configure.ac -a ! -f configure.in -a \
 done
 toppath=$(pwd)
 
-## Build any necessary qualifiers.
-qual= sep=.
+## Add a qualifier for Scratchbox builds.
 case ${SBOX_SESSION_DIR+t},${DEB_BUILD_ARCH+t} in
-  t,t) qual=$qual$sep$DEB_BUILD_ARCH; sep=- ;;
+  t,t) qual=$qual$qualsep$DEB_BUILD_ARCH; qualsep=- ;;
   t,*) fail "unknown build arch" ;;
 esac
 
index e4c919f6dc7e1bdd4eb803e10d148545c8d61b71..1ad6a9c8f651926efcfda3970cbe2b9e4580ac86 100755 (executable)
@@ -32,7 +32,7 @@ do
   if [ -f "$i" ]; then . "$i"; fi
 done
 : ${buildroot=$HOME/build}
-: ${default_targets="wheezy-amd64 wheezy-i386"}
+: ${default_targets="stretch-amd64 stretch-i386"}
 : ${DEB_BUILD_OPTIONS=parallel=4}; export DEB_BUILD_OPTIONS
 
 ###--------------------------------------------------------------------------
index 9f4393dd5e373115e0afe0b5cb2418db99997bca..346a52fb40f9764a1bcd181e9a2c807ebb8cc5d7 100644 (file)
@@ -26,20 +26,20 @@ PTERM_NAME.Colour3:         PTERM_BACKG
 PTERM_NAME.Colour4:            255, 255, 255
 PTERM_NAME.Colour5:            255,   0,   0
 PTERM_NAME.Colour6:              0,   0,   0
-PTERM_NAME.Colour7:             68,  68,  68
-PTERM_NAME.Colour8:            255,  34,  34
-PTERM_NAME.Colour9:            255,  68,  68
-PTERM_NAME.Colour10:            68, 255,  68
-PTERM_NAME.Colour11:            68, 255,  68
-PTERM_NAME.Colour12:           255, 255,   0
-PTERM_NAME.Colour13:           255, 255,  68
-PTERM_NAME.Colour14:             0,   0, 255
-PTERM_NAME.Colour15:            68, 102, 255
-PTERM_NAME.Colour16:           255,  68, 255
-PTERM_NAME.Colour17:           255,  68, 255
-PTERM_NAME.Colour18:             0, 170, 170
-PTERM_NAME.Colour19:            68, 255, 255
-PTERM_NAME.Colour20:           221, 221, 221
+PTERM_NAME.Colour7:             51,  51,  51
+PTERM_NAME.Colour8:            204,   0,   0
+PTERM_NAME.Colour9:            255,  51,  51
+PTERM_NAME.Colour10:             0, 204,   0
+PTERM_NAME.Colour11:            51, 255,  51
+PTERM_NAME.Colour12:           204, 204,   0
+PTERM_NAME.Colour13:           255, 255,  51
+PTERM_NAME.Colour14:             0,   0, 204
+PTERM_NAME.Colour15:            51,  51, 255
+PTERM_NAME.Colour16:           204,   0, 204
+PTERM_NAME.Colour17:           255,  51, 255
+PTERM_NAME.Colour18:             0, 204, 204
+PTERM_NAME.Colour19:            51, 255, 255
+PTERM_NAME.Colour20:           204, 204, 204
 PTERM_NAME.Colour21:           255, 255, 255
 
 #undef PTERM_NAME
index 874988247b523c8158706f38861bad8e3e7a4146..6e636ee4426e351940affd53387fe8d4d6c18dc9 100644 (file)
--- a/dot/emacs
+++ b/dot/emacs
 
 (setq browse-url-browser-function (mdw-good-url-browser)
       browse-url-generic-program "mdw-chrome"
-      browse-url-mozilla-program "mdw-iceweasel")
+      browse-url-firefox-program "mdw-iceweasel"
+      browse-url-mozilla-program browse-url-firefox-program)
 
 (setq w3m-default-display-inline-images t
       w3m-use-cookies t)
   (global-set-key [?\e ?\e] 'mdw-wrong)
   (global-set-key [?\e ?\C-\] ?\C-\]] 'keyboard-escape-quit)
   (global-set-key [?\C-c ?\M-x] 'execute-extended-command)
+  (global-set-key [?\C-c ?c ?\C-w] 'clipboard-kill-region)
+  (global-set-key [?\C-c ?c ?w] 'clipboard-kill-ring-save)
+  (global-set-key [?\C-c ?c ?y] 'clipboard-yank)
   (global-set-key [?\C-c ?d ?a] 'devhelp-assistant-word-at-point)
   (global-set-key [?\C-c ?d ?w] 'devhelp-word-at-point)
   (global-set-key [?\C-c ?g ?a] 'org-agenda)
index 00f46d6a02cec88a08f0938c4870aedc1ebffb9a..1a77929fb34929e488ca928c56ea9611f08e2f3d 100644 (file)
@@ -5,7 +5,8 @@
 ;;; (c) 2014 Mark Wooding
 ;;;
 
-(setq auth-sources '("~/.authinfo.gpg"))
+(setq auth-sources '("~/.authinfo.gpg")
+      gnus-cloud-method "nnimap:distorted")
 
 ;;;--------------------------------------------------------------------------
 ;;; How to send mail.
          (to "\\<\\(hostmaster\\)@" "admin.dns" t)
          (to "\\<\\(news\\|newsmaster\\|usenet\\)@" "admin.news" t)
          (to "\\<\\(postmaster\\|spamd\\|mailer-daemon\\)@" "admin.mail" t)
+         (to "\\<\\(mailman-owner\\)@" "admin.mail" t)
          (to "\\<\\(irc\\|blight\\|ircbot\\)@" "admin.irc" t)
          (to "\\<\\(www\\|webmaster\\|mtos\\)@" "admin.web" t)
          (to "\\<\\(ftp\\|ftpadmin\\|mirror\\)@" "admin.ftp" t)
          (from "@\\(.*\\.\\)?lovefilm\\.com\\>" "crap.lovefilm" t)
          (from "@mythic-beasts\\.com\\>" "crap.mythic-beasts" t)
          (from "@\\([^.]+\\.\\)?nationwide" "crap.nationwide" t)
+         (from "@alerts-nationwide" "crap.nationwide" t)
          (from "nationwide@securesuiteemail\\.com\\>" "crap.nationwide" t)
          (from "@action\\.openrightsgroup\\.org\\>" "crap.org" t)
          (from "@picturehouses\\.co\\.uk\\>" "crap.picturehouse" t)
index 77131a2688de67fbd50e07de21d2870c2a45ac5f..e362b308eb2fae0528775a0a62f2b35dbc5d943e 100644 (file)
@@ -247,6 +247,12 @@ (defun mdw-message-send-it ()
 
 (setq message-send-mail-function 'mdw-message-send-it)
 
+;;;--------------------------------------------------------------------------
+;;; Gnus Cloud nonsense.
+
+(setq gnus-cloud-synced-files
+       '((:directory "~/News" :match ".*.SCORE\\'")))
+
 ;;;--------------------------------------------------------------------------
 ;;; Local configuration.
 
diff --git a/dot/gpg-agent.conf b/dot/gpg-agent.conf
new file mode 100644 (file)
index 0000000..6f62172
--- /dev/null
@@ -0,0 +1,4 @@
+### -*-conf-*-
+### GnuPG agent configuration.
+
+allow-loopback-pinentry
diff --git a/dot/gpg.conf.m4 b/dot/gpg.conf.m4
new file mode 100644 (file)
index 0000000..22d464f
--- /dev/null
@@ -0,0 +1,70 @@
+m4_divert(-1)m4_dnl -*-m4-*-
+### GnuPG configuration.
+
+###--------------------------------------------------------------------------
+### Preliminaries.
+
+m4_changequote([:, :])
+
+###--------------------------------------------------------------------------
+### Metaconfiguration.
+
+m4_define([:PREFERRED_CIPHER:], [:TWOFISH:])
+m4_define([:OTHER_CIPHERS:], [:AES256 AES BLOWFISH 3DES CAST5:])
+
+m4_define([:PREFERRED_DIGEST:], [:SHA256:])
+m4_define([:OTHER_DIGESTS:], [:RIPEMD160 SHA1:])
+
+m4_define([:COMPRESSIONS:], [:ZLIB ZIP:])
+
+m4_sinclude([:gpg.local.m4:])
+
+###--------------------------------------------------------------------------
+### Header.
+
+m4_divert(0)m4_dnl
+### -*-conf-*-
+### GENERATED from gpg.conf.m4: DO NOT EDIT
+
+m4_divert(-1)m4_dnl
+###--------------------------------------------------------------------------
+### Main configuration.
+
+m4_divert(10)m4_dnl
+## Annoying copyright notice.
+no-greeting
+m4_divert(19)m4_dnl
+
+m4_divert(20)m4_dnl
+## Key servers.
+keyserver wwwkeys.uk.pgp.net
+keyserver wwwkeys.pgp.net
+keyserver wwwkeys.us.pgp.net
+keyserver keys.distorted.org.uk
+keyserver-options auto-key-retrieve
+m4_divert(29)m4_dnl
+
+m4_divert(30)m4_dnl
+m4_ifdef([:DEFAULT_KEY:], [:m4_dnl
+## Key selection.
+default-key DEFAULT_KEY
+
+:])m4_dnl
+m4_divert(40)m4_dnl
+## Algorithm selection.
+s2k-cipher-algo PREFERRED_CIPHER
+s2k-digest-algo PREFERRED_DIGEST
+personal-cipher-preferences PREFERRED_CIPHER OTHER_CIPHERS
+personal-digest-preferences PREFERRED_DIGEST OTHER_DIGESTS
+personal-compress-preferences COMPRESSIONS
+default-preference-list PREFERRED_CIPHER OTHER_CIPHERS PREFERRED_DIGEST OTHER_DIGESTS COMPRESSIONS
+m4_divert(49)m4_dnl
+
+m4_divert(50)m4_dnl
+## Agent parameters.
+use-agent
+pinentry-mode loopback
+m4_divert(59)m4_dnl
+
+m4_divert(99)m4_dnl
+###----- That's all, folks --------------------------------------------------
index 64faf2bdb0fe24c790012115914d4f7fbff3c37a..91971ca619c21baf9964650807f81c2448057781 100644 (file)
@@ -48,7 +48,9 @@ (setf ccl:*quit-on-eof* t)
 
 ;; Tell SBCL where to find its source source.
 #+sbcl
-(sb-ext:set-sbcl-source-location #p"/usr/share/sbcl-source/")
+(let ((srcdir #p"/usr/share/sbcl-source/"))
+  (when (probe-file srcdir)
+    (sb-ext:set-sbcl-source-location srcdir)))
 
 ;; Get SBCL to shut up about package variance.  This is a standard result of
 ;; my approach to symbol exports, and I don't care.
index f8d4dc9635431e07180f694a5f6c1d5f36db1e5c..c9eee120bf36619375bc1f68b4db662d26e9035e 100644 (file)
@@ -44,7 +44,7 @@ __mdw_addto () {
 ## __mdw_programp NAME
 ##
 ## Does NAME exist as an executable program?
-__mdw_programp () { type >/dev/null 2>&1 "$1"; }
+__mdw_programp () { command -v "$1" >/dev/null 2>&1; }
 
 ## __mdw_setconf VAR CONF [DEFAULT]
 ##
@@ -309,8 +309,11 @@ DEB_BUILD_OPTIONS="parallel=$(mdw-conf make-parallel 4)"
 export DEB_BUILD_OPTIONS
 
 ## Turn on useful colouring.
-if __mdw_programp dircolors; then eval $(dircolors -b "$HOME/.dircolors")
-else unset LS_COLORS; fi
+if __mdw_programp dircolors; then
+  eval $(TERM=${TERM-xterm} dircolors -b "$HOME/.dircolors")
+else
+  unset LS_COLORS
+fi
 export GREP_COLORS="mt=01;31:ms=01;31:mc=031;31:fn=36:ln=36:bn=36:se=34"
 export DIFF_COLORS="hd=1:ln=36:ad=32:de=31"
 
index 5251e9829979744f4fbe534503d7193e0e5ec63f..c6818113b48535e462756f1e8ec974b05d0631cd 100644 (file)
@@ -224,19 +224,30 @@ alias pushtmp='pushd ${TMPDIR-/tmp}'
 alias e="$EDITOR"
 alias svn="svnwrap svn"
 alias @="ssh"
-alias make="nice make"
-alias cross-run="nice cross-run"
+__mdw_nice="nice"
+if command -v ionice >/dev/null 2>&1; then
+  __mdw_nice="$__mdw_nice ionice -c3"
+fi
+alias mdw-nice="$__mdw_nice --"
+alias make="mdw-nice make"
+alias mvn="mdw-nice mvn"
+alias cross-run="mdw-nice cross-run"
 alias gdb="gdb -q"
 
 ## Shut up Lisp interpreters.
 alias clisp="clisp -q -q"
-alias cmucl="rlwrap cmucl -quiet"
-alias ecl="rlwrap ecl"
-alias sbcl="rlwrap sbcl --noinform"
-alias ccl="rlwrap ccl"
-alias ccl32="rlwrap ccl32"
-alias ccl64="rlwrap ccl64"
-alias abcl="rlwrap abcl --noinform"
+if command -v ionice >/dev/null 2>&1; then
+  alias maybe-rlwrap="rlwrap"
+else
+  alias maybe-rlwrap=""
+fi
+alias cmucl="maybe-rlwrap cmucl -quiet"
+alias ecl="maybe-rlwrap ecl"
+alias sbcl="maybe-rlwrap sbcl --noinform"
+alias ccl="maybe-rlwrap ccl"
+alias ccl32="maybe-rlwrap ccl32"
+alias ccl64="maybe-rlwrap ccl64"
+alias abcl="maybe-rlwrap abcl --noinform"
 
 ###--------------------------------------------------------------------------
 ### Colour output.
index fd290cd13109a0ad693bf477d717867abb818a3f..e44caf134a192bed8e23ad3c72589fbf2cd0c9b9 100644 (file)
@@ -63,9 +63,9 @@ disable_secret_security_check 0
 passwd_file ~/.w3m/passwd
 use_lessopen 0
 bgextviewer 1
-extbrowser
-extbrowser
-extbrowser /usr/X11R6/bin/netscape
+extbrowser2 vlc %s &
+extbrowser3 u=%s && printf %s "$u" | xsel -i
+extbrowser xdg-open %s
 mailer 
 mailto_options 1
 editor sensible-editor
@@ -123,7 +123,7 @@ ext_image_viewer 1
 max_load_image 4
 auto_image 1
 pseudo_inlines 1
-display_image 1
+display_image 0
 view_unseenobject 1
 ignore_null_img_alt 0
 display_ins_del 1
index 879abdb3f51be48832047f3f1f1af3923c66d8bc..0030abde0e9afa7ab78d0fd8fc1d2557f8feb698 100644 (file)
@@ -934,11 +934,13 @@ (setq org-export-docbook-xslt-proc-command "xsltproc --output %o %s %i"
 ;; Uprated version of M-x compile.
 
 (setq compile-command
-       (let ((ncpu (with-temp-buffer
-                     (insert-file-contents "/proc/cpuinfo")
-                     (buffer-string)
-                     (count-matches "^processor\\s-*:"))))
-         (format "nice make -j%d -k" (* 2 ncpu))))
+       (format "nice %smake -j%d -k"
+               (if (executable-find "ionice") "ionice -c3 " "")
+               (let ((ncpu (with-temp-buffer
+                             (insert-file-contents "/proc/cpuinfo")
+                             (buffer-string)
+                             (count-matches "^processor\\s-*:"))))
+                 (ceiling (* 3 ncpu) 2))))
 
 (defun mdw-compilation-buffer-name (mode)
   (concat "*" (downcase mode) ": "
@@ -1426,7 +1428,8 @@ (eval-after-load 'w3m
   '(define-key w3m-mode-map [?\e ?\r] 'w3m-view-this-url-new-session))
 
 (defcustom mdw-good-url-browsers
-  '(browse-url-mozilla
+  '(browse-url-firefox
+    browse-url-mozilla
     browse-url-generic
     (w3m . mdw-w3m-browse-url)
     browse-url-w3)
@@ -1454,31 +1457,28 @@ (eval-after-load "w3m-search"
   '(progn
      (dolist
         (item
-         '(("g" "Google" "http://www.google.co.uk/search?q=%s")
+         '(("ddg" "DuckDuckGo" "https://duckduckgo.com/?q=%s")
+           ("sp" "StartPage" "https://www.startpage.com/do/search?query=%s")
+           ("wp" "Wikipedia"
+            "https://en.wikipedia.org/wiki/Special:Search?go=Go&search=%s")
+           ("g" "Google" "https://www.google.co.uk/search?q=%s")
+           ("gi" "Images" "https://images.google.com/images?q=%s")
            ("gd" "Google Directory"
-            "http://www.google.com/search?cat=gwd/Top&q=%s")
-           ("gg" "Google Groups" "http://groups.google.com/groups?q=%s")
+            "https://www.google.com/search?cat=gwd/Top&q=%s")
+           ("gg" "Google Groups" "https://groups.google.com/groups?q=%s")
+           ("gm" "Google maps" "https://maps.google.co.uk/maps?q=%s&hl=en")
            ("ward" "Ward's wiki" "http://c2.com/cgi/wiki?%s")
-           ("gi" "Images" "http://images.google.com/images?q=%s")
-           ("rfc" "RFC"
-            "http://metalzone.distorted.org.uk/ftp/pub/mirrors/rfc/rfc%s.txt.gz")
-           ("wp" "Wikipedia"
-            "http://en.wikipedia.org/wiki/Special:Search?go=Go&search=%s")
-           ("imdb" "IMDb" "http://www.imdb.com/Find?%s")
-           ("nc-wiki" "nCipher wiki"
-            "http://wiki.ncipher.com/wiki/bin/view/Devel/?topic=%s")
-           ("map" "Google maps" "http://maps.google.co.uk/maps?q=%s&hl=en")
+           ("imdb" "IMDb" "https://www.imdb.com/Find?%s")
            ("lp" "Launchpad bug by number"
             "https://bugs.launchpad.net/bugs/%s")
            ("lppkg" "Launchpad bugs by package"
             "https://bugs.launchpad.net/%s")
            ("msdn" "MSDN"
-            "http://social.msdn.microsoft.com/Search/en-GB/?query=%s&ac=8")
+            "https://social.msdn.microsoft.com/Search/en-GB/?query=%s&ac=8")
            ("debbug" "Debian bug by number"
-            "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=%s")
+            "https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=%s")
            ("debbugpkg" "Debian bugs by package"
-            "http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=%s")
-           ("ljlogin" "LJ login" "http://www.livejournal.com/login.bml")))
+            "https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=%s")))
        (add-to-list 'w3m-search-engine-alist
                    (list (cadr item) (cl-caddr item) nil))
        (add-to-list 'w3m-uri-replace-alist
@@ -1486,6 +1486,8 @@ (eval-after-load "w3m-search"
                          'w3m-search-uri-replace
                          (cadr item))))))
 
+(setq w3m-search-default-engine "DuckDuckGo")
+
 ;;;--------------------------------------------------------------------------
 ;;; Paragraph filling.
 
@@ -2232,6 +2234,10 @@ (mdw-define-face ediff-odd-diff-Ancestor
 (mdw-define-face magit-hash
   (((min-colors 64)) :foreground "grey40")
   (((class color)) :foreground "blue"))
+(mdw-define-face magit-popup-argument
+  (((min-colors 64)) :foreground "SeaGreen1")
+  (((class color)) :foreground "green")
+  (t :weight bold))
 (mdw-define-face magit-diff-hunk-heading
   (((min-colors 64)) :foreground "grey70" :background "grey25")
   (((class color)) :foreground "yellow"))
@@ -2536,6 +2542,10 @@ (mdw-define-c-style mdw-c ()
   (c-class-key . "class")
   (c-backslash-column . 72)
   (c-label-minimum-indentation . 0)
+  (c-indent-comments-syntactically-p t)
+  (c-indent-comment-alist (end-block . (column . nil))
+                         (cpp-end-block . (column . nil))
+                         (other . (column . nil)))
   (c-offsets-alist (substatement-open . (add 0 c-indent-one-line-block))
                   (defun-open . (add 0 c-indent-one-line-block))
                   (arglist-cont-nonempty . mdw-c-lineup-arglist)
@@ -5264,6 +5274,15 @@ (let ((stuff '((cmucl ("cmucl"))
                (cons head slime-lisp-implementations))))))
 (setq slime-default-lisp 'sbcl)
 
+(mdw-define-face slime-repl-input-face
+  (t))
+(mdw-define-face slime-repl-output-face
+  (t :inherit font-lock-comment-face))
+(mdw-define-face slime-repl-inputed-output-face
+  (t :inherit link))
+(mdw-define-face slime-repl-output-mouseover-face
+  (t :inherit highlight))
+
 ;; Hooks.
 
 (progn
index a1bc6bda58bf79ecfc25e9e06a2bdee2f8d7279c..94300ac01da9c79763a7683e0bb45d3380ff9fa7 100644 (file)
@@ -5,7 +5,7 @@
         * that's less nice.
         */
        body.serif, body.serif .remove-button
-               { font-family: serif !important; }
+               { font-family: TeX Gyre Pagella !important; }
 
        /* Fix the background colour. */
        body.dark { background-color: #111 !important; }
@@ -28,7 +28,7 @@
                border-radius: 0 !important;
        }
 
-       h1, h2, h3, h4 { font-family: sans-serif; !important; }
+       h1, h2, h3, h4 { font-family: Nimbus Sans L; !important; }
 }
 
 @-moz-document url-prefix("about:blank") {
diff --git a/firefox/foxy-spirit.json b/firefox/foxy-spirit.json
new file mode 100644 (file)
index 0000000..dfbde42
--- /dev/null
@@ -0,0 +1,144 @@
+{
+  "7j2an31623931093497": {
+    "type": 1,
+    "color": "#1d52cc",
+    "title": "national",
+    "active": true,
+    "address": "national.distorted.org.uk",
+    "port": 3128,
+    "proxyDNS": false,
+    "username": "",
+    "password": "",
+    "whitePatterns": [
+      {
+        "title": "all URLs",
+        "active": true,
+        "pattern": "*",
+        "type": 1,
+        "protocols": 1
+      }
+    ],
+    "blackPatterns": [],
+    "pacURL": "",
+    "index": 3
+  },
+  "hxim7a1586829499072": {
+    "type": 1,
+    "color": "#000000",
+    "title": "Privoxy",
+    "active": true,
+    "address": "anon.distorted.org.uk",
+    "port": 8118,
+    "proxyDNS": false,
+    "username": "",
+    "password": "",
+    "whitePatterns": [
+      {
+        "title": "",
+        "pattern": "*.onion",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      },
+      {
+        "title": "",
+        "pattern": "config.privoxy.org",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      },
+      {
+        "title": "",
+        "pattern": "libgen.rs",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      },
+      {
+        "title": "",
+        "pattern": "libgen.lc",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      },
+      {
+        "title": "",
+        "pattern": "library.lol",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      },
+      {
+        "title": "libgen content",
+        "pattern": "62.182.86.140",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      }
+    ],
+    "blackPatterns": [],
+    "pacURL": "",
+    "index": 0
+  },
+  "logging": {
+    "size": 100,
+    "active": true
+  },
+  "mode": "patterns",
+  "n7rwnk1586828415122": {
+    "type": 5,
+    "color": "#dadada",
+    "title": "Direct",
+    "active": true,
+    "address": "(direct)",
+    "port": 0,
+    "proxyDNS": false,
+    "username": "",
+    "password": "",
+    "whitePatterns": [
+      {
+        "title": "",
+        "pattern": "localhost",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      },
+      {
+        "title": "",
+        "pattern": "localhost:*",
+        "type": 1,
+        "protocols": 1,
+        "active": true
+      }
+    ],
+    "blackPatterns": [],
+    "pacURL": "",
+    "index": 1
+  },
+  "ur1boa1586828382605": {
+    "type": 1,
+    "color": "#6d0000",
+    "title": "distorted.org.uk",
+    "active": true,
+    "address": "www-cache.distorted.org.uk",
+    "port": 3128,
+    "proxyDNS": false,
+    "username": "",
+    "password": "",
+    "whitePatterns": [
+      {
+        "title": "all URLs",
+        "active": true,
+        "pattern": "*",
+        "type": 1,
+        "protocols": 1
+      }
+    ],
+    "blackPatterns": [],
+    "pacURL": "",
+    "index": 2
+  },
+  "browserVersion": "102.10.0",
+  "foxyProxyVersion": "7.5.1",
+  "foxyProxyEdition": "standard"
+}
\ No newline at end of file
index e4dd876b70ca30dc817386e69b2ec32fb04e7a18..3899ec81f4a5e24da20385800d4f78a0c580bf00 100644 (file)
--- a/mdw.conf
+++ b/mdw.conf
@@ -12,6 +12,6 @@ hyperspec-url = https://www.distorted.org.uk/doc/hyperspec/
 console-ctype = en_GB.UTF-8
 x-ctype = en_GB.UTF-8
 releasekey = E359CA55
-upload-target = ftp.distorted.org.uk:~ftp/pub/mdw/
+upload-target = ftp.distorted.org.uk:/mnt/ftp/pub/mdw/
 dput-target = distorted
 sbuild-server = universe.distorted.org.uk