Merged missed files (due to not being hard linked)

When creating new files that will become part of this repo, if there are
created in ~/ and the copied to ~/.rkd-conf there will not be a hard
link and the files will become out of sync. Either manually hardlinking
them or running the link-conf.sh helper program (located elsewhere
currently).

Emacs configuration at .emacs occasionally falls out of sync
somehow (the hardlink is removed). This needs to be investigated but
happens quite rarely.

Signed-off-by: Collin J. Doering <rekahsoft@gmail.com>
This commit is contained in:
Collin J. Doering 2014-04-03 19:28:16 -04:00 committed by Collin J. Doering
parent b87306c354
commit a4e9141ecb
2 changed files with 107 additions and 36 deletions

View File

@ -0,0 +1,14 @@
[Unit]
Description=Start tmux in detached session
[Service]
Type=oneshot
RemainAfterExit=yes
KillMode=none
User=%I
WorkingDirectory=%h
ExecStart=/usr/bin/tmux -s %h -d
ExecStop=/usr/bin/tmux kill-session -t %h
[Install]
WantedBy=multi-user.target

129
.emacs
View File

@ -55,9 +55,15 @@
;; Turn off indentation (use spaces instead) ;; Turn off indentation (use spaces instead)
(setq-default indent-tabs-mode nil) (setq-default indent-tabs-mode nil)
;; Turn on electric-indent-mode
(electric-indent-mode 1)
;; Show column number in status bar ;; Show column number in status bar
(column-number-mode) (column-number-mode)
;; Set the fill-column for text filling
(setq fill-column 95)
;; 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)
@ -129,15 +135,12 @@
;; On the creation of each frame checks whether it is a XWindow and if so sets ;; On the creation of each frame checks whether it is a XWindow and if so sets
;; the background to black and the foreground to WhiteSmoke ;; the background to black and the foreground to WhiteSmoke
(add-hook 'after-make-frame-functions ;; (add-hook 'after-make-frame-functions
(lambda (frames) ;; (lambda (frames)
(select-frame frame) ;; (select-frame frame)
(if window-system (progn ;; (if window-system (progn
(set-background-color "black") ;; (set-background-color "black")
(set-foreground-color "WhiteSmoke"))))) ;; (set-foreground-color "WhiteSmoke")))))
;; Set the default font (12 pixels tall)
(set-default-font "Terminus-12")
;; 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")
@ -149,6 +152,9 @@
(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)
;; Setup ido-mode
(ido-mode t)
;; Require ibuffer extentions (used for ibuffer-never-show-predicates) ;; Require ibuffer extentions (used for ibuffer-never-show-predicates)
(require 'ibuf-ext) ;; Built-in (require 'ibuf-ext) ;; Built-in
(add-to-list 'ibuffer-never-show-predicates "^\\*slime-events\\*$") (add-to-list 'ibuffer-never-show-predicates "^\\*slime-events\\*$")
@ -175,6 +181,7 @@
(name . "^\\.gnus") (name . "^\\.gnus")
(name . "^\\.xmobarrc") (name . "^\\.xmobarrc")
(name . "^\\.Xdefaults") (name . "^\\.Xdefaults")
(name . "^\\.Xresources")
(name . "^\\.screenrc") (name . "^\\.screenrc")
(name . "^\\.xbindkeysrc") (name . "^\\.xbindkeysrc")
(name . "^\\.racketrc") (name . "^\\.racketrc")
@ -202,7 +209,11 @@
(mode . php-mode) (mode . php-mode)
(mode . xml-mode) (mode . xml-mode)
(mode . html-mode) (mode . html-mode)
(mode . js-mode))) (mode . css-mode)
(mode . haml-mode)
(mode . sass-mode)
(mode . scss-mode)
(mode . js-mode)))
("REPL" (or ("REPL" (or
(mode . geiser-mode) (mode . geiser-mode)
(mode . slime-repl-mode) (mode . slime-repl-mode)
@ -233,9 +244,6 @@
(name . "^\\*Backtrace\\*$") (name . "^\\*Backtrace\\*$")
(mode . package-menu-mode) (mode . package-menu-mode)
(mode . compilation-mode))) (mode . compilation-mode)))
("weechat" (or
(name . "^\\*weechat.*\\*$")
(mode . weechat-mode)))
("org" (or ("org" (or
(mode . org-mode) (mode . org-mode)
(name . "^\\.org$") (name . "^\\.org$")
@ -363,6 +371,24 @@
org-src-fontify-natively t org-src-fontify-natively t
org-enforce-todo-dependencies t) org-enforce-todo-dependencies t)
;; Enable org-mode capture
(setq org-default-notes-file "~/.org/notes.org") ;; (concat org-directory "/notes.org"))
(define-key global-map "\C-cc" 'org-capture)
(setq org-capture-templates
'(("t" "General Todo" entry
(file+olp "~/.org/notes.org" "Notes" "Tasks" "General")
"* TODO %?\n %i\n" :kill-buffer)
("f" "Todo in current file" entry
(file+olp "~/.org/notes.org" "Notes" "Tasks" "Per-File")
"* TODO %? %i\n See: %a")
("r" "Remember something" entry
(file+olp "~/.org/notes.org" "Notes" "Things to Remember")
"* %?" :kill-buffer)
("j" "Journal" entry
(file+datetree "~/.org/notes.org")
"* %?\nEntered on %U\n %i\n %a" :kill-buffer)))
;; 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
'org-babel-load-languages 'org-babel-load-languages
@ -406,9 +432,6 @@
;; (setq py-python-command "/usr/bin/ipython") ;; (setq py-python-command "/usr/bin/ipython")
(require 'ipython) ;; ELPA (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 ;; Setup emacs-lua-mode
(setq auto-mode-alist (cons '("\.lua$" . lua-mode) auto-mode-alist)) ;; ELPA (setq auto-mode-alist (cons '("\.lua$" . lua-mode) auto-mode-alist)) ;; ELPA
(autoload 'lua-mode "lua-mode" "Lua editing mode." t) (autoload 'lua-mode "lua-mode" "Lua editing mode." t)
@ -450,6 +473,7 @@
;; Setup rainbow-delimiters *BROKEN* ;; Setup rainbow-delimiters *BROKEN*
(require 'rainbow-delimiters) ;; ELPA (require 'rainbow-delimiters) ;; ELPA
(add-hook 'prog-mode-hook 'rainbow-delimiters-mode)
;;(activate-mode-with-hooks (lambda () (with-current-buffer buf (rainbow-delimiters-mode))) lispy-langs-hooks) ;;(activate-mode-with-hooks (lambda () (with-current-buffer buf (rainbow-delimiters-mode))) lispy-langs-hooks)
;; Setup rainbow-mode ;; ELPA ;; Setup rainbow-mode ;; ELPA
@ -518,10 +542,15 @@
;;(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")
(ac-config-default) (ac-config-default)
;; Set trigger keys so yasnippet and auto-complete play nicely. If tab is pressed and the word at point exists
;; in yasnippet, then yassippet will be used; otherwise auto-complete will be used.
(ac-set-trigger-key "TAB")
(ac-set-trigger-key "<tab>")
;; Setup yasnippet-mode (not yasnippet-bundle) ;; Setup yasnippet-mode (not yasnippet-bundle)
(require 'yasnippet) ;; ELPA (require 'yasnippet) ;; ELPA
;;(yas/initialize) (yas/load-directory "~/.emacs.d/elpa/yasnippet-20140106.1009")
(yas/load-directory "~/.emacs.d/elpa/yasnippet-20131026.1440/snippets") (yas-global-mode 1)
;; Enable flyspell-mode ;; Enable flyspell-mode
(ac-flyspell-workaround) (ac-flyspell-workaround)
@ -558,7 +587,12 @@
("\\.scala$" . ["scala-template.scala" auto-update-generic-template]) ("\\.scala$" . ["scala-template.scala" auto-update-generic-template])
("\\.htm\\|html$" . ["html-template.html" auto-update-generic-template]) ("\\.htm\\|html$" . ["html-template.html" auto-update-generic-template])
("\\.js$" . ["java-script-template.js" auto-update-generic-template]) ("\\.js$" . ["java-script-template.js" auto-update-generic-template])
("\\.css$" . ["css-template.css" auto-update-generic-template]))) ("\\.css$" . ["css-template.css" auto-update-generic-template])
("\\.scss$" . ["scss-template.scss" auto-update-generic-template])
("\\.sass$" . ["sass-template.sass" auto-update-generic-template])
("\\.haml$" . ["haml-template.haml" auto-update-generic-template])
("\\.markdown$" . ["markdown-template.markdown" auto-update-generic-template])
("\\.latex$" . ["latex-template.latex" auto-update-generic-template])))
(setq auto-insert 'other) (setq auto-insert 'other)
(defun auto-update-generic-template () (defun auto-update-generic-template ()
@ -661,20 +695,49 @@
(select-window first-win) (select-window first-win)
(if this-win-2nd (other-window 1)))))) (if this-win-2nd (other-window 1))))))
;; Assign keybinding to toggle split orientation of 2 adjacent windows ;; TODO: Modify the below function to accept the universal argument.
;; Specifically an integer argument (n) where:
;; - if negative denotes backwards rotation repeated |n| times
;; - if positive denotes forwards rotation repeated n times
;; - otherwise, no numerical value is given for the universal argument; ignore.
;; Rotates windows
;; Thanks to http://www.emacswiki.org/emacs/TransposeWindows
(defun rotate-windows ()
"Rotate your windows"
(interactive)
(cond
((not (> (count-windows) 1))
(message "You can't rotate a single window!"))
(t
(let ((i 0)
(num-windows (count-windows)))
(while (< i (- num-windows 1))
(let* ((w1 (elt (window-list) i))
(w2 (elt (window-list) (% (+ i 1) num-windows)))
(b1 (window-buffer w1))
(b2 (window-buffer w2))
(s1 (window-start w1))
(s2 (window-start w2)))
(set-window-buffer w1 b2)
(set-window-buffer w2 b1)
(set-window-start w1 s2)
(set-window-start w2 s1)
(setq i (1+ i))))))))
;; Assign keybinding to toggle split orientation of 2 adjacent windows, and to rotate windows
(define-key ctl-x-4-map "t" 'toggle-window-split) (define-key ctl-x-4-map "t" 'toggle-window-split)
(global-set-key "\C-cr" 'rotate-windows)
;; Force ediff sessions to run in the same frame ;; Force ediff sessions to run in the same frame
(setq ediff-window-setup-function 'ediff-setup-windows-plain) (setq ediff-window-setup-function 'ediff-setup-windows-plain)
;; Remove menu-bar ;; This is now done ine ~/.Xresources
;; Remove menu-bar, tool-bar, and scroll-bars
(menu-bar-mode -1) (menu-bar-mode -1)
;;(tool-bar-mode -1)
;; Remove tool-bar ;;(scroll-bar-mode -1)
(tool-bar-mode -1) ;;(set-default-font "Terminus-12")
;; Remove scroll bars
(scroll-bar-mode -1)
;; Stop startup screen ;; Stop startup screen
(setq inhibit-startup-screen t) (setq inhibit-startup-screen t)
@ -718,12 +781,6 @@ 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)
@ -741,8 +798,8 @@ consisting of lists of buffers opened by each respective FP argument."
;; If you edit it by hand, you could mess it up, so be careful. ;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance. ;; Your init file should contain only one such instance.
;; 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"]) '(coffee-tab-width 2)
'(custom-safe-themes (quote ("36a309985a0f9ed1a0c3a69625802f87dee940767c9e200b89cdebdb737e5b29" "dc8693659115ea453f849f47509b903da3801b5f1521a73fa31556a9a3558517" default))) '(custom-safe-themes (quote ("fc5fcb6f1f1c1bc01305694c59a1a861b008c534cae8d0e48e4d5e81ad718bc6" "b5aaedbcd4d81925c8b2bc21dbed6d0a5a6854b6ad745e948efd55e42b48bd04" "8aebf25556399b58091e533e455dd50a6a9cba958cc4ebb0aab175863c25b9a4" "36a309985a0f9ed1a0c3a69625802f87dee940767c9e200b89cdebdb737e5b29" "dc8693659115ea453f849f47509b903da3801b5f1521a73fa31556a9a3558517" default)))
'(fill-column 95) '(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\\|\\**\\*")
@ -760,5 +817,5 @@ consisting of lists of buffers opened by each respective FP argument."
;; If you edit it by hand, you could mess it up, so be careful. ;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance. ;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right. ;; If there is more than one, they won't work right.
'(font-lock-function-name-face ((t (:foreground "mediumspringgreen" :weight bold :height 1.0))))
'(highlight-current-line-face ((t (:background "gray10"))))) '(highlight-current-line-face ((t (:background "gray10")))))
(put 'dired-find-alternate-file 'disabled nil)