summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--README.org58
-rw-r--r--atop/.atoprc (renamed from tag-atop/atoprc)0
-rw-r--r--clojure/.lein/profiles.clj (renamed from tag-clojure/lein/profiles.clj)0
-rw-r--r--dwm/dwm/config.h (renamed from tag-dwm/dwm/config.h)0
-rw-r--r--emacs/.emacs.d/Makefile22
-rw-r--r--emacs/.emacs.d/init.org (renamed from tag-emacs/emacs.d/init.org)31
-rw-r--r--emacs/.emacs.d/private.el.gpgbin0 -> 2339 bytes
-rwxr-xr-xfish/.config/fish/config.fish (renamed from tag-fish/config/fish/config.fish)0
-rw-r--r--gemrc1
-rw-r--r--git/.config/git/config (renamed from tag-git/config/git/config)0
-rw-r--r--git/.config/git/gitk (renamed from tag-git/config/git/gitk)0
-rw-r--r--git/.config/git/ignore (renamed from tag-git/config/git/ignore)0
-rw-r--r--global/.globalrc (renamed from tag-global/globalrc)0
-rw-r--r--hg/.hgrc (renamed from tag-hg/hgrc)0
-rwxr-xr-xhooks/post-up/emacs17
-rwxr-xr-xhooks/post-up/zsh29
-rw-r--r--host-ap-spotcap.local/config/zsh/zshenv.local9
-rw-r--r--host-ap-spotcap.local/emacs.d/private.el.gpgbin2288 -> 0 bytes
-rw-r--r--host-ap-spotcap.local/rcrc.local2
-rw-r--r--host-prefect/Xresources4
-rw-r--r--host-prefect/rcrc.local2
-rw-r--r--javascript/.npmrc (renamed from npmrc)0
-rw-r--r--karabiner/.config/karabiner/karabiner.json (renamed from tag-karabiner/config/karabiner/karabiner.json)0
-rw-r--r--minttyrc/minttyrc (renamed from tag-minttyrc/minttyrc)0
-rw-r--r--mpv/.config/config (renamed from host-ap-spotcap.local/config/mpv/config)0
-rw-r--r--rcrc3
-rw-r--r--ruby/.gemrc1
-rw-r--r--slate/.slate (renamed from host-ap-spotcap.local/slate)0
-rwxr-xr-xssh/.ssh/rc (renamed from tag-ssh/ssh/rc)0
-rw-r--r--tmux/.tmux.conf (renamed from tag-tmux/tmux.conf)0
-rw-r--r--vagrant/.vagrant.d/Vagrantfile (renamed from tag-vagrant/vagrant.d/Vagrantfile)0
-rw-r--r--vagrant/.vagrant.d/ansible/centos.yml (renamed from tag-vagrant/vagrant.d/ansible/centos.yml)0
-rw-r--r--vagrant/.vagrant.d/ansible/debian.yml (renamed from tag-vagrant/vagrant.d/ansible/debian.yml)0
-rw-r--r--vagrant/.vagrant.d/ansible/site.yml (renamed from tag-vagrant/vagrant.d/ansible/site.yml)0
-rw-r--r--xbindkeys/xbindkeysrc.scm (renamed from tag-xbindkeys/xbindkeysrc.scm)0
-rw-r--r--xmobar/.xmobarrc (renamed from tag-xmobar/xmobarrc)0
-rw-r--r--xmodmap/xmodmaprc (renamed from host-marvin/xmodmaprc)0
-rw-r--r--xmonad/xmonad/xmonad.hs (renamed from tag-xmonad/xmonad/xmonad.hs)0
-rwxr-xr-xxprofile/.xprofile (renamed from tag-xprofile/xprofile)0
-rw-r--r--xresources/.xresources/main (renamed from tag-xresources/xresources/main)0
-rw-r--r--xresources/.xresources/solarized-light (renamed from tag-xresources/xresources/solarized-light)0
-rw-r--r--zsh/.config/zsh/.zshenv (renamed from tag-zsh/config/zsh/zshenv)8
-rw-r--r--zsh/.config/zsh/.zshrc (renamed from tag-zsh/config/zsh/zshrc)9
-rw-r--r--zsh/.zshenv (renamed from tag-zsh/zshenv)0
44 files changed, 113 insertions, 83 deletions
diff --git a/README.org b/README.org
index b6c5c092..7333ed34 100644
--- a/README.org
+++ b/README.org
@@ -1,8 +1,56 @@
 * Dotfiles
 
-I've organised this repository with [[https://github.com/thoughtbot/rcm][rcm]], using tag- and
-host-specific directories. It focuses on zsh and emacs, with some
-functions to go from zsh to emacs (and directly to dired and magit).
-It doesn't use any configuration frameworks.
+I've organised this repository with [[https://www.gnu.org/software/stow/][GNU Stow]].  It focuses on [[http://zsh.sourceforge.net][Z Shell]] and
+[[http://emacs.sexy][Emacs]].
 
-Most likely to work on Linux, OSX and FreeBSD.
+It doesn't use any configuration frameworks, just packages installed
+via package managers.  For Z shell I use [[https://zplug.sh/][zplug]] and for Emacs I use the
+built-in package.el via [[https://github.com/jwiegley/use-package][use-package]].
+
+It should work on:
+- Linux
+- OSX
+- FreeBSD
+- Windows/Ubuntu
+
+** Installation
+
+Installing a set of dotfiles with stow is simple.  For example, with
+Emacs:
+
+#+BEGIN_SRC sh :exports code
+stow -S emacs
+#+END_SRC
+
+And then to uninstall
+
+#+BEGIN_SRC sh :exports code
+stow -D emacs
+#+END_SRC
+
+*** Z Shell
+
+My zsh configuration uses [[https://zplug.sh/][zplug]], so that will need to be installed:
+
+#+BEGIN_SRC sh :exports code
+git clone git://github.com/zplug/zplug ~/projects/zplug/
+#+END_SRC
+
+To install the packages:
+
+#+BEGIN_SRC sh :exports code
+zsh -ic "zplug install"
+#+END_SRC
+
+Note that this will log some errors about a pipe, but that's okay.
+zplug is meant to be used in a real interactive shell.
+
+*** Emacs
+
+I use org-mode for my Emacs init file.  To simplify setup, I created a
+[[file:emacs/.emacs.d/Makefile][Makefile]].
+
+#+BEGIN_SRC sh :exports code
+cd ~/.emacs.d/
+make
+#+END_SRC
diff --git a/tag-atop/atoprc b/atop/.atoprc
index d03319ea..d03319ea 100644
--- a/tag-atop/atoprc
+++ b/atop/.atoprc
diff --git a/tag-clojure/lein/profiles.clj b/clojure/.lein/profiles.clj
index 99c0de2d..99c0de2d 100644
--- a/tag-clojure/lein/profiles.clj
+++ b/clojure/.lein/profiles.clj
diff --git a/tag-dwm/dwm/config.h b/dwm/dwm/config.h
index ae1d8bb3..ae1d8bb3 100644
--- a/tag-dwm/dwm/config.h
+++ b/dwm/dwm/config.h
diff --git a/emacs/.emacs.d/Makefile b/emacs/.emacs.d/Makefile
new file mode 100644
index 00000000..3d965e44
--- /dev/null
+++ b/emacs/.emacs.d/Makefile
@@ -0,0 +1,22 @@
+define EMACS_TANGLE
+(progn\
+  (setq vc-follow-symlinks nil)\
+  (find-file \"init.org\")\
+  (require 'ob-tangle)\
+  (org-babel-tangle nil \"init.el\"))
+endef
+
+# The first target is the default.  `all` is typically defined here.
+all: init.elc
+
+# These targets don't pertain to files
+.PHONY: all clean
+
+init.el:
+	@emacs --batch --no-init-file --eval "$(EMACS_TANGLE)" --kill
+
+init.elc: init.el
+	@emacs --batch --no-init-file --funcall batch-byte-compile init.el
+
+clean:
+	rm init.el init.elc
diff --git a/tag-emacs/emacs.d/init.org b/emacs/.emacs.d/init.org
index e8a7c3b6..7578c72a 100644
--- a/tag-emacs/emacs.d/init.org
+++ b/emacs/.emacs.d/init.org
@@ -300,7 +300,12 @@ switching windows.
 #+BEGIN_SRC emacs-lisp
 (use-package beacon
   :diminish beacon-mode
-  :config (beacon-mode +1))
+  :config (progn
+            (beacon-mode +1)
+            (setq beacon-blink-delay 0.25
+                  beacon-blink-duration 0.25
+                  beacon-size 20
+                  beacon-color "#a1b56c")))
 #+END_SRC
 
 ** Renaming major modes
@@ -423,7 +428,7 @@ configuration with crux.el
 #+BEGIN_SRC emacs-lisp
 (defun switch-to-dotfiles ()
   (interactive)
-  (projectile-switch-project-by-name (expand-file-name "dotfiles" home-project-directory)))
+  (projectile-switch-project-by-name (expand-file-name "~/dotfiles")))
 #+END_SRC
 
 ** The Silver Searcher
@@ -446,8 +451,9 @@ Step over Silver Search, here comes a new challenger.
   :if (executable-find "rg"))
 
 (use-package projectile-ripgrep
-  :bind (("C-c p s r" . projectile-ripgrep))
-  :ensure nil)
+  :after (ripgrep projectile)
+  :if (executable-find "rg")
+  :bind (("C-c p s r" . projectile-ripgrep)))
 #+END_SRC
 
 ** Projectile
@@ -1730,7 +1736,7 @@ A nice completion backend for programming modes.
 
 #+BEGIN_SRC emacs-lisp
 (use-package ggtags
-  :disabled t
+  :if (executable-find "gtags")
   :commands turn-on-ggtags-mode
   :functions (ggtags-navigation-mode-abort)
   :config (progn
@@ -1742,6 +1748,21 @@ A nice completion backend for programming modes.
           (add-hook 'c-mode-common-hook #'turn-on-ggtags-mode)))
 #+END_SRC
 
+** dumb-jump
+
+A "clever" way of implementing go-to-definition across languages: use
+a project-wide text search and apply heuristics to the results to
+guess a definition.
+
+#+BEGIN_SRC emacs-lisp
+(use-package dumb-jump
+  :bind (("M-g o" . dumb-jump-go-other-window)
+         ("M-g j" . dumb-jump-go)
+         ("M-g x" . dumb-jump-go-prefer-external)
+         ("M-g z" . dumb-jump-go-prefer-external-other-window))
+  :config (setq dumb-jump-selector 'ivy))
+#+END_SRC
+
 ** Lisps
 
 *** All
diff --git a/emacs/.emacs.d/private.el.gpg b/emacs/.emacs.d/private.el.gpg
new file mode 100644
index 00000000..04290b73
--- /dev/null
+++ b/emacs/.emacs.d/private.el.gpg
Binary files differdiff --git a/tag-fish/config/fish/config.fish b/fish/.config/fish/config.fish
index 34cd22ec..34cd22ec 100755
--- a/tag-fish/config/fish/config.fish
+++ b/fish/.config/fish/config.fish
diff --git a/gemrc b/gemrc
deleted file mode 100644
index aaa70a93..00000000
--- a/gemrc
+++ /dev/null
@@ -1 +0,0 @@
-gem: --user-install -n~/bin
\ No newline at end of file
diff --git a/tag-git/config/git/config b/git/.config/git/config
index 6228a08b..6228a08b 100644
--- a/tag-git/config/git/config
+++ b/git/.config/git/config
diff --git a/tag-git/config/git/gitk b/git/.config/git/gitk
index 0eb9a033..0eb9a033 100644
--- a/tag-git/config/git/gitk
+++ b/git/.config/git/gitk
diff --git a/tag-git/config/git/ignore b/git/.config/git/ignore
index d7189dc5..d7189dc5 100644
--- a/tag-git/config/git/ignore
+++ b/git/.config/git/ignore
diff --git a/tag-global/globalrc b/global/.globalrc
index 7fd1a0bb..7fd1a0bb 100644
--- a/tag-global/globalrc
+++ b/global/.globalrc
diff --git a/tag-hg/hgrc b/hg/.hgrc
index 2f16f27e..2f16f27e 100644
--- a/tag-hg/hgrc
+++ b/hg/.hgrc
diff --git a/hooks/post-up/emacs b/hooks/post-up/emacs
deleted file mode 100755
index 05a5c9d1..00000000
--- a/hooks/post-up/emacs
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-EMACS_COMMAND=$(command -v Emacs || command -v emacs)
-
-if [[ -s $EMACS_COMMAND ]]
-then
-  pushd ~/.emacs.d
-  emacs --batch --eval "(progn
-(setq vc-follow-symlinks nil)
-(find-file \"init.org\")
-(require 'ob-tangle)
-(org-babel-tangle nil \"init.el\")
-(byte-compile-file \"init.el\")
-(load-file \"init.el\")
-)"
-  popd
-fi
diff --git a/hooks/post-up/zsh b/hooks/post-up/zsh
deleted file mode 100755
index 3eef6e51..00000000
--- a/hooks/post-up/zsh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/usr/bin/env zsh
-ZDOTDIR="${XDG_CONFIG_HOME:=~/.config}/zsh"
-
-pushd $ZDOTDIR
-for f in z*(-.)
-do
-  if [[ -e .$f ]]
-  then
-    if [[ ! -h .$f ]]
-    then
-      echo ".$f already exists as a regular file, ignoring"
-    fi
-  else
-    ln -s $f .$f
-  fi
-done
-popd
-
-if [[ ! -d ~/.cache/zsh ]]
-then
-  mkdir -p ~/.cache/zsh
-fi
-
-if [[ -z $commands[zplug] && ! -d ~/projects/zplug/ ]]
-then
-  git clone git://github.com/zplug/zplug ~/projects/zplug/
-fi
-
-zsh -ic "zplug install"
diff --git a/host-ap-spotcap.local/config/zsh/zshenv.local b/host-ap-spotcap.local/config/zsh/zshenv.local
deleted file mode 100644
index af63e1ba..00000000
--- a/host-ap-spotcap.local/config/zsh/zshenv.local
+++ /dev/null
@@ -1,9 +0,0 @@
-# -*- mode: sh; -*-
-if [[ -e $HOME/.nix-profile/etc/profile.d/nix.sh ]]
-then
-  . $HOME/.nix-profile/etc/profile.d/nix.sh;
-fi
-
-JIRA_RAPID_BOARD=true
-JIRA_URL=https://spotcap.atlassian.net
-EMAIL=alan.pearce@spotcap.com
diff --git a/host-ap-spotcap.local/emacs.d/private.el.gpg b/host-ap-spotcap.local/emacs.d/private.el.gpg
deleted file mode 100644
index 784a023b..00000000
--- a/host-ap-spotcap.local/emacs.d/private.el.gpg
+++ /dev/null
Binary files differdiff --git a/host-ap-spotcap.local/rcrc.local b/host-ap-spotcap.local/rcrc.local
deleted file mode 100644
index 4639c9e2..00000000
--- a/host-ap-spotcap.local/rcrc.local
+++ /dev/null
@@ -1,2 +0,0 @@
-DOTFILES_DIRS="$HOME/projects/dotfiles"
-TAGS="emacs git global tmux zsh"
\ No newline at end of file
diff --git a/host-prefect/Xresources b/host-prefect/Xresources
deleted file mode 100644
index c89d4863..00000000
--- a/host-prefect/Xresources
+++ /dev/null
@@ -1,4 +0,0 @@
-#include "main"
-
-Emacs.Font:                         -xos4-Terminus-normal-normal-normal-*-14-*-*-*-*-*-*-*
-Emacs.fixed-pitch.attributeFont:    -xos4-Terminus-normal-normal-normal-*-14-*-*-*-*-*-*-*
diff --git a/host-prefect/rcrc.local b/host-prefect/rcrc.local
deleted file mode 100644
index 3b80dd6e..00000000
--- a/host-prefect/rcrc.local
+++ /dev/null
@@ -1,2 +0,0 @@
-DOTFILES_DIRS="$HOME/projects/dotfiles"
-TAGS="emacs git hg clojure ssh zsh"
diff --git a/npmrc b/javascript/.npmrc
index 6804f657..6804f657 100644
--- a/npmrc
+++ b/javascript/.npmrc
diff --git a/tag-karabiner/config/karabiner/karabiner.json b/karabiner/.config/karabiner/karabiner.json
index 0e866a63..0e866a63 100644
--- a/tag-karabiner/config/karabiner/karabiner.json
+++ b/karabiner/.config/karabiner/karabiner.json
diff --git a/tag-minttyrc/minttyrc b/minttyrc/minttyrc
index 2e7f2d86..2e7f2d86 100644
--- a/tag-minttyrc/minttyrc
+++ b/minttyrc/minttyrc
diff --git a/host-ap-spotcap.local/config/mpv/config b/mpv/.config/config
index 56c6d996..56c6d996 100644
--- a/host-ap-spotcap.local/config/mpv/config
+++ b/mpv/.config/config
diff --git a/rcrc b/rcrc
deleted file mode 100644
index 112aae61..00000000
--- a/rcrc
+++ /dev/null
@@ -1,3 +0,0 @@
-EXCLUDES="Brewfile LaunchAgents README.org"
-DOTFILES_DIRS="$HOME/projects/dotfiles"
-[ -e ~/.rcrc.local ] && . ~/.rcrc.local
\ No newline at end of file
diff --git a/ruby/.gemrc b/ruby/.gemrc
new file mode 100644
index 00000000..ab4f7840
--- /dev/null
+++ b/ruby/.gemrc
@@ -0,0 +1 @@
+gem: --user-install -n~/.local/bin
\ No newline at end of file
diff --git a/host-ap-spotcap.local/slate b/slate/.slate
index e8c675d0..e8c675d0 100644
--- a/host-ap-spotcap.local/slate
+++ b/slate/.slate
diff --git a/tag-ssh/ssh/rc b/ssh/.ssh/rc
index 59e4cfd1..59e4cfd1 100755
--- a/tag-ssh/ssh/rc
+++ b/ssh/.ssh/rc
diff --git a/tag-tmux/tmux.conf b/tmux/.tmux.conf
index 697e1238..697e1238 100644
--- a/tag-tmux/tmux.conf
+++ b/tmux/.tmux.conf
diff --git a/tag-vagrant/vagrant.d/Vagrantfile b/vagrant/.vagrant.d/Vagrantfile
index 4c69c88e..4c69c88e 100644
--- a/tag-vagrant/vagrant.d/Vagrantfile
+++ b/vagrant/.vagrant.d/Vagrantfile
diff --git a/tag-vagrant/vagrant.d/ansible/centos.yml b/vagrant/.vagrant.d/ansible/centos.yml
index 1a6759a6..1a6759a6 100644
--- a/tag-vagrant/vagrant.d/ansible/centos.yml
+++ b/vagrant/.vagrant.d/ansible/centos.yml
diff --git a/tag-vagrant/vagrant.d/ansible/debian.yml b/vagrant/.vagrant.d/ansible/debian.yml
index 9e06af69..9e06af69 100644
--- a/tag-vagrant/vagrant.d/ansible/debian.yml
+++ b/vagrant/.vagrant.d/ansible/debian.yml
diff --git a/tag-vagrant/vagrant.d/ansible/site.yml b/vagrant/.vagrant.d/ansible/site.yml
index 13384550..13384550 100644
--- a/tag-vagrant/vagrant.d/ansible/site.yml
+++ b/vagrant/.vagrant.d/ansible/site.yml
diff --git a/tag-xbindkeys/xbindkeysrc.scm b/xbindkeys/xbindkeysrc.scm
index 7b00c38d..7b00c38d 100644
--- a/tag-xbindkeys/xbindkeysrc.scm
+++ b/xbindkeys/xbindkeysrc.scm
diff --git a/tag-xmobar/xmobarrc b/xmobar/.xmobarrc
index dd54a928..dd54a928 100644
--- a/tag-xmobar/xmobarrc
+++ b/xmobar/.xmobarrc
diff --git a/host-marvin/xmodmaprc b/xmodmap/xmodmaprc
index 82a8674f..82a8674f 100644
--- a/host-marvin/xmodmaprc
+++ b/xmodmap/xmodmaprc
diff --git a/tag-xmonad/xmonad/xmonad.hs b/xmonad/xmonad/xmonad.hs
index 21e197d2..21e197d2 100644
--- a/tag-xmonad/xmonad/xmonad.hs
+++ b/xmonad/xmonad/xmonad.hs
diff --git a/tag-xprofile/xprofile b/xprofile/.xprofile
index f0a05239..f0a05239 100755
--- a/tag-xprofile/xprofile
+++ b/xprofile/.xprofile
diff --git a/tag-xresources/xresources/main b/xresources/.xresources/main
index 73f8096d..73f8096d 100644
--- a/tag-xresources/xresources/main
+++ b/xresources/.xresources/main
diff --git a/tag-xresources/xresources/solarized-light b/xresources/.xresources/solarized-light
index 3906b7b0..3906b7b0 100644
--- a/tag-xresources/xresources/solarized-light
+++ b/xresources/.xresources/solarized-light
diff --git a/tag-zsh/config/zsh/zshenv b/zsh/.config/zsh/.zshenv
index f1cad02f..512dc56e 100644
--- a/tag-zsh/config/zsh/zshenv
+++ b/zsh/.config/zsh/.zshenv
@@ -17,6 +17,11 @@ then
     export SSH_AUTH_SOCK=${XDG_RUNTIME_DIR:-/run/user/$UID}/ssh-agent
   fi
 
+  if [[ -e $HOME/.nix-profile/etc/profile.d/nix.sh ]]
+  then
+    . $HOME/.nix-profile/etc/profile.d/nix.sh;
+  fi
+
   case $OSTYPE in
     darwin*)
       os=darwin
@@ -40,4 +45,7 @@ then
       arch=386
       ;;
   esac
+
+  export GTAGSCONF=~/.globalrc
+  export GTAGSLABEL=ctags
 fi
diff --git a/tag-zsh/config/zsh/zshrc b/zsh/.config/zsh/.zshrc
index fb9a36a7..8a9c8063 100644
--- a/tag-zsh/config/zsh/zshrc
+++ b/zsh/.config/zsh/.zshrc
@@ -2,7 +2,6 @@
 source $ZPLUG_HOME/init.zsh
 
 zplug "zsh-users/zsh-completions", depth:1, defer:0
-zplug "Tarrasch/zsh-autoenv", as:plugin
 zplug "junegunn/fzf-bin", from:gh-r, as:command, rename-to:fzf
 zplug "junegunn/fzf", as:plugin, use:"shell/*.zsh", defer:2
 zplug "junegunn/fzf", as:command, use:"bin/*"
@@ -134,18 +133,16 @@ then
   eval $(ssh-agent)
 fi
 
-if zplug check Tarrasch/zsh-autoenv
+if zplug check gerges/oh-my-zsh-jira-plus
 then
-  AUTOENV_FILE_ENTER=.envrc
-  AUTOENV_HANDLE_LEAVE=1
-  AUTOENV_LOOK_UPWARDS=1
+  JIRA_RAPID_BOARD=true
+  JIRA_URL=https://spotcap.atlassian.net
 fi
 
 # Then, source plugins and add commands to $PATH
 zplug load
 
 # General configuration
-setopt auto_cd          # Change directories without `cd`
 
 if [[ -n $commands[hub] ]]
 then
diff --git a/tag-zsh/zshenv b/zsh/.zshenv
index 354c54da..354c54da 100644
--- a/tag-zsh/zshenv
+++ b/zsh/.zshenv