Browse Source

Some major revisions as i have recently replaced my desktop. Namely:

* switched to systemd for user level daemons and startup programs originally run from .xinitrc
 * beefed up the logout menu implemented by .bin/xmonadClose.sh to support pretty well all
   windows-managers (with some minor modification) and now with support for suspend and hibernate

.Xdefaults:
  * did a little rearrangement to make things pretty
  * added the clipboard extension
.authinfo.gpg:
.authinfo-cd.gpg:
  * encrypted authinfo files for gnus (emacs)
.bash_profile:
  * now checks if ~/.bashrc is a file and then executes it instead of just assuming
.bashrc:
  * added a few new aliases
  * modified path to include ~/.bin
.bin/xmonadClose.sh:
  * now supports pretty well any window manager with minor modification (just edit the
    actionNames and actionExecs arrays respective elements)
  * now brings up a dmenu options menu to select one of cancel, logout, suspend, hybrid-sleep,
    hibernate, or shutdown
  * uses xdotool to send a hidden 'kill switch' to xmonad upon 'logout'
  * uses systemctl to suspend, hybrid-sleep and hibernate
  * uses the classic shutdown command for shutdown
.config/mc/:
  * moved the config files from .mc
.config/systemd/user/:
  * all user instance systemd service files go here

  default.target.wants/:
   * contains a symbolic link to all the currently enabled service files

  emacs.service:
   * starts the emacs daemon
  mpd.service:
   * starts a user level instance of mpd using the config ~/.mpdconf
  udiskie.service:
   * starts udiskie (a user level daemon for automounted media using udisk)
  urxvtd.service:
   * starts the urxvt daemon
  unclutter.service:
   * starts the uncluttered program
  trayer.service:
   * starts trayer using the options:
      --monitor 1 --edge top --align right --expand true --width 4 --height 2 --transparent true --tint 0x000000
  xbindkeys.service:
   * starts xbindkeys
  xcompmgr.service:
   * starts xcompmgr
  xscreensaver.service:
   * starts xscreensaver
.emacs:
  * added support for magit
  * added support for ipython
  * dropped in ELPA version of swank-clojure in place of the AUR version
  * preparing to use babel (part of org more for use with code)
  * upgraded yas to the most recent version from ELPA; need to smooth out some minor issues
  * python-mode is currently commented out in config but working; dropped in ELPA version in
    place of the AUR version i had previous
  * disabled gieser (in the process of dropping in the ELPA version..just ran into some hitch)
  * add a template for ruby to .emacs.d/templates
.mpdconf:
  * user instance mpd config
.screenrc:
  * re-enabled ncmpcpp in place of cmus as i'm using mpd now
  * disable mc in screen because it doesn't start correctly; mc is available through my xmonad
    scratchpad "mc"
.vimrc:
  * enabled syntax highlighting
.xbindkeysrc:
  * switched music keybindings from cmus-remote commands to there respective mpc commands
  * switched www key to conkeror in place of firefox
.xinitrc:
  * use systemd --user to run a user instance of systemd to run startup programs generally
    run from this script. The programs i have written unit files are specified above and left
    as comments in this file.
.xmobarrc:
  * my ethernet interface is now called 'eno1' not 'eth0'
  * TODO: need to setup wireless status xmobar widget for 'wlp7s0'
.xmonad/xmonad.hs:
  * added keybinding for auto-umounting any disk auto-mounted by udiskie (Mod+shift+control u)
  * now using new .bin/xmonadClose.sh to kill session in a few different ways (Mod+shift q)
  * added a keybinding to toggle the status bar (xmobar) using (Mod b)
  * added better support for some full screen games: supertux2, doom3, steam and hl2
  * set opacity on all emacs and gvim windows to 13/16 (btw this is done for urxvt using a
    property in .Xdefaults
.xscreensaver:
  * an auto-generated file by xscreensaver-demo; may consider removing in the future as it can
    always be auto-generated but its nice to have all my screensavers saved and ready
.xsession:
  * not currently using since i use slim but here for compatibility with gdm,kdm and other de's
.zshrc:
  * some auto-generated changes thanks to compinstall
  * added a few new aliases
  * modified path to include ~/.bin

Signed-off-by: Collin Doering <rekahsoft@gmail.com>
master
Collin J. Doering 8 years ago
committed by Collin J. Doering
parent
commit
28602aa7ed
50 changed files with 2072 additions and 77 deletions
  1. +5
    -3
      .Xdefaults
  2. +1
    -1
      .bash_profile
  3. +7
    -1
      .bashrc
  4. +38
    -3
      .bin/xmonadClose.sh
  5. +684
    -0
      .config/mc/bindings
  6. +5
    -0
      .config/mc/hotlist
  7. +194
    -0
      .config/mc/ini
  8. +32
    -0
      .config/mc/panels.ini
  9. +1
    -0
      .config/systemd/user/default.target.wants/emacs.service
  10. +1
    -0
      .config/systemd/user/default.target.wants/emacsd.service
  11. +1
    -0
      .config/systemd/user/default.target.wants/mpd.service
  12. +1
    -0
      .config/systemd/user/default.target.wants/udiskie.service
  13. +1
    -0
      .config/systemd/user/default.target.wants/unclutter.service
  14. +1
    -0
      .config/systemd/user/default.target.wants/urxvtd.service
  15. +1
    -0
      .config/systemd/user/default.target.wants/xbindkeys.service
  16. +1
    -0
      .config/systemd/user/default.target.wants/xcompmgr.service
  17. +1
    -0
      .config/systemd/user/default.target.wants/xscreensaver.service
  18. +11
    -0
      .config/systemd/user/emacs.service
  19. +9
    -0
      .config/systemd/user/mpd.service
  20. +9
    -0
      .config/systemd/user/trayer.service
  21. +9
    -0
      .config/systemd/user/udiskie.service
  22. +9
    -0
      .config/systemd/user/unclutter.service
  23. +9
    -0
      .config/systemd/user/urxvtd.service
  24. +9
    -0
      .config/systemd/user/xbindkeys.service
  25. +9
    -0
      .config/systemd/user/xcompmgr.service
  26. +9
    -0
      .config/systemd/user/xscreensaver.service
  27. +50
    -19
      .emacs
  28. +19
    -0
      .emacs.d/templates/emacs-lisp-template.el
  29. +19
    -0
      .emacs.d/templates/erlang-template.erl
  30. +19
    -0
      .emacs.d/templates/lua-template.lua
  31. +23
    -0
      .emacs.d/templates/ocaml-template.ml
  32. +23
    -0
      .emacs.d/templates/php-template.php
  33. +3
    -0
      .emacs.d/templates/python-scratch.py
  34. +19
    -0
      .emacs.d/templates/ruby-template.rb
  35. +23
    -0
      .emacs.d/templates/sml-template.ml
  36. +5
    -0
      .eshell/alias
  37. +7
    -0
      .eshell/profile
  38. +6
    -0
      .gitconfig
  39. +1
    -1
      .gnus
  40. +456
    -0
      .mpdconf
  41. +3
    -3
      .screenrc
  42. +4
    -0
      .stumpwmrc
  43. +3
    -0
      .vimrc
  44. +13
    -13
      .xbindkeysrc
  45. +19
    -21
      .xinitrc
  46. +2
    -2
      .xmobarrc
  47. +21
    -8
      .xmonad/xmonad.hs
  48. +258
    -0
      .xscreensaver
  49. +10
    -0
      .xsession
  50. +8
    -2
      .zshrc

+ 5
- 3
.Xdefaults View File

@ -4,12 +4,14 @@ URxvt.cursorColor: green
URxvt.underlineColor: yellow
URxvt.font: xft:Bitstream Vera Sans Mono:pixelsize=12:antialias=false
URxvt.boldFont: xft:Bitstream Vera Sans Mono:bold:pixelsize=13:antialias=false
URxvt.perl-ext-common: default,tabbedex,url-select,keyboard-select,matcher
URxvt.matcher.button: 1
URxvt.scrollstyle: plain
URxvt.perl-ext-common: default,clipboard,tabbedex,url-select,keyboard-select,matcher
URxvt.keysym.M-u: perl:url-select:select_next
URxvt.urlLauncher: /usr/bin/conkeror
URxvt.underlineURLs: true
URxvt.matcher.button: 1
URxvt.scrollstyle: plain
URxvt.keysym.M-Escape: perl:keyboard-select:activate
URxvt.keysym.M-s: perl:keyboard-select:search


+ 1
- 1
.bash_profile View File

@ -1,4 +1,4 @@
. $HOME/.bashrc
[[ -f ~/.bashrc ]] && . ~/.bashrc
# Create variable GENERAL_SCREEN which is the pid of one or more screens called "general"
export GENERAL_SCREEN=`screen -ls | grep general | cut -f1 -d'.' | sed 's/\W//g'`

+ 7
- 1
.bashrc View File

@ -8,10 +8,13 @@ alias grep='grep --color=auto'
alias fgrep='fgrep --color-auto'
alias egrep='egrep --color-auto'
alias ncmpc='ncmpc -c'
alias pacman='pacman-color'
alias knk='knock rekahsoft-mini 7713:tcp 1377:udp && sleep 3s && '
alias knkc='knk ssh rekahsoft-mini '
alias skreen='screen -c /dev/null'
alias tranr='transmission-remote'
alias sctl='sudo systemctl'
alias ctlu='systemctl --user'
export GREP_COLOR="1;33"
alias grep='grep --color=auto'
@ -20,6 +23,9 @@ alias grep='grep --color=auto'
export LESSOPEN="| /usr/bin/src-hilite-lesspipe.sh %s"
export LESS=' -R '
# Set text/background colors for ls
export LS_COLORS="di=01;37"
PS1='[\u@\h: \w]\$ '
# Turn off noscroll
@ -29,7 +35,7 @@ stty stop undef
# * mathematica / tools
# * nxclient / associated tools
# * maven tools
export PATH=${PATH}:/usr/local/bin:/opt/maven/bin:/opt/NX/bin:/home/collin/.cabal/bin
export PATH=${PATH}:/usr/local/bin:/opt/maven/bin:/opt/NX/bin:/home/collin/.cabal/bin:/home/collin/.bin
# start keychain
eval `keychain --eval --timeout 10 --quiet --agents ssh id_rsa`


+ 38
- 3
.bin/xmonadClose.sh View File

@ -18,7 +18,42 @@
# File: xmonadClose.sh
# Author: Collin J. Doering <rekahsoft@gmail.com>
# Date: May 13, 2011
# Description: A simple script to allow a nice dmenu gui when logging out,
# shutting down, or rebooting
# TODO: * Support sleep and hibernate
# * Needs to check whether a reboot/shutdown is allowed (user must be in the group
# 'power' and must be the only user logged in or they will be prompted for sudo's
# password to override)
# * re-write in haskell direct into ~/.xmonad/xmonad.hs using the dmenu extension(?)
# - issue with that is then the script could only be used within xmonad
# - perhaps consider taking a second argument when logout is passed as the first
# so that the second argument could be used as a 'logout command' and thus
# this script could be used with any wm
if [[ `echo "" | dmenu -b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000' -p "Do you really want to close XMonad? [yes/no]: "` == 'yes' ]]; then
xdotool key super+control+shift+End
fi
actionNames=(cancel logout suspend hibernate hybrid-sleep shutdown)
actionExecs=(""
"xdotool key super+control+shift+End"
"xscreensaver-command -lock && systemctl suspend"
"xscreensaver-command -lock && systemctl hibernate"
"xscreensaver-command -lock && systemctl hybrid-sleep"
"shutdown -h now")
# Ask the user whether they want to logout, cancel, suspend, hibernate, hybrid-sleep, shutdown
ask=`echo ${actionNames[*]} | tr ' ' '\n' | dmenu -b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000'`
case "$ask" in
logout|suspend|hibernate|hybrid-sleep|shutdown)
if [[ `echo "" | dmenu -b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000' -p "Are you sure you want to $ask? [yes/no] "` == 'yes' ]]; then
for ((i=0; i < ${#actionNames[*]}; i++)); do
if [[ "$ask" == "${actionNames[$i]}" ]]; then
sh -c "${actionExecs[$i]}"
break
fi
done
fi
break
;;
cancel|*)
# Do nothing; the user entered cancel or a invalid input
;;
esac

+ 684
- 0
.config/mc/bindings View File

@ -0,0 +1,684 @@
# Midnight Commander 3.0 extension file
# Warning: Structure of this file has changed completely with version 3.0
#
# All lines starting with # or empty lines are thrown away.
# Lines starting in the first column should have following format:
#
# keyword/descNL, i.e. everything after keyword/ until new line is desc
#
# keyword can be:
#
# shell (desc is, when starting with a dot, any extension (no wildcars),
# i.e. matches all the files *desc . Example: .tar matches *.tar;
# if it doesn't start with a dot, it matches only a file of that name)
#
# regex (desc is an extended regular expression)
# Please note that we are using the GNU regex library and thus
# \| matches the literal | and | has special meaning (or) and
# () have special meaning and \( \) stand for literal ( ).
#
# type (file matches this if `file %f` matches regular expression desc
# (the filename: part from `file %f` is removed))
#
# directory (matches any directory matching regular expression desc)
#
# include (matches an include directive)
#
# default (matches any file no matter what desc is)
#
# Other lines should start with a space or tab and should be in the format:
#
# keyword=commandNL (with no spaces around =), where keyword should be:
#
# Open (if the user presses Enter or doubleclicks it),
#
# View (F3), Edit (F4)
#
# Include is the keyword used to add any further entries from an include/
# section
#
# command is any one-line shell command, with the following substitutions:
#
# %% -> % character
# %p -> name of the current file (without path, but pwd is its path)
# %f -> name of the current file. Unlike %p, if file is located on a
# non-local virtual filesystem, i.e. either tarfs or ftpfs,
# then the file will be temporarily copied into a local directory
# and %f will be the full path to this local temporal file.
# If you don't want to get a local copy and want to get the
# virtual fs path (like /#ftp:ftp.cvut.cz/pub/hungry/xword), then
# use %d/%p instead of %f.
# %d -> name of the current directory (pwd, without trailing slash)
# %s -> "selected files", i.e. space separated list of tagged files if any
# or name of the current file
# %t -> list of tagged files
# %u -> list of tagged files (they'll be untaged after the command)
#
# (If these 6 letters are in uppercase, they refer to the other panel.
# But you shouldn't have to use it in this file.)
#
#
# %cd -> the rest is a path mc should change into (cd won't work, since it's
# a child process). %cd handles even vfs names.
#
# %view -> the command you type will be piped into mc's internal file viewer
# if you type only the %view and no command, viewer will load %f file
# instead (i.e. no piping, so it is different to %view cat %f)
# %view may be directly followed by {} with a list of any of
# ascii (Ascii mode), hex (Hex mode), nroff (color highlighting for
# text using backspace for bold and underscore) and unform
# (no highlighting for nroff sequences) separated by commas.
#
# %var -> You use it like this: %var{VAR:default}. This macro will expand
# to the value of the VAR variable in the environment if it's set
# otherwise the value in default will be used. This is similar to
# the Bourne shell ${VAR-default} construct.
#
# Rules are applied from top to bottom, thus the order is important.
# If some actions are missing, search continues as if this target didn't
# match (i.e. if a file matches the first and second entry and View action
# is missing in the first one, then on pressing F3 the View action from
# the second entry will be used. default should catch all the actions.
#
# Any new entries you develop for you are always welcome if they are
# useful on more than one system. You can post your modifications
# as tickets at www.midnight-commander.org
### Changes ###
#
# Reorganization: 2000-05-01 Michal Svec <rebel@penguin.cz>
### TODO ###
#
# Postscript Open: ps2svga [gs -DEVICE=jpeg|zgv or something]
# Images asciiview
#
# All X Apps [Nothing/Warning] if no DISPLAY
# Not found [Default/Warning]
# Empty Output [Default/Warning]
# Edit: CopyOut+EDIT+CopyIn
# Security Check gzip/bzip EDIT (mktemp)
#
# Maybe: Open/XOpen/GOpen/KOpen/... for Console/X/GNOME/KDE/etc.
### Archives ###
# .tgz, .tpz, .tar.gz, .tar.z, .tar.Z, .ipk
regex/\.t([gp]?z|ar\.g?[zZ])$|\.ipk$
Open=%cd %p#utar
View=%view{ascii} gzip -dc %f 2>/dev/null | tar tvvf -
regex/\.tar\.bz$
# Open=%cd %p#utar
View=%view{ascii} bzip -dc %f 2>/dev/null | tar tvvf -
regex/\.t(ar\.bz2|bz2?|b2)$
Open=%cd %p#utar
View=%view{ascii} bzip2 -dc %f 2>/dev/null | tar tvvf -
# .tar.lzma, .tlz
regex/\.t(ar\.lzma|lz)$
Open=%cd %p#utar
View=%view{ascii} lzma -dc %f 2>/dev/null | tar tvvf -
# .tar.xz, .txz
regex/\.t(ar\.xz|xz)$
Open=%cd %p#utar
View=%view{ascii} xz -dc %f 2>/dev/null | tar tvvf -
# .tar.F - used in QNX
regex/\.tar\.F$
# Open=%cd %p#utar
View=%view{ascii} freeze -dc %f 2>/dev/null | tar tvvf -
# .qpr/.qpk - QNX Neutrino package installer files
regex/\.(qp[rk])$
Open=%cd %p#utar
View=%view{ascii} gzip -dc %f 2>/dev/null | tar tvvf -
# tar
regex/\.(tar|TAR)$
Open=%cd %p#utar
View=%view{ascii} tar tvvf - < %f
# lha
type/^LHa\ .*archive
Open=%cd %p#ulha
View=%view{ascii} lha l %f
# arj
regex/\.a(rj|[0-9][0-9])$
Open=%cd %p#uarj
View=%view{ascii} unarj l %f
# cab
regex/\.([cC][aA][bB])$
Open=%cd %p#ucab
View=%view{ascii} cabextract -l %f
# ha
regex/\.([Hh][Aa])$
Open=%cd %p#uha
View=%view{ascii} ha lf %f
# rar
regex/\.[rR]([aA][rR]|[0-9][0-9])$
Open=%cd %p#urar
View=%view{ascii} rar v -c- %f
# ALZip
regex/\.(alz|ALZ)$
Open=%cd %p#ualz
View=%view{ascii} unalz -l %f
# cpio
shell/.cpio.Z
Open=%cd %p#ucpio
View=%view{ascii} gzip -dc %f | cpio -itv 2>/dev/null
shell/.cpio.gz
Open=%cd %p#ucpio
View=%view{ascii} gzip -dc %f | cpio -itv 2>/dev/null
shell/.cpio
Open=%cd %p#ucpio
View=%view{ascii} cpio -itv < %f 2>/dev/null
# ls-lR
regex/(^|\.)ls-?lR(\.gz|Z|bz2)$
Open=%cd %p#lslR
# patch
regex/\.(diff|patch)(\.bz2)$
Open=%cd %p#patchfs
View=%view{ascii} bzip2 -dc %f 2>/dev/null
regex/\.(diff|patch)(\.(gz|Z))$
Open=%cd %p#patchfs
View=%view{ascii} gzip -dc %f 2>/dev/null
regex/\.(diff|patch)$
Open=%cd %p#patchfs
View=%view{ascii} /bin/cat %f 2>/dev/null
# ar library
regex/\.s?a$
Open=%cd %p#uar
#Open=%view{ascii} ar tv %f
View=%view{ascii} file %f && nm -C %f
# trpm
regex/\.trpm$
Open=%cd %p#trpm
View=%view{ascii} rpm -qivl --scripts `basename %p .trpm`
# RPM packages (SuSE uses *.spm for source packages)
regex/\.(src\.rpm|spm)$
Open=%cd %p#rpm
View=%view{ascii} if rpm --nosignature --version >/dev/null 2>&1; then RPM="rpm --nosignature" ; else RPM="rpm" ; fi ; $RPM -qivlp --scripts %f
regex/\.rpm$
Open=%cd %p#rpm
View=%view{ascii} if rpm --nosignature --version >/dev/null 2>&1; then RPM="rpm --nosignature" ; else RPM="rpm" ; fi ; $RPM -qivlp --scripts %f
# deb
regex/\.u?deb$
Open=%cd %p#deb
View=%view{ascii} dpkg-deb -I %f && echo && dpkg-deb -c %f
# dpkg
shell/.debd
Open=%cd %p#debd
View=%view{ascii} dpkg -s `echo %p | sed 's/\([0-9a-z.-]*\).*/\1/'`
# apt
shell/.deba
Open=%cd %p#deba
View=%view{ascii} apt-cache show `echo %p | sed 's/\([0-9a-z.-]*\).*/\1/'`
# ISO9660
regex/\.([iI][sS][oO])$
Open=%cd %p#iso9660
View=%view{ascii} isoinfo -l -i %f
# 7zip archives (they are not man pages)
regex/\.(7z|7Z)$
Open=%cd %p#u7z
View=%view{ascii} 7za l %f 2>/dev/null
# Mailboxes
type/^ASCII\ mail\ text
Open=%cd %p#mailfs
### Sources ###
# C
shell/.c
Open=%var{EDITOR:emacsclient} %f
# Fortran
shell/.f
Open=%var{EDITOR:emacsclient} %f
# Header
regex/\.(h|hpp)$
Open=%var{EDITOR:emacsclient} %f
# Asm
shell/.s
Open=%var{EDITOR:emacsclient} %f
# C++
regex/\.(C|cc|cpp)$
Open=%var{EDITOR:emacsclient} %f
# .so libraries
regex/\.(so|so\.[0-9\.]*)$
View=%view{ascii} file %f && nm -C -D %f
# Python
shell/.py
Open=%var{EDITOR:emacsclient} %f
# Racket
shell/.rkt
Open=%var{EDITOR:emacsclient} %f
# General Scheme
shell/.scm
Open=%var{EDITOR:emacsclient} %f
# Lisp
shell/.lisp
Open=%var{EDITOR:emacsclient} %f
# Haskell
shell/.hs
Open=%var{EDITOR:emacsclient} %f
# Object
type/^ELF
#Open=%var{PAGER:more} %f
View=%view{ascii} file %f && nm -C %f
### Documentation ###
# Texinfo
regex/\.(te?xi|texinfo)$
# GNU Info page
type/^Info\ text
Open=info -f %f
shell/.info
Open=info -f %f
# Manual page
regex/(([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])|\.man)$
Open=case %d/%f in */log/*|*/logs/*) cat %f ;; *) { zsoelim %f 2>/dev/null || cat %f; } | nroff -c -Tlatin1 -mandoc ;; esac | %var{PAGER:more}
View=%view{ascii,nroff} case %d/%f in */log/*|*/logs/*) cat %f ;; *) { zsoelim %f 2>/dev/null || cat %f; } | nroff -c -Tlatin1 -mandoc ;; esac
# Perl pod page
shell/.pod
Open=pod2man %f | nroff -c -Tlatin1 -mandoc | %var{PAGER:more}
View=%view{ascii,nroff} pod2man %f | nroff -c -Tlatin1 -mandoc
# Troff with me macros.
# Exception - "read.me" is not a nroff file.
shell/read.me
Open=
View=
shell/.me
Open=nroff -c -Tlatin1 -me %f | %var{PAGER:more}
View=%view{ascii,nroff} nroff -c -Tlatin1 -me %f
# Troff with ms macros.
shell/.ms
Open=nroff -c -Tlatin1 -ms %f | %var{PAGER:more}
View=%view{ascii,nroff} nroff -c -Tlatin1 -ms %f
# Manual page - compressed
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.g?[Zz]$
Open=case %d/%f in */log/*|*/logs/*) gzip -dc %f ;; *) gzip -dc %f | nroff -c -Tlatin1 -mandoc ;; esac | %var{PAGER:more}
View=%view{ascii,nroff} case %d/%f in */log/*|*/logs/*) gzip -dc %f ;; *) gzip -dc %f | nroff -c -Tlatin1 -mandoc ;; esac
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.bz$
Open=case %d/%f in */log/*|*/logs/*) bzip -dc %f ;; *) bzip -dc %f | nroff -c -Tlatin1 -mandoc ;; esac | %var{PAGER:more}
View=%view{ascii,nroff} case %d/%f in */log/*|*/logs/*) bzip -dc %f ;; *) bzip -dc %f | nroff -c -Tlatin1 -mandoc ;; esac
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.bz2$
Open=case %d/%f in */log/*|*/logs/*) bzip2 -dc %f ;; *) bzip2 -dc %f | nroff -c -Tlatin1 -mandoc ;; esac | %var{PAGER:more}
View=%view{ascii,nroff} case %d/%f in */log/*|*/logs/*) bzip2 -dc %f ;; *) bzip2 -dc %f | nroff -c -Tlatin1 -mandoc ;; esac
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.lzma$
Open=case %d/%f in */log/*|*/logs/*) lzma -dc %f ;; *) lzma -dc %f | nroff -c -Tlatin1 -mandoc ;; esac | %var{PAGER:more}
View=%view{ascii,nroff} case %d/%f in */log/*|*/logs/*) lzma -dc %f ;; *) lzma -dc %f | nroff -c -Tlatin1 -mandoc ;; esac
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.xz$
Open=case %d/%f in */log/*|*/logs/*) xz -dc %f ;; *) xz -dc %f | nroff -c -Tlatin1 -mandoc ;; esac | %var{PAGER:more}
View=%view{ascii,nroff} case %d/%f in */log/*|*/logs/*) xz -dc %f ;; *) xz -dc %f | nroff -c -Tlatin1 -mandoc ;; esac
# CHM
regex/\.(chm|CHM)$
Open=which kchmviewer > /dev/null 2>&1 && (kchmviewer %f &) || (xchm %f &)
### Images ###
type/^GIF
Include=image
type/^JPEG
View=%view{ascii} identify %f; test -x /usr/bin/exif && echo && exif %f 2>/dev/null
Include=image
type/^PC\ bitmap
Include=image
type/^PNG
Include=image
type/^TIFF
Include=image
type/^PBM
Include=image
type/^PGM
Include=image
type/^PPM
Include=image
type/^Netpbm
Include=image
shell/.xcf
Open=(gimp %f &)
shell/.xbm
Open=bitmap %f
shell/.xpm
Include=image
View=sxpm %f
shell/.ico
Include=image
include/image
Open=if [ "$DISPLAY" = "" ]; then zgv %f; else (feh --scale-down %f &); fi
View=%view{ascii} identify %f
#View=%view{ascii} asciiview %f
### Sound files ###
regex/\.([wW][aA][vV]|[sS][nN][dD]|[vV][oO][cC]|[aA][uU]|[sS][mM][pP]|[aA][iI][fF][fF]|[sS][nN][dD])$
Open=if [ "$DISPLAY" = "" ]; then play %f; else (xmms %f >/dev/null 2>&1 &); fi
regex/\.([mM][oO][dD]|[sS]3[mM]|[xX][mM]|[iI][tT]|[mM][tT][mM]|669|[sS][tT][mM]|[uU][lL][tT]|[fF][aA][rR])$
Open=mikmod %f
#Open=tracker %f
regex/\.([wW][aA][wW]22)$
Open=vplay -s 22 %f
regex/\.([mM][pP]3)$
Open=if [ "$DISPLAY" = "" ]; then mpg123 %f; else (xmms %f >/dev/null 2>&1 &); fi
View=%view{ascii} mpg123 -vtn1 %f 2>&1 | sed -n '/^Title/,/^Comment/p;/^MPEG/,/^Audio/p'
regex/\.([oO][gG][gG|aA|vV|xX])$
Open=if [ "$DISPLAY" = "" ]; then ogg123 %f; else (xmms %f >/dev/null 2>&1 &); fi
View=%view{ascii} ogginfo %s
regex/\.([sS][pP][xX]|[fF][lL][aA][cC])$
Open=if [ "$DISPLAY" = "" ]; then play %f; else (xmms %f >/dev/null 2>&1 &); fi
regex/\.([mM][iI][dD][iI]?|[rR][mM][iI][dD]?)$
Open=timidity %f
regex/\.([wW][mM][aA])$
Open=mplayer -vo null %f
View=%view{ascii} mplayer -quiet -slave -frames 0 -vo null -ao null -identify %f 2>/dev/null | tail +13 || file %f
### Play lists ###
regex/\.([mM]3[uU]|[pP][lL][sS])$
Open=if [ -z "$DISPLAY" ]; then mplayer -vo null -playlist %f; else (xmms -p %f >/dev/null 2>&1 &); fi
### Video ###
regex/\.([aA][vV][iI])$
Include=video
regex/\.([aA][sS][fFxX])$
Include=video
regex/\.([dD][iI][vV][xX])$
Include=video
regex/\.([mM][kK][vV])$
Include=video
regex/\.([mM][oO][vV]|[qQ][tT])$
Include=video
regex/\.([mM][pP]4|[mM][pP][eE]?[gG])$
Include=video
regex/\.([vV][oO][bB])$
Include=video
regex/\.([wW][mM][vV])$
Include=video
regex/\.([fF][lL][iIcCvV])$
Include=video
regex/\.([oO][gG][mM])$
Include=video
regex/\.([rR][aA]?[mM])$
Open=(realplay %f >/dev/null 2>&1 &)
include/video
Open=(mplayer %f >/dev/null 2>&1 &)
#Open=(gtv %f >/dev/null 2>&1 &)
#Open=(xanim %f >/dev/null 2>&1 &)
### Documents ###
# Postscript
type/^PostScript
Open=zathura --fork %f
View=%view{ascii} ps2ascii %f
# PDF
type/^PDF
Open=zathura --fork %f
#Open=(acroread %f &)
#Open=(ghostview %f &)
View=%view{ascii} pdftotext %f -
# The following code very ugly and should not be taken as example.
# It should be cleaned up when the new format of mc.ext is developed.
# html
regex/\.([hH][tT][mM][lL]?)$
Open=(if test -n "" && test -n "$DISPLAY"; then ( file://%d/%p &) 1>&2; else links %f || lynx -force_html %f || ${PAGER:-more} %f; fi) 2>/dev/null
View=%view{ascii} links -dump %f 2>/dev/null || w3m -dump %f 2>/dev/null || lynx -dump -force_html %f
# StarOffice 5.2
shell/.sdw
Open=(ooffice %f &)
# StarOffice 6 and OpenOffice.org formats
regex/\.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg)$
Open=(ooffice %f &)
View=%view{ascii} odt2txt %f
# AbiWord
shell/.abw
Open=(abiword %f &)
# Microsoft Word Document
regex/\.([Dd][oO][cCtT]|[Ww][rR][iI])$
Open=(abiword %f >/dev/null 2>&1 &)
View=%view{ascii} antiword -t %f || catdoc -w %f || word2x -f text %f - || strings %f
type/^Microsoft\ Word
Open=(abiword %f >/dev/null 2>&1 &)
View=%view{ascii} antiword -t %f || catdoc -w %f || word2x -f text %f - || strings %f
# RTF document
regex/\.([rR][tT][fF])$
Open=(abiword %f >/dev/null 2>&1 &)
# Microsoft Excel Worksheet
regex/\.([xX][lL][sSwW])$
Open=(gnumeric %f >/dev/null 2>&1 &)
View=%view{ascii} xls2csv %f || strings %f
type/^Microsoft\ Excel
Open=(gnumeric %f >/dev/null 2>&1 &)
View=%view{ascii} xls2csv %f || strings %f
# Use OpenOffice.org to open any MS Office documents
type/^Microsoft\ Office\ Document
Open=(ooffice %f &)
# Framemaker
type/^FrameMaker
Open=fmclient -f %f
# DVI
regex/\.([dD][vV][iI])$
Open=if [ x$DISPLAY = x ]; then dvisvga %f; else (xdvi %f &); fi
View=%view{ascii} dvi2tty %f
# TeX
regex/\.([Tt][Ee][Xx])$
Open=%var{EDITOR:emacsclient} %f
# DjVu (changed)
regex/\.(djvu|DJVU)$
Open=zathura --fork %f
### Miscellaneous ###
# Makefile
regex/[Mm]akefile$
Open=make -f %f %{Enter parameters}
# Imakefile
shell/Imakefile
Open=xmkmf -a
# Makefile.PL (MakeMaker)
regex/^Makefile.(PL|pl)$
Open=%var{PERL:perl} %f
# dbf
regex/\.([dD][bB][fF])$
Open=%view{ascii} dbview %f
View=%view{ascii} dbview -b %f
# REXX script
regex/\.(rexx?|cmd)$
Open=rexx %f %{Enter parameters};echo "Press ENTER";read y
# Disk images for Commodore computers (VIC20, C64, C128)
regex/\.(d64|D64)$
Open=%cd %p#uc1541
View=%view{ascii} c1541 %f -list
Extract=c1541 %f -extract
# Glade, a user interface designer for GTK+ and GNOME
regex/\.([Gg][Ll][Aa][Dd][Ee])$
Open=if glade-3 --version >/dev/null 2>&1; then (glade-3 %f >/dev/null 2>&1 &); else (glade-2 %f >/dev/null 2>&1 &); fi
# Gettext Catalogs
shell/.mo
View=%view{ascii} msgunfmt %f || cat %f
# lyx
regex/\.(lyx|LYX)$
Open=lyx %f
View=%view{ascii} lyxcat %f
### Plain compressed files ###
# ace
regex/\.(ace|ACE)$
Open=%cd %p#uace
View=%view{ascii} unace l %f
Extract=unace x %f
# arc
regex/\.(arc|ARC)$
Open=%cd %p#uarc
View=%view{ascii} arc l %f
Extract=arc x %f '*'
Extract (with flags)=I=%{Enter any Arc flags:}; if test -n "$I"; then arc x $I %f; fi
# zip
type/^([Zz][Ii][Pp])\ archive
Open=%cd %p#uzip
View=%view{ascii} unzip -v %f
# zoo
regex/\.([Zz][Oo][Oo])$
Open=%cd %p#uzoo
View=%view{ascii} zoo l %f
# gzip
type/^gzip
Open=gzip -dc %f | %var{PAGER:more}
View=%view{ascii} gzip -dc %f 2>/dev/null
regex/\.(gz|Z)$
View=%view{ascii} gzip -dc %f 2>/dev/null
# bzip2
type/^bzip2
Open=bzip2 -dc %f | %var{PAGER:more}
View=%view{ascii} bzip2 -dc %f 2>/dev/null
regex/\.bz2?$
View=%view{ascii} bzip2 -dc %f 2>/dev/null
# bzip
type/^bzip
Open=bzip -dc %f | %var{PAGER:more}
View=%view{ascii} bzip -dc %f 2>/dev/null
# compress
type/^compress
Open=gzip -dc %f | %var{PAGER:more}
View=%view{ascii} gzip -dc %f 2>/dev/null
# lzma
regex/\.lzma$
Open=lzma -dc %f | %var{PAGER:more}
View=%view{ascii} lzma -dc %f 2>/dev/null
# xz
regex/\.xz$
Open=xz -dc %f | %var{PAGER:more}
View=%view{ascii} xz -dc %f 2>/dev/null
### Default ###
# Default target for anything not described above
default/*
Open=%var{EDITOR:emacsclient} %f
View=%var{EDITOR:emacsclient} %f
### EOF ###

+ 5
- 0
.config/mc/hotlist View File

@ -0,0 +1,5 @@
ENTRY "/home/collin" URL "/home/collin"
ENTRY "/media/dm" URL "/media/dm"
GROUP "Local Network"
ENTRY "sh:alpha/~" URL "/home/collin/#sh:alpha/~"
ENDGROUP

+ 194
- 0
.config/mc/ini View File

@ -0,0 +1,194 @@
[Midnight-Commander]
verbose=1
pause_after_run=1
shell_patterns=1
auto_save_setup=1
auto_menu=0
use_internal_view=0
use_internal_edit=0
clear_before_exec=1
confirm_delete=1
confirm_overwrite=1
confirm_execute=0
confirm_history_cleanup=1
confirm_exit=1
confirm_directory_hotlist_delete=1
safe_delete=1
mouse_repeat_rate=100
double_click_speed=250
use_8th_bit_as_meta=0
confirm_view_dir=0
mouse_move_pages_viewer=1
mouse_close_dialog=0
fast_refresh=0
drop_menus=0
wrap_mode=1
old_esc_mode=1
old_esc_mode_timeout=1000000
cd_symlinks=1
show_all_if_ambiguous=0
max_dirt_limit=10
torben_fj_mode=0
use_file_to_guess_type=1
alternate_plus_minus=0
only_leading_plus_minus=1
show_output_starts_shell=0
xtree_mode=0
num_history_items_recorded=60
file_op_compute_totals=1
classic_progressbar=1
vfs_timeout=60
ftpfs_directory_timeout=900
use_netrc=1
ftpfs_retry_seconds=30
ftpfs_always_use_proxy=0
ftpfs_use_passive_connections=1
ftpfs_use_passive_connections_over_proxy=0
ftpfs_use_unix_list_options=1
ftpfs_first_cd_then_ls=1
fish_directory_timeout=900
editor_tab_spacing=8
editor_word_wrap_line_length=72
editor_fill_tabs_with_spaces=0
editor_return_does_auto_indent=1
editor_backspace_through_tabs=0
editor_fake_half_tabs=1
editor_option_save_mode=0
editor_option_save_position=1
editor_option_auto_para_formatting=0
editor_option_typewriter_wrap=0
editor_edit_confirm_save=1
editor_syntax_highlighting=1
editor_persistent_selections=1
editor_cursor_beyond_eol=0
editor_visible_tabs=1
editor_visible_spaces=1
editor_line_state=0
editor_simple_statusbar=0
editor_check_new_line=0
editor_show_right_margin=0
nice_rotating_dash=1
mcview_remember_file_position=0
auto_fill_mkdir_name=1
copymove_persistent_attr=1
select_flags=6
editor_backup_extension=~
mcview_eof=
kilobyte_si=0
mix_all_files=0
show_backups=1
show_dot_files=1
fast_reload=0
fast_reload_msg_shown=0
mark_moves_down=1
reverse_files_only=1
navigate_with_arrows=0
scroll_pages=1
mouse_move_pages=1
filetype_mode=1
permission_mode=0
quick_search_case_sensitive=2
ignore_ftp_chattr_errors=true
keymap=mc.keymap
skin=gotar
filepos_max_saved_entries=1024
preallocate_space=0
editor_cursor_after_inserted_block=0
editor_group_undo=0
[Layout]
message_visible=1
keybar_visible=1
xterm_title=1
output_lines=0
command_prompt=1
menubar_visible=1
show_mini_info=1
free_space=1
horizontal_split=0
vertical_equal=1
left_panel_size=61
horizontal_equal=1
top_panel_size=113
[Misc]
timeformat_recent=%b %e %H:%M
timeformat_old=%b %e %Y
ftp_proxy_host=gate
ftpfs_password=anonymous@
display_codepage=ASCII
source_codepage=Other_8_bit
autodetect_codeset=
clipboard_store=
clipboard_paste=
[Colors]
base_color=
screen=
color_terminals=
rxvt-unicode-256color=
xterm=
[Panels]
kilobyte_si=false
mix_all_files=false
show_backups=true
show_dot_files=true
fast_reload=false
fast_reload_msg_shown=false
mark_moves_down=true
reverse_files_only=true
auto_save_setup_panels=true
navigate_with_arrows=false
panel_scroll_pages=true
mouse_move_pages=true
filetype_mode=true
permission_mode=false
quick_search_mode=2
simple_swap=false
show_mini_info=true
torben_fj_mode=false
[HotlistConfig]
expanded_view_of_groups=0
[FindFile]
ignore_dirs=
file_case_sens=true
file_shell_pattern=true
file_find_recurs=true
file_skip_hidden=false
file_all_charsets=false
content_use=true
content_case_sens=true
content_regexp=false
content_first_hit=false
content_whole_words=false
content_all_charsets=false
ignore_dirs_enable=true
[DiffView]
show_symbols=false
show_numbers=false
tab_size=8
diff_quality=0
diff_ignore_tws=false
diff_ignore_all_space=false
diff_ignore_space_change=false
diff_tab_expansion=false
diff_ignore_case=false
[Panelize]
Find *.orig after patching=find . -name \\*.orig -print
Find SUID and SGID programs=find . \\( \\( -perm -04000 -a -perm +011 \\) -o \\( -perm -02000 -a -perm +01 \\) \\) -print
Find rejects after patching=find . -name \\*.rej -print

+ 32
- 0
.config/mc/panels.ini View File

@ -0,0 +1,32 @@
[New Left Panel]
display=listing
reverse=0
case_sensitive=1
exec_first=0
sort_order=name
list_mode=full
user_format=half type name | size | perm
user_status0=half type name | size | perm
user_status1=half type name | size | perm
user_status2=half type name | size | perm
user_status3=half type name | size | perm
user_mini_status=0
[New Right Panel]
display=listing
reverse=0
case_sensitive=1
exec_first=0
sort_order=name
list_mode=full
user_format=half type name | size | perm
user_status0=half type name | size | perm
user_status1=half type name | size | perm
user_status2=half type name | size | perm
user_status3=half type name | size | perm
user_mini_status=0
[Dirs]
other_dir=/home/collin
current_is_left=false

+ 1
- 0
.config/systemd/user/default.target.wants/emacs.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/emacs.service

+ 1
- 0
.config/systemd/user/default.target.wants/emacsd.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/emacsd.service

+ 1
- 0
.config/systemd/user/default.target.wants/mpd.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/mpd.service

+ 1
- 0
.config/systemd/user/default.target.wants/udiskie.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/udiskie.service

+ 1
- 0
.config/systemd/user/default.target.wants/unclutter.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/unclutter.service

+ 1
- 0
.config/systemd/user/default.target.wants/urxvtd.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/urxvtd.service

+ 1
- 0
.config/systemd/user/default.target.wants/xbindkeys.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/xbindkeys.service

+ 1
- 0
.config/systemd/user/default.target.wants/xcompmgr.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/xcompmgr.service

+ 1
- 0
.config/systemd/user/default.target.wants/xscreensaver.service View File

@ -0,0 +1 @@
/home/collin/.config/systemd/user/xscreensaver.service

+ 11
- 0
.config/systemd/user/emacs.service View File

@ -0,0 +1,11 @@
[Unit]
Description = Emacs: the extensible, self-documenting text editor
[Service]
Type = forking
ExecStart = /usr/bin/emacs --daemon
ExecStop = /usr/bin/emacsclient --eval "(progn (setq kill-emacs-hook 'nil) (kill-emacs))"
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/mpd.service View File

@ -0,0 +1,9 @@
[Unit]
Description = Music Player Daemon
[Service]
ExecStart = /usr/bin/mpd --no-daemon
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/trayer.service View File

@ -0,0 +1,9 @@
[Unit]
Description = A lightwieght GTK2-based systray for UNIX desktop
[Service]
ExecStart = /usr/bin/trayer --monitor 1 --edge top --align right --expand true --width 4 --height 2 --transparent true --tint 0x000000
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/udiskie.service View File

@ -0,0 +1,9 @@
[Unit]
Description = Automatic disk mounting service using udisks
[Service]
ExecStart = /usr/bin/udiskie -s
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/unclutter.service View File

@ -0,0 +1,9 @@
[Unit]
Description = Remove idle cursor image from screen
[Service]
ExecStart = /usr/bin/unclutter
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/urxvtd.service View File

@ -0,0 +1,9 @@
[Unit]
Description = urxvt terminal daemon
[Service]
ExecStart = /usr/bin/urxvtd --quiet
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/xbindkeys.service View File

@ -0,0 +1,9 @@
[Unit]
Description = A grabbing keys program for X
[Service]
ExecStart = /usr/bin/xbindkeys -n
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/xcompmgr.service View File

@ -0,0 +1,9 @@
[Unit]
Description = Simple X compositing manager
[Service]
ExecStart = /usr/bin/xcompmgr
Restart = always
[Install]
WantedBy = default.target

+ 9
- 0
.config/systemd/user/xscreensaver.service View File

@ -0,0 +1,9 @@
[Unit]
Description = Extensible screen saver framework, plus locking
[Service]
ExecStart = /usr/bin/xscreensaver -no-splash
Restart = always
[Install]
WantedBy = default.target

+ 50
- 19
.emacs View File

@ -15,14 +15,22 @@
;; * caml (required by tuareg)
;; * tuareg
;; * project-mode
;; * register-list
;; ELPA packages configured explicitly below:
;; * php-mode
;; * python-mode
;; * ipython
;; * lua-mode
;; * erlang
;; * clojure-mode
;; Set repos for package.el
(setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/")
("marmalade" . "http://marmalade-repo.org/packages/")
("melpa" . "http://melpa.milkbox.net/packages/")
("ELPA" . "http://tromey.com/elpa/")))
;; This needs to be a the start of ~/.emacs since package-initialize is run after the user
;; init file is read but before after-init-hook. It autoloads packages installed by
;; package.el including updating the load-path and running/loading/requiring
@ -185,6 +193,7 @@
(mode . geiser-mode)
(mode . slime-repl-mode)
(mode . inferior-python-mode)
(mode . ipython-mode)
(mode . inferior-haskell-mode)
(mode . inferior-lisp-mode)
(mode . eshell-mode)
@ -193,6 +202,10 @@
(mode . erlang-shell-mode)
(name . "^\\*inferior-lisp\\*$")
(name . "^\\* Racket REPL \\*$")))
("git" (or
(name . "^\\*magit: ") ;; this regxp could be better
(mode . magit-mode)
(mode . magit-log-mode)))
("planner" (or
(name . "^\\*Calendar\\*$")
(name . "^diary$")
@ -274,9 +287,9 @@
(require 'slime) ;; AUR: emacs-slime-cvs
(slime-setup '(slime-fancy))
;; Setup swank-clojure-mode *TODO* drop in version from ELPA
;; Setup swank-clojure-mode
(add-to-list 'load-path "/usr/share/emacs/site-lisp/swank-clojure")
(require 'swank-clojure) ;; AUR: swank-clojure-git
(require 'swank-clojure) ;; ELPA
(add-hook 'clojure-mode-hook
'(lambda ()
@ -298,12 +311,18 @@
(add-hook 'org-mode-hook 'turn-on-font-lock) ; not needed when global-font-lock-mode is on
(setq org-return-follows-link t)
(setq org-log-done 'time)
;; Add additional languages for org-babel (now part of org-mode)
(org-babel-do-load-languages
'org-babel-load-languages
'((haskell . t)))
;; Set keybindings for org-mode
(global-set-key "\C-cl" 'org-store-link)
(global-set-key "\C-ca" 'org-agenda)
(global-set-key "\C-cb" 'org-iswitchb)
;; Setup emacs-haskell-mode *TODO* drop in ELPA version
(load "/usr/share/emacs/site-lisp/haskell-mode/haskell-site-file")
;; Setup haskell-mode ;; ELPA
(add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
(add-hook 'haskell-mode-hook 'turn-on-haskell-indentation)
;;(add-hook 'haskell-mode-hook 'turn-on-haskell-indent)
@ -312,9 +331,17 @@
;; Set inferior haskell default executable
(setq haskell-program-name "/usr/bin/ghci")
;; Python stuff currently *BROKEN*
;; Setup emacs-python-mode
(autoload 'python-mode "python-mode.el" "Python mode." t) ;; ELPA
(setq auto-mode-alist (append '(("/*.\.py$" . python-mode)) auto-mode-alist))
;; (autoload 'python-mode "python-mode.el" "Python mode." t) ;; ELPA
;; (setq auto-mode-alist (append '(("/*.\.py$" . python-mode)) auto-mode-alist))
;; Setup ipython-mode
;; (setq py-python-command "/usr/bin/ipython")
;; (require 'ipython) ;; ELPA
;; Make a variable alias because ipython-mode references python-mode-map as py-mode-map
;;(defvaralias 'python-mode-map 'py-mode-map)
;; Setup emacs-lua-mode
(setq auto-mode-alist (cons '("\.lua$" . lua-mode) auto-mode-alist)) ;; ELPA
@ -327,7 +354,7 @@
;; Setup enhanced scheme/racket mode consisting of geiser, quack and paredit
;; Setup geiser
(require 'geiser-install) ;; AUR: geiser-git
;;(require 'geiser-install) ;; AUR: geiser-git
;; Setup quack *DISABLED*
;(require 'quack)
@ -390,8 +417,8 @@
;; Setup yasnippet-mode (not yasnippet-bundle)
(require 'yasnippet) ;; ELPA
(yas/initialize)
(yas/load-directory "~/.emacs.d/elpa/yasnippet-0.6.1/snippets")
;;(yas/initialize)
(yas/load-directory "~/.emacs.d/elpa/yasnippet-20120718/snippets")
;; Enable flyspell-mode
(ac-flyspell-workaround)
@ -411,6 +438,7 @@
'(("\\.c$" . ["c-template.c" auto-update-generic-template])
("\\.\(cc\|cpp\)$" . ["cpp-template.c" auto-update-generic-template])
("\\.php$" . ["php-template.php" auto-update-generic-template])
("\\.rb$" . ["ruby-template.rb" auto-update-generic-template])
("\\.lua$" . ["lua-template.lua" auto-update-generic-template])
("\\.erl$" . ["erlang-template.erl" auto-update-generic-template])
("\\.sh$" . ["shell-template.sh" auto-update-generic-template])
@ -525,12 +553,20 @@
;; Commands that require a little more then a dumb-term
(setq eshell-visual-commands '("vi" "screen" "top" "less" "more" "lynx" "ncftp" "vim" "ncmpcpp" "irssi" "mc" "alsamixer" "/usr/bin/sudo"))
(defun eshell/ff (fs)
"Find many files using eshell's built in regexps"
(defun eshell/find-file-ext (fp)
"Finds a single file or a list of files and returns a list of their respective buffers"
(interactive)
(if (listp fp) (mapcar #'find-file fp)
(list (find-file fp))))
(defun eshell/ff (fp &rest other-fps)
"A FP is either a file path (relative or absolute) or a regexp which eshell converts to a
list of stings (file paths) which match the regexp (likely using file-expand-widcards).
eshell/ff takes one or more file paths and opens them in the current buffer returning a list
consisting of lists of buffers opened by each respective FP argument."
(interactive)
(if (listp fs)
(mapc #'find-file fs)
(find-file fs)))
(mapcar #'eshell/find-file-ext (cons fp other-fps)))
(defun eshell/clear ()
"04Dec2001 - sailor, to clear the eshell buffer."
@ -552,11 +588,6 @@
;; ;; Synchronize el-get
;; (el-get 'sync)
;; Set repos for package.el
(setq package-archives '(("ELPA" . "http://tromey.com/elpa/")
("gnu" . "http://elpa.gnu.org/packages/")
("marmalade" . "http://marmalade-repo.org/packages/")))
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.


+ 19
- 0
.emacs.d/templates/emacs-lisp-template.el View File

@ -0,0 +1,19 @@
;; (C) Copyright Collin Doering @!@YEAR@!@
;;
;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; File: @!@FILE@!@
;; Author: Collin J. Doering <rekahsoft@gmail.com>
;; Date: @!@DATE@!@

+ 19
- 0
.emacs.d/templates/erlang-template.erl View File

@ -0,0 +1,19 @@
% (C) Copyright Collin Doering @!@YEAR@!@
%
% This program is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
%
% This program is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with this program. If not, see <http://www.gnu.org/licenses/>.
% File: @!@FILE@!@
% Author: Collin J. Doering <rekahsoft@gmail.com>
% Date: @!@DATE@!@

+ 19
- 0
.emacs.d/templates/lua-template.lua View File

@ -0,0 +1,19 @@
-- (C) Copyright Collin Doering @!@YEAR@!@
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
-- File: @!@FILE@!@
-- Author: Collin J. Doering <rekahsoft@gmail.com>
-- Date: @!@DATE@!@

+ 23
- 0
.emacs.d/templates/ocaml-template.ml View File

@ -0,0 +1,23 @@
(*
* (C) Copyright Collin Doering @!@YEAR@!@
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*)
(*
* File: @!@FILE@!@
* Author: Collin J. Doering
* Date: @!@DATE@!@
*)

+ 23
- 0
.emacs.d/templates/php-template.php View File

@ -0,0 +1,23 @@
/**
* (C) Copyright Collin Doering @!@YEAR@!@
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**
* File: @!@FILE@!@
* Author: Collin J. Doering
* Date: @!@DATE@!@
*/

+ 3
- 0
.emacs.d/templates/python-scratch.py View File

@ -0,0 +1,3 @@
# This buffer is for notes you don't want to save, and for Lisp evaluation.
# If you want to create a file, visit that file with C-x C-f,
# then enter the text in that file's own buffer.

+ 19
- 0
.emacs.d/templates/ruby-template.rb View File

@ -0,0 +1,19 @@
# (C) Copyright Collin Doering @!@YEAR@!@
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# File: @!@FILE@!@
# Author: Collin J. Doering <rekahsoft@gmail.com>
# Date: @!@DATE@!@

+ 23
- 0
.emacs.d/templates/sml-template.ml View File

@ -0,0 +1,23 @@
(*
* (C) Copyright Collin Doering 2013
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*)
(*
* File: sml-template.ml
* Author: Collin J. Doering
* Date: Mar 5, 2013
*)

+ 5
- 0
.eshell/alias View File

@ -0,0 +1,5 @@
alias ms magit-status $1
alias mss magit-status .
alias ssudo /usr/bin/sudo
alias d dired $1
alias ffo find-file-other-window $1

+ 7
- 0
.eshell/profile View File

@ -0,0 +1,7 @@
# File: ~/.eshell/profile
# Author: Collin J. Doering
# Date: Nov 12, 2011
# Description:
# Set commands that use a Term buffer instead of the eshell dumbterm
setq eshell-visual-commands (list "vi" "screen" "top" "less" "more" "lynx" "ncftp" "pine" "tin" "trn" "elm" "vim" "ncmpcpp" "irssi" "mc" "vim" "ncmpcpp" "irssi" "mc" "vim" "ncmpcpp" "irssi" "mc" "/usr/bin/sudo") >> /dev/null

+ 6
- 0
.gitconfig View File

@ -0,0 +1,6 @@
[user]
email = rekahsoft@gmail.com
[color]
branch = auto
diff = auto
status = auto

+ 1
- 1
.gnus View File

@ -39,7 +39,7 @@
;; (nnimap-address "imap.gmail.com")
;; (nnimap-server-port 993)
;; (nnimap-stream ssl)
;; (nnimap-authinfo-file "~/.cd-authinfo.gpg"))
;; (nnimap-authinfo-file "~/.authinfo-cd.gpg"))
;; (nnimap "rekahsoft"
;; (remove-prefix "INBOX.")
;; (nnimap-address "imap.gmail.com")


+ 456
- 0
.mpdconf View File

@ -0,0 +1,456 @@
# An example configuration file for MPD
# See the mpd.conf man page for a more detailed description of each parameter.
# Files and directories #######################################################
#
# This setting controls the top directory which MPD will search to discover the
# available audio files and add them to the daemon's online database. This
# setting defaults to the XDG directory, otherwise the music directory will be
# be disabled and audio files will only be accepted over ipc socket (using
# file:// protocol) or streaming files over an accepted protocol.
#
music_directory "/media/dm/Music"
#
# This setting sets the MPD internal playlist directory. The purpose of this
# directory is storage for playlists created by MPD. The server will use
# playlist files not created by the server but only if they are in the MPD
# format. This setting defaults to playlist saving being disabled.
#
playlist_directory "~/.mpd/playlists"
#
# This setting sets the location of the MPD database. This file is used to
# load the database at server start up and store the database while the
# server is not up. This setting defaults to disabled which will allow
# MPD to accept files over ipc socket (using file:// protocol) or streaming
# files over an accepted protocol.
#
db_file "~/.mpd/database"
#
# These settings are the locations for the daemon log files for the daemon.
# These logs are great for troubleshooting, depending on your log_level
# settings.
#
# The special value "syslog" makes MPD use the local syslog daemon. This
# setting defaults to logging to syslog, otherwise logging is disabled.
#
log_file "~/.mpd/log"
#
# This setting sets the location of the file which stores the process ID
# for use of mpd --kill and some init scripts. This setting is disabled by
# default and the pid file will not be stored.
#
pid_file "~/.mpd/pid"
#
# This setting sets the location of the file which contains information about
# most variables to get MPD back into the same general shape it was in before
# it was brought down. This setting is disabled by default and the server
# state will be reset on server start up.
#
state_file "~/.mpd/state"
#
# The location of the sticker database. This is a database which
# manages dynamic information attached to songs.
#
#sticker_file "~/.mpd/sticker.sql"
#
###############################################################################
# General music daemon options ################################################
#
# This setting specifies the user that MPD will run as. MPD should never run as
# root and you may use this setting to make MPD change its user ID after
# initialization. This setting is disabled by default and MPD is run as the
# current user.
#
#user "nobody"
#
# This setting specifies the group that MPD will run as. If not specified
# primary group of user specified with "user" setting will be used (if set).
# This is useful if MPD needs to be a member of group such as "audio" to
# have permission to use sound card.
#
#group "nogroup"
#
# This setting sets the address for the daemon to listen on. Careful attention
# should be paid if this is assigned to anything other then the default, any.
# This setting can deny access to control of the daemon.
#
# For network
#bind_to_address "any"
#
# And for Unix Socket
#bind_to_address "~/.mpd/socket"
#
# This setting is the TCP port that is desired for the daemon to get assigned
# to.
#
port "6600"
#
# This setting controls the type of information which is logged. Available
# setting arguments are "default", "secure" or "verbose". The "verbose" setting
# argument is recommended for troubleshooting, though can quickly stretch
# available resources on limited hardware storage.
#
#log_level "default"
#
# If you have a problem with your MP3s ending abruptly it is recommended that
# you set this argument to "no" to attempt to fix the problem. If this solves
# the problem, it is highly recommended to fix the MP3 files with vbrfix
# (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
# point gapless MP3 playback can be enabled.
#
#gapless_mp3_playback "yes"
#
# Setting "restore_paused" to "yes" puts MPD into pause mode instead
# of starting playback after startup.
#
#restore_paused "no"
#
# This setting enables MPD to create playlists in a format usable by other
# music players.
#
#save_absolute_paths_in_playlists "no"
#
# This setting defines a list of tag types that will be extracted during the
# audio file discovery process. The complete list of possible values can be
# found in the mpd.conf man page.
#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
#
# This setting enables automatic update of MPD's database when files in
# music_directory are changed.
#
auto_update "yes"
#
# Limit the depth of the directories being watched, 0 means only watch
# the music directory itself. There is no limit by default.
#
#auto_update_depth "3"
#
###############################################################################
# Symbolic link behavior ######################################################
#
# If this setting is set to "yes", MPD will discover audio files by following
# symbolic links outside of the configured music_directory.
#
#follow_outside_symlinks "yes"
#
# If this setting is set to "yes", MPD will discover audio files by following
# symbolic links inside of the configured music_directory.
#
#follow_inside_symlinks "yes"
#
###############################################################################
# Zeroconf / Avahi Service Discovery ##########################################
#
# If this setting is set to "yes", service information will be published with
# Zeroconf / Avahi.
#
#zeroconf_enabled "yes"
#
# The argument to this setting will be the Zeroconf / Avahi unique name for
# this MPD server on the network.
#
#zeroconf_name "Music Player"
#
###############################################################################
# Permissions #################################################################
#
# If this setting is set, MPD will require password authorization. The password
# can setting can be specified multiple times for different password profiles.
#
#password "password@read,add,control,admin"
#
# This setting specifies the permissions a user has who has not yet logged in.
#
#default_permissions "read,add,control,admin"
#
###############################################################################
# Input #######################################################################
#
input {
plugin "curl"
# proxy "proxy.isp.com:8080"
# proxy_user "user"
# proxy_password "password"
}
#
###############################################################################
# Audio Output ################################################################
#
# MPD supports various audio output types, as well as playing through multiple
# audio outputs at the same time, through multiple audio_output settings
# blocks. Setting this block is optional, though the server will only attempt
# autodetection for one sound card.
#
# See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of
# other audio outputs.
#
# An example of an ALSA output:
#
#audio_output {
# type "alsa"
# name "My ALSA Device"
## device "hw:0,0" # optional
## format "44100:16:2" # optional
## mixer_type "hardware" # optional
## mixer_device "default" # optional
## mixer_control "PCM" # optional
## mixer_index "0" # optional
#}
#
# An example of an OSS output:
#
#audio_output {
# type "oss"
# name "My OSS Device"
## device "/dev/dsp" # optional
## format "44100:16:2" # optional
## mixer_type "hardware" # optional
## mixer_device "/dev/mixer" # optional
## mixer_control "PCM" # optional
#}
#
# An example of a shout output (for streaming to Icecast):
#
#audio_output {
# type "shout"
# encoding "ogg" # optional
# name "My Shout Stream"
# host "localhost"
# port "8000"
# mount "/mpd.ogg"
# password "hackme"
# quality "5.0"
# bitrate "128"
# format "44100:16:1"
## protocol "icecast2" # optional
## user "source" # optional
## description "My Stream Description" # optional
## url "http://example.com" # optional
## genre "jazz" # optional
## public "no" # optional
## timeout "2" # optional
## mixer_type "software" # optional
#}
#
# An example of a recorder output:
#
#audio_output {
# type "recorder"
# name "My recorder"
# encoder "vorbis" # optional, vorbis or lame
# path "/var/lib/mpd/recorder/mpd.ogg"
## quality "5.0" # do not define if bitrate is defined
# bitrate "128" # do not define if quality is defined
# format "44100:16:1"
#}
#
# An example of a httpd output (built-in HTTP streaming server):
#
#audio_output {
# type "httpd"
# name "My HTTP Stream"
# encoder "vorbis" # optional, vorbis or lame
# port "8000"
# bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
## quality "5.0" # do not define if bitrate is defined
# bitrate "128" # do not define if quality is defined
# format "44100:16:1"
# max_clients "0" # optional 0=no limit
#}
#
# An example of a pulseaudio output (streaming to a remote pulseaudio server)
#
#audio_output {
# type "pulse"
# name "My Pulse Output"
## server "remote_server" # optional
## sink "remote_server_sink" # optional
#}
#
audio_output {
type "pulse"
name "My Pulse Output"
# server "remote_server" # optional
# sink "remote_server_sink" # optional
}
audio_output {
type "fifo"
name "RekahSoft_FIFO"
path "~/.mpd/mpd.fifo"
format "44100:16:2"
}
## Example "pipe" output:
#
#audio_output {
# type "pipe"
# name "my pipe"
# command "aplay -f cd 2>/dev/null"
## Or if you're want to use AudioCompress
# command "AudioCompress -m | aplay -f cd 2>/dev/null"
## Or to send raw PCM stream through PCM:
# command "nc example.org 8765"