Merge remote-tracking branch 'origin/master' into phoenix

Conflicts:
	.emacs.d/site-lisp/oni.el
	.xinitrc
	.zprofile
This commit is contained in:
Tom Willemsen 2012-10-24 01:36:38 +02:00
commit d6be1ae80f
12 changed files with 532 additions and 264 deletions

160
.config/dunst/dunstrc Normal file
View file

@ -0,0 +1,160 @@
[global]
font = Monaco-12
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
format = "%s\n%b"
# Sort messages by urgency
sort = yes
# Show how many messages are currently hidden (because of geometry)
indicate_hidden = yes
# alignment of message text.
# Possible values are "left", "center" and "right"
alignment = left
# The frequency with wich text that is longer than the notification
# window allows bounces back and forth.
# This option conflicts with 'word_wrap'.
# Set to 0 to disable
bounce_freq = 0
# show age of message if message is older than show_age_threshold seconds.
# set to -1 to disable
show_age_threshold = 60;
# split long notifications into multiple lines
word_wrap = yes
# the geometry of the window
# geometry [{width}]x{height}][+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in lines everything else in pixels. If the width
# is omitted but the height is given ("-geometry x2"), the message window
# expands over the whole screen (dmenu-like). If width is 0,
# the window expands to the longest message displayed.
# A positive x is measured from the left, a negative from the
# right side of the screen. Y is measured from the top and down respectevly.
geometry = "0x3-30+20"
# The transparency of the window. range: [0; 100]
# This option will only work if a compositing windowmanager is present (e.g. xcompmgr, compiz, etc..)
transparency = 0
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
idle_threshold = 120
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a windowmanager that exports the _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern windowmanagers.
#
# If this option is set to mouse or keyboard, the monitor option will be
# ignored.
follow = none
# should a notification popped up from history be sticky or
# timeout as if it would normally do.
sticky_history = yes
# The height of a single line. If the height is smaller than the font height,
# it will get raised to the font height.
# This adds empty space above and under the text.
line_height = 0
# Draw a line of 'separatpr_height' pixel height between two notifications.
# Set to 0 to disable
separator_height = 2;
# Define a color for the separator.
# This can either be "auto" or "foreground". "Auto" tries to find a color
# that fits nicely to the background color.
separator_color = auto
[shortcuts]
# shortcuts are specified as [modifier+][modifier+]...key
# available modifiers are 'ctrl', 'mod1' (the alt-key), 'mod2', 'mod3'
# and 'mod4' (windows-key)
# xev might be helpful to find names for keys
# close notification
close = ctrl+space
# close all notifications
close_all = ctrl+shift+space
# redisplay last message(s)
# On the US keyboard layout 'grave' is normally above TAB and left of '1'.
history = ctrl+grave
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the '#' and following would be interpreted as a comment.
background = "#aaaaff"
foreground = "#000000"
timeout = 10
[urgency_normal]
background = "#1793D1"
foreground = "#DDDDDD"
timeout = 10
[urgency_critical]
background = "#ffaaaa"
foreground = "#000000"
timeout = 0
# Every section that isn't one of the above is interpreted as a rules
# to override settings for certain messages.
# Messages can be matched by 'appname', 'summary', 'body' or 'icon'
# and you can override the 'timeout', 'urgency', 'foreground', 'background'
# and 'format'.
# Shell-like globbing will get expanded.
#
# NOTE: if you don't want a notification to be displayed, set the format to ""
# NOTE: It might be helpful to run dunst -print in a terminal in order to find
# fitting options for rules.
#[ignore]
## This notification will not be displayed
# summary = "foobar"
# format = ""
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#

View file

@ -43,6 +43,22 @@
(load (expand-file-name "~/.emacs.d/site-lisp/loaddefs.el")) (load (expand-file-name "~/.emacs.d/site-lisp/loaddefs.el"))
(defalias 'yes-or-no-p 'y-or-n-p) (defalias 'yes-or-no-p 'y-or-n-p)
(defalias 'list-buffers 'ibuffer)
(defface git-commit-summary-face
'((t (:inherit org-level-1)))
"Face for the git title line."
:group 'local)
(defface git-commit-overlong-summary-face
'((t (:background "#873732")))
"Face for commit titles that are too long."
:group 'local)
(defface git-commit-nonempty-second-line-face
'((t (:inherit git-commit-overlong-summary-face)))
"Face for the supposedly empty line in commit messages."
:group 'local)
(eval-after-load "ebuff-menu" (eval-after-load "ebuff-menu"
'(define-key electric-buffer-menu-mode-map '(define-key electric-buffer-menu-mode-map
@ -93,41 +109,17 @@
(eval-after-load "jabber" (eval-after-load "jabber"
'(remove-hook 'jabber-alert-presence-hooks 'jabber-presence-echo)) '(remove-hook 'jabber-alert-presence-hooks 'jabber-presence-echo))
(eval-after-load "mu4e"
'(require 'mu4e-init))
(eval-after-load "org" (eval-after-load "org"
'(progn '(require 'org-init))
(require 'appt)
(require 'org-protocol)
(require 'org-habit)
(require 'org-contacts)
(add-to-list 'org-modules 'habit)
(org-indent-mode t)
(org-agenda-to-appt)
(ad-activate 'org-agenda-redo)))
(eval-after-load "org-crypt"
'(org-crypt-use-before-save-magic))
(eval-after-load "sauron"
'(setq sauron-modules (append '(sauron-identica sauron-jabber)
sauron-modules)))
(eval-after-load "smex" (eval-after-load "smex"
'(progn '(progn
(global-set-key (kbd "M-x") 'smex) (global-set-key (kbd "M-x") 'smex)
(global-set-key (kbd "C-M-x") 'smex-major-mode-commands))) (global-set-key (kbd "C-M-x") 'smex-major-mode-commands)))
(oni:define-mailbox "aethon"
(oni:email thomas at aethon dot nl)
(expand-file-name "~/documents/work/aethon/signature.txt"))
(oni:define-mailbox "gmail" (oni:email ryuslash at gmail dot com))
(oni:define-mailbox "ninthfloor"
(oni:email ryuslash at ninthfloor dot org))
(oni:define-mailbox "ryuslash" (oni:email tom at ryuslash dot org)
nil "ryuslash.org")
(put 'upcase-region 'disabled nil) (put 'upcase-region 'disabled nil)
(put 'downcase-region 'disabled nil) (put 'downcase-region 'disabled nil)
(put 'narrow-to-region 'disabled nil) (put 'narrow-to-region 'disabled nil)
@ -152,6 +144,7 @@
`((".*" . ,temporary-file-directory))) `((".*" . ,temporary-file-directory)))
(setq browse-url-browser-function 'browse-url-generic) (setq browse-url-browser-function 'browse-url-generic)
(setq browse-url-generic-program (getenv "BROWSER")) (setq browse-url-generic-program (getenv "BROWSER"))
(setq comment-auto-fill-only-comments t)
(setq custom-file "~/.emacs.d/custom.el") (setq custom-file "~/.emacs.d/custom.el")
(setq custom-theme-directory "~/.emacs.d/themes") (setq custom-theme-directory "~/.emacs.d/themes")
(setq default-frame-alist (setq default-frame-alist
@ -177,20 +170,46 @@
(setq flymake-gui-warnings-enabled nil) (setq flymake-gui-warnings-enabled nil)
(setq flymake-info-line-regexp (setq flymake-info-line-regexp
(eval-when-compile (eval-when-compile
(regexp-opt '("Invalid name" (regexp-opt
"Missing docstring" '("Invalid name"
"multiple imports on one line" "String statement has no effect"
"expected 2 blank lines, found 1" "Missing docstring"
"TODO:")))) "Empty docstring"
"multiple imports on one line"
"expected 2 blank lines, found 1"
"expected 2 blank lines, found 0"
"TODO:"
"whitespace after '{'"
"whitespace before '}'"
"whitespace before ':'"
"whitespace after '('"
"whitespace before ')'"
"the backslash is redundant between brackets"
"continuation line over-indented for visual indent"
"continuation line under-indented for visual indent"
"Too many statements"
"comparison to None should be"
"missing whitespace around operator"
"missing whitespace after ','"
"line too long"
"at least two spaces before inline comment"
"trailing whitespace"
"too many blank lines"))))
(setq flymake-log-file-name (expand-file-name "~/.emacs.d/flymake.log")) (setq flymake-log-file-name (expand-file-name "~/.emacs.d/flymake.log"))
(setq flymake-log-level 0) (setq flymake-log-level 0)
(setq flymake-warn-line-regexp (setq flymake-warn-line-regexp
(eval-when-compile (eval-when-compile
(regexp-opt '("warning" (regexp-opt '("warning"
"Warning" "Warning"
"String statement has no effect" "imported but unused"
"No value passed for parameter" "redefinition of unused"
"imported but unused")))) "Redefining built-in"
"Redefining name"
"Unused argument"
"Unused variable"
"Dangerous default value {} as argument"
"no newline at end of file"
"Access to a protected member"))))
(setq frame-title-format '(:eval (concat "emacs: " (buffer-name)))) (setq frame-title-format '(:eval (concat "emacs: " (buffer-name))))
(setq geiser-repl-history-filename "~/.emacs.d/geiser-history") (setq geiser-repl-history-filename "~/.emacs.d/geiser-history")
(setq gtags-auto-update t) (setq gtags-auto-update t)
@ -206,7 +225,9 @@
(setq inhibit-startup-message t) (setq inhibit-startup-message t)
(setq initial-major-mode 'emacs-lisp-mode) (setq initial-major-mode 'emacs-lisp-mode)
(setq initial-scratch-message nil) (setq initial-scratch-message nil)
(setq jabber-account-list '(("ryuslash@jabber.org"))) (setq jabber-account-list '(("ryuslash@jabber.org")
("tom@ryuslash.org"
(:connection-type . ssl))))
(setq jabber-chat-buffer-format "*jabber:%n*") (setq jabber-chat-buffer-format "*jabber:%n*")
(setq jabber-chat-buffer-show-avatar nil) (setq jabber-chat-buffer-show-avatar nil)
(setq jabber-chat-fill-long-lines nil) (setq jabber-chat-fill-long-lines nil)
@ -220,82 +241,6 @@
(setq message-log-max 1000) (setq message-log-max 1000)
(setq message-send-mail-function 'message-send-mail-with-sendmail) (setq message-send-mail-function 'message-send-mail-with-sendmail)
(setq mode-line-position nil) (setq mode-line-position nil)
(setq mu4e-headers-date-format "%d-%m %H:%M")
(setq mu4e-headers-fields '((:date . 11)
(:flags . 6)
(:to . 22)
(:from . 22)
(:subject)))
(setq mu4e-headers-show-threads nil)
(setq mu4e-headers-sort-revert nil)
(setq mu4e-html2text-command "w3m -dump -T text/HTML -cols 72")
(setq mu4e-my-email-addresses (list
(oni:email tom at ryuslash dot org)
(oni:email ryuslash at gmail dot com)
(oni:email ryuslash at ninthfloor dot org)
(oni:email thomas at aethon dot nl)))
(setq org-agenda-custom-commands
'(("wt" "Work todo."
tags-todo "CATEGORY=\"Work\"")
("wm" "Myaethon2 todo."
tags-todo "CATEGORY=\"myaethon2\"")))
(setq org-agenda-sorting-strategy
'((agenda habit-down time-up priority-down category-keep)
(todo priority-down category-up)
(tags priority-down category-keep)
(search category-keep)))
(setq org-capture-templates
'(("t" "Task" entry (file "~/documents/org/tasks")
"* TODO %?")
("h" "Habit" entry (file "")
(concat "* TODO %^{Description}\n"
" SCHEDULED: %^T\n"
" :PROPERTIES:\n"
" :STYLE: habit\n"
" :END:")
:immediate-finish t)
("l" "Log" entry (file+headline "" "notes")
(concat "* %n %<%d-%m-%Y %H:%M:%S>\n"
" %a\n\n"
" %?")
:prepend t :empty-lines 1)
("a" "Appointment" entry (file+headline "" "appointments")
"* %^{Description} %^T" :immediate-finish t)
("b" "Bookmark" entry (file "~/documents/org/misc/bookmarks.org")
"* %c\n\n %:initial")))
(setq org-contacts-files '("~/documents/org/misc/contacts.org"))
(setq org-directory (expand-file-name "~/documents/org"))
(setq org-agenda-files
`(,(concat org-directory "/org")
,(concat org-directory "/misc/contacts.org")
,(concat org-directory "/misc/bookmarks.org")))
(setq org-default-notes-file (concat org-directory "/org"))
(setq org-export-htmlize-output-type 'css)
(setq org-feed-alist
'(("MyEpisodes"
"http://www.myepisodes.com/rss.php?feed=mylist&uid=Slash&pwdmd5=04028968e1f0b7ee678b748a4320ac17"
"~/documents/org/tasks" "MyEpisodes"
:formatter oni:myepisodes-formatter)))
(setq org-hide-emphasis-markers t)
(setq org-outline-path-complete-in-steps t)
(setq org-refile-allow-creating-parent-nodes t)
(setq org-refile-targets '((nil . (:maxlevel . 6))))
(setq org-refile-use-outline-path 'file)
(setq org-return-follows-link t)
(setq org-src-fontify-natively t)
(setq org-tags-exclude-from-inheritance '("crypt"))
(setq org-todo-keyword-faces
'(("TODO" :background "red")
("DONE" :background "forest green")
("SUCCEEDED" :background "forest green")
("WAITING" :background "orange" :foreground "black")
("CANCELLED" :background "orange red")
("FAILED" :background "orange red")
("WIP" :background "#ff9800" :foreground "black")
("HOLD" :background "orange" :foreground "black")
("ACQUIRE" :background "red")
("IGNORED" :background "#555555")))
(setq org-use-fast-todo-selection t)
(setq package-archives (setq package-archives
'(("melpa" . "http://melpa.milkbox.net/packages/") '(("melpa" . "http://melpa.milkbox.net/packages/")
("ELPA" . "http://tromey.com/elpa/") ("ELPA" . "http://tromey.com/elpa/")
@ -310,21 +255,11 @@
(setq pony-tpl-indent-moves t) (setq pony-tpl-indent-moves t)
(setq rainbow-delimiters-max-face-count 12) (setq rainbow-delimiters-max-face-count 12)
(setq redisplay-dont-pause t) (setq redisplay-dont-pause t)
(setq sauron-column-alist '((timestamp . 6)
(message)))
(setq sauron-hide-mode-line t)
(setq sauron-max-line-length 189)
(setq sauron-timestamp-format "%H:%M")
(setq sauron-watch-nicks '("ryuslash"))
(setq sauron-watch-patterns '("ryuslash"))
(setq scroll-conservatively 101) (setq scroll-conservatively 101)
(setq send-mail-function 'smtpmail-send-it) (setq send-mail-function 'smtpmail-send-it)
(setq sendmail-program "/usr/bin/msmtp") (setq sendmail-program "/usr/bin/msmtp")
(setq smex-key-advice-ignore-menu-bar t) (setq smex-key-advice-ignore-menu-bar t)
(setq smex-save-file "~/.emacs.d/smex-items") (setq smex-save-file "~/.emacs.d/smex-items")
(setq special-display-buffer-names '("*Sauron*"))
(setq special-display-frame-alist '((minibuffer . nil)
(right-fringe . 0)))
(setq split-height-threshold 40) (setq split-height-threshold 40)
(setq time-stamp-active t) (setq time-stamp-active t)
(setq time-stamp-format "%04y-%02m-%02d %02H:%02M:%02S (%u)") (setq time-stamp-format "%04y-%02m-%02d %02H:%02M:%02S (%u)")
@ -378,8 +313,8 @@
(global-set-key (kbd "<f6>") 'jabber-switch-to-roster-buffer) (global-set-key (kbd "<f6>") 'jabber-switch-to-roster-buffer)
(global-set-key (kbd "<f7>") 'magit-status) (global-set-key (kbd "<f7>") 'magit-status)
(global-set-key (kbd "<f8>") 'oni:raise-eshell) (global-set-key (kbd "<f8>") 'oni:raise-eshell)
(global-set-key (kbd "C-<") 'indent-shift-left) (global-set-key (kbd "C-<") 'oni:indent-shift-left)
(global-set-key (kbd "C->") 'indent-shift-right) (global-set-key (kbd "C->") 'oni:indent-shift-right)
(global-set-key (kbd "C-M-4") 'split-window-vertically) (global-set-key (kbd "C-M-4") 'split-window-vertically)
(global-set-key (kbd "C-M-SPC") 'er/expand-region) (global-set-key (kbd "C-M-SPC") 'er/expand-region)
(global-set-key (kbd "C-M-d") 'kill-word) (global-set-key (kbd "C-M-d") 'kill-word)
@ -395,15 +330,12 @@
(global-set-key (kbd "C-e") 'oni:move-end-of-dwim) (global-set-key (kbd "C-e") 'oni:move-end-of-dwim)
(global-set-key (kbd "C-k") 'oni:kill-region-or-line) (global-set-key (kbd "C-k") 'oni:kill-region-or-line)
(global-set-key (kbd "C-w") 'oni:kill-region-or-backward-char) (global-set-key (kbd "C-w") 'oni:kill-region-or-backward-char)
(global-set-key (kbd "C-x C-b") 'electric-buffer-list)
(global-set-key (kbd "M-4") 'split-window-horizontally) (global-set-key (kbd "M-4") 'split-window-horizontally)
(global-set-key (kbd "M-n") 'idomenu) (global-set-key (kbd "M-n") 'idomenu)
(global-set-key (kbd "\"") 'oni:self-insert-dwim) (global-set-key (kbd "\"") 'oni:self-insert-dwim)
(if (daemonp) (if (daemonp)
(global-set-key "\C-x\C-c" 'oni:close-client-window) (global-set-key "\C-x\C-c" 'oni:close-client-window))
(unless (server-running-p)
(server-start)))
(when (or window-system (daemonp)) (when (or window-system (daemonp))
(global-unset-key "\C-z")) (global-unset-key "\C-z"))
@ -462,11 +394,15 @@
(smex-initialize) (smex-initialize)
(help-at-pt-set-timer) (help-at-pt-set-timer)
(load-theme 'new t) (load-theme 'yoshi t)
(load custom-file) (load custom-file)
(load "rudel-loaddefs.el") (load "rudel-loaddefs.el")
(unless (server-running-p)
(server-start)
(load "wm-init"))
(provide 'init) (provide 'init)
;;; init.el ends here ;;; init.el ends here

View file

@ -0,0 +1,54 @@
;;; mu4e-init.el --- mu4e initialization
;; Copyright (C) 2012 Tom Willemsen
;; Author: Tom Willemsen <slash@drd>
;; Keywords:
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;;
;;; Code:
(require 'oni)
(oni:define-mailbox "aethon"
(oni:email thomas at aethon dot nl)
(expand-file-name "~/documents/work/aethon/signature.txt"))
(oni:define-mailbox "gmail" (oni:email ryuslash at gmail dot com))
(oni:define-mailbox "ninthfloor"
(oni:email ryuslash at ninthfloor dot org))
(oni:define-mailbox "ryuslash" (oni:email tom at ryuslash dot org)
nil "ryuslash.org")
(setq mu4e-headers-date-format "%d-%m %H:%M")
(setq mu4e-headers-fields '((:date . 11)
(:flags . 6)
(:to . 22)
(:from . 22)
(:subject)))
(setq mu4e-headers-show-threads nil)
(setq mu4e-headers-sort-revert nil)
(setq mu4e-html2text-command "w3m -dump -T text/HTML -cols 72")
(setq mu4e-my-email-addresses (list
(oni:email tom at ryuslash dot org)
(oni:email ryuslash at gmail dot com)
(oni:email ryuslash at ninthfloor dot org)
(oni:email thomas at aethon dot nl)))
(provide 'mu4e-init)
;;; mu4e-init.el ends here

View file

@ -361,7 +361,8 @@ PLIST contains all the pertinent information."
(episode (match-string 2 str)) (episode (match-string 2 str))
(name (match-string 3 str)) (name (match-string 3 str))
(date (oni:mini-fix-timestamp-string (match-string 4 str)))) (date (oni:mini-fix-timestamp-string (match-string 4 str))))
(format "* ACQUIRE %s %s - %s <%s>" title episode name date)))) (format "* ACQUIRE %s %s - %s \n SCHEDULED: <%s>"
title episode name date))))
(defun oni:newline-and-indent () (defun oni:newline-and-indent ()
"`newline-and-indent', but with a twist. "`newline-and-indent', but with a twist.
@ -393,7 +394,8 @@ When dealing with braces, add another line and indent that too."
"Function for `prog-mode-hook'." "Function for `prog-mode-hook'."
(rainbow-delimiters-mode) (rainbow-delimiters-mode)
(fci-mode) (fci-mode)
(pretty-symbols-mode)) (pretty-symbols-mode)
(auto-fill-mode))
(defun oni:python-mode-func () (defun oni:python-mode-func ()
"Function for `python-mode-hook'." "Function for `python-mode-hook'."

View file

@ -0,0 +1,113 @@
;;; org-init.el --- Org initialization
;; Copyright (C) 2012 Tom Willemsen
;; Author: Tom Willemsen <slash@drd>
;; Keywords:
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;;
;;; Code:
(require 'appt)
(require 'oni)
(require 'org-contacts)
(require 'org-habit)
(require 'org-protocol)
(eval-after-load "org-crypt"
'(org-crypt-use-before-save-magic))
(setq org-agenda-custom-commands
'(("wt" "Work todo."
tags-todo "CATEGORY=\"Work\"")
("wm" "Myaethon2 todo."
tags-todo "CATEGORY=\"myaethon2\"")))
(setq org-agenda-sorting-strategy
'((agenda habit-down time-up priority-down category-keep)
(todo priority-down tag-up category-up)
(tags priority-down category-keep)
(search category-keep)))
(setq org-agenda-tags-column -101)
(setq org-capture-templates
'(("t" "Task" entry (file "~/documents/org/tasks")
"* TODO %?")
("h" "Habit" entry (file "")
(concat "* TODO %^{Description}\n"
" SCHEDULED: %^T\n"
" :PROPERTIES:\n"
" :STYLE: habit\n"
" :END:")
:immediate-finish t)
("l" "Log" entry (file+headline "" "notes")
(concat "* %n %<%d-%m-%Y %H:%M:%S>\n"
" %a\n\n"
" %?")
:prepend t :empty-lines 1)
("a" "Appointment" entry (file+headline "" "appointments")
"* %^{Description} %^T" :immediate-finish t)
("b" "Bookmark" entry (file "~/documents/org/misc/bookmarks.org")
"* %c\n\n %:initial")))
(setq org-contacts-files '("~/documents/org/misc/contacts.org"))
(setq org-directory (expand-file-name "~/documents/org"))
(setq org-agenda-files
(append
`(,(concat org-directory "/tasks")
,(concat org-directory "/misc/contacts.org")
,(concat org-directory "/misc/bookmarks.org"))
org-agenda-files))
(setq org-agenda-todo-ignore-deadlines 'far)
(setq org-agenda-todo-ignore-scheduled t)
(setq org-default-notes-file (concat org-directory "/org"))
(setq org-export-htmlize-output-type 'css)
(setq org-feed-alist
'(("MyEpisodes"
"http://www.myepisodes.com/rss.php?feed=mylist&uid=Slash&pwdmd5=04028968e1f0b7ee678b748a4320ac17"
"~/documents/org/tasks" "MyEpisodes"
:formatter oni:myepisodes-formatter)))
(setq org-hide-emphasis-markers t)
(setq org-outline-path-complete-in-steps t)
(setq org-refile-allow-creating-parent-nodes t)
(setq org-refile-targets '((nil . (:maxlevel . 6))))
(setq org-refile-use-outline-path 'file)
(setq org-return-follows-link t)
(setq org-src-fontify-natively t)
(setq org-tags-column -101)
(setq org-tags-exclude-from-inheritance '("crypt"))
(setq org-todo-keyword-faces
'(("TODO" :background "red")
("DONE" :background "forest green")
("SUCCEEDED" :background "forest green")
("WAITING" :background "orange" :foreground "black")
("CANCELLED" :background "orange red")
("FAILED" :background "orange red")
("WIP" :background "#ff9800" :foreground "black")
("HOLD" :background "orange" :foreground "black")
("ACQUIRE" :background "red")
("IGNORED" :background "#555555")))
(setq org-use-fast-todo-selection t)
(add-to-list 'org-modules 'habit)
(org-indent-mode t)
(org-agenda-to-appt)
(ad-activate 'org-agenda-redo)
(provide 'org-init)
;;; org-init.el ends here

View file

@ -0,0 +1,3 @@
(async-shell-command "herbstluftwm" " herbstluftwm")
(async-shell-command "dunst" " dunst")
(async-shell-command "xbindkeys -n" " xbindkeys")

View file

@ -1,4 +1,4 @@
;;; new-theme.el --- My new theme ;;; yoshi-theme.el --- Theme named after my cat
;; Copyright (C) 2012 Tom Willemsen ;; Copyright (C) 2012 Tom Willemsen
@ -20,15 +20,16 @@
;;; Commentary: ;;; Commentary:
;; Just a new theme. ;; Just a theme named after my cat. He doesn't actually look like
;; this.
;;; Code: ;;; Code:
(deftheme new (deftheme yoshi
"Created 2012-09-24") "Created 2012-09-24")
(custom-theme-set-faces (custom-theme-set-faces
'new 'yoshi
'(default ((t (:background "#111113" :foreground "#eeeeec")))) '(default ((t (:background "#111113" :foreground "#eeeeec"))))
'(flymake-errline ((t (:background nil :underline (:color "#d16979" :style wave))))) '(flymake-errline ((t (:background nil :underline (:color "#d16979" :style wave)))))
'(flymake-infoline ((t (:background nil :underline (:color "#4da5d1" :style wave))))) '(flymake-infoline ((t (:background nil :underline (:color "#4da5d1" :style wave)))))
@ -43,9 +44,9 @@
'(font-lock-type-face ((t (:foreground "#78a2c1" :bold t)))) '(font-lock-type-face ((t (:foreground "#78a2c1" :bold t))))
'(font-lock-variable-name-face ((t (:foreground "#c39cc3")))) '(font-lock-variable-name-face ((t (:foreground "#c39cc3"))))
'(highlight ((t (:background "#171719")))) '(highlight ((t (:background "#171719"))))
'(ido-subdir ((t (:foreground "#ff5d55")))) '(ido-subdir ((t (:foreground "#ff756e"))))
'(italic ((t (:slant italic)))) '(italic ((t (:slant italic))))
'(jabber-chat-prompt-foreign ((t (:foreground "#ff5d55")))) '(jabber-chat-prompt-foreign ((t (:foreground "#ff756e"))))
'(jabber-chat-prompt-local ((t (:foreground "#78a2c1")))) '(jabber-chat-prompt-local ((t (:foreground "#78a2c1"))))
'(jabber-roster-user-online ((t (:foreground "#769ff2")))) '(jabber-roster-user-online ((t (:foreground "#769ff2"))))
'(link ((t (:foreground "#ffbb56" :underline t)))) '(link ((t (:foreground "#ffbb56" :underline t))))
@ -53,14 +54,14 @@
'(minibuffer-prompt ((t (:foreground "#78a2c1")))) '(minibuffer-prompt ((t (:foreground "#78a2c1"))))
'(mode-line ((t (:background "#222224" :foreground "#eeeeec" :box nil)))) '(mode-line ((t (:background "#222224" :foreground "#eeeeec" :box nil))))
'(mode-line-inactive ((t (:background "#171719" :foreground "#999999" :box nil)))) '(mode-line-inactive ((t (:background "#171719" :foreground "#999999" :box nil))))
'(org-level-1 ((t (:height 1.5)))) '(org-level-1 ((t (:height 1.5 :foreground "#78a2c1"))))
'(org-level-2 ((t (:height 1.4)))) '(org-level-2 ((t (:height 1.4 :foreground "#93d8d8"))))
'(org-level-3 ((t (:height 1.3)))) '(org-level-3 ((t (:height 1.3 :foreground "#9ad870"))))
'(org-level-4 ((t (:height 1.2)))) '(org-level-4 ((t (:height 1.2 :foreground "#c39cc3"))))
'(org-level-5 ((t (:height 1.1)))) '(org-level-5 ((t (:height 1.1 :foreground "#ff756e"))))
'(org-level-6 ((t (:height 1.0)))) '(org-level-6 ((t (:height 1.0 :foreground "#a9a9a9"))))
'(org-level-7 ((t (:height 1.0)))) '(org-level-7 ((t (:height 1.0 :foreground "#ffbb56"))))
'(org-level-8 ((t (:height 1.0)))) '(org-level-8 ((t (:height 1.0 :foreground "#999999"))))
'(region ((t (:background "#2729b6")))) '(region ((t (:background "#2729b6"))))
'(rst-level-1 ((t (:height 1.5 :background nil)))) '(rst-level-1 ((t (:height 1.5 :background nil))))
'(rst-level-2 ((t (:height 1.4 :background nil)))) '(rst-level-2 ((t (:height 1.4 :background nil))))
@ -68,7 +69,15 @@
'(rst-level-4 ((t (:height 1.2 :background nil)))) '(rst-level-4 ((t (:height 1.2 :background nil))))
'(rst-level-5 ((t (:height 1.1 :background nil)))) '(rst-level-5 ((t (:height 1.1 :background nil))))
'(rst-level-6 ((t (:height 1.0 :background nil)))) '(rst-level-6 ((t (:height 1.0 :background nil))))
'(term-color-black ((t (:background "#171719" :foreground "#999999"))))
'(term-color-blue ((t (:background "#2729b6" :foreground "#78a2c1"))))
'(term-color-cyan ((t (:background "#208181" :foreground "#93d8d8"))))
'(term-color-green ((t (:background "#405c2e" :foreground "#9ad870"))))
'(term-color-magenta ((t (:background "#5e325d" :foreground "#c39cc3"))))
'(term-color-red ((t (:background "#973732" :foreground "#ff756e"))))
'(term-color-white ((t (:background "#222224" :foreground "#a9a9a9"))))
'(term-color-yellow ((t (:background "#835c0e" :foreground "#ffbb56"))))
) )
(provide-theme 'new) (provide-theme 'yoshi)
;;; new-theme.el ends here ;;; yoshi-theme.el ends here

View file

@ -1,117 +1,110 @@
# -*- mode: conf-unix; eval: (git-auto-commit-mode 1); -*- # -*- mode: conf-unix; -*-
[general] [general]
# NOTE: cronjob calls the quiet UI with -u # NOTE: cronjob calls the quiet UI with -u
ui = TTYUI ui = TTYUI
accounts = ryuslash.org,gmail,aethon,ninthfloor accounts = ryuslash.org,gmail,aethon,ninthfloor
pythonfile = ~/.offlineimap.py pythonfile = ~/.offlineimap.py
[Account arch]
localrepository = arch-local
remoterepository = arch-remote
[Account gmail]
localrepository = gmail-local
remoterepository = gmail-remote
postsynchook = mu index --muhome=~/.mu/gmail --maildir=~/documents/mail/gmail; ~/bin/emacs-send-mail gmail
[Account iactor]
localrepository = iactor-local
remoterepository = iactor-remote
[Account aethon]
localrepository = aethon-local
remoterepository = aethon-remote
postsynchook = mu index --muhome=~/.mu/aethon --maildir=~/documents/mail/aethon; ~/bin/emacs-send-mail aethon
[Account ninthfloor]
localrepository = ninthfloor-local
remoterepository = ninthfloor-remote
postsynchook = mu index --muhome=~/.mu/ninthfloor --maildir=~/documents/mail/ninthfloor; ~/bin/emacs-send-mail ninthfloor
[Account ryuslash.org] [Account ryuslash.org]
localrepository = ryuslash.org-local localrepository = ryuslash.org-local
remoterepository = ryuslash.org-remote remoterepository = ryuslash.org-remote
postsynchook = mu index --muhome=~/.mu/ryuslash --maildir=~/documents/mail/ryuslash.org; ~/bin/emacs-send-mail ryuslash.org postsynchook = mu index --muhome=~/.mu/ryuslash --maildir=~/documents/mail/ryuslash.org; ~/usr/bin/emacs-send-mail ryuslash.org
[Repository arch-local]
type = Maildir
localfolders = ~/documents/mail/arch
[Repository gmail-local]
type = Maildir
localfolders = ~/documents/mail/gmail
nametrans = lambda folder: re.sub('^inbox$', 'INBOX', re.sub('^drafts$', '[Gmail]/Drafts', re.sub('^sent$', '[Gmail]/Sent Mail', re.sub('^trash$', '[Gmail]/Trash', folder))))
[Repository iactor-local]
type = Maildir
localfolders = ~/documents/mail/iactor
[Repository aethon-local]
type = Maildir
localfolders = ~/documents/mail/aethon
#nametrans = lambda folder: re.sub('^inbox$', 'INBOX', re.sub('^drafts$', '[Gmail]/Concepten', re.sub('^sent$', '[Gmail]/Verzonden berichten', re.sub('^trash$', '[Gmail]/Prullenbak', folder))))
nametrans = lambda folder: re.sub('^inbox$', 'INBOX', folder)
[Repository ninthfloor-local]
type = Maildir
localfolders = ~/documents/mail/ninthfloor
nametrans = lambda folder: folder.capitalize()
[Repository ryuslash.org-local] [Repository ryuslash.org-local]
type = Maildir type = Maildir
localfolders = ~/documents/mail/ryuslash.org localfolders = ~/documents/mail/ryuslash.org
nametrans = lambda folder: re.sub('^Inbox$', 'INBOX', folder.capitalize())
nametrans = lambda folder: folder.capitalize()
[Repository arch-remote]
type = Gmail
remoteusereval = getuser("imap.google.com-arch")
remotepasseval = getpassword("imap.google.com-arch")
realdelete = no
nametrans = lambda folder: re.sub('.*Spam$', 'spam', re.sub('.*Drafts$', 'drafts', re.sub('.*Sent Mail$', 'sent', re.sub('.*Starred$', 'flagged', re.sub('.*Trash$', 'trash', re.sub('.*All Mail$', 'archive', folder))))))
[Repository gmail-remote]
type = Gmail
remoteusereval = getuser("imap.google.com")
remotepasseval = getpassword("imap.google.com")
realdelete = no
folderfilter = lambda folder: folder in ['INBOX', '[Gmail]/Drafts', '[Gmail]/Sent Mail', '[Gmail]/Trash']
nametrans = lambda folder: re.sub('^INBOX$', 'inbox', re.sub('^\[Gmail\]/Drafts$', 'drafts', re.sub('^\[Gmail\]/Sent Mail$', 'sent', re.sub('^\[Gmail\]/Trash$', 'trash', folder))))
[Repository iactor-remote]
type = IMAP
remotehost = mail.iactor.nl
remoteusereval = getuser("mail.iactor.nl")
remotepasseval = getpassword("mail.iactor.nl")
[Repository aethon-remote]
type = Gmail
remoteusereval = getuser("imap.google.com-aethon")
remotepasseval = getpassword("imap.google.com-aethon")
realdelete = no
folderfilter = lambda folder: folder in ['INBOX', '[Gmail]/Concepten', '[Gmail]/Verzonden berichten', '[Gmail]/Prullenbak']
nametrans = lambda folder: re.sub('^INBOX$', 'inbox', folder)
#nametrans = lambda folder: re.sub('^INBOX$', 'inbox', re.sub('^\[Gmail\]/Concepten$', 'drafts', re.sub('^\[Gmail\]/Verzonden berichten$', 'sent', re.sub('^\[Gmail\]/Prullenbak$', 'trash', folder))))
[Repository ninthfloor-remote]
type = IMAP
remotehost = ninthfloor.org
remoteusereval = getuser("ninthfloor.org")
remotepasseval = getpassword("ninthfloor.org")
nametrans = lambda folder: folder.lower()
[Repository ryuslash.org-remote] [Repository ryuslash.org-remote]
type = IMAP type = IMAP
remotehost = imap.alwaysdata.com remotehost = imap.alwaysdata.com
remoteusereval = getuser("imap.alwaysdata.com") remoteusereval = getuser("imap.alwaysdata.com")
remotepasseval = getpassword("imap.alwaysdata.com") remotepasseval = getpassword("imap.alwaysdata.com")
nametrans = lambda folder: folder.lower()
nametrans = lambda folder: folder.lower() [Account aethon]
localrepository = aethon-local
remoterepository = aethon-remote
postsynchook = mu index --muhome=~/.mu/aethon --maildir=~/documents/mail/aethon; ~/usr/bin/emacs-send-mail aethon
[Repository aethon-local]
type = Maildir
localfolders = ~/documents/mail/aethon
nametrans = lambda folder: re.sub('^inbox$', 'INBOX', re.sub('^drafts$', '[Gmail]/Concepten', re.sub('^sent$', '[Gmail]/Verzonden berichten', re.sub('^trash$', '[Gmail]/Prullenbak', folder))))
[Repository aethon-remote]
type = Gmail
remoteusereval = getuser("imap.google.com-aethon")
remotepasseval = getpassword("imap.google.com-aethon")
realdelete = no
cert_fingerprint = 6d1b5b5ee0180ab493b71d3b94534b5ab937d042
folderfilter = lambda folder: folder in ['INBOX', '[Gmail]/Concepten', '[Gmail]/Verzonden berichten', '[Gmail]/Prullenbak']
nametrans = lambda folder: re.sub('^INBOX$', 'inbox', re.sub('^\[Gmail\]/Concepten$', 'drafts', re.sub('^\[Gmail\]/Verzonden berichten$', 'sent', re.sub('^\[Gmail\]/Prullenbak$', 'trash', folder))))
[Account gmail]
localrepository = gmail-local
remoterepository = gmail-remote
postsynchook = mu index --muhome=~/.mu/gmail --maildir=~/documents/mail/gmail; ~/usr/bin/emacs-send-mail gmail
[Repository gmail-local]
type = Maildir
localfolders = ~/documents/mail/gmail
nametrans = lambda folder: re.sub('^inbox$', 'INBOX', re.sub('^drafts$', '[Gmail]/Drafts', re.sub('^sent$', '[Gmail]/Sent Mail', re.sub('^trash$', '[Gmail]/Trash', folder))))
[Repository gmail-remote]
type = Gmail
remoteusereval = getuser("imap.google.com")
remotepasseval = getpassword("imap.google.com")
realdelete = no
cert_fingerprint = 6d1b5b5ee0180ab493b71d3b94534b5ab937d042
folderfilter = lambda folder: folder in ['INBOX', '[Gmail]/Drafts', '[Gmail]/Sent Mail', '[Gmail]/Trash']
nametrans = lambda folder: re.sub('^INBOX$', 'inbox', re.sub('^\[Gmail\]/Drafts$', 'drafts', re.sub('^\[Gmail\]/Sent Mail$', 'sent', re.sub('^\[Gmail\]/Trash$', 'trash', folder))))
[Account ninthfloor]
localrepository = ninthfloor-local
remoterepository = ninthfloor-remote
postsynchook = mu index --muhome=~/.mu/ninthfloor --maildir=~/documents/mail/ninthfloor; ~/usr/bin/emacs-send-mail ninthfloor
[Repository ninthfloor-local]
type = Maildir
localfolders = ~/documents/mail/ninthfloor
nametrans = lambda folder: re.sub('^Inbox$', 'INBOX', folder.capitalize())
[Repository ninthfloor-remote]
type = IMAP
remotehost = ninthfloor.org
remoteusereval = getuser("ninthfloor.org")
remotepasseval = getpassword("ninthfloor.org")
nametrans = lambda folder: folder.lower()
[Account arch]
localrepository = arch-local
remoterepository = arch-remote
[Repository arch-local]
type = Maildir
localfolders = ~/documents/mail/arch
nametrans = lambda folder: re.sub('^inbox$', 'INBOX', re.sub('^drafts$', '[Gmail]/Drafts', re.sub('^sent$', '[Gmail]/Sent Mail', re.sub('^trash$', '[Gmail]/Trash', folder))))
[Repository arch-remote]
type = Gmail
remoteusereval = getuser("imap.google.com-arch")
remotepasseval = getpassword("imap.google.com-arch")
realdelete = no
cert_fingerprint = 6d1b5b5ee0180ab493b71d3b94534b5ab937d042
folderfilter = lambda folder: folder in ['INBOX', '[Gmail]/Drafts', '[Gmail]/Sent Mail', '[Gmail]/Trash']
nametrans = lambda folder: re.sub('^INBOX$', 'inbox', re.sub('^\[Gmail\]/Drafts$', 'drafts', re.sub('^\[Gmail\]/Sent Mail$', 'sent', re.sub('^\[Gmail\]/Trash$', 'trash', folder))))
[Account iactor]
localrepository = iactor-local
remoterepository = iactor-remote
[Repository iactor-local]
type = Maildir
localfolders = ~/documents/mail/iactor
[Repository iactor-remote]
type = IMAP
remotehost = mail.iactor.nl
remoteusereval = getuser("mail.iactor.nl")
remotepasseval = getpassword("mail.iactor.nl")

View file

@ -1,22 +1,22 @@
# -*- eval: (git-auto-commit-mode 1) -*-
ControlMaster auto ControlMaster auto
ControlPath /tmp/ssh_mux_%h_%p_%r ControlPath /tmp/ssh_mux_%h_%p_%r
ControlPersist 1m ControlPersist 1m
Host 192.168.0.95 Host 192.168.0.95
Port 4511 Port 4511
Host pegas Host pegas
Port 4511 Port 4511
Host 82.170.172.156 Host 82.170.172.156
Port 4511 Port 4511
Host anapnea.net Host anapnea.net
User ryuslash User ryuslash
Host my.aethon.nl Host my.aethon.nl
User tom User tom
Host ryuslash.org Host ryuslash.org
Port 4511 Port 4511
ForwardAgent yes

View file

@ -226,8 +226,3 @@
;;;_ Main ;;;_ Main
(first-binding) (first-binding)
;;;_ Local Variables
;; Local Variables:
;; eval: (git-auto-commit-mode 1)
;; End:

View file

@ -9,13 +9,11 @@ if [ -d /etc/X11/xinit/xinitrc.d ]; then
unset f unset f
fi fi
emacs --daemon &
pidof mpdscribble >& /dev/null pidof mpdscribble >& /dev/null
if [ $? -ne 0 ] if [ $? -ne 0 ]
then then
mpdscribble & mpdscribble &
fi fi
test -n "$1" && wm=$1 || wm="awesome" # wm="emacsclient -ce \"(oni:wm-init)\"" test -n "$1" && wm=$1 || wm="emacs"
exec $wm exec $wm

View file

@ -3,6 +3,11 @@ export BROWSER=firefox
export EDITOR="emacsclient -c -a emacs" export EDITOR="emacsclient -c -a emacs"
export INFOPATH="${HOME}/documents/info:${INFOPATH}" export INFOPATH="${HOME}/documents/info:${INFOPATH}"
PATH="${HOME}/bin:${PATH}:/usr/local/bin:/usr/local/stumpwm/bin" PATH="${HOME}/usr/bin:${PATH}:/usr/local/bin:/usr/local/stumpwm/bin"
PATH="$HOME/code/ext/emacs/trunk/lib-src:$PATH" PATH="/usr/local/scwm/bin:$PATH"
export PATH="$HOME/code/ext/emacs/trunk/src:$PATH" PATH="/usr/local/clfswm/bin:$PATH"
export PATH="/usr/local/emacs/bin:$PATH"
if [ -z "$SSH_AGENT_PID" ]; then
eval `ssh-agent`
fi