A variety of accumulated changes/fixes
Notable changes include: * .Xdefaults: - added comments - switched from url-select to url-picker (for urxvt) * .bashrc: added some alias' and changed PATH * .bin/vol.sh: *depreciated* * .bin/xmonadClose.sh: added experimental timed-action support * .config/dunst/dunstrc: - changed transparency to 15% - issue with getting "follow = v" to work; where v = mouse or keyboard * .config/systemd/user/emacs.service: - added a Environment property because it is required with a recent(ish?) update of systemd * .config/systemd/user/xbindkeys.service: - added Environment property - made ExecStart more specific * .conkerorrc: - added support for magnet urls - added firebug-lite support * .emacs: - disabled tabs - enabled column-number-mode * .ghci: added ghci config file * .gnus: Many changes to make gnus more usable as a email client (multiple email support) * .mpdconf: added password for admin and control access * .ncmpcpp/config: use new mpd password * .screenrc: use weechat in place of irssi * .xbindkeysrc: - use new mpd password - pulseaudio_ctl merged with pulseaudio-ctl in AUR. Now using the new version *BROKEN* * .xinitrc: running "systemd --user" is depreciated (automatically run by logind) * .xmobarrc: use DynNetwork in place of Network * .xmonad/xmonad.hs: code clean-up * .zshrc: - added new function 'disable_unit_run' which can be used to run a program temporarily disabling a systemd user unit file - added alias' - changed PATH
This commit is contained in:
parent
e3fb51fd6e
commit
224f475a46
26
.Xdefaults
26
.Xdefaults
@ -1,24 +1,32 @@
|
|||||||
|
! General URxvt visual options
|
||||||
URxvt.buffered: true
|
URxvt.buffered: true
|
||||||
URxvt.foreground: white
|
URxvt.foreground: white
|
||||||
URxvt.cursorColor: green
|
URxvt.cursorColor: green
|
||||||
URxvt.underlineColor: yellow
|
URxvt.underlineColor: yellow
|
||||||
URxvt.font: xft:Bitstream Vera Sans Mono:pixelsize=12:antialias=false
|
URxvt.font: xft:Bitstream Vera Sans Mono:pixelsize=12:antialias=false
|
||||||
URxvt.boldFont: xft:Bitstream Vera Sans Mono:bold:pixelsize=13:antialias=false
|
URxvt.boldFont: xft:Bitstream Vera Sans Mono:bold:pixelsize=13:antialias=false
|
||||||
URxvt.matcher.button: 1
|
|
||||||
URxvt.scrollstyle: plain
|
URxvt.scrollstyle: plain
|
||||||
|
URxvt.depth: 32
|
||||||
URxvt.perl-ext-common: default,clipboard,tabbedex,url-select,keyboard-select,matcher
|
URxvt.background: rgba:0000/0000/0000/cccc
|
||||||
|
urxvt.urgentOnBell: true
|
||||||
URxvt.keysym.M-u: perl:url-select:select_next
|
|
||||||
URxvt.urlLauncher: /usr/bin/conkeror
|
|
||||||
URxvt.underlineURLs: true
|
URxvt.underlineURLs: true
|
||||||
|
|
||||||
|
! Perl-exts to use
|
||||||
|
URxvt.perl-ext-common: default,clipboard,tabbedex,url-picker,keyboard-select,matcher
|
||||||
|
|
||||||
|
! Setup matcher perl-ext
|
||||||
|
URxvt.keysym.M-u: perl:url-picker
|
||||||
|
URxvt.urlLauncher: /usr/bin/conkeror
|
||||||
|
URxvt.matcher.button: 1
|
||||||
|
|
||||||
URxvt.keysym.M-Escape: perl:keyboard-select:activate
|
URxvt.keysym.M-Escape: perl:keyboard-select:activate
|
||||||
URxvt.keysym.M-s: perl:keyboard-select:search
|
URxvt.keysym.M-s: perl:keyboard-select:search
|
||||||
|
|
||||||
URxvt.depth: 32
|
! Setup tabbedex perl-ext
|
||||||
URxvt.background: rgba:0000/0000/0000/cccc
|
|
||||||
URxvt.tabbed.tabbar-bg: -1
|
URxvt.tabbed.tabbar-bg: -1
|
||||||
urxvt.urgentOnBell: true
|
|
||||||
|
! Force vncviewer to show a password dialog
|
||||||
vncviewer.passwordDialog: true
|
vncviewer.passwordDialog: true
|
||||||
|
|
||||||
|
! Set default emacs font
|
||||||
Emacs.font: Terminus-12
|
Emacs.font: Terminus-12
|
||||||
|
6
.bashrc
6
.bashrc
@ -8,12 +8,12 @@ alias grep='grep --color=auto'
|
|||||||
alias fgrep='fgrep --color-auto'
|
alias fgrep='fgrep --color-auto'
|
||||||
alias egrep='egrep --color-auto'
|
alias egrep='egrep --color-auto'
|
||||||
alias ncmpc='ncmpc -c'
|
alias ncmpc='ncmpc -c'
|
||||||
alias pacman='pacman-color'
|
alias spacman='sudo pacman'
|
||||||
alias spacman='sudo pacman-color'
|
|
||||||
|
|
||||||
# Alias' to make some commands a little less terse
|
# Alias' to make some commands a little less terse
|
||||||
alias skreen='screen -c /dev/null'
|
alias skreen='screen -c /dev/null'
|
||||||
alias tranr='transmission-remote'
|
alias tranr='transmission-remote'
|
||||||
|
alias ctl='systemctl'
|
||||||
alias ctlu='systemctl --user'
|
alias ctlu='systemctl --user'
|
||||||
alias sctl='sudo systemctl'
|
alias sctl='sudo systemctl'
|
||||||
alias qemu='qemu-system-x86_64 -enable-kvm'
|
alias qemu='qemu-system-x86_64 -enable-kvm'
|
||||||
@ -47,7 +47,7 @@ stty stop undef
|
|||||||
# * mathematica / tools
|
# * mathematica / tools
|
||||||
# * nxclient / associated tools
|
# * nxclient / associated tools
|
||||||
# * maven tools
|
# * maven tools
|
||||||
export PATH=${PATH}:/usr/local/bin:/opt/maven/bin:/opt/NX/bin:/home/collin/.cabal/bin:/home/collin/.bin
|
export PATH=${PATH}:/opt/maven/bin:/opt/NX/bin:/home/collin/.cabal/bin:/home/collin/.gem/ruby/2.0.0/bin:/home/collin/.bin
|
||||||
|
|
||||||
# start keychain
|
# start keychain
|
||||||
eval `keychain --eval --timeout 10 --quiet --agents ssh id_rsa`
|
eval `keychain --eval --timeout 10 --quiet --agents ssh id_rsa`
|
||||||
|
@ -21,9 +21,12 @@
|
|||||||
|
|
||||||
#TODO: fix this horrible code..the obvious issues being multiple calls to amixer..have the needed data stored in VOL_DATA and then further parse the needed data from there
|
#TODO: fix this horrible code..the obvious issues being multiple calls to amixer..have the needed data stored in VOL_DATA and then further parse the needed data from there
|
||||||
|
|
||||||
#VOL_DATA="$(amixer get Master | sed -n '5p')"
|
# VOL_DATA="$(amixer get Master | sed -n '6p')"
|
||||||
VOLUME="$(amixer get Master | sed -n '5p' | cut -f6 -d' ' | sed 's/^.\(.*\).$/\1/')"
|
# VOLUME="$(echo $VOL_DATA | cut -f7 -d' ' | sed 's/^.\(.*\).$/\1/')" # assumes left and right are tied together
|
||||||
VOL_STATUS="$(amixer get Master | sed -n '5p' | cut -f8 -d' ' | sed 's/^.\(.*\).$/\1/')"
|
# VOL_STATUS="$(echo $VOL_DATA | cut -f8 -d' ' | sed 's/^.\(.*\).$/\1/')"
|
||||||
|
|
||||||
|
VOLUME="$(amixer get Master | sed -n '6p' | cut -f7 -d' ' | sed 's/^.\(.*\).$/\1/')"
|
||||||
|
VOL_STATUS="$(amixer get Master | sed -n '6p' | cut -f8 -d' ' | sed 's/^.\(.*\).$/\1/')"
|
||||||
|
|
||||||
if [ "$VOL_STATUS" == "off" ]; then
|
if [ "$VOL_STATUS" == "off" ]; then
|
||||||
echo "Vol: Mute"
|
echo "Vol: Mute"
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
# * Needs to check whether a reboot/shutdown is allowed (user must be in the group
|
# * 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
|
# 'power' and must be the only user logged in or they will be prompted for sudo's
|
||||||
# password to override)
|
# password to override)
|
||||||
# * Add support for the user to specify a timer
|
# * Add support for the user to specify a timer *needs some work yet*
|
||||||
# - Needs to provide a way to cancel the time
|
# - Needs to provide a way to cancel the time
|
||||||
# - Would be nice if there was some notification when there's n min left in the timer
|
# - Would be nice if there was some notification when there's n min left in the timer
|
||||||
# * re-write in haskell direct into ~/.xmonad/xmonad.hs using the dmenu extension(?)
|
# * re-write in haskell direct into ~/.xmonad/xmonad.hs using the dmenu extension(?)
|
||||||
@ -33,9 +33,8 @@
|
|||||||
# so that the second argument could be used as a 'logout command' and thus
|
# so that the second argument could be used as a 'logout command' and thus
|
||||||
# this script could be used with any wm
|
# this script could be used with any wm
|
||||||
|
|
||||||
actionNames=(cancel logout suspend hibernate hybrid-sleep shutdown restart)
|
actionNames=(logout suspend hibernate hybrid-sleep shutdown restart)
|
||||||
actionExecs=(""
|
actionExecs=("xdotool key super+control+shift+End"
|
||||||
"xdotool key super+control+shift+End"
|
|
||||||
"xscreensaver-command -lock && systemctl suspend"
|
"xscreensaver-command -lock && systemctl suspend"
|
||||||
"xscreensaver-command -lock && systemctl hibernate"
|
"xscreensaver-command -lock && systemctl hibernate"
|
||||||
"xscreensaver-command -lock && systemctl hybrid-sleep"
|
"xscreensaver-command -lock && systemctl hybrid-sleep"
|
||||||
@ -43,11 +42,20 @@ actionExecs=(""
|
|||||||
"reboot")
|
"reboot")
|
||||||
|
|
||||||
# Ask the user whether they want to logout, cancel, suspend, hibernate, hybrid-sleep, shutdown
|
# 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'`
|
ask=`echo "cancel ${actionNames[*]} timed-action" | tr ' ' '\n' | dmenu -b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000'`
|
||||||
|
|
||||||
case "$ask" in
|
case "$ask" in
|
||||||
logout|suspend|hibernate|hybrid-sleep|shutdown)
|
logout|suspend|hibernate|hybrid-sleep|shutdown|restart|timed-action)
|
||||||
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
|
if [[ "$ask" == "timed-action" ]]; then
|
||||||
|
time=`echo "1m 3m 5m 10m 15m 20m 30m 45m 1h 1.5h 2h 3h" | tr ' ' '\n' | dmenu -b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000' -p "How long?"`
|
||||||
|
# TODO: validate input to ensure form: <digit>+(s|m|h|d)?
|
||||||
|
for ((i=0; i < ${#actionNames[*]}; i++)); do
|
||||||
|
actionExecs[$i]="sleep $time && notify-send 'WARNING! Computer set to ${actionNames[$i]} in 15 seconds!' -u critical && sleep 15s && ${actionExecs[$i]}"
|
||||||
|
done
|
||||||
|
ask=`echo "cancel ${actionNames[*]}" | tr ' ' '\n' | dmenu -b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000'`
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$ask" != "cancel" && `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
|
for ((i=0; i < ${#actionNames[*]}; i++)); do
|
||||||
if [[ "$ask" == "${actionNames[$i]}" ]]; then
|
if [[ "$ask" == "${actionNames[$i]}" ]]; then
|
||||||
sh -c "${actionExecs[$i]}"
|
sh -c "${actionExecs[$i]}"
|
||||||
@ -60,3 +68,6 @@ case "$ask" in
|
|||||||
# Do nothing; the user entered cancel or a invalid input
|
# Do nothing; the user entered cancel or a invalid input
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
# Exit successfully
|
||||||
|
exit 0
|
||||||
|
@ -36,7 +36,6 @@
|
|||||||
# ignore newlines '\n' in notifications
|
# ignore newlines '\n' in notifications
|
||||||
ignore_newline = no
|
ignore_newline = no
|
||||||
|
|
||||||
|
|
||||||
# the geometry of the window
|
# the geometry of the window
|
||||||
# geometry [{width}]x{height}][+/-{x}+/-{y}]
|
# geometry [{width}]x{height}][+/-{x}+/-{y}]
|
||||||
# The geometry of the message window.
|
# The geometry of the message window.
|
||||||
@ -52,7 +51,7 @@
|
|||||||
|
|
||||||
# The transparency of the window. range: [0; 100]
|
# The transparency of the window. range: [0; 100]
|
||||||
# This option will only work if a compositing windowmanager is present (e.g. xcompmgr, compiz, etc..)
|
# This option will only work if a compositing windowmanager is present (e.g. xcompmgr, compiz, etc..)
|
||||||
transparency = 35
|
transparency = 15
|
||||||
|
|
||||||
# Don't remove messages, if the user is idle (no mouse or keyboard input)
|
# Don't remove messages, if the user is idle (no mouse or keyboard input)
|
||||||
# for longer than idle_threshold seconds.
|
# for longer than idle_threshold seconds.
|
||||||
@ -72,7 +71,7 @@
|
|||||||
#
|
#
|
||||||
# If this option is set to mouse or keyboard, the monitor option will be
|
# If this option is set to mouse or keyboard, the monitor option will be
|
||||||
# ignored.
|
# ignored.
|
||||||
follow = keyboard
|
follow = none
|
||||||
|
|
||||||
# should a notification popped up from history be sticky or
|
# should a notification popped up from history be sticky or
|
||||||
# timeout as if it would normally do.
|
# timeout as if it would normally do.
|
||||||
|
@ -1,5 +1,14 @@
|
|||||||
ENTRY "/home/collin" URL "/home/collin"
|
ENTRY "~/" URL "/home/collin"
|
||||||
|
ENTRY "/media" URL "/media"
|
||||||
ENTRY "/media/dm" URL "/media/dm"
|
ENTRY "/media/dm" URL "/media/dm"
|
||||||
GROUP "Local Network"
|
ENTRY "/media/dm/Downloads" URL "/media/dm/Downloads"
|
||||||
ENTRY "sh:alpha/~" URL "/home/collin/#sh:alpha/~"
|
ENTRY "/home/collin/.code" URL "/home/collin/.code"
|
||||||
|
ENTRY "/home/collin/.scratch" URL "/home/collin/.scratch"
|
||||||
|
GROUP "Network"
|
||||||
|
ENTRY "/sh://omicron/home/collin" URL "/sh://omicron/home/collin"
|
||||||
|
ENTRY "/sftp://rekah742@ftp.rekahsoft.ca:22/home/rekah742" URL "/sftp://rekah742@ftp.rekahsoft.ca:22/home/rekah742"
|
||||||
|
GROUP "Local Network"
|
||||||
|
ENTRY "sh:alpha/~" URL "/home/collin/#sh:alpha/~"
|
||||||
|
ENTRY "/ftp://rekah742@ftp.rekahsoft.ca/" URL "/ftp://rekah742@ftp.rekahsoft.ca/"
|
||||||
|
ENDGROUP
|
||||||
ENDGROUP
|
ENDGROUP
|
||||||
|
@ -99,6 +99,10 @@ preallocate_space=0
|
|||||||
editor_cursor_after_inserted_block=0
|
editor_cursor_after_inserted_block=0
|
||||||
editor_group_undo=0
|
editor_group_undo=0
|
||||||
|
|
||||||
|
editor_ask_filename_before_edit=0
|
||||||
|
|
||||||
|
editor_filesize_threshold=64M
|
||||||
|
|
||||||
[Layout]
|
[Layout]
|
||||||
message_visible=1
|
message_visible=1
|
||||||
keybar_visible=1
|
keybar_visible=1
|
||||||
@ -111,9 +115,9 @@ free_space=1
|
|||||||
|
|
||||||
horizontal_split=0
|
horizontal_split=0
|
||||||
vertical_equal=1
|
vertical_equal=1
|
||||||
left_panel_size=122
|
left_panel_size=81
|
||||||
horizontal_equal=1
|
horizontal_equal=1
|
||||||
top_panel_size=113
|
top_panel_size=20
|
||||||
|
|
||||||
[Misc]
|
[Misc]
|
||||||
timeformat_recent=%b %e %H:%M
|
timeformat_recent=%b %e %H:%M
|
||||||
|
@ -5,6 +5,7 @@ Description = Emacs: the extensible, self-documenting text editor
|
|||||||
Type = forking
|
Type = forking
|
||||||
ExecStart = /usr/bin/emacs --daemon
|
ExecStart = /usr/bin/emacs --daemon
|
||||||
ExecStop = /usr/bin/emacsclient --eval "(progn (setq kill-emacs-hook 'nil) (kill-emacs))"
|
ExecStop = /usr/bin/emacsclient --eval "(progn (setq kill-emacs-hook 'nil) (kill-emacs))"
|
||||||
|
Environment = PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/android-sdk/platform-tools:/opt/android-sdk/tools:/usr/bin/vendor_perl:/usr/bin/core_perl:/usr/lib/smlnj/bin:/opt/maven/bin:/opt/NX/bin:/home/collin/.cabal/bin:/home/collin/.bin
|
||||||
Restart = always
|
Restart = always
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
|
@ -2,7 +2,8 @@
|
|||||||
Description = A grabbing keys program for X
|
Description = A grabbing keys program for X
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart = /usr/bin/xbindkeys -n
|
ExecStart = /usr/bin/xbindkeys -n -f %h/.xbindkeysrc
|
||||||
|
Environment=DISPLAY=:0
|
||||||
Restart = always
|
Restart = always
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
|
22
.conkerorrc
22
.conkerorrc
@ -47,6 +47,8 @@ external_content_handlers.set("application/pdf", "zathura");
|
|||||||
external_content_handlers.set("video/*", "urxvtc -e mplayer");
|
external_content_handlers.set("video/*", "urxvtc -e mplayer");
|
||||||
external_content_handlers.set("application/x-bittorrent", "transmission-remote -a");
|
external_content_handlers.set("application/x-bittorrent", "transmission-remote -a");
|
||||||
|
|
||||||
|
set_protocol_handler("magnet", find_file_in_path("transmission-remote -a"));
|
||||||
|
|
||||||
// use emacsclient as external editor.
|
// use emacsclient as external editor.
|
||||||
editor_shell_command = "emacsclient";
|
editor_shell_command = "emacsclient";
|
||||||
|
|
||||||
@ -158,6 +160,11 @@ define_key(content_buffer_normal_keymap, "k", "cmd_scrollLineUp");
|
|||||||
define_key(content_buffer_normal_keymap, "J", "follow-new-buffer-background");
|
define_key(content_buffer_normal_keymap, "J", "follow-new-buffer-background");
|
||||||
define_key(default_global_keymap, "C-x C-b", "switch-to-buffer");
|
define_key(default_global_keymap, "C-x C-b", "switch-to-buffer");
|
||||||
|
|
||||||
|
// TODO: fix a bug in conkeror-git 120527.1.100.g7994dfa-1 where M-< is bound to scroll-top-left which is either
|
||||||
|
// broken or is being depreciated? M-> uses cmd_scrollBottom and internally scroll-top-left uses cmd_scrollTop (then scrolls left).
|
||||||
|
// Until this issue is fixed just use cmd_scrollTop for M-<
|
||||||
|
define_key(content_buffer_normal_keymap, "M-<", "cmd_scrollTop");
|
||||||
|
|
||||||
// Some code thanks to retroj on #conkeror@irc.freenode.net
|
// Some code thanks to retroj on #conkeror@irc.freenode.net
|
||||||
define_browser_object_class(
|
define_browser_object_class(
|
||||||
"history-url", null,
|
"history-url", null,
|
||||||
@ -188,5 +195,18 @@ interactive("history-clear",
|
|||||||
"Clear the history.",
|
"Clear the history.",
|
||||||
history_clear);
|
history_clear);
|
||||||
|
|
||||||
|
define_variable("firebug_url",
|
||||||
|
"http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js");
|
||||||
|
|
||||||
|
function firebug (I) {
|
||||||
|
var doc = I.buffer.document;
|
||||||
|
var script = doc.createElement('script');
|
||||||
|
script.setAttribute('type', 'text/javascript');
|
||||||
|
script.setAttribute('src', firebug_url);
|
||||||
|
script.setAttribute('onload', 'firebug.init();');
|
||||||
|
doc.body.appendChild(script);
|
||||||
|
}
|
||||||
|
interactive("firebug", "open firebug lite", firebug);
|
||||||
|
|
||||||
// Disable whitelist (Causes extensions from unknown/unsigned sites to silently fail if not enabled!)
|
// Disable whitelist (Causes extensions from unknown/unsigned sites to silently fail if not enabled!)
|
||||||
session_pref("xpinstall.whitelist.required", false);
|
//session_pref("xpinstall.whitelist.required", false);
|
||||||
|
376
.emacs
376
.emacs
@ -12,6 +12,7 @@
|
|||||||
;; the package
|
;; the package
|
||||||
|
|
||||||
;; ELPA packages that do not require modification of this file other then Customize
|
;; ELPA packages that do not require modification of this file other then Customize
|
||||||
|
;; * psgml
|
||||||
;; * caml (required by tuareg)
|
;; * caml (required by tuareg)
|
||||||
;; * tuareg
|
;; * tuareg
|
||||||
;; * project-mode
|
;; * project-mode
|
||||||
@ -51,6 +52,12 @@
|
|||||||
;; stop renaming of saved files to filename~ which ends up breaking hardlinks
|
;; stop renaming of saved files to filename~ which ends up breaking hardlinks
|
||||||
(setq backup-by-copying-when-linked t)
|
(setq backup-by-copying-when-linked t)
|
||||||
|
|
||||||
|
;; Turn off indentation (use spaces instead)
|
||||||
|
(setq-default indent-tabs-mode nil)
|
||||||
|
|
||||||
|
;; Show column number in status bar
|
||||||
|
(column-number-mode)
|
||||||
|
|
||||||
;; fixes color output issues; see: http://wiki.archlinux.org/index.php/Emacs#Colored_output_issues
|
;; fixes color output issues; see: http://wiki.archlinux.org/index.php/Emacs#Colored_output_issues
|
||||||
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
|
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
|
||||||
|
|
||||||
@ -58,10 +65,14 @@
|
|||||||
;; Note: regexp's used to match buffer filenames are intentionally left
|
;; Note: regexp's used to match buffer filenames are intentionally left
|
||||||
;; unbounded (without '$') to catch cases where the filename may
|
;; unbounded (without '$') to catch cases where the filename may
|
||||||
;; take the format: filename~
|
;; take the format: filename~
|
||||||
(add-to-list 'auto-mode-alist '("\\.conkerorrc" . javascript-mode))
|
(add-to-list 'auto-mode-alist '("\\.conkerorrc" . js-mode))
|
||||||
(add-to-list 'auto-mode-alist '("\\.xmobarrc" . haskell-mode))
|
(add-to-list 'auto-mode-alist '("\\.xmobarrc" . haskell-mode))
|
||||||
(add-to-list 'auto-mode-alist '("\\.screenrc" . conf-mode))
|
(add-to-list 'auto-mode-alist '("\\.screenrc" . conf-mode))
|
||||||
(add-to-list 'auto-mode-alist '("\\.stumpwmrc" . lisp-mode))
|
(add-to-list 'auto-mode-alist '("\\.stumpwmrc" . lisp-mode))
|
||||||
|
(add-to-list 'auto-mode-alist '("\w*\\.service" . conf-mode))
|
||||||
|
(add-to-list 'auto-mode-alist '("\w*\\.socket" . conf-mode))
|
||||||
|
(add-to-list 'auto-mode-alist '("\\.mpdconf" . conf-mode))
|
||||||
|
(add-to-list 'auto-mode-alist '("dunstrc" . conf-mode))
|
||||||
|
|
||||||
;; bind M-g to M-x goto-line
|
;; bind M-g to M-x goto-line
|
||||||
(global-set-key "\M-g" 'goto-line)
|
(global-set-key "\M-g" 'goto-line)
|
||||||
@ -71,6 +82,10 @@
|
|||||||
(interactive)
|
(interactive)
|
||||||
(other-window -1)))
|
(other-window -1)))
|
||||||
|
|
||||||
|
;; Setup browse-key-ring
|
||||||
|
(require 'browse-kill-ring) ;; ELPA
|
||||||
|
(global-set-key "\C-cy" 'browse-kill-ring)
|
||||||
|
|
||||||
;; adds the given function mode to each element of the given-hooks
|
;; adds the given function mode to each element of the given-hooks
|
||||||
(defun activate-mode-with-hooks (mode given-hooks)
|
(defun activate-mode-with-hooks (mode given-hooks)
|
||||||
(while given-hooks
|
(while given-hooks
|
||||||
@ -92,7 +107,7 @@
|
|||||||
'face 'linum)))
|
'face 'linum)))
|
||||||
|
|
||||||
;; code-modes is a list of mode hooks (for programming langs only)
|
;; code-modes is a list of mode hooks (for programming langs only)
|
||||||
(defvar code-modes '(sml-mode-hook scheme-mode-hook emacs-lisp-mode-hook c-mode-hook c++-mode-hook python-mode-hook lua-mode-hook python-mode-hook haskell-mode-hook php-mode-hook perl-mode-hook lisp-mode-hook clojure-mode-hook ruby-mode-hook erlang-mode-hook sh-mode-hook))
|
(defvar code-modes '(sml-mode-hook scheme-mode-hook emacs-lisp-mode-hook c-mode-hook c++-mode-hook python-mode-hook lua-mode-hook python-mode-hook haskell-mode-hook php-mode-hook perl-mode-hook lisp-mode-hook clojure-mode-hook ruby-mode-hook erlang-mode-hook sh-mode-hook java-mode-hook scala-mode-hook js-mode-hook))
|
||||||
|
|
||||||
;; activate linum-mode in all buffers used for programming
|
;; activate linum-mode in all buffers used for programming
|
||||||
(activate-mode-with-hooks (lambda () (linum-mode 1)) code-modes)
|
(activate-mode-with-hooks (lambda () (linum-mode 1)) code-modes)
|
||||||
@ -127,6 +142,9 @@
|
|||||||
;; Set default tramp method to ssh (for security purposes)
|
;; Set default tramp method to ssh (for security purposes)
|
||||||
(setq tramp-default-method "ssh")
|
(setq tramp-default-method "ssh")
|
||||||
|
|
||||||
|
;; Set the prompt pattern tramp searches for in order to send commands to the remote shell
|
||||||
|
(setq tramp-shell-prompt-pattern "^[^$>\n]*[#$%>] *\\(\[[0-9;]*[a-zA-Z] *\\)*")
|
||||||
|
|
||||||
;; Setup ibuffer (interactive buffer)
|
;; Setup ibuffer (interactive buffer)
|
||||||
(global-set-key "\C-x\C-b" 'ibuffer)
|
(global-set-key "\C-x\C-b" 'ibuffer)
|
||||||
(autoload 'ibuffer "ibuffer" "List buffers." t)
|
(autoload 'ibuffer "ibuffer" "List buffers." t)
|
||||||
@ -137,77 +155,100 @@
|
|||||||
(add-to-list 'ibuffer-never-show-predicates "^\\*Completions\\*$")
|
(add-to-list 'ibuffer-never-show-predicates "^\\*Completions\\*$")
|
||||||
(add-to-list 'ibuffer-never-show-predicates "^\\*tramp/.*\\*$")
|
(add-to-list 'ibuffer-never-show-predicates "^\\*tramp/.*\\*$")
|
||||||
|
|
||||||
|
;; Enable ibuffer-vc extension
|
||||||
|
;; TODO: enable along side my pre existing filter groups using (ibuffer-vc-generate-filter-groups-by-vc-root).
|
||||||
|
;; This cannot be done in the ibuffer-saved-filters because ibuffer-vc-generate... returns a list of cons
|
||||||
|
;; cells but we need this to be dynamic (use a hook like ibuffer-load-hook)
|
||||||
|
(require 'ibuffer-vc)
|
||||||
|
|
||||||
;; Filter ibuffers (similar to gnus)
|
;; Filter ibuffers (similar to gnus)
|
||||||
(setq ibuffer-saved-filter-groups
|
(setq ibuffer-saved-filter-groups
|
||||||
(quote (("default"
|
'(("default"
|
||||||
("dired" (mode . dired-mode))
|
("dired" (mode . dired-mode))
|
||||||
("config" (or
|
("config" (or
|
||||||
(name . "^\\.xinitrc$")
|
(name . "^\\.xinitrc")
|
||||||
(name . "^\\.bashrc$")
|
(name . "^\\.bashrc")
|
||||||
(name . "^\\.bash_profile$")
|
(name . "^\\.bash_profile")
|
||||||
(name . "^\\.zshrc$")
|
(name . "^\\.zshrc")
|
||||||
(name . "^xmonad\\.hs$")
|
(name . "^xmonad\\.hs")
|
||||||
(name . "^\\.emacs$")
|
(name . "^\\.emacs")
|
||||||
(name . "^\\.gnus$")
|
(name . "^\\.gnus")
|
||||||
(name . "^\\.xmobarrc")
|
(name . "^\\.xmobarrc")
|
||||||
(name . "^\\.Xdefaults$")
|
(name . "^\\.Xdefaults")
|
||||||
(name . "^\\.screenrc$")
|
(name . "^\\.screenrc")
|
||||||
(name . "^\\.xbindkeysrc$")
|
(name . "^\\.xbindkeysrc")
|
||||||
(name . "^\\.racketrc$")
|
(name . "^\\.racketrc")
|
||||||
(name . "^\\.ghci")))
|
(name . "^\\.ghci")
|
||||||
("code" (or
|
(name . "\w*\\.service")
|
||||||
(mode . c-mode)
|
(name . "\w*\\.socket")
|
||||||
(mode . c++-mode)
|
(name . "^dunstrc")
|
||||||
(mode . perl-mode)
|
(name . "^\\.mpdconf")
|
||||||
(mode . lua-mode)
|
(name . "^\\.conkerorrc")))
|
||||||
(mode . clojure-mode)
|
("code" (or
|
||||||
(mode . java-mode)
|
(mode . c-mode)
|
||||||
(mode . python-mode)
|
(mode . c++-mode)
|
||||||
(mode . ruby-mode)
|
(mode . perl-mode)
|
||||||
(mode . emacs-lisp-mode)
|
(mode . lua-mode)
|
||||||
(mode . lisp-mode)
|
(mode . clojure-mode)
|
||||||
(mode . sh-mode)
|
(mode . java-mode)
|
||||||
(mode . scheme-mode)
|
(mode . python-mode)
|
||||||
(mode . haskell-mode)
|
(mode . ruby-mode)
|
||||||
(mode . php-mode)
|
(mode . emacs-lisp-mode)
|
||||||
(mode . xml-mode)))
|
(mode . lisp-mode)
|
||||||
("REPL" (or
|
(mode . sh-mode)
|
||||||
(mode . geiser-mode)
|
(mode . scheme-mode)
|
||||||
(mode . slime-repl-mode)
|
(mode . haskell-mode)
|
||||||
(mode . inferior-python-mode)
|
(mode . scala-mode)
|
||||||
(mode . ipython-mode)
|
(mode . php-mode)
|
||||||
(mode . inferior-haskell-mode)
|
(mode . xml-mode)
|
||||||
(mode . inferior-lisp-mode)
|
(mode . html-mode)
|
||||||
(mode . eshell-mode)
|
(mode . js-mode)))
|
||||||
(mode . inferior-scheme-mode)
|
("REPL" (or
|
||||||
(mode . inferior-tcl)
|
(mode . geiser-mode)
|
||||||
(mode . erlang-shell-mode)
|
(mode . slime-repl-mode)
|
||||||
(name . "^\\*inferior-lisp\\*$")
|
(mode . inferior-python-mode)
|
||||||
(name . "^\\* Racket REPL \\*$")))
|
(mode . ipython-mode)
|
||||||
("git" (or
|
(mode . inferior-haskell-mode)
|
||||||
(name . "^\\*magit: ") ;; this regxp could be better
|
(mode . inferior-lisp-mode)
|
||||||
(mode . magit-mode)
|
(mode . eshell-mode)
|
||||||
(mode . magit-log-mode)))
|
(mode . inferior-scheme-mode)
|
||||||
("planner" (or
|
(mode . inferior-tcl)
|
||||||
(name . "^\\*Calendar\\*$")
|
(mode . erlang-shell-mode)
|
||||||
(name . "^diary$")
|
(name . "^\\*inferior-lisp\\*$")
|
||||||
(mode . muse-mode)))
|
(name . "^\\* Racket REPL \\*$")))
|
||||||
("emacs" (or
|
("git" (or
|
||||||
(name . "^\\*scratch\\*$")
|
(name . "^\\*magit: ") ;; this regxp could be better
|
||||||
(name . "^\\*Messages\\*$")))
|
(mode . magit-mode)
|
||||||
("org" (or
|
(mode . magit-diff-mode)
|
||||||
(mode . org-mode)
|
(mode . magit-log-mode)
|
||||||
(name . "^\\.org$")
|
(mode . magit-commit-mode)
|
||||||
(name . "^\\.org.gpg$")))
|
(mode . magit-log-mode)))
|
||||||
("gnus" (or
|
("planner" (or
|
||||||
(mode . message-mode)
|
(name . "^\\*Calendar\\*$")
|
||||||
(mode . bbdb-mode)
|
(name . "^diary$")
|
||||||
(mode . mail-mode)
|
(mode . muse-mode)))
|
||||||
(mode . gnus-group-mode)
|
("emacs" (or
|
||||||
(mode . gnus-summary-mode)
|
(name . "^\\*scratch\\*$")
|
||||||
(mode . gnus-article-mode)
|
(name . "^\\*Messages\\*$")
|
||||||
(name . "^\\.bbdb$")
|
(name . "^\\*Backtrace\\*$")
|
||||||
(name . "^\\.newsrc-dribble")))))))
|
(mode . package-menu-mode)
|
||||||
|
(mode . compilation-mode)))
|
||||||
|
("weechat" (or
|
||||||
|
(name . "^\\*weechat.*\\*$")
|
||||||
|
(mode . weechat-mode)))
|
||||||
|
("org" (or
|
||||||
|
(mode . org-mode)
|
||||||
|
(name . "^\\.org$")
|
||||||
|
(name . "^\\.org.gpg$")))
|
||||||
|
("gnus" (or
|
||||||
|
(mode . message-mode)
|
||||||
|
(mode . bbdb-mode)
|
||||||
|
(mode . mail-mode)
|
||||||
|
(mode . gnus-group-mode)
|
||||||
|
(mode . gnus-summary-mode)
|
||||||
|
(mode . gnus-article-mode)
|
||||||
|
(name . "^\\.bbdb$")
|
||||||
|
(name . "^\\.newsrc-dribble"))))))
|
||||||
|
|
||||||
(add-hook 'ibuffer-mode-hook
|
(add-hook 'ibuffer-mode-hook
|
||||||
(lambda ()
|
(lambda ()
|
||||||
@ -220,6 +261,11 @@
|
|||||||
(require 'google-contacts) ;; AUR: emacs-google-contacts
|
(require 'google-contacts) ;; AUR: emacs-google-contacts
|
||||||
(require 'google-contacts-gnus) ;; AUR: emacs-google-contacts
|
(require 'google-contacts-gnus) ;; AUR: emacs-google-contacts
|
||||||
|
|
||||||
|
;; Setup nav
|
||||||
|
(require 'nav) ;; ELPA
|
||||||
|
(nav-disable-overeager-window-splitting)
|
||||||
|
(global-set-key "\C-cn" 'nav-toggle)
|
||||||
|
|
||||||
;; setup html renderer w3m and external browser conkeror
|
;; setup html renderer w3m and external browser conkeror
|
||||||
(require 'w3m-load) ;; AUR: emacs-w3m-cvs
|
(require 'w3m-load) ;; AUR: emacs-w3m-cvs
|
||||||
(setq browse-url-browser-function 'w3m-browse-url
|
(setq browse-url-browser-function 'w3m-browse-url
|
||||||
@ -230,8 +276,14 @@
|
|||||||
;; setup magit for git (being used though elpa [auto-loaded])
|
;; setup magit for git (being used though elpa [auto-loaded])
|
||||||
;;(require 'magit) ;; ELPA
|
;;(require 'magit) ;; ELPA
|
||||||
(global-set-key "\C-xS" 'magit-status)
|
(global-set-key "\C-xS" 'magit-status)
|
||||||
|
(setq magit-commit-signoff t)
|
||||||
|
|
||||||
;; Setup PKGBUILD mode
|
;;setup vc-darcs ;; ELPA
|
||||||
|
(add-to-list 'vc-handled-backends 'DARCS)
|
||||||
|
(autoload 'vc-darcs-find-file-hook "vc-darcs")
|
||||||
|
(add-hook 'find-file-hooks 'vc-darcs-find-file-hook)
|
||||||
|
|
||||||
|
;; Setup PKGBUILD mode ;; Community (archlinux)
|
||||||
(autoload 'pkgbuild-mode "pkgbuild-mode.el" "PKGBUILD mode." t)
|
(autoload 'pkgbuild-mode "pkgbuild-mode.el" "PKGBUILD mode." t)
|
||||||
(setq auto-mode-alist (append '(("/PKGBUILD$" . pkgbuild-mode)) auto-mode-alist))
|
(setq auto-mode-alist (append '(("/PKGBUILD$" . pkgbuild-mode)) auto-mode-alist))
|
||||||
|
|
||||||
@ -239,6 +291,22 @@
|
|||||||
(autoload 'php-mode "php-mode.el" "Php mode." t) ;; ELPA
|
(autoload 'php-mode "php-mode.el" "Php mode." t) ;; ELPA
|
||||||
(setq auto-mode-alist (append '(("/*.\.php[345]?$" . php-mode)) auto-mode-alist))
|
(setq auto-mode-alist (append '(("/*.\.php[345]?$" . php-mode)) auto-mode-alist))
|
||||||
|
|
||||||
|
;; Setup zencoding-mode
|
||||||
|
(require 'emmet-mode)
|
||||||
|
|
||||||
|
;; Disable C-j keybinding set by zencoding-mode and replace it with 'C-c j'
|
||||||
|
(define-key emmet-mode-keymap "\C-j" nil)
|
||||||
|
(define-key emmet-mode-keymap "\C-cj" 'emmet-expand-line)
|
||||||
|
|
||||||
|
;; Add appropriate hooks to sgml-mode
|
||||||
|
(add-hook 'sgml-mode-hook 'emmet-mode) ;; Auto-start on any markup modes
|
||||||
|
(add-hook 'css-mode-hook 'emmet-mode) ;; enable Emmet's css abbreviation.
|
||||||
|
(add-hook 'emmet-mode-hook (lambda () (setq emmet-indentation 2))) ;; indent 2 spaces.
|
||||||
|
|
||||||
|
;; Setup mmm-mode for multiple mode regions in the same buffer
|
||||||
|
;;(require 'mmm-mode)
|
||||||
|
;;(setq mmm-global-mode 'maybe)
|
||||||
|
|
||||||
;; Set default lisp program
|
;; Set default lisp program
|
||||||
(setq inferior-lisp-program "/usr/bin/sbcl")
|
(setq inferior-lisp-program "/usr/bin/sbcl")
|
||||||
|
|
||||||
@ -276,21 +344,24 @@
|
|||||||
(define-key clojure-mode-map "\C-c\C-e" 'lisp-eval-last-sexp)
|
(define-key clojure-mode-map "\C-c\C-e" 'lisp-eval-last-sexp)
|
||||||
(define-key clojure-mode-map "\C-x\C-e" 'lisp-eval-last-sexp)))
|
(define-key clojure-mode-map "\C-x\C-e" 'lisp-eval-last-sexp)))
|
||||||
|
|
||||||
(eval-after-load "slime"
|
;; TODO: functionality needs to be re-written; assoc library obsolete
|
||||||
`(progn
|
;; (eval-after-load "slime"
|
||||||
(require 'assoc) ;; Built-in
|
;; `(progn
|
||||||
(setq swank-clojure-classpath
|
;; (require 'assoc) ;; Built-in (OBSOLETE)
|
||||||
(list "/usr/share/clojure/clojure.jar"
|
;; (setq swank-clojure-classpath
|
||||||
"/usr/share/clojure/clojure-contrib.jar"
|
;; (list "/usr/share/clojure/clojure.jar"
|
||||||
"/usr/share/emacs/site-lisp/swank-clojure/src"))
|
;; "/usr/share/clojure/clojure-contrib.jar"
|
||||||
(aput 'slime-lisp-implementations 'clojure
|
;; "/usr/share/emacs/site-lisp/swank-clojure/src"))
|
||||||
(list (swank-clojure-cmd) :init 'swank-clojure-init))))
|
;; (aput 'slime-lisp-implementations 'clojure
|
||||||
|
;; (list (swank-clojure-cmd) :init 'swank-clojure-init))))
|
||||||
|
|
||||||
;; Setup emacs-org-mode
|
;; Setup emacs-org-mode
|
||||||
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
|
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
|
||||||
(add-hook 'org-mode-hook 'turn-on-font-lock) ; not needed when global-font-lock-mode is on
|
(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-return-follows-link t
|
||||||
(setq org-log-done 'time)
|
org-log-done 'time
|
||||||
|
org-src-fontify-natively t
|
||||||
|
org-enforce-todo-dependencies t)
|
||||||
|
|
||||||
;; Add additional languages for org-babel (now part of org-mode)
|
;; Add additional languages for org-babel (now part of org-mode)
|
||||||
(org-babel-do-load-languages
|
(org-babel-do-load-languages
|
||||||
@ -302,6 +373,9 @@
|
|||||||
(global-set-key "\C-ca" 'org-agenda)
|
(global-set-key "\C-ca" 'org-agenda)
|
||||||
(global-set-key "\C-cb" 'org-iswitchb)
|
(global-set-key "\C-cb" 'org-iswitchb)
|
||||||
|
|
||||||
|
;; Setup coq-mode ;; AUR: coq
|
||||||
|
(require 'coq)
|
||||||
|
|
||||||
;; Setup haskell-mode ;; ELPA
|
;; Setup haskell-mode ;; ELPA
|
||||||
(add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
|
(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-indentation)
|
||||||
@ -311,6 +385,20 @@
|
|||||||
;; Set inferior haskell default executable
|
;; Set inferior haskell default executable
|
||||||
(setq haskell-program-name "/usr/bin/ghci")
|
(setq haskell-program-name "/usr/bin/ghci")
|
||||||
|
|
||||||
|
;; Setup hlint ;; ELPA
|
||||||
|
;; (require 'flymake-hlint)
|
||||||
|
;; (add-hook 'haskell-mode-hook 'flymake-hlint-load)
|
||||||
|
|
||||||
|
;; Setup ghc (requires ghc-mod from cabal) ;; ELPA
|
||||||
|
(autoload 'ghc-init "ghc" nil t)
|
||||||
|
(add-hook 'haskell-mode-hook (lambda () (ghc-init)))
|
||||||
|
|
||||||
|
;; Setup ensime ;; AUR
|
||||||
|
(add-to-list 'load-path "/usr/share/ensime/elisp")
|
||||||
|
(add-to-list 'exec-path "/usr/share/ensime")
|
||||||
|
(require 'ensime)
|
||||||
|
(add-hook 'scala-mode-hook 'ensime-scala-mode-hook)
|
||||||
|
|
||||||
;; Setup python-mode auto-required by package.el (ELPA)
|
;; Setup python-mode auto-required by package.el (ELPA)
|
||||||
(setq auto-mode-alist (append '(("/*.\.py$" . python-mode)) auto-mode-alist))
|
(setq auto-mode-alist (append '(("/*.\.py$" . python-mode)) auto-mode-alist))
|
||||||
|
|
||||||
@ -334,15 +422,22 @@
|
|||||||
;; Setup geiser
|
;; Setup geiser
|
||||||
(require 'geiser) ;; ELPA
|
(require 'geiser) ;; ELPA
|
||||||
|
|
||||||
;; Setup quack
|
;; Setup auto-completion for geiser (ELPA)
|
||||||
|
(require 'ac-geiser)
|
||||||
|
(add-hook 'geiser-mode-hook 'ac-geiser-setup)
|
||||||
|
(add-hook 'geiser-repl-mode-hook 'ac-geiser-setup)
|
||||||
|
(eval-after-load "auto-complete"
|
||||||
|
'(add-to-list 'ac-modes 'geiser-repl-mode))
|
||||||
|
|
||||||
|
;; Setup quack
|
||||||
(require 'quack) ;; ELPA
|
(require 'quack) ;; ELPA
|
||||||
|
|
||||||
;; Setup paredit
|
;; Setup paredit
|
||||||
(require 'paredit) ;; ELPA
|
(require 'paredit) ;; ELPA
|
||||||
(defvar paredit-hooks '(lisp-mode-hook lisp-interaction-mode-hook emacs-lisp-mode-hook scheme-mode-hook c-mode-hook c++-mode-hook python-mode-hook))
|
(defvar lispy-langs-hooks '(lisp-mode-hook lisp-interaction-mode-hook emacs-lisp-mode-hook scheme-mode-hook c-mode-hook c++-mode-hook python-mode-hook))
|
||||||
|
|
||||||
;; Apply paredit-mode to modes listed in paredit-hooks
|
;; Apply paredit-mode to modes listed in lispy-langs-hooks
|
||||||
(activate-mode-with-hooks (lambda () (paredit-mode 1)) paredit-hooks)
|
(activate-mode-with-hooks (lambda () (paredit-mode 1)) lispy-langs-hooks)
|
||||||
|
|
||||||
;; Paredit binds to C-j globally and thus disables the binding to
|
;; Paredit binds to C-j globally and thus disables the binding to
|
||||||
;; eval-print-last-sexp in emacs-lisp-mode (e.g *scratch*, etc..)
|
;; eval-print-last-sexp in emacs-lisp-mode (e.g *scratch*, etc..)
|
||||||
@ -351,7 +446,15 @@
|
|||||||
(define-key emacs-lisp-mode-map "\C-xj" 'eval-print-last-sexp)))
|
(define-key emacs-lisp-mode-map "\C-xj" 'eval-print-last-sexp)))
|
||||||
|
|
||||||
;; Highlight paren's in given modes [to apply globally do (show-paren-mode 1)]
|
;; Highlight paren's in given modes [to apply globally do (show-paren-mode 1)]
|
||||||
(activate-mode-with-hooks (lambda () (show-paren-mode 1)) paredit-hooks)
|
(activate-mode-with-hooks (lambda () (show-paren-mode)) lispy-langs-hooks)
|
||||||
|
|
||||||
|
;; Setup rainbow-delimiters *BROKEN*
|
||||||
|
(require 'rainbow-delimiters) ;; ELPA
|
||||||
|
;;(activate-mode-with-hooks (lambda () (with-current-buffer buf (rainbow-delimiters-mode))) lispy-langs-hooks)
|
||||||
|
|
||||||
|
;; Setup rainbow-mode ;; ELPA
|
||||||
|
(require 'rainbow-mode)
|
||||||
|
(add-hook 'css-mode-hook 'rainbow-mode)
|
||||||
|
|
||||||
;; upcomming functionallity: toggle paredit-mode due to annoying things like wrapping parens when a mistake is made
|
;; upcomming functionallity: toggle paredit-mode due to annoying things like wrapping parens when a mistake is made
|
||||||
;; known issue..if paredit-mode is turned on when there are unbalanced parens an error is reported
|
;; known issue..if paredit-mode is turned on when there are unbalanced parens an error is reported
|
||||||
@ -388,6 +491,28 @@
|
|||||||
;; (add-hook 'python-mode-hook 'hs-org/minor-mode)
|
;; (add-hook 'python-mode-hook 'hs-org/minor-mode)
|
||||||
;; (add-hook 'scheme-mode-hook 'hs-org/minor-mode)
|
;; (add-hook 'scheme-mode-hook 'hs-org/minor-mode)
|
||||||
|
|
||||||
|
;; Setup isearch+
|
||||||
|
(require 'isearch+)
|
||||||
|
|
||||||
|
;; Setup ace-jump-mode
|
||||||
|
(autoload
|
||||||
|
'ace-jump-mode
|
||||||
|
"ace-jump-mode"
|
||||||
|
"Emacs quick move minor mode"
|
||||||
|
t)
|
||||||
|
(define-key global-map (kbd "C-c SPC") 'ace-jump-mode)
|
||||||
|
|
||||||
|
;; Setup expand-region ;; ELPA
|
||||||
|
(require 'expand-region)
|
||||||
|
(global-set-key (kbd "C-=") 'er/expand-region)
|
||||||
|
|
||||||
|
;; Setup multiple-cursons ;; ELPA
|
||||||
|
(require 'multiple-cursors)
|
||||||
|
(global-set-key (kbd "C-S-c C-S-c") 'mc/edit-lines)
|
||||||
|
(global-set-key (kbd "C->") 'mc/mark-next-like-this)
|
||||||
|
(global-set-key (kbd "C-<") 'mc/mark-previous-like-this)
|
||||||
|
(global-set-key (kbd "C-c C-<") 'mc/mark-all-like-this)
|
||||||
|
|
||||||
;; Setup fancy auto-complete
|
;; Setup fancy auto-complete
|
||||||
(require 'auto-complete-config) ;; ELPA
|
(require 'auto-complete-config) ;; ELPA
|
||||||
;;(add-to-list 'ac-dictionary-directories "/usr/share/emacs/site-lisp/auto-complete/ac-dict")
|
;;(add-to-list 'ac-dictionary-directories "/usr/share/emacs/site-lisp/auto-complete/ac-dict")
|
||||||
@ -396,7 +521,7 @@
|
|||||||
;; Setup yasnippet-mode (not yasnippet-bundle)
|
;; Setup yasnippet-mode (not yasnippet-bundle)
|
||||||
(require 'yasnippet) ;; ELPA
|
(require 'yasnippet) ;; ELPA
|
||||||
;;(yas/initialize)
|
;;(yas/initialize)
|
||||||
(yas/load-directory "~/.emacs.d/elpa/yasnippet-20120718/snippets")
|
(yas/load-directory "~/.emacs.d/elpa/yasnippet-20131026.1440/snippets")
|
||||||
|
|
||||||
;; Enable flyspell-mode
|
;; Enable flyspell-mode
|
||||||
(ac-flyspell-workaround)
|
(ac-flyspell-workaround)
|
||||||
@ -414,7 +539,7 @@
|
|||||||
(setq auto-insert-directory (concat (getenv "HOME") "/.emacs.d/templates/"))
|
(setq auto-insert-directory (concat (getenv "HOME") "/.emacs.d/templates/"))
|
||||||
(setq auto-insert-alist
|
(setq auto-insert-alist
|
||||||
'(("\\.c$" . ["c-template.c" auto-update-generic-template])
|
'(("\\.c$" . ["c-template.c" auto-update-generic-template])
|
||||||
("\\.\(cc\|cpp\)$" . ["cpp-template.c" auto-update-generic-template])
|
("\\.cc\\|cpp$" . ["cpp-template.c" auto-update-generic-template])
|
||||||
("\\.php$" . ["php-template.php" auto-update-generic-template])
|
("\\.php$" . ["php-template.php" auto-update-generic-template])
|
||||||
("\\.rb$" . ["ruby-template.rb" auto-update-generic-template])
|
("\\.rb$" . ["ruby-template.rb" auto-update-generic-template])
|
||||||
("\\.lua$" . ["lua-template.lua" auto-update-generic-template])
|
("\\.lua$" . ["lua-template.lua" auto-update-generic-template])
|
||||||
@ -428,7 +553,12 @@
|
|||||||
("\\.hs$" . ["haskell-template.hs" auto-update-generic-template])
|
("\\.hs$" . ["haskell-template.hs" auto-update-generic-template])
|
||||||
("\\.ml$" . ["ocaml-template.ml" auto-update-generic-template])
|
("\\.ml$" . ["ocaml-template.ml" auto-update-generic-template])
|
||||||
("\\.sml$" . ["sml-template.sml" auto-update-generic-template])
|
("\\.sml$" . ["sml-template.sml" auto-update-generic-template])
|
||||||
("\\.py$" . ["python-template.py" auto-update-generic-template])))
|
("\\.py$" . ["python-template.py" auto-update-generic-template])
|
||||||
|
("\\.java$" . ["java-template.java" auto-update-generic-template])
|
||||||
|
("\\.scala$" . ["scala-template.scala" auto-update-generic-template])
|
||||||
|
("\\.htm\\|html$" . ["html-template.html" auto-update-generic-template])
|
||||||
|
("\\.js$" . ["java-script-template.js" auto-update-generic-template])
|
||||||
|
("\\.css$" . ["css-template.css" auto-update-generic-template])))
|
||||||
(setq auto-insert 'other)
|
(setq auto-insert 'other)
|
||||||
|
|
||||||
(defun auto-update-generic-template ()
|
(defun auto-update-generic-template ()
|
||||||
@ -464,20 +594,45 @@
|
|||||||
(interactive)
|
(interactive)
|
||||||
(insert (format-time-string "%b %e, %Y" (current-time))))
|
(insert (format-time-string "%b %e, %Y" (current-time))))
|
||||||
|
|
||||||
(defun open-scratch-buffer ()
|
;; (defun open-scratch-buffer ()
|
||||||
"Opens the scratch buffer; if none exists creates one."
|
;; "Opens the scratch buffer; if none exists creates one."
|
||||||
(interactive)
|
;; (interactive)
|
||||||
(let ((scratch-buffer (get-buffer "*scratch*")))
|
;; (let ((scratch-buffer (get-buffer "*scratch*")))
|
||||||
(if (null scratch-buffer) (progn (get-buffer-create "*scratch*")
|
;; (if (null scratch-buffer) (with-current-buffer (get-buffer-create "*scratch*")
|
||||||
(insert initial-scratch-message)
|
;; (insert initial-scratch-message)
|
||||||
(lisp-interaction-mode)))
|
;; (lisp-interaction-mode)))
|
||||||
(switch-to-buffer "*scratch*")))
|
;; (switch-to-buffer "*scratch*")))
|
||||||
|
|
||||||
|
(defvar scratch-buffer-alist '((python-mode . "# This buffer is for notes you don't want to save, and for Lisp evaluation.\n# If you want to create a file, visit that file with C-x C-f,\n# then enter the text in that file's own buffer.")))
|
||||||
|
|
||||||
|
(defun open-scratch-buffer (&optional buf-mode buf-name msg)
|
||||||
|
"Opens a scratch buffer; if none exists creates one. When called with the universal argument (C-u) will ask what mode to use for the scratch buffer."
|
||||||
|
(interactive
|
||||||
|
(cond ((equal current-prefix-arg nil) ;; universal argument not called
|
||||||
|
(list initial-major-mode "*scratch*" initial-scratch-message))
|
||||||
|
((equal current-prefix-arg '(4)) ;; Universal argument called (C-u)
|
||||||
|
(let* ((buf-mode (read-command "Mode: " initial-major-mode))
|
||||||
|
(buf-name (if (equal buf-mode initial-major-mode)
|
||||||
|
"*scratch*"
|
||||||
|
(concat "*scratch:" (symbol-name buf-mode) "*")))
|
||||||
|
(msg ""))
|
||||||
|
(list buf-mode buf-name msg)))))
|
||||||
|
(let* ((scratch-buffer (get-buffer buf-name)))
|
||||||
|
;; check if the scratchpad is open. If not create it, change its mode and insert message text at the top of the buffer
|
||||||
|
(if (null scratch-buffer)
|
||||||
|
(with-current-buffer (get-buffer-create buf-name)
|
||||||
|
(funcall buf-mode)
|
||||||
|
(insert msg)))
|
||||||
|
(switch-to-buffer buf-name)))
|
||||||
|
|
||||||
;; Bind a key to grab a scratchpad
|
;; Bind a key to grab a scratchpad
|
||||||
(global-set-key "\C-x4s" 'open-scratch-buffer)
|
(define-key ctl-x-4-map "s" 'open-scratch-buffer)
|
||||||
|
|
||||||
|
;; TODO: make a function to toggle the eshell; given a the universal argument the following can occur:
|
||||||
|
;; - if numerical then opens the nth scratch buffer "*eshell*<n>"
|
||||||
|
;; - if no args then open a new eshell
|
||||||
;; Bind a key to switch to eshell
|
;; Bind a key to switch to eshell
|
||||||
(global-set-key "\C-x4e" 'eshell)
|
(define-key ctl-x-4-map "e" 'eshell)
|
||||||
|
|
||||||
;; Toggles windows split orientation of 2 adjecent windows
|
;; Toggles windows split orientation of 2 adjecent windows
|
||||||
;; Thanks to http://www.emacswiki.org/cgi-bin/wiki?ToggleWindowSplit
|
;; Thanks to http://www.emacswiki.org/cgi-bin/wiki?ToggleWindowSplit
|
||||||
@ -532,9 +687,17 @@
|
|||||||
;; Commands that require a little more then a dumb-term
|
;; 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"))
|
(setq eshell-visual-commands '("vi" "screen" "top" "less" "more" "lynx" "ncftp" "vim" "ncmpcpp" "irssi" "mc" "alsamixer" "/usr/bin/sudo"))
|
||||||
|
|
||||||
|
(defun eshell/catbuf (buffer-name)
|
||||||
|
"Given a buffer-name returns the contents of said buffer"
|
||||||
|
(interactive "bBuffer: ")
|
||||||
|
(save-excursion
|
||||||
|
(let ((code-buf (get-buffer buffer-name)))
|
||||||
|
(if (null code-buf) (concat "The buffer given \"" buffer-name "\" does not exist")
|
||||||
|
(set-buffer code-buf)
|
||||||
|
(buffer-string)))))
|
||||||
|
|
||||||
(defun eshell/find-file-ext (fp)
|
(defun eshell/find-file-ext (fp)
|
||||||
"Finds a single file or a list of files and returns a list of their respective buffers"
|
"Finds a single file or a list of files matching a regxp and returns a list of their respective buffers"
|
||||||
(interactive)
|
(interactive)
|
||||||
(if (listp fp) (mapcar #'find-file fp)
|
(if (listp fp) (mapcar #'find-file fp)
|
||||||
(list (find-file fp))))
|
(list (find-file fp))))
|
||||||
@ -555,6 +718,12 @@ consisting of lists of buffers opened by each respective FP argument."
|
|||||||
|
|
||||||
;; (add-to-list 'load-path "~/.emacs.d/el-get/el-get")
|
;; (add-to-list 'load-path "~/.emacs.d/el-get/el-get")
|
||||||
|
|
||||||
|
;; *TODO*: PLAIN TEXT PASSWORD === BAD
|
||||||
|
;; Setup weechat client (note requires weechat relay (port 9000)
|
||||||
|
(require 'weechat)
|
||||||
|
(if (daemonp)
|
||||||
|
(weechat-connect "localhost" 9000 "linux:netbeans" nil))
|
||||||
|
|
||||||
;; *BROKEN*..can't connect to dbus for some reason?
|
;; *BROKEN*..can't connect to dbus for some reason?
|
||||||
;; ;; Setup el-get
|
;; ;; Setup el-get
|
||||||
;; (unless (require 'el-get nil t)
|
;; (unless (require 'el-get nil t)
|
||||||
@ -574,9 +743,10 @@ consisting of lists of buffers opened by each respective FP argument."
|
|||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
'(ansi-color-names-vector ["#2d3743" "#ff4242" "#74af68" "#dbdb95" "#34cae2" "#008b8b" "#00ede1" "#e1e1e0"])
|
'(ansi-color-names-vector ["#2d3743" "#ff4242" "#74af68" "#dbdb95" "#34cae2" "#008b8b" "#00ede1" "#e1e1e0"])
|
||||||
'(custom-safe-themes (quote ("36a309985a0f9ed1a0c3a69625802f87dee940767c9e200b89cdebdb737e5b29" "dc8693659115ea453f849f47509b903da3801b5f1521a73fa31556a9a3558517" default)))
|
'(custom-safe-themes (quote ("36a309985a0f9ed1a0c3a69625802f87dee940767c9e200b89cdebdb737e5b29" "dc8693659115ea453f849f47509b903da3801b5f1521a73fa31556a9a3558517" default)))
|
||||||
|
'(fill-column 95)
|
||||||
'(highlight-current-line-globally t nil (highlight-current-line))
|
'(highlight-current-line-globally t nil (highlight-current-line))
|
||||||
'(highlight-current-line-ignore-regexp "Faces\\|Colors\\| \\*Mini\\|\\**\\*")
|
'(highlight-current-line-ignore-regexp "Faces\\|Colors\\| \\*Mini\\|\\**\\*")
|
||||||
'(magit-commit-signoff t)
|
'(magit-commit-signoff t t)
|
||||||
'(org-agenda-files (quote ("~/.org/tech/notes.org" "~/.org/todo/rekahsoft-mini-todo.org" "~/.org/todo/rekahsoft-todo.org" "~/.org/todo/general.org" "~/.org/todo/work.org")))
|
'(org-agenda-files (quote ("~/.org/tech/notes.org" "~/.org/todo/rekahsoft-mini-todo.org" "~/.org/todo/rekahsoft-todo.org" "~/.org/todo/general.org" "~/.org/todo/work.org")))
|
||||||
'(quack-default-program "racket")
|
'(quack-default-program "racket")
|
||||||
'(quack-fontify-style (quote plt))
|
'(quack-fontify-style (quote plt))
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* (C) Copyright Collin Doering @!@YEAR@!@
|
* (C) Copyright Collin Doering @!@YEAR@!@
|
||||||
*
|
*
|
||||||
@ -21,3 +23,6 @@
|
|||||||
* Date: @!@DATE@!@
|
* Date: @!@DATE@!@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
?>
|
||||||
|
@ -1,5 +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
|
alias ffo find-file-other-window $1
|
||||||
|
alias d dired $1
|
||||||
|
alias ssudo /usr/bin/sudo
|
||||||
|
alias mss magit-status .
|
||||||
|
alias ms magit-status $1
|
||||||
|
10
.ghci
10
.ghci
@ -1 +1,11 @@
|
|||||||
|
-- Setup prompt
|
||||||
:set prompt "ghci> "
|
:set prompt "ghci> "
|
||||||
|
|
||||||
|
-- Setup use of hoogle through ghci
|
||||||
|
:def hoogle \str -> return $ ":! hoogle --count=15 \"" ++ str ++ "\""
|
||||||
|
|
||||||
|
-- Enable almost all warnings by default
|
||||||
|
:set -Wall
|
||||||
|
|
||||||
|
-- Enable multi-line mode; shortform for -{ ... }-
|
||||||
|
:set +m
|
||||||
|
31
.gnus
31
.gnus
@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
(setq smtpmail-debug-info t)
|
(setq smtpmail-debug-info t)
|
||||||
|
|
||||||
(setq smtpmail-stream-type nil) ;; If using TLS/SSL. Use C-h v smtpmail-stream-type RET to see possible values
|
(setq smtpmail-stream-type 'starttls) ;; If using TLS/SSL. Use C-h v smtpmail-stream-type RET to see possible values
|
||||||
(setq smtp-accounts
|
(setq smtp-accounts
|
||||||
'(("collin.doering@gmail.com" "Collin J. Doering" "smtp.gmail.com")
|
'(("collin.doering@gmail.com" "Collin J. Doering" "smtp.gmail.com")
|
||||||
("rekahsoft@gmail.com" "rekahsoft" "smtp.gmail.com")))
|
("rekahsoft@gmail.com" "rekahsoft" "smtp.gmail.com")))
|
||||||
@ -32,10 +32,11 @@
|
|||||||
when (string-match addr from)
|
when (string-match addr from)
|
||||||
do (setq user-mail-address addr
|
do (setq user-mail-address addr
|
||||||
user-full-name fname
|
user-full-name fname
|
||||||
smtpmail-smtp-server server))))
|
smtpmail-smtp-server server
|
||||||
|
smtpmail-smtp-user addr))))
|
||||||
|
|
||||||
(defadvice smtpmail-via-smtp
|
(defadvice smtpmail-via-smtp
|
||||||
(before change-smtp-by-message-from-field (recipient buffer))
|
(before change-smtp-by-message-from-field (recipient buffer &optional ask) activate)
|
||||||
(with-current-buffer buffer (my-change-smtp)))
|
(with-current-buffer buffer (my-change-smtp)))
|
||||||
|
|
||||||
(ad-activate 'smtpmail-via-smtp)
|
(ad-activate 'smtpmail-via-smtp)
|
||||||
@ -51,6 +52,15 @@
|
|||||||
("rekahsoft.mail@gmail.com"
|
("rekahsoft.mail@gmail.com"
|
||||||
(address "rekahsoft.mail@gmail.com")
|
(address "rekahsoft.mail@gmail.com")
|
||||||
(name "RekahSoft"))
|
(name "RekahSoft"))
|
||||||
|
("collin.doering@rekahsoft.ca"
|
||||||
|
(address "collin.doering@rekahsoft.ca")
|
||||||
|
(name "Collin J. Doering"))
|
||||||
|
("support@rekahsoft.ca"
|
||||||
|
(address "support@rekahsoft.ca")
|
||||||
|
(name "Rekahsoft Support"))
|
||||||
|
("info@rekahsoft.ca"
|
||||||
|
(address "info@rekahsoft.ca")
|
||||||
|
(name "RekahSoft Info"))
|
||||||
))
|
))
|
||||||
|
|
||||||
;; set primary select method..
|
;; set primary select method..
|
||||||
@ -68,6 +78,21 @@
|
|||||||
(nnimap-address "imap.gmail.com")
|
(nnimap-address "imap.gmail.com")
|
||||||
(nnimap-server-port 993)
|
(nnimap-server-port 993)
|
||||||
(nnimap-stream ssl)
|
(nnimap-stream ssl)
|
||||||
|
(nnimap-authinfo-file "~/.authinfo.gpg"))
|
||||||
|
(nnimap "collin.doering"
|
||||||
|
(nnimap-address "hp131.hostpapa.com")
|
||||||
|
(nnimap-server-port 993)
|
||||||
|
(nnimap-stream ssl)
|
||||||
|
(nnimap-authinfo-file "~/.authinfo.gpg"))
|
||||||
|
(nnimap "info"
|
||||||
|
(nnimap-address "hp131.hostpapa.com")
|
||||||
|
(nnimap-server-port 993)
|
||||||
|
(nnimap-stream ssl)
|
||||||
|
(nnimap-authinfo-file "~/.authinfo.gpg"))
|
||||||
|
(nnimap "support"
|
||||||
|
(nnimap-address "hp131.hostpapa.com")
|
||||||
|
(nnimap-server-port 993)
|
||||||
|
(nnimap-stream ssl)
|
||||||
(nnimap-authinfo-file "~/.authinfo.gpg"))))
|
(nnimap-authinfo-file "~/.authinfo.gpg"))))
|
||||||
|
|
||||||
;; (nnimap "rekahsoft.mail"
|
;; (nnimap "rekahsoft.mail"
|
||||||
|
70
.mpdconf
70
.mpdconf
@ -169,11 +169,11 @@ auto_update "yes"
|
|||||||
# If this setting is set, MPD will require password authorization. The password
|
# If this setting is set, MPD will require password authorization. The password
|
||||||
# can setting can be specified multiple times for different password profiles.
|
# can setting can be specified multiple times for different password profiles.
|
||||||
#
|
#
|
||||||
#password "password@read,add,control,admin"
|
password "patchMeIn@read,add,control,admin"
|
||||||
#
|
#
|
||||||
# This setting specifies the permissions a user has who has not yet logged in.
|
# This setting specifies the permissions a user has who has not yet logged in.
|
||||||
#
|
#
|
||||||
#default_permissions "read"
|
default_permissions "read,add"
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
@ -225,29 +225,31 @@ input {
|
|||||||
## mixer_device "/dev/mixer" # optional
|
## mixer_device "/dev/mixer" # optional
|
||||||
## mixer_control "PCM" # optional
|
## mixer_control "PCM" # optional
|
||||||
#}
|
#}
|
||||||
|
|
||||||
#
|
#
|
||||||
# An example of a shout output (for streaming to Icecast):
|
# An example of a shout output (for streaming to Icecast):
|
||||||
#
|
#
|
||||||
#audio_output {
|
# audio_output {
|
||||||
# type "shout"
|
# type "shout"
|
||||||
# encoding "ogg" # optional
|
# # encoding "ogg" # optional
|
||||||
# name "My Shout Stream"
|
# name "RekahSoft Shout Stream"
|
||||||
# host "localhost"
|
# host "localhost"
|
||||||
# port "8000"
|
# port "8000"
|
||||||
# mount "/mpd.ogg"
|
# mount "/mpd.ogg"
|
||||||
# password "hackme"
|
# password ""
|
||||||
# quality "5.0"
|
# quality "5.0"
|
||||||
# bitrate "128"
|
# # bitrate "128"
|
||||||
# format "44100:16:1"
|
# format "44100:16:1"
|
||||||
## protocol "icecast2" # optional
|
# # protocol "icecast2" # optional
|
||||||
## user "source" # optional
|
# # user "source" # optional
|
||||||
## description "My Stream Description" # optional
|
# # description "My Stream Description" # optional
|
||||||
## url "http://example.com" # optional
|
# # url "http://example.com" # optional
|
||||||
## genre "jazz" # optional
|
# # genre "jazz" # optional
|
||||||
## public "no" # optional
|
# # public "no" # optional
|
||||||
## timeout "2" # optional
|
# # timeout "2" # optional
|
||||||
## mixer_type "software" # optional
|
# # mixer_type "software" # optional
|
||||||
#}
|
# }
|
||||||
|
|
||||||
#
|
#
|
||||||
# An example of a recorder output:
|
# An example of a recorder output:
|
||||||
#
|
#
|
||||||
@ -260,20 +262,22 @@ input {
|
|||||||
# bitrate "128" # do not define if quality is defined
|
# bitrate "128" # do not define if quality is defined
|
||||||
# format "44100:16:1"
|
# format "44100:16:1"
|
||||||
#}
|
#}
|
||||||
|
|
||||||
#
|
#
|
||||||
# An example of a httpd output (built-in HTTP streaming server):
|
# An example of a httpd output (built-in HTTP streaming server):
|
||||||
#
|
#
|
||||||
#audio_output {
|
audio_output {
|
||||||
# type "httpd"
|
type "httpd"
|
||||||
# name "My HTTP Stream"
|
name "RekahSoft HTTP Stream"
|
||||||
# encoder "vorbis" # optional, vorbis or lame
|
encoder "vorbis" # optional, vorbis or lame
|
||||||
# port "8000"
|
port "8000"
|
||||||
# bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
|
bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
|
||||||
## quality "5.0" # do not define if bitrate is defined
|
# quality "5.0" # do not define if bitrate is defined
|
||||||
# bitrate "128" # do not define if quality is defined
|
bitrate "128" # do not define if quality is defined
|
||||||
# format "44100:16:1"
|
format "44100:16:1"
|
||||||
# max_clients "0" # optional 0=no limit
|
max_clients "5" # optional 0=no limit
|
||||||
#}
|
}
|
||||||
|
|
||||||
#
|
#
|
||||||
# An example of a pulseaudio output (streaming to a remote pulseaudio server)
|
# An example of a pulseaudio output (streaming to a remote pulseaudio server)
|
||||||
#
|
#
|
||||||
|
@ -7,21 +7,22 @@
|
|||||||
#
|
#
|
||||||
## set it in order to make tag editor and renaming files work properly
|
## set it in order to make tag editor and renaming files work properly
|
||||||
#
|
#
|
||||||
mpd_host = "localhost"
|
mpd_host = "patchMeIn@localhost"
|
||||||
#
|
#
|
||||||
mpd_port = "6600"
|
mpd_port = "6600"
|
||||||
#
|
#
|
||||||
mpd_music_dir = "/media/md-isk/Music"
|
mpd_music_dir = "/media/dm/Music"
|
||||||
#
|
#
|
||||||
#mpd_connection_timeout = "5"
|
#mpd_connection_timeout = "5"
|
||||||
|
|
||||||
execute_on_song_change = "notify-send -t 3000 -i \"/usr/share/icons/gnome/scalable/mimetypes/audio-x-generic-symbolic.svg\" \"$(ncmpcpp --now-playing %t)\" \"$(ncmpcpp --now-playing '%b - %a')\""
|
execute_on_song_change = "notify-send -t 3000 -i \"/usr/share/icons/gnome/scalable/mimetypes/audio-x-generic-symbolic.svg\" \"$(ncmpcpp --now-playing '{%t\n%b - %a}|{%f}')\""
|
||||||
playlist_display_mode = "columns"
|
playlist_display_mode = "columns"
|
||||||
browser_display_mode = "columns"
|
browser_display_mode = "columns"
|
||||||
search_engine_display_mode = "columns"
|
search_engine_display_mode = "columns"
|
||||||
fancy_scrolling = "yes"
|
fancy_scrolling = "yes"
|
||||||
|
user_interface = "alternative"
|
||||||
|
|
||||||
visualizer_fifo_path = "/tmp/mpd.fifo"
|
visualizer_fifo_path = "/home/collin/.mpd/mpd.fifo"
|
||||||
visualizer_output_name = "RekahSoft FIFO"
|
visualizer_output_name = "RekahSoft FIFO"
|
||||||
visualizer_sync_interval = "30"
|
visualizer_sync_interval = "30"
|
||||||
visualizer_type = "spectrum" (spectrum/wave)
|
visualizer_type = "wave" # (spectrum/wave)
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
# Open several named screens at startup and run different commands in each
|
# Open several named screens at startup and run different commands in each
|
||||||
screen -t zsh 0 zsh
|
screen -t zsh 0 zsh
|
||||||
screen -t irssi 1 irssi
|
screen -t weechat 1 weechat-curses
|
||||||
screen -t ncmpcpp 2 ncmpcpp
|
|
||||||
screen -t alsamixer 3 alsamixer
|
#screen -t ncmpcpp 2 ncmpcpp
|
||||||
|
#screen -t alsamixer 3 alsamixer
|
||||||
#screen -t mc 4 mc
|
#screen -t mc 4 mc
|
||||||
#screen -t cmus 5 cmus
|
#screen -t cmus 5 cmus
|
||||||
#screen -t nvlc 5 nvlc
|
#screen -t nvlc 5 nvlc
|
||||||
|
30
.xbindkeysrc
30
.xbindkeysrc
@ -15,55 +15,61 @@
|
|||||||
# play/pause key = toggle play pause
|
# play/pause key = toggle play pause
|
||||||
#"~/.bin/toggle-pp.py"
|
#"~/.bin/toggle-pp.py"
|
||||||
#"cmus-remote --pause"
|
#"cmus-remote --pause"
|
||||||
"mpc toggle"
|
"mpc -h patchMeIn@localhost toggle"
|
||||||
m:0x10 + c:172
|
m:0x10 + c:172
|
||||||
XF86AudioPlay
|
XF86AudioPlay
|
||||||
#"cmus-remote --pause"
|
#"cmus-remote --pause"
|
||||||
"mpc toggle"
|
"mpc -h patchMeIn@localhost toggle"
|
||||||
m:0x58 + c:33
|
m:0x58 + c:33
|
||||||
Alt+Mod2+Mod4 + p
|
Alt+Mod2+Mod4 + p
|
||||||
|
|
||||||
# next key = next song
|
# next key = next song
|
||||||
#"cmus-remote --next"
|
#"cmus-remote --next"
|
||||||
"mpc next"
|
"mpc -h patchMeIn@localhost next"
|
||||||
m:0x10 + c:171
|
m:0x10 + c:171
|
||||||
XF86AudioNext
|
XF86AudioNext
|
||||||
#"cmus-remote --next"
|
#"cmus-remote --next"
|
||||||
"mpc next"
|
"mpc -h patchMeIn@localhost next"
|
||||||
m:0x58 + c:60
|
m:0x58 + c:60
|
||||||
Alt+Mod2+Mod4 + period
|
Alt+Mod2+Mod4 + period
|
||||||
|
|
||||||
# prev key = previous song
|
# prev key = previous song
|
||||||
#"cmus-remote --prev"
|
#"cmus-remote --prev"
|
||||||
"mpc prev"
|
"mpc -h patchMeIn@localhost prev"
|
||||||
m:0x10 + c:173
|
m:0x10 + c:173
|
||||||
XF86AudioPrev
|
XF86AudioPrev
|
||||||
#"cmus-remote --prev"
|
#"cmus-remote --prev"
|
||||||
"mpc prev"
|
"mpc -h patchMeIn@localhost prev"
|
||||||
m:0x58 + c:59
|
m:0x58 + c:59
|
||||||
Alt+Mod2+Mod4 + comma
|
Alt+Mod2+Mod4 + comma
|
||||||
|
|
||||||
# volume up key = Master volume up 1
|
# volume up key = Master volume up 1
|
||||||
"amixer set Master 1+"
|
#"amixer set Master 1+"
|
||||||
|
"pulseaudio-ctl up"
|
||||||
m:0x10 + c:123
|
m:0x10 + c:123
|
||||||
XF86AudioRaiseVolume
|
XF86AudioRaiseVolume
|
||||||
"amixer set Master 1+"
|
#"amixer set Master 1+"
|
||||||
|
"pulseaudio-ctl up"
|
||||||
m:0x58 + c:30
|
m:0x58 + c:30
|
||||||
Alt+Mod2+Mod4 + u
|
Alt+Mod2+Mod4 + u
|
||||||
|
|
||||||
# volume down key = Master volume down 1
|
# volume down key = Master volume down 1
|
||||||
"amixer set Master 1-"
|
#"amixer set Master 1-"
|
||||||
|
"pulseaudio-ctl down"
|
||||||
m:0x10 + c:122
|
m:0x10 + c:122
|
||||||
XF86AudioLowerVolume
|
XF86AudioLowerVolume
|
||||||
"amixer set Master 1-"
|
#"amixer set Master 1-"
|
||||||
|
"pulseaudio-ctl down"
|
||||||
m:0x58 + c:40
|
m:0x58 + c:40
|
||||||
Alt+Mod2+Mod4 + d
|
Alt+Mod2+Mod4 + d
|
||||||
|
|
||||||
# mute volume key = mute alsa Master channel
|
# mute volume key = mute alsa Master channel
|
||||||
"amixer set Master toggle"
|
#"amixer set Master toggle"
|
||||||
|
"pulseaudio-ctl mute"
|
||||||
m:0x10 + c:121
|
m:0x10 + c:121
|
||||||
XF86AudioMute
|
XF86AudioMute
|
||||||
"amixer set Master toggle"
|
#"amixer set Master toggle"
|
||||||
|
"mute_toggle"
|
||||||
m:0x58 + c:58
|
m:0x58 + c:58
|
||||||
Alt+Mod2+Mod4 + m
|
Alt+Mod2+Mod4 + m
|
||||||
|
|
||||||
|
2
.xinitrc
2
.xinitrc
@ -32,7 +32,7 @@ function init_local_session() {
|
|||||||
# * emacsd
|
# * emacsd
|
||||||
# * trayer *disabled* ..
|
# * trayer *disabled* ..
|
||||||
# * udiskie
|
# * udiskie
|
||||||
systemd --user &
|
#systemd --user & #DEPRECIATED..logind calls systemd --user automatically
|
||||||
|
|
||||||
# Set a desktop background
|
# Set a desktop background
|
||||||
nitrogen --restore &
|
nitrogen --restore &
|
||||||
|
@ -22,8 +22,8 @@ Config { font = "-*-terminus-*-*-*-*-35-*-*-*-*-*-*-u"
|
|||||||
, fgColor = "#00FFFF"
|
, fgColor = "#00FFFF"
|
||||||
, position = TopW L 100
|
, position = TopW L 100
|
||||||
, lowerOnStart = True
|
, lowerOnStart = True
|
||||||
, commands = [ Run Network "eno1" ["-L","0","-H","32","-l","green","--normal","orange","--high","red"] 40
|
, commands = [ Run DynNetwork ["-L","0","-H","32","-l","green","--normal","orange","--high","red"] 40
|
||||||
-- , Run Com "/home/collin/.bin/vol.sh" [] "vol" 15
|
, Run Com "/home/collin/.bin/vol.sh" [] "vol" 10
|
||||||
, Run MultiCpu ["-t","Cpu <total> | cpu0: <total0> | cpu1: <total1> | cpu2: <total2> | cpu3: <total3>","-L","3","-H","50","--high","#f0c040"] 10
|
, Run MultiCpu ["-t","Cpu <total> | cpu0: <total0> | cpu1: <total1> | cpu2: <total2> | cpu3: <total3>","-L","3","-H","50","--high","#f0c040"] 10
|
||||||
, Run Memory ["-t","Mem: <usedratio>%","-l","green","--normal","orange","--high","red"] 40
|
, Run Memory ["-t","Mem: <usedratio>%","-l","green","--normal","orange","--high","red"] 40
|
||||||
, Run Swap ["-t","Swap: <usedratio>%","-l","green","--normal","orange","--high","red"] 60
|
, Run Swap ["-t","Swap: <usedratio>%","-l","green","--normal","orange","--high","red"] 60
|
||||||
@ -35,5 +35,5 @@ Config { font = "-*-terminus-*-*-*-*-35-*-*-*-*-*-*-u"
|
|||||||
]
|
]
|
||||||
, sepChar = "%"
|
, sepChar = "%"
|
||||||
, alignSep = "}{"
|
, alignSep = "}{"
|
||||||
, template = " %StdinReader% }{ %multicpu% %memory% <fc=#0033FF>|</fc> %swap% <fc=#0033FF>|</fc> %eno1% <fc=#0033FF>|</fc> %uptime% <fc=#0033FF>|</fc> %CYKF% <fc=#0033FF>|</fc> %date% <fc=#0033FF>|</fc> "
|
, template = " %StdinReader% }{ %multicpu% %memory% <fc=#0033FF>|</fc> %swap% <fc=#0033FF>|</fc> %dynnetwork% <fc=#0033FF>|</fc> %vol% <fc=#0033FF>|</fc> %uptime% <fc=#0033FF>|</fc> %CYKF% <fc=#0033FF>|</fc> %date% <fc=#0033FF>|</fc> "
|
||||||
}
|
}
|
||||||
|
@ -22,12 +22,22 @@
|
|||||||
-- http://www.haskell.org/haskellwiki/Xmonad/Notable_changes_since_0.8
|
-- http://www.haskell.org/haskellwiki/Xmonad/Notable_changes_since_0.8
|
||||||
--
|
--
|
||||||
|
|
||||||
|
|
||||||
|
import System.IO
|
||||||
|
import System.Exit
|
||||||
|
import Data.Monoid
|
||||||
|
import qualified Data.Map as M
|
||||||
|
|
||||||
import XMonad
|
import XMonad
|
||||||
import XMonad.Actions.UpdatePointer
|
import XMonad.Actions.UpdatePointer
|
||||||
import XMonad.Actions.WindowBringer
|
import XMonad.Actions.WindowBringer
|
||||||
import Data.Monoid
|
import XMonad.Actions.GridSelect
|
||||||
import System.Exit
|
import XMonad.Actions.FloatKeys
|
||||||
|
|
||||||
import XMonad.Util.Run(spawnPipe)
|
import XMonad.Util.Run(spawnPipe)
|
||||||
|
import XMonad.Util.Dmenu
|
||||||
|
import XMonad.Util.NamedScratchpad
|
||||||
|
|
||||||
import XMonad.Layout.NoBorders(noBorders,smartBorders)
|
import XMonad.Layout.NoBorders(noBorders,smartBorders)
|
||||||
import XMonad.Layout.ResizableTile
|
import XMonad.Layout.ResizableTile
|
||||||
import XMonad.Layout.Grid
|
import XMonad.Layout.Grid
|
||||||
@ -35,20 +45,16 @@ import XMonad.Layout.ToggleLayouts
|
|||||||
import XMonad.Layout.SubLayouts
|
import XMonad.Layout.SubLayouts
|
||||||
import XMonad.Layout.WindowNavigation
|
import XMonad.Layout.WindowNavigation
|
||||||
import XMonad.Layout.BoringWindows
|
import XMonad.Layout.BoringWindows
|
||||||
import XMonad.Util.NamedScratchpad
|
|
||||||
import XMonad.Actions.GridSelect
|
|
||||||
import XMonad.Actions.FloatKeys
|
|
||||||
import XMonad.Util.Dmenu
|
|
||||||
import XMonad.Layout.Tabbed
|
import XMonad.Layout.Tabbed
|
||||||
|
|
||||||
import XMonad.Hooks.ManageDocks
|
import XMonad.Hooks.ManageDocks
|
||||||
import XMonad.Hooks.DynamicLog
|
import XMonad.Hooks.DynamicLog
|
||||||
import XMonad.Hooks.UrgencyHook
|
import XMonad.Hooks.UrgencyHook
|
||||||
import XMonad.Hooks.ManageHelpers
|
import XMonad.Hooks.ManageHelpers
|
||||||
import XMonad.Hooks.FadeInactive (setOpacity)
|
import XMonad.Hooks.FadeInactive (setOpacity)
|
||||||
import System.IO
|
|
||||||
|
|
||||||
import qualified XMonad.StackSet as W
|
import qualified XMonad.StackSet as W
|
||||||
import qualified Data.Map as M
|
|
||||||
|
|
||||||
-- The preferred terminal program, which is used in a binding below and by
|
-- The preferred terminal program, which is used in a binding below and by
|
||||||
-- certain contrib modules.
|
-- certain contrib modules.
|
||||||
@ -172,7 +178,7 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
|
|||||||
-- Use this binding with avoidStruts from Hooks.ManageDocks.
|
-- Use this binding with avoidStruts from Hooks.ManageDocks.
|
||||||
-- See also the statusBar function from Hooks.DynamicLog.
|
-- See also the statusBar function from Hooks.DynamicLog.
|
||||||
--
|
--
|
||||||
-- , ((modm , xK_b ), sendMessage ToggleStruts)
|
, ((modm , xK_b ), sendMessage ToggleStruts)
|
||||||
|
|
||||||
-- Quit xmonad (no questions)
|
-- Quit xmonad (no questions)
|
||||||
, ((modm .|. shiftMask .|. controlMask, xK_End), io (exitWith ExitSuccess))
|
, ((modm .|. shiftMask .|. controlMask, xK_End), io (exitWith ExitSuccess))
|
||||||
@ -181,7 +187,7 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
|
|||||||
, ((modm .|. shiftMask, xK_q), spawn "~/.bin/xmonadClose.sh")
|
, ((modm .|. shiftMask, xK_q), spawn "~/.bin/xmonadClose.sh")
|
||||||
|
|
||||||
-- Unmount automounted disks by udiskie
|
-- Unmount automounted disks by udiskie
|
||||||
, ((modm .|. shiftMask .|. controlMask, xK_u), spawn "udiskie-umount -as")
|
, ((modm .|. shiftMask .|. controlMask, xK_u), spawn "udiskie-umount -as && notify-send 'External media safely disconnected!'")
|
||||||
|
|
||||||
--, ((modm .|. shiftMask, xK_w ), if (dmenu "-b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000' -p \"Do you really want to close XMonad? [yes/no]: \"") == "yes" then (sendMessage Expand) else (sendMessage Shrink))
|
--, ((modm .|. shiftMask, xK_w ), if (dmenu "-b -i -nb '#040404' -nf '#525252' -sf '#ffa0ff' -sb '#000000' -p \"Do you really want to close XMonad? [yes/no]: \"") == "yes" then (sendMessage Expand) else (sendMessage Shrink))
|
||||||
|
|
||||||
@ -214,9 +220,6 @@ myGenericKeys =
|
|||||||
|
|
||||||
-- Lock the screen using xscreensaver
|
-- Lock the screen using xscreensaver
|
||||||
[ ((modm .|. shiftMask, xK_v), spawn "xscreensaver-command -lock")
|
[ ((modm .|. shiftMask, xK_v), spawn "xscreensaver-command -lock")
|
||||||
|
|
||||||
-- Key binding to toggle the gap for the bar.
|
|
||||||
, ((modm, xK_b), sendMessage ToggleStruts)
|
|
||||||
|
|
||||||
-- Toggle full-screen mode
|
-- Toggle full-screen mode
|
||||||
, ((modm .|. controlMask, xK_space), sendMessage (Toggle "Full"))
|
, ((modm .|. controlMask, xK_space), sendMessage (Toggle "Full"))
|
||||||
@ -257,8 +260,8 @@ myGenericKeys =
|
|||||||
-- Launch MC scratchpad
|
-- Launch MC scratchpad
|
||||||
, ((modm .|. controlMask, xK_3), namedScratchpadAction scratchpads "mc-scratch")
|
, ((modm .|. controlMask, xK_3), namedScratchpadAction scratchpads "mc-scratch")
|
||||||
|
|
||||||
-- Launch MC scratchpad
|
-- Launch ncmpcpp scratchpad
|
||||||
, ((modm .|. controlMask, xK_4), namedScratchpadAction scratchpads "pavucontrol-scratch")
|
, ((modm .|. controlMask, xK_4), namedScratchpadAction scratchpads "ncmpcpp-scratch")
|
||||||
|
|
||||||
-- Select window from dmenu and go to the workspace its on
|
-- Select window from dmenu and go to the workspace its on
|
||||||
, ((modm .|. shiftMask, xK_g), gotoMenuArgs ["-i","-nb", "#040404","-nf","#00FFFF","-sf","#ffa0ff","-sb","#000000"])
|
, ((modm .|. shiftMask, xK_g), gotoMenuArgs ["-i","-nb", "#040404","-nf","#00FFFF","-sf","#ffa0ff","-sb","#000000"])
|
||||||
@ -393,63 +396,45 @@ myManageHook = composeAll
|
|||||||
, resource =? "Steam" --> doCenterFloat
|
, resource =? "Steam" --> doCenterFloat
|
||||||
, title =? "Xnest" --> doCenterFloat
|
, title =? "Xnest" --> doCenterFloat
|
||||||
, resource =? "pavucontrol" --> doMaxFloat
|
, resource =? "pavucontrol" --> doMaxFloat
|
||||||
, resource =? "emacs-scratch" --> doMaxFloat
|
|
||||||
, resource =? "mc-scratch" --> doMaxFloat
|
|
||||||
, resource =? "qemu-system-x86_64" --> doFullFloat
|
, resource =? "qemu-system-x86_64" --> doFullFloat
|
||||||
, resource =? "hl2_linux" --> doFullFloat
|
, resource =? "Halo.exe" --> doCenterFloat
|
||||||
|
-- , resource =? "UnrealTournament.exe" --> doCenterFloat
|
||||||
|
-- , resource =? "hl2_linux" --> doFullFloat
|
||||||
, isFullscreen --> (doF W.focusDown <+> doFullFloat)
|
, isFullscreen --> (doF W.focusDown <+> doFullFloat)
|
||||||
, resourceIsOneOf ["emacs","gvim"] --> ask >>= (liftX . flip setOpacity (13/16)) >> idHook
|
, resourceIsOneOf ["emacs","gvim"] --> ask >>= (liftX . flip setOpacity (13/16)) >> idHook
|
||||||
, resource =? "desktop_window" --> doIgnore ] <+> namedScratchpadManageHook scratchpads <+> manageDocks
|
, resource =? "desktop_window" --> doIgnore ] <+> namedScratchpadManageHook scratchpads <+> manageDocks
|
||||||
|
|
||||||
-- NamedScratchPad Hook
|
-- NamedScratchPad Hook
|
||||||
scratchpads = [ NS "emacs-scratch" spawnEmacsScratch findEmacsScratch manageEmacsScratch
|
scratchpads = [ NS "emacs-scratch" spawnEmacsScratch findEmacsScratch manageEmacsScratch
|
||||||
, NS "maintenance-terminal" spawnMaintenanceTerminal findMaintenanceTerminal manageMaintenanceTerminal
|
, NS "maintenance-terminal" spawnMaintenanceTerminal findMaintenanceTerminal manageMaintenanceTerminal
|
||||||
, NS "screen-terminal" spawnScreenTerminal findScreenTerminal manageScreenTerminal
|
, NS "screen-terminal" spawnScreenTerminal findScreenTerminal manageScreenTerminal
|
||||||
, NS "mc-scratch" spawnMcScratch findMcScratch manageMcScratch
|
, NS "mc-scratch" spawnMcScratch findMcScratch manageMcScratch
|
||||||
, NS "pavucontrol-scratch" spawnPavucontrolScratch findPavucontrolScratch managePavucontrolScratch]
|
, NS "ncmpcpp-scratch" spawnNcmpcppScratch findNcmpcppScratch manageNcmpcppScratch]
|
||||||
where
|
where
|
||||||
findEmacsScratch = resource =? "emacs-scratch"
|
findEmacsScratch = resource =? "emacs-scratch"
|
||||||
findMaintenanceTerminal = resource =? "scratchpad"
|
findMaintenanceTerminal = resource =? "scratchpad"
|
||||||
findScreenTerminal = resource =? "screen-scratch"
|
findScreenTerminal = resource =? "screen-scratch"
|
||||||
findMcScratch = resource =? "mc-scratch"
|
findMcScratch = resource =? "mc-scratch"
|
||||||
findPavucontrolScratch = resource =? "pavucontrol"
|
findNcmpcppScratch = resource =? "ncmpcpp-scratch"
|
||||||
|
|
||||||
spawnEmacsScratch = myTerminal ++ " -name emacs-scratch +tr -pe -tabbedex -e emacsclient -nw"
|
spawnEmacsScratch = myTerminal ++ " -name emacs-scratch +tr -pe -tabbedex -e emacsclient -nw"
|
||||||
spawnMaintenanceTerminal = myTerminal ++ " -name scratchpad"
|
spawnMaintenanceTerminal = myTerminal ++ " -name scratchpad"
|
||||||
spawnScreenTerminal = myTerminal ++ " -name screen-scratch -bg black"
|
spawnScreenTerminal = myTerminal ++ " -name screen-scratch -bg black"
|
||||||
spawnMcScratch = myTerminal ++ " -name mc-scratch +tr -pe -tabbedex -e mc"
|
spawnMcScratch = myTerminal ++ " -name mc-scratch +tr -pe -tabbedex -e mc"
|
||||||
spawnPavucontrolScratch = "pavucontrol"
|
spawnNcmpcppScratch = myTerminal ++ " -name ncmpcpp-scratch +tr -pe -tabbedex -e ncmpcpp"
|
||||||
|
|
||||||
manageEmacsScratch = customFloating $ W.RationalRect l t w h
|
manageEmacsScratch = customFloating $ W.RationalRect 0.10 0.10 0.80 0.80
|
||||||
where
|
manageMaintenanceTerminal = customFloating $ W.RationalRect 0 0.66 1 0.34
|
||||||
h = 0.65 -- terminal height (%)
|
manageScreenTerminal = customFloating $ W.RationalRect 0 0.015 1 0.985
|
||||||
w = 0.55 -- terminal width (%)
|
manageMcScratch = customFloating $ W.RationalRect 0.20 0.15 0.60 0.70
|
||||||
t = 1 - h -- distance from top edge (%)
|
manageNcmpcppScratch = customFloating $ W.RationalRect 0.225 0.10 0.55 0.80
|
||||||
l = 1 - w -- distance from left edge (%)
|
|
||||||
manageMaintenanceTerminal = customFloating $ W.RationalRect l t w h
|
-- manageScreenTerminal = customFloating $ W.RationalRect l t w h
|
||||||
where
|
-- where
|
||||||
h = 0.33 -- terminal height (%)
|
-- h = 1 -- terminal height (%)
|
||||||
w = 1 -- terminal width (%)
|
-- w = 1 -- terminal width (%)
|
||||||
t = 1 - h -- distance from top edge (%)
|
-- t = 1 - h -- distance from top edge (%)
|
||||||
l = 1 - w -- distance from left edge (%)
|
-- l = 1 - w -- distance from left edge (%)
|
||||||
manageScreenTerminal = customFloating $ W.RationalRect l t w h
|
|
||||||
where
|
|
||||||
h = 0.98 -- terminal height (%)
|
|
||||||
w = 1 -- terminal width (%)
|
|
||||||
t = 1 - h -- distance from top edge (%)
|
|
||||||
l = 1 - w -- distance from left edge (%)
|
|
||||||
manageMcScratch = customFloating $ W.RationalRect l t w h
|
|
||||||
where
|
|
||||||
h = 0.65 -- terminal height (%)
|
|
||||||
w = 0.55 -- terminal width (%)
|
|
||||||
t = 1 - h -- distance from top edge (%)
|
|
||||||
l = 1 - w -- distance from left edge (%)
|
|
||||||
managePavucontrolScratch = customFloating $ W.RationalRect l t w h
|
|
||||||
where
|
|
||||||
h = 0.80 -- terminal height (%)
|
|
||||||
w = 0.55 -- terminal width (%)
|
|
||||||
t = 1 - h -- distance from top edge (%)
|
|
||||||
l = 1 - w -- distance from left edge (%)
|
|
||||||
|
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
-- Event handling
|
-- Event handling
|
||||||
|
24
.zshrc
24
.zshrc
@ -20,11 +20,17 @@ bindkey -e
|
|||||||
# Check for an interactive session
|
# Check for an interactive session
|
||||||
[ -z "$PS1" ] && return
|
[ -z "$PS1" ] && return
|
||||||
|
|
||||||
# A small helper function to disable unclutter before running a command
|
# A function that given a unit (run under the systemd user instance) and a command runs the command while temporarily suspending the given unit (service)
|
||||||
function disable_unclutter_run() {
|
function disable_unit_run() {
|
||||||
systemctl --user stop unclutter
|
unit="$1"
|
||||||
eval "$*"
|
shift
|
||||||
systemctl --user start unclutter
|
if [ "$(systemctl --user is-enabled $unit)" = "enabled" ]; then
|
||||||
|
systemctl --user disable "$unit" >> /dev/null
|
||||||
|
eval "$*"
|
||||||
|
systemctl --user enable "$unit" >> /dev/null
|
||||||
|
else
|
||||||
|
eval "$*"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Alias' to make command output prettier (use color with some commands by default)
|
# Alias' to make command output prettier (use color with some commands by default)
|
||||||
@ -33,15 +39,15 @@ alias grep='grep --color=auto'
|
|||||||
alias fgrep='fgrep --color-auto'
|
alias fgrep='fgrep --color-auto'
|
||||||
alias egrep='egrep --color-auto'
|
alias egrep='egrep --color-auto'
|
||||||
alias ncmpc='ncmpc -c'
|
alias ncmpc='ncmpc -c'
|
||||||
alias pacman='pacman-color'
|
alias spacman='sudo pacman'
|
||||||
alias spacman='sudo pacman-color'
|
|
||||||
|
|
||||||
# Alias' to make some commands a little less terse
|
# Alias' to make some commands a little less terse
|
||||||
alias skreen='screen -c /dev/null'
|
alias skreen='screen -c /dev/null'
|
||||||
alias tranr='transmission-remote'
|
alias tranr='transmission-remote'
|
||||||
|
alias ctl='systemctl'
|
||||||
alias ctlu='systemctl --user'
|
alias ctlu='systemctl --user'
|
||||||
alias sctl='sudo systemctl'
|
alias sctl='sudo systemctl'
|
||||||
alias qemu='disable_unclutter_run qemu-system-x86_64 -enable-kvm'
|
alias qemu='disable_unit_run unclutter qemu-system-x86_64 -enable-kvm'
|
||||||
alias s='sudo'
|
alias s='sudo'
|
||||||
|
|
||||||
# Shortcuts for port-knocking on rekahsoft-mini *DEPRECIATED*
|
# Shortcuts for port-knocking on rekahsoft-mini *DEPRECIATED*
|
||||||
@ -74,7 +80,7 @@ stty stop undef
|
|||||||
# * mathematica / tools
|
# * mathematica / tools
|
||||||
# * nxclient / associated tools
|
# * nxclient / associated tools
|
||||||
# * maven tools
|
# * maven tools
|
||||||
export PATH=${PATH}:/usr/local/bin:/opt/maven/bin:/opt/NX/bin:/home/collin/.cabal/bin:/home/collin/.bin
|
export PATH=${PATH}:/opt/maven/bin:/opt/NX/bin:$HOME/.cabal/bin:$HOME/.gem/ruby/2.0.0/bin:$HOME/.bin
|
||||||
|
|
||||||
# start keychain
|
# start keychain
|
||||||
eval `keychain --eval --timeout 10 --quiet --agents ssh id_rsa`
|
eval `keychain --eval --timeout 10 --quiet --agents ssh id_rsa`
|
||||||
|
Reference in New Issue
Block a user