(setq emacs-root-dir (concat (getenv "HOME") "/em/"))
(add-to-list 'Info-default-directory-list (expand-file-name (concat emacs-root-dir "libs/scm/dvc/texinfo")) t)
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/muse/lisp")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/planner")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/remember")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/bbdb/lisp")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/bbdb/bits")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/w3m")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/scm/dvc/lisp")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/pgg")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/allout")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/scm/psvn")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/haml")))
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/ps")) t)
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/unbound")) t)
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/bm+")) t)
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/wtf")) t)
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/pastie")) t)
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/pwsafe")) t)
(add-to-list 'load-path (expand-file-name (concat emacs-root-dir "libs/etexshow")) t)
(load-file (concat (getenv "HOME") "/" ".sec/emacs_secrets"))
(require 'cl)
(require 'advice)
(require 'bytecomp)
(require 'timer)
(require 'setnu)
(require 'wtf)
(eval-after-load "buff-menu" '(require 'buff-menu+))
(load-library "pastie.el")
(fset 'yes-or-no-p 'y-or-n-p) (tool-bar-mode -1)
(fringe-mode 'none)
(show-paren-mode t)
(transient-mark-mode t) (delete-selection-mode t) (global-font-lock-mode t)
(column-number-mode t)
(split-window-horizontally) (split-window-horizontally) (split-window-horizontally) (balance-windows)
(set-scroll-bar-mode 'nil)
(winner-mode t) (savehist-mode t)
(setq default-truncate-lines t)
(setq sentence-end-double-space 'nil) (setq default-major-mode 'text-mode)
(setq x-select-enable-clipboard t) (setq require-final-newline 'visit-save) (setq term-buffer-maximum-size 0) (setq backup-by-copying t)
(setq compilation-scroll-output t)
(global-auto-revert-mode 1)
(setq global-auto-revert-non-file-buffers t)
(setq max-lisp-eval-depth '4000)
(setq max-specpdl-size '10000)
(put 'scroll-left 'disabled nil)
(put 'scroll-right 'disabled nil)
(put 'downcase-region 'disabled nil)
(put 'upcase-region 'disabled nil)
(put 'narrow-to-region 'disabled nil)
(put 'erase-buffer 'disabled nil)
(put 'overwrite-mode 'disabled t)
(global-unset-key (kbd "<f10>"))
(add-hook 'before-save-hook
'(lambda ()
(or (file-exists-p (file-name-directory buffer-file-name))
(make-directory (file-name-directory buffer-file-name) t))))
(add-hook 'before-save-hook 'delete-trailing-whitespace)
(add-hook 'before-save-hook '(lambda () (untabify (point-min) (point-max))))
(setq auto-save-interval 100)
(setq auto-save-timeout 10)
(defun my-save-buffer-if-visiting-file (&optional args)
"Save the current buffer only if it is visiting a file"
(interactive)
(if (buffer-file-name)
(save-buffer args)
)
)
(add-hook 'auto-save-hook 'my-save-buffer-if-visiting-file)
(require 'pwsafe)
(setq pwsafe-primary-database (concat emacs-root-dir "pwsafe/pwsafe_data"))
(setq pwsafe-keep-passwd t)
(defun my-remove-duplicates (start end)
(interactive "r")
(save-excursion
(goto-char start)
(narrow-to-region start end)
(let ((seen nil) (word nil) (s start))
(while (forward-word)
(when (setq word (word-at-point))
(if (member word seen)
(kill-region s (point))
(setq seen (cons word seen)) ))
(setq s (point))))
(widen))
)
(defun my-compute-replace-region (n) (interactive "nEnter multiplicator: ")
(let ((result (* n (string-to-number (buffer-substring (point) (mark))))))
(kill-region (point) (mark))
(insert (format "%d"result))
)
)
(defun my-reverse-chars-in-region (start end)
"Reverse the region character by character without reversing lines.
Use `reverse-region' to reverse the lines in the region."
(interactive "r")
(let ((str (buffer-substring start end)))
(delete-region start end)
(dolist (line (split-string str "\n"))
(let (
(chars
(mapcar (lambda (c)
(or (matching-paren c)
c
)
)
(reverse (append line nil))
)
)
)
(when chars
(apply 'insert chars)
)
(newline)
)
)
)
)
(defun my-unique-lines (beg end)
"Unique lines in region.
Called from a program, there are two arguments:
BEG and END (region to sort)."
(interactive "r")
(save-excursion
(save-restriction
(narrow-to-region beg end)
(goto-char (point-min))
(while (not (eobp))
(kill-line 1)
(yank)
(let ((next-line (point)))
(while
(re-search-forward
(format "^%s" (car kill-ring)) nil t
)
(replace-match "" nil nil)
)
(goto-char next-line)
)
)
)
)
)
(defun my-frame-title-refresh ()
(setq frame-title-format
`((buffer-file-name "buffer-file-name: %f" ("%b"))
" "
,(format-time-string "Week/Day of year: %W/%j")
" "
,(format-time-string "Weekday: %A")
" "
,(format-time-string "Date: %Y/%m/%d")
" "
,(format-time-string "Time: ")
,(replace-regexp-in-string "\n" ""
(shell-command-to-string "date -u +%H:%M"))
" UTC"
" "
,(substring (emacs-version) 0 20)
)
)
)
(run-with-timer 1 60 'my-frame-title-refresh)
(defun my-surround-sexp-0 ()
(interactive)
(save-excursion
(forward-sexp 1)
(insert "=")
(backward-sexp 1)
(insert "=")
)
)
(defun my-surround-sexp-1 ()
(interactive)
(save-excursion
(forward-sexp 1)
(insert "*")
(backward-sexp 1)
(insert "*")
)
)
(defun my-surround-sexp-2 (char)
(interactive "cInsert surrounding character ... ")
(let ((bounds (bounds-of-thing-at-point 'sexp)))
(when bounds
(goto-char (cdr bounds))
(insert char)
(goto-char (car bounds))
(insert char)
(forward-sexp 2)
)
)
)
(defun my-surround-sexp-3 (number open close)
(interactive
"nNumber sexp: \ncPress opening char ... \ncPress closing char ... ")
(insert-pair number open close)
(forward-sexp number))
(defun byte-compile-init-file ()
(when (equal buffer-file-name user-init-file)
(let ((byte-compile-warnings '(unresolved)))
(when (file-exists-p (concat user-init-file ".elc"))
(delete-file (concat user-init-file ".elc"))
)
(byte-compile-file user-init-file)
(message "Just compiled %s " user-init-file)
)
)
)
(add-hook 'kill-buffer-hook 'byte-compile-init-file)
(setq list-command-history-max '100)
(setq highlight-changes-global-changes-existing-buffers t)
(defun unfill-paragraph ()
"The opposite of fill-paragraph Takes a multi-line paragraph and
makes it into a single line of text."
(interactive)
(let ((fill-column (point-max)))
(fill-paragraph nil))
)
(defun my-sum-up-region (start end)
(interactive "r")
(message "%s" (reduce '+
(mapcar (lambda (x) (string-to-number x))
(split-string (buffer-substring start end) "\n")))))
(defun number-lines-region (start end &optional beg)
(interactive "*r\np")
(let* ((lines (count-lines start end))
(from (or beg 1))
(to (+ lines (1- from)))
(numbers (number-sequence from to))
(width (max (length (int-to-string lines))
(length (int-to-string from)))))
(if (= start (point))
(setq numbers (reverse numbers)))
(goto-char start)
(dolist (n numbers)
(beginning-of-line)
(save-match-data
(if (looking-at " *-?[0-9]+\\. ")
(replace-match "")))
(insert (format (concat "%" (int-to-string width) "d ") n))
(forward-line))
)
)
(ffap-bindings)
(setq semanticdb-default-save-directory (concat emacs-root-dir "semanticdb"))
(require 'desktop)
(desktop-save-mode t)
(setq inhibit-startup-message t)
(setq history-length 1500)
(add-to-list 'desktop-globals-to-save 'file-name-history)
(desktop-read)
(require 'saveplace)
(setq save-place-file (concat emacs-root-dir "saveplace/places"))
(setq-default save-place t)
(setq version-control t)
(setq kept-new-versions 2)
(setq kept-old-versions 2)
(setq delete-old-versions t)
(require 'allout)
(allout-init t)
(require 'filladapt)
(setq-default filladapt-mode t)
(dolist (hook '(text-mode-hook))
(add-hook hook (lambda () (flyspell-mode 1)))
)
(dolist (hook '(change-log-mode-hook log-edit-mode-hook))
(add-hook hook (lambda () (flyspell-mode -1)))
)
(load "folding" 'nomessage 'noerror)
(folding-mode-add-find-file-hook)
(require 'toggle-option)
(setq toggle-option-list
'(
(flyspell-mode function nil nil)
(auto-fill-mode function nil nil)
(abbrev-mode function nil nil)
(dedicated-mode function nil nil)
(highlight-changes-visible-mode function nil nil)
)
)
(require 'ido)
(ido-mode t)
(setq ido-save-directory-list-file (concat emacs-root-dir "ido/ido.last"))
(setq ido-enable-flex-matching t)
(defun recentf-interactive-complete ()
"Find a file in the `file-name-history' using ido for completion."
(interactive)
(let* ((all-files file-name-history)
(file-assoc-list (mapcar (lambda (x) (cons (file-name-nondirectory x) x)) all-files))
(filename-list (remove-duplicates (mapcar 'car file-assoc-list) :test 'string=))
(ido-make-buffer-list-hook
(lambda ()
(setq ido-temp-list filename-list)))
(filename (ido-read-buffer "Find File: "))
(result-list (delq nil (mapcar (lambda (x) (if (string= (car x) filename) (cdr x))) file-assoc-list)))
(result-length (length result-list)))
(find-file
(cond
((= result-length 0) filename)
((= result-length 1) (car result-list))
( t
(let ((ido-make-buffer-list-hook
(lambda () (setq ido-temp-list result-list))))
(ido-read-buffer (format "%d matches:" result-length))))
)
)
)
)
(require 'uniquify)
(setq uniquify-buffer-name-style 'forward)
(setq uniquify-trailing-separator-p t)
(require 'recentf)
(recentf-mode 1)
(setq recentf-save-file (concat emacs-root-dir "recentf/recentf"))
(require 'windmove)
(setq abbrev-file-name (concat emacs-root-dir "abbrev/abbrev_file"))
(setq abbrev-backup-file-name (concat abbrev-file-name "_backup"))
(setq flyspell-abbrev-p t)
(setq save-abbrevs 'silently)
(defadvice add-global-abbrev
(after make-sure-its-saved activate)
(write-abbrev-file))
(defun backup-abbrev-file ()
(when (file-exists-p abbrev-file-name)
(if (file-exists-p abbrev-backup-file-name)
(progn
(if (> (with-temp-buffer
(insert-file-contents abbrev-file-name)
(count-lines (point-min) (point-max)))
(with-temp-buffer
(insert-file-contents abbrev-backup-file-name)
(count-lines (point-min) (point-max)))
)
(progn
(copy-file abbrev-backup-file-name
(concat abbrev-backup-file-name
"_"
(my-date-insert-0-non-interactive)))
(delete-file abbrev-backup-file-name)
(copy-file abbrev-file-name abbrev-backup-file-name)
(message "Just backuped %s and %s"
abbrev-file-name abbrev-backup-file-name)
)
)
(if (< (with-temp-buffer
(insert-file-contents abbrev-file-name)
(count-lines (point-min) (point-max)))
(- (with-temp-buffer
(insert-file-contents abbrev-backup-file-name)
(count-lines (point-min) (point-max))) 100)
)
(progn
(delete-file abbrev-file-name)
(copy-file abbrev-backup-file-name abbrev-file-name)
(message "Just restored %s from %s"
abbrev-file-name abbrev-backup-file-name)
)
)
)
)
(if (not (file-exists-p abbrev-backup-file-name))
(progn
(copy-file abbrev-file-name abbrev-backup-file-name)
(message "Just backuped %s " abbrev-file-name)
)
)
)
)
(add-hook 'kill-emacs-hook 'backup-abbrev-file)
(load-file abbrev-file-name)
(require 'dabbrev)
(require 'tramp)
(setq tramp-default-method "ssh")
(require 'unbound)
(defun my-count-words-region (start end)
(interactive "r")
(save-excursion
(let ((n 0))
(goto-char start)
(while (< (point) end)
(if (forward-word 1)
(setq n (1+ n))
)
)
(message "Region has %d words" n)
n
)
)
)
(defun my-count-lines-words-characters-region (start end)
"Print number of lines words and characters in the region."
(interactive "r")
(message "Region has %d lines, %d words, %d characters."
(count-lines start end)
(my-count-words-region start end)
(- end start)
)
)
(require 'fortune)
(setq fortune-dir "/usr/share/games/fortunes")
(setq fortune-file "/usr/share/games/fortunes/mjg")
(defun my-date-insert-0-non-interactive () (interactive)
"Insert date in format like `seconds since 1970-01-01 00:00:00 UTC'"
(replace-regexp-in-string "\n" "" (shell-command-to-string "date +%s")
)
)
(defun my-date-insert-0 () (interactive)
"Insert date in format like `seconds since 1970-01-01 00:00:00 UTC'"
(insert (replace-regexp-in-string "\n" "" (shell-command-to-string "date +%s")
)
)
)
(defun my-date-insert-1 () (interactive)
"Insert date in format like `month year' e.g. `June 2007'."
(insert (replace-regexp-in-string "\n" "" (shell-command-to-string "date +%B' '%Y")
)
)
)
(defun my-date-insert-2 () (interactive)
"Insert date in format like `Sun Dec 14 18:34:47 UTC 2008'."
(insert (replace-regexp-in-string "\n" "" (shell-command-to-string "date -u")
)
)
)
(defun my-date-insert-3 () (interactive)
"Insert date in format like `Sunday 2007-07-08 [12:19 UTC]'."
(insert (replace-regexp-in-string "\n" "" (concat
(shell-command-to-string "date +%A")
" "
(shell-command-to-string "date +%Y-%m-%d")
" "
(shell-command-to-string "date -u +%H:%M")
" UTC"
)
)
)
)
(defun my-date-insert-4 () (interactive)
"Insert date in format like `* YearMonthDayHourMinute:' e.g. `*
200711062045: '."
(insert
(concat
"* "
(replace-regexp-in-string "\n" "" (shell-command-to-string "date +%Y%m%d%H%M")
)
": "
"\n"
"<literal><p class=\"first_paragraph\"></literal>\n"
"<literal></p></literal>\n"
)
)
)
(defun my-date-insert-5 () (interactive)
"Insert date in format like `2007-07-08'."
(insert (replace-regexp-in-string "\n" "" (concat
(shell-command-to-string "date +%Y-%m-%d")
)
)
)
)
(setq dired-dwim-target t)
(setq dired-recursive-copies 'always)
(setq dired-recursive-deletes 'always)
(setq image-dired-external-viewer "/usr/bin/gimp")
(require 'dired-x)
(dired-omit-mode 1)
(setq dired-omit-files (concat dired-omit-files "\\|^\\."))
(setq dired-omit-extensions `(,@dired-omit-extensions ".avi" ".mp3"))
(require 'image-dired)
(setq image-dired-show-all-from-dir-max-files 100)
(setq image-dired-thumb-margin 4)
(setq image-dired-thumb-relief 0)
(setq imd-images-dir (concat (getenv "HOME") "/mm/si/image-dired"))
(setq imd-meta-data-dir imd-images-dir)
(setq image-dired-dir (concat imd-images-dir "/image-dired_thumbnails"))
(setq image-dired-main-image-directory (concat imd-images-dir"/temp"))
(setq image-dired-db-file (concat imd-meta-data-dir "/image-dired_db"))
(setq image-dired-temp-image-file (concat imd-images-dir "/image-dired_temp_file"))
(setq image-dired-temp-rotate-image-file (concat imd-images-dir "/dired_rotate_temp_file"))
(setq image-dired-gallery-dir (concat imd-images-dir "/gallery"))
(setq image-dired-gallery-hidden-tags
`("private" "hidden" "pending" ,@priv-image-dired-gallery-tags))
(setq gallery-http-root "")
(setq image-dired-gallery-image-root-url
(concat gallery-http-root image-dired-gallery-dir))
(setq image-dired-gallery-thumb-image-root-url
(concat gallery-http-root image-dired-gallery-dir "/thumbs"))
(setq gnus-button-url 'browse-url-generic
browse-url-generic-program "iceweasel"
browse-url-browser-function gnus-button-url)
(require 'w3m)
(require 'w3m-namazu)
(setq w3m-default-display-inline-images t)
(setq w3m-use-cookies t)
(defun my-w3m-copy-url-at-point ()
(interactive)
(let ((url (w3m-anchor)))
(if (w3m-url-valid url)
(kill-new (w3m-anchor))
(message "No URL at point!")
)
)
)
(defun my-interactive-w3m-search ()
(interactive)
(let ((current-prefix-arg t))
(call-interactively 'w3m-search)
)
)
(setq user-full-name priv-my-name)
(setq user-mail-address priv-my-sunoano1-mail-address)
(setq gnus-home-directory (concat emacs-root-dir "gnus"))
(setq nnml-directory (concat emacs-root-dir "gnus/Mail"))
(setq gnus-article-save-directory (concat emacs-root-dir "gnus/News"))
(setq gnus-default-article-saver 'gnus-summary-save-in-file)
(setq gnus-visual t)
(setq gnus-backup-startup-file t)
(setq gnus-init-file nil)
(setq gnus-inhibit-startup-message t)
(require 'gnus-msg)
(setq mail-user-agent 'gnus-user-agent)
(require 'gnus-agent)
(setq gnus-agent-go-online t)
(setq gnus-agent-expire-days 30) (setq gnus-agent-synchronize-flags t)
(add-hook 'gnus-select-article-hook 'gnus-agent-fetch-selected-article)
(setq gnus-agent-low-score 0)
(setq gnus-agent-high-score 99)
(setq gnus-agent-short-article 80)
(setq gnus-agent-long-article 200)
(defun my-article-old-p ()
"Say whether an article is old."
(< (time-to-days (date-to-time (mail-header-date gnus-headers)))
(- (time-to-days (current-time)) gnus-agent-expire-days))
)
(setq gnus-category-predicate-alist
(append gnus-category-predicate-alist
'((old . my-article-old-p)))
)
(setq gnus-keep-backlog 3000)
(setq gnus-fetch-old-headers 'some)
(require 'epa)
(setq mml2015-use 'epg)
(setq mml2015-encrypt-to-self t)
(setq mml2015-verbose t)
(setq mml2015-always-trust nil)
(setq mml2015-passphrase-cache-expiry '7200)
(add-hook 'message-setup-hook
(lambda ()
(if gnus-newsgroup-name
(let ((signers (gnus-group-get-parameter
gnus-newsgroup-name
'mml2015-signers
t)))
(if signers
(set (make-local-variable 'mml2015-signers)
signers))))))
(setq gnus-message-replysign t
gnus-message-replyencrypt t
gnus-message-replysignencrypted t
gnus-treat-x-pgp-sig t
mm-verify-option 'always
mm-decrypt-option 'always
)
(setq gnus-buttonized-mime-types
'("multipart/alternative"
"multipart/encrypted"
"multipart/signed"))
(setq mm-coding-system-priorities
'(iso-latin-1 iso-latin-9 mule-utf-8))
(setq mm-file-name-rewrite-functions
'(mm-file-name-delete-control
mm-file-name-delete-gotchas
mm-file-name-trim-whitespace
mm-file-name-collapse-whitespace
mm-file-name-replace-whitespace
downcase))
(gnus-demon-add-handler 'gnus-group-get-new-news 30 7)
(eval-after-load "mm-decode"
'(progn
(add-to-list 'mm-discouraged-alternatives "text/html")
(add-to-list 'mm-discouraged-alternatives "text/richtext")))
(setq mm-text-html-renderer 'w3m)
(require 'deuglify)
(defun standard-wash-this-article ()
(interactive)
(gnus-article-outlook-deuglify-article)
(gnus-article-outlook-rearrange-citation)
(gnus-article-capitalize-sentences)
)
(add-hook 'gnus-article-decode-hook 'standard-wash-this-article)
(gnus-add-configuration
'(group
(horizontal 1.0
(vertical 0.74
(article 1.0)
(summary 0.4)
)
(vertical 1.0
(group 1.0 point)
(server 0.18)
)
)
)
)
(gnus-add-configuration
'(server
(horizontal 1.0
(vertical 0.74
(article 1.0)
(summary 0.4)
)
(vertical 1.0
(group 1.0)
(server 0.18 point)
)
)
)
)
(gnus-add-configuration
'(summary
(horizontal 1.0
(vertical 0.74
(article 1.0)
(summary 0.4 point)
)
(vertical 1.0
(group 1.0)
(server 0.18)
)
)
)
)
(gnus-add-configuration
'(article
(horizontal 1.0
(vertical 0.74
(article 1.0 point)
(summary 0.4)
)
(vertical 1.0
(group 1.0)
(server 0.18)
)
)
)
)
(autoload 'sc-cite-original "supercite" "Supercite 3.1" t)
(autoload 'sc-submit-bug-report "supercite" "Supercite 3.1" t)
(add-hook 'mail-citation-hook 'sc-cite-original)
(setq news-reply-header-hook nil)
(setq sc-fixup-whitespace-p t)
(setq sc-preferred-header-style 0) (setq sc-reference-tag-string " >| ")
(setq sc-citation-leader " ")
(setq sc-preferred-attribution-list
'("sc-lastchoice" "x-attribution" "sc-consult"
"initials" "firstname" "lastname"))
(setq sc-attrib-selection-list
'(("sc-from-address"
((".*" . (bbdb/sc-consult-attr
(sc-mail-field "sc-from-address")))))))
(setq sc-mail-glom-frame
'((begin (setq sc-mail-headers-start (point)))
("^x-attribution:[ \t]+.*$" (sc-mail-fetch-field t) nil t)
("^\\S +:.*$" (sc-mail-fetch-field) nil t)
("^$" (progn (bbdb/sc-default)
(list 'abort '(step . 0))))
("^[ \t]+" (sc-mail-append-field))
(sc-mail-warn-if-non-rfc822-p (sc-mail-error-in-mail-field))
(end (setq sc-mail-headers-end (point))))
)
(require 'gnus-registry)
(gnus-registry-initialize)
(add-hook 'message-setup-hook 'bbdb-define-all-aliases t)
(setq gnus-article-mode-line-format "Gnus: %G [%w] Mime parts:%m Score:%z Subject:%S ")
(setq gnus-mime-display-multipart-related-as-mixed t)
(setq gnus-topic-indent-level 3)
(add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
(setq gnus-permanently-visible-groups ".*")
(add-hook 'gnus-select-group-hook 'gnus-group-set-timestamp)
(setq gnus-group-line-format
"%P|%B|%M%o%S%L[%6t|%3i]%6y :%(%~(pad-right 65)g%):%6,6~(cut 2)d\n")
(setq gnus-face-1 'bold)
(copy-face 'bold 'my-topic-line-face)
(set-face-foreground 'my-topic-line-face "#4682B4")
(setq gnus-face-100 'my-topic-line-face)
(setq gnus-topic-line-format "%100{%i[ %(%{%n%}%) -- %A ]%v%}\n")
(setq gnus-group-sort-function
'(gnus-group-sort-by-alphabet gnus-group-sort-groups-by-rank))
(add-hook 'gnus-summary-exit-hook 'gnus-group-sort-groups-by-rank)
(add-hook 'gnus-summary-exit-hook 'gnus-summary-bubble-group)
(setq gnus-parameters
`(
("\\`nnml:m.junk"
(gnus-article-sort-functions (gnus-article-sort-by-chars))
(spam-contents gnus-group-spam-classification-spam)
(ham-process-destination . "nnml:junk2ham")
(spam-process ((spam spam-use-blacklist)
(spam spam-use-bogofilter)))
(agent-predicate . true)
(agent-score . file)
(posting-style
(name "NoName")
(address "spam_is_for@the_weak.com")
)
(display . 22) )
(,priv-my-gmail0-mail-address-gp (spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnimap:m.junk")
(spam-process ((spam spam-use-blacklist)
(ham spam-use-whitelist) (ham spam-use-bogofilter) (spam spam-use-bogofilter)))
(agent-predicate . true)
(agent-score . file)
(posting-style
(name priv-my-name)
(address priv-my-sunoano1-mail-address)
(signature-file (concat emacs-root-dir "gnus/sig/m.realname"))
(mml2015-signers priv-my-keyid)
)
(display . 20)
)
(,priv-my-gmail1-mail-address-gp
(spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnimap:m.junk")
(spam-process ((spam spam-use-blacklist)
(ham spam-use-whitelist) (ham spam-use-bogofilter) (spam spam-use-bogofilter)))
(agent-predicate . true)
(agent-score . file)
(posting-style
(name priv-my-name)
(address priv-my-gmail1-mail-address)
)
(display . 20)
)
(,priv-my-gmail2-mail-address-gp (spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnimap:m.junk")
(spam-process ((spam spam-use-blacklist)
(ham spam-use-whitelist) (ham spam-use-bogofilter) (spam spam-use-bogofilter)))
(agent-predicate . true)
(agent-score . file)
(posting-style
(name priv-my-syn-name)
(address priv-my-sunoano0-mail-address)
(signature-file (concat emacs-root-dir "gnus/sig/m.suno"))
(mml2015-signers priv-my-syn-keyid)
)
(display . 20)
)
(,priv-my-gmail4-mail-address-gp (spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnimap:m.junk")
(spam-process ((spam spam-use-blacklist)
(ham spam-use-whitelist) (ham spam-use-bogofilter) (spam spam-use-bogofilter)))
(agent-predicate . true)
(agent-score . file)
(posting-style
(name priv-my-syn-name)
(address priv-my-sunoano2-mail-address)
(signature-file (concat emacs-root-dir "gnus/sig/m.suno"))
(mml2015-signers priv-my-syn-keyid)
)
(display . 20)
)
(,priv-my-gmail3-mail-address-gp
(spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnml:m.junk")
(spam-process ((spam spam-use-blacklist)
(ham spam-use-whitelist)
(ham spam-use-bogofilter)
(spam spam-use-bogofilter)))
(agent-predicate . true)
(agent-score . file)
(posting-style
(name priv-my-name)
(address priv-my-work0-mail-address)
(signature-file (concat emacs-root-dir "gnus/sig/m.work"))
)
(display . 20)
)
("\\`nntp\\+news\\.gmane\\.org:"
(spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnml:m.junk")
(spam-process ((spam spam-use-gmane)
(spam spam-use-blacklist)
(ham spam-use-whitelist)
(ham spam-use-bogofilter)
(spam spam-use-bogofilter)))
(spam-autodetect . t)
(spam-autodetect-methods spam-use-BBDB spam-use-whitelist spam-use-regex-headers spam-use-blacklist spam-use-bogofilter) (agent-predicate or high short (not old))
(agent-score . file)
(agent-score
("from"
("debian\\|emacs\\|linux\\|gnu\\|fsf" 100 nil s)
)
("subject"
("Nose and Face" -100 nil s)
("debian\\|emacs\\|linux\\|gnu\\|fsf" 100 nil s)
)
("xref"
("[^:\n]+:[0-9]+ +[^:\n]+:[0-9]+ +[^:\n]+:[0-9]+" -100 nil r)
)
)
(posting-style
(name priv-my-name)
(address priv-my-sunoano1-mail-address)
)
(display . 20)
)
("\\`nntp.*\\|\\`gnu.*"
(spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnml:m.junk")
(spam-process ((spam spam-use-blacklist)
(ham spam-use-whitelist)
(ham spam-use-bogofilter)
(spam spam-use-bogofilter)))
(agent-predicate and short (not old))
(agent-score . file)
(posting-style
(name priv-my-name)
(address priv-my-sunoano1-mail-address)
)
(display . 15)
)
(".*"
(spam-contents gnus-group-spam-classification-ham)
(spam-process-destination . "nnml:m.junk")
(spam-process ((spam spam-use-blacklist)
(ham spam-use-whitelist)
(ham spam-use-bogofilter)
(spam spam-use-bogofilter)))
(spam-autodetect . t)
(spam-autodetect-methods spam-use-BBDB spam-use-whitelist spam-use-regex-headers spam-use-blacklist spam-use-bogofilter) (agent-predicate or high short (not old))
(agent-score . file)
(posting-style
(name "NoName")
(address "default_for_all@groups.org")
)
(display . all)
)
)
)
(setq gnus-summary-mode-line-format "Gnus: %G [%A] Score:%z ur+us:%Z")
(setq gnus-summary-line-format
"%O :%U%R %B %s %-68=|%4L |%-20,20f |%&user-date; \n")
(setq gnus-thread-sort-functions
'(gnus-thread-sort-by-number gnus-thread-sort-by-date))
(setq gnus-summary-display-while-building t)
(setq gnus-nov-is-evil t)
(setq gnus-suppress-duplicates t)
(setq gnus-duplicate-file (concat emacs-root-dir "gnus/News/suppression"))
(setq gnus-save-duplicate-list t)
(setq gnus-duplicate-list-length 2000)
(defun switch-window-show-group-buffer-with-point ()
(interactive)
(other-window 1)
(switch-to-buffer "*Group*")
)
(add-hook 'gnus-summary-exit-hook 'switch-window-show-group-buffer-with-point)
(setq gnus-server-line-format "%s%8a{%(%h:%w%)}\n")
(setq gnus-list-identifiers
'(
"^ +" "\\[phpGroupWare-developers\\]"
"\\[Vserver\\]"
"\\[Pnet-developers\\]"
"\\[Libjit-developers\\]"
"\\[Savannah-announce\\]"
"Changes committed *"
)
)
(setq gnus-select-method
'(nntp "news.gnus.org"
(nntp-connection-timeout 360)
(nntp-open-connection-function nntp-open-network-stream)
(nntp-address "news.gnus.org")
)
)
(setq gnus-secondary-select-methods '((nnimap "")))
(setq gnus-large-newsgroup nil)
(setq gnus-gcc-mark-as-read t)
(setq gnus-message-archive-method
'(nnml "archive"
(nnml-get-new-mail nil)
(nnml-inhibit-expiry t)
)
)
(setq gnus-message-archive-group
'((if (message-news-p)
"news"
"mail"
)
)
)
(setq gnus-use-adaptive-scoring t)
(setq gnus-decay-scores t)
(setq gnus-default-adaptive-score-alist
'((gnus-unread-mark)
(gnus-ticked-mark (from 4))
(gnus-dormant-mark (from 5))
(gnus-del-mark (from -4) (subject -1))
(gnus-read-mark (from 4) (subject 2))
(gnus-expirable-mark (from -1) (subject -1))
(gnus-killed-mark (from -1) (subject -3))
(gnus-kill-file-mark)
(gnus-ancient-mark)
(gnus-low-score-mark)
(gnus-catchup-mark (from -1) (subject -1))
)
)
(setq nntp-authinfo-file (concat emacs-root-dir "gnus/nntp_authinfo"))
(add-to-list 'gnus-secondary-select-methods
'(nntp "news.gmane.org"
(nntp-connection-timeout 240)
(nntp-open-connection-function nntp-open-network-stream)
(nntp-address "news.gmane.org")
)
t
)
(setq nnimap-authinfo-file (concat emacs-root-dir "gnus/nnimap_authinfo"))
(add-to-list 'gnus-secondary-select-methods
`(nnimap ,priv-gmail0-mail-user
(nnimap-address ,priv-imap-gmail-mail-server)
(nnimap-server-port 993)
(nnimap-stream ssl)
)
t
)
(add-to-list 'gnus-secondary-select-methods
`(nnimap ,priv-gmail1-mail-user
(nnimap-address ,priv-imap-gmail-mail-server)
(nnimap-server-port 993)
(nnimap-stream ssl)
)
t
)
(add-to-list 'gnus-secondary-select-methods
`(nnimap ,priv-gmail2-mail-user
(nnimap-address ,priv-imap-gmail-mail-server)
(nnimap-server-port 993)
(nnimap-stream ssl)
)
t
)
(add-to-list 'gnus-secondary-select-methods
`(nnimap ,priv-gmail3-mail-user
(nnimap-address ,priv-imap-gmail-mail-server)
(nnimap-server-port 993)
(nnimap-stream ssl)
)
t
)
(add-to-list 'gnus-secondary-select-methods
`(nnimap ,priv-gmail4-mail-user
(nnimap-address ,priv-imap-gmail-mail-server)
(nnimap-server-port 993)
(nnimap-stream ssl)
)
t
)
(setq nnmail-message-id-cache-file (concat emacs-root-dir "gnus/nnmail_cache"))
(setq nnmail-message-id-cache-length 10000)
(setq nnmail-crosspost nil)
(setq nnmail-treat-duplicates 'warn)
(setq nnmail-cache-accepted-message-ids t)
(setq nnmail-split-fancy-with-parent-ignore-groups "")
(setq nnmail-cache-ignore-groups '(".*:out\\..*"))
(setq nnmail-split-methods 'nnmail-split-fancy)
(setq nnmail-split-fancy
`(|
(: gnus-registry-split-fancy-with-parent)
(: spam-split 'spam-use-BBDB 'spam-use-whitelist 'spam-use-regex-headers 'spam-use-blacklist 'spam-use-bogofilter)
(any ,priv-split-regex-tugraz ,priv-split-group-tugraz)
(any ,priv-split-regex-work ,priv-split-group-work)
(any ,priv-split-regex-helga0 ,priv-split-group-family)
(any ,priv-split-regex-mike0 ,priv-split-group-family)
(any ,priv-split-regex-suno0 ,priv-split-group-suno)
(any ,priv-split-regex-myself0 ,priv-split-group-myself)
(any ,priv-split-regex-myself1 ,priv-split-group-myself)
(any ,priv-split-regex-myself2 ,priv-split-group-myself)
"m.misc"
)
)
(spam-initialize)
(setq spam-log-to-registry t)
(setq spam-mark-ham-unread-before-move-from-spam-group t)
(setq spam-mark-only-unseen-as-spam t)
(setq spam-autodetect-recheck-messages t)
(setq spam-split-group "m.junk")
(setq spam-use-bogofilter t)
(setq spam-bogofilter-database-directory
(concat emacs-root-dir "gnus/News/spam/bogofilter.db"))
(setq send-mail-function 'smtpmail-send-it
message-send-mail-function 'smtpmail-send-it
smtpmail-starttls-credentials `((,priv-smtp2-mail-server ,priv-smtp2-port nil nil))
smtpmail-auth-credentials `((,priv-smtp2-mail-server ,priv-smtp2-port ,priv-smtp3-username ,priv-smtp3-pw))
smtpmail-default-smtp-server priv-smtp2-mail-server smtpmail-smtp-server priv-smtp2-mail-server
smtpmail-smtp-service priv-smtp2-port
smtpmail-local-domain "sunoano.org")
(require 'smtpmail)
(add-hook 'message-mode-hook
(lambda ()
(setq fill-column 72)
(turn-on-auto-fill)))
(require 'muse)
(require 'muse-mode) (require 'muse-project) (require 'muse-colors) (require 'muse-wiki) (require 'muse-protocols) (require 'muse-publish) (require 'muse-backlink) (muse-backlink-install)
(require 'muse-html) (require 'muse-latex) (require 'muse-latex2png) (require 'muse-texinfo) (require 'muse-book)
(require 'muse-docbook)
(require 'muse-xml)
(require 'muse-journal)
(setq muse-colors-inline-images nil)
(add-hook 'muse-mode-hook 'turn-on-muse-list-edit-minor-mode)
(add-hook 'muse-mode-hook 'footnote-mode)
(add-hook 'muse-mode-hook (lambda () (abbrev-mode t)))
(add-hook 'muse-mode-hook (lambda () (auto-fill-mode 1)))
(add-hook 'muse-mode-hook (lambda () (flyspell-mode 1)))
(setq the-authors-name priv-my-syn-name)
(setq planner-project "pim")
(setq website-project "ws")
(setq weblog-project "blog")
(setq muse-and-planner-root-dir (concat (getenv "HOME") "/0/0/"))
(setq website-dir (concat muse-and-planner-root-dir website-project "/")) (setq weblog-dir (concat muse-and-planner-root-dir weblog-project "/")) (setq planner-dir (concat muse-and-planner-root-dir planner-project "/"))
(setq website-local (concat website-dir "local/"))
(setq weblog-local (concat weblog-dir "local/"))
(setq planner-local (concat planner-dir "local/"))
(setq website-public-docbook-dir (concat website-dir "public_docbook/"))
(setq website-public-latex-dir (concat website-dir "public_latex/"))
(setq website-public-pdf-dir (concat website-dir "public_pdf/"))
(setq website-public-texinfo-dir (concat website-dir "public_texinfo"))
(setq website-public-xhtml-dir website-dir)
(setq website-public-xml-dir (concat website-dir "public_xml/"))
(setq weblog-public-xhtml-dir weblog-dir)
(setq weblog-public-rss-dir weblog-dir)
(setq planner-public-pdf-dir (concat planner-dir "public_pdf/"))
(setq planner-public-xhtml-dir planner-dir)
(setq planner-public-xml-dir (concat planner-dir "public_xml/"))
(setq planner-public-rss-dir (concat planner-dir "public_rss/"))
(setq style-sheet-dir "/misc/css/")
(setq website-image-dir "/misc/mm/si/")
(setq website-video-dir "/misc/mm/di/")
(setq website-audio-dir "/misc/mm/audio/")
(setq website-documents-dir "/misc/mm/documents/")
(setq default-style-sheet (concat style-sheet-dir "default.css"))
(setq website-image-components-dir (concat website-image-dir "components/"))
(setq website-image-content-dir (concat website-image-dir "content/"))
(setq website-favicon-dir (concat website-image-components-dir "favicon/"))
(setq backlink-arrow-image (concat website-image-components-dir "list_item.gif"))
(setq website-favicon-ico-image (concat website-favicon-dir "favicon_grey.ico"))
(setq website-favicon-gif-image (concat website-favicon-dir "animated_favicon.gif"))
(setq remote-root-no-protocol-prefix "www.markus-gattol.name")
(setq remote-http-root (concat "http://" remote-root-no-protocol-prefix ))
(setq remote-ftp-root (concat "ftp://" remote-root-no-protocol-prefix ))
(defun my-muse-index-as-string-whitelist (&optional filter as-list exclude-private exclude-current)
"Generate an index of all Muse pages matching FILTER i.e whitelisting.
FILTER is a string resp. regex.
If AS-LIST is non-nil, insert a dash and spaces before each item.
If EXCLUDE-PRIVATE is non-nil, exclude files that have private permissions.
If EXCLUDE-CURRENT is non-nil, exclude the current file from the output.
Example of how to use it within muse source code (toggle
fontlocking with C-c C-l):
<markup>
<lisp>(my-muse-index-as-string-whitelist \"debian\" t)</lisp></markup>
"
(let ((files (sort (copy-alist (muse-project-file-alist))
(function
(lambda (l r)
(string-lessp (car l) (car r)))))))
(setq files (remove-if-not
(lambda (conn)
(string-match filter (car conn)))
files))
(when (and exclude-current (muse-page-name))
(setq files (delete (assoc (muse-page-name) files) files)))
(with-temp-buffer
(while files
(unless (and exclude-private
(muse-project-private-p (cdar files)))
(insert (if as-list " - " "") "[[" (caar files) "]]\n"))
(setq files (cdr files)))
(buffer-string))))
(defun my-muse-index-as-string-blacklist (&optional filter as-list exclude-private exclude-current)
"Generate an index of all Muse pages not matching FILTER i.e blacklisting.
FILTER is a string resp. regex.
If AS-LIST is non-nil, insert a dash and spaces before each item.
If EXCLUDE-PRIVATE is non-nil, exclude files that have private permissions.
If EXCLUDE-CURRENT is non-nil, exclude the current file from the output.
Example of how to use it within muse source code (toggle
fontlocking with C-c C-l):
<markup>
<lisp>(my-muse-index-as-string-whitelist \"debian\" t)</lisp></markup>
"
(let ((files (sort (copy-alist (muse-project-file-alist))
(function
(lambda (l r)
(string-lessp (car l) (car r)))))))
(setq files (remove-if
(lambda (conn)
(string-match filter (car conn)))
files))
(when (and exclude-current (muse-page-name))
(setq files (delete (assoc (muse-page-name) files) files)))
(with-temp-buffer
(while files
(unless (and exclude-private
(muse-project-private-p (cdar files)))
(insert (if as-list " - " "") "[[" (caar files) "]]\n"))
(setq files (cdr files)))
(buffer-string))))
(defun muse-insert-math-tags () (interactive)
"This function inserts example tags i.e.<math> followed by
</math>"
(insert "<math>\\scriptscriptstyle</math>")
)
(defun muse-insert-verse-tags () (interactive)
"This function inserts example tags i.e.<verse> followed by
</verse>"
(insert "<verse>\n**\n</verse>")
)
(defun muse-insert-example-tags () (interactive)
"This function inserts example tags i.e.<example> followed by
</example>"
(insert "<example>\n</example>")
)
(defun muse-insert-code-tags () (interactive)
"This function inserts code tags i.e.<code> followed by
</code>"
(insert "<code></code>")
)
(defun muse-insert-comment-tags () (interactive)
"This function inserts comment tags i.e.<comment> followed by
</comment>"
(insert "<comment>\n</comment>")
)
(defun muse-insert-lisp-tags () (interactive)
"This function inserts lisp tags i.e.<lisp> followed by
</lisp>"
(insert "<lisp>\n</lisp") )
(defun muse-insert-python-tags () (interactive)
"This function inserts python tags i.e.<python> followed by
</python>"
(insert "<python>\n</python>")
)
(defun muse-insert-src-emacs-lisp-tags () (interactive)
"This function inserts src tags i.e.<src \"emacs-lisp\"> followed
by </src>"
(insert "<src \"emacs-lisp\">\n</src>")
)
(defun muse-html-insert-blank-line () (interactive)
"Insert a blank line in order to create a blank line in html and
xhtml output."
(insert "<br>\n"))
(defun muse-insert-quotation-source-wikipedia () (interactive)
"This function inserts `(Wikipedia)' into muse source code in
order to rightfully reefer to the quoted source."
(insert "*([[http://en.wikipedia.org/wiki/Main_Page][Wikipedia]])*")
)
(defun muse-insert-quotation-source-urbandictionary () (interactive)
"This function inserts `(The Urban Dictionary)' into muse source
code in order to rightfully reefer to the quoted source."
(insert "*([[http://www.urbandictionary.com/][The Urban Dictionary]])*")
)
(defun muse-insert-quotation-source-freedictionary () (interactive)
"This function inserts `(The Free Dictionary)' into muse source
code in order to rightfully reefer to the quoted source."
(insert "*([[http://www.thefreedictionary.com/][The Free Dictionary]])*")
)
(defun muse-insert-quotation-source-free-computing-dictionary () (interactive)
"This function inserts `(The Free Computing Dictionary)' into
muse source code in order to rightfully reefer to the quoted
source."
(insert "*([[http://computing-dictionary.thefreedictionary.com][The Free Computing Dictionary]])*")
)
(defun muse-xhtml-menu (items)
"This function makes use of muse-project-menu-list. It is
intended to create the menu for the website."
(concat "<div class=\"menu\">"
"<div class=\"menuhead\">Website Sections</div>"
"<div class=\"menubody\">"
(mapconcat (function (lambda (item)
(concat "<div class=\"menuitem\">\n"
(cadr (cdr item))
"<a href=\""
(cadr item)
"\">\n"
(car item)
"</a>"
"</div>")
)
)
items
"\n"
)
"</div></div>")
)
(defun muse-publish-content ()
"This function creates a list of contents with regards to the
current page. Also, it is possible to specify the
contentdepth. The contentdepth directive needs to be present in
the header section of a page for the content listing to be
displayed. The numeric parameter specifies to which depth the
content listing should be generated. 1 will only include the
top-level headlines while 2, 3 etc. will include the
corresponding lower levels."
(let ((depths (muse-publishing-directive "contentdepth")))
(when depths
(let ((depth (string-to-number depths)))
(when (not (eq depth 0))
(insert "<td class='contents'>
<div class='contenthead'>Table of Contents</div>
<div class='contentbody'>")
(my-muse-html-insert-contents depth)
(unless (eobp) (forward-char))
(insert "</div></td>"))))))
(defun my-muse-html-insert-contents (depth)
"Scan the current document and generate a table of contents at point.
DEPTH indicates how many levels of headings to include. The default is 2."
(let ((max-depth (or depth 2))
(index 1)
base contents l end)
(save-excursion
(goto-char (point-min))
(search-forward "Page published by Emacs Muse begins here" nil t)
(catch 'done
(while (re-search-forward "<h\\([0-9]+\\)>\\(.+?\\)</h\\1>$" nil t)
(unless (and (get-text-property (point) 'read-only)
(not (get-text-property (match-beginning 0)
'muse-contents)))
(remove-text-properties (match-beginning 0) (match-end 0)
'(muse-contents nil))
(setq l (1- (string-to-number (match-string 1))))
(if (null base)
(setq base l)
(if (< l base)
(throw 'done t)))
(when (<= l max-depth)
(goto-char (match-end 2))
(setq end (point-marker))
(muse-publish-escape-specials (match-beginning 2) end
nil 'document)
(muse-publish-mark-read-only (match-beginning 2) end)
(setq contents (cons (cons l (buffer-substring-no-properties
(match-beginning 2) end))
contents))
(set-marker end nil)
(goto-char (match-beginning 2))
(muse-html-insert-anchor (concat "sec" (int-to-string index)))
(setq index (1+ index)))))))
(setq index 1 contents (nreverse contents))
(let ((depth 1) (sub-open 0) (p (point)))
(muse-insert-markup "<div class=\"contents\">\n<dl>\n")
(while contents
(muse-insert-markup "<dt class=\"contents\">\n"
"<a href=\"#sec" (int-to-string index) "\">"
(muse-html-strip-links (cdar contents))
"</a>\n"
"</dt>\n")
(setq index (1+ index)
depth (caar contents)
contents (cdr contents))
(when contents
(cond
((< (caar contents) depth)
(let ((idx (caar contents)))
(while (< idx depth)
(muse-insert-markup "</dl>\n</dd>\n")
(setq sub-open (1- sub-open)
idx (1+ idx)))))
((> (caar contents) depth) (muse-insert-markup "<dd>\n<dl>\n")
(setq sub-open (1+ sub-open))))))
(while (> sub-open 0)
(muse-insert-markup "</dl>\n</dd>\n")
(setq sub-open (1- sub-open)))
(muse-insert-markup "</dl>\n</div>\n")
(muse-publish-mark-read-only p (point)))))
(defun muse-publish-status ()
"Display a small note about the status of the page."
(let ((status (muse-publishing-directive "status")))
(when status
(let ((tmp (split-string status "|")))
(concat "<div class='status"(pop tmp)"'>Status: "(pop tmp)"</div>")
)
)
)
)
(defun muse-publish-pagecode ()
"Display a small note about the pagecode of the page."
(let ((pagecode (muse-publishing-directive "pagecode")))
(when pagecode
(concat "Pagecode: "pagecode)
)
)
)
(setq muse-colors-autogen-headings nil)
(defface muse-comment
'((((class color) (background light))
(:foreground "firebrick"))
(((class color) (background dark))
(:foreground "DeepPink4")))
"Face for comment text."
:group 'muse-colors
)
(defun muse-colors-comment-tag (beg end)
"Strip properties and colorize with `muse-comment'."
(muse-unhighlight-region beg end)
(let ((multi (save-excursion
(goto-char beg)
(forward-line 1)
(> end (point)))))
(add-text-properties beg end `(face muse-comment
font-lock-multiline ,multi)))
)
(add-to-list 'muse-colors-tags
'("comment" t nil nil muse-colors-comment-tag) t)
(defface muse-verse
'((((class color) (background light))
(:foreground "peru" :italic t))
(((class color) (background dark))
(:foreground "DeepPink4")))
"Face for verse text."
:group 'muse-colors
)
(defun muse-colors-verse-tag (beg end)
"Strip properties and colorize with `muse-verse'."
(muse-unhighlight-region beg end)
(let ((multi (save-excursion
(goto-char beg)
(forward-line 1)
(> end (point)))))
(add-text-properties beg end `(face muse-verse
font-lock-multiline ,multi)))
)
(add-to-list 'muse-colors-tags
'("verse" t nil nil muse-colors-verse-tag) t)
(defface muse-math
'((((class color) (background light))
(:foreground "cyan4"))
(((class color) (background dark))
(:foreground "DeepPink4")))
"Face for math text."
:group 'muse-colors
)
(defun muse-colors-math-tag (beg end)
"Strip properties and colorize with `muse-math'."
(muse-unhighlight-region beg end)
(let ((multi (save-excursion
(goto-char beg)
(forward-line 1)
(> end (point)))))
(add-text-properties beg end `(face muse-math
font-lock-multiline ,multi)))
)
(add-to-list 'muse-colors-tags
'("math" t nil nil muse-colors-math-tag) t)
(setq muse-wiki-ignore-bare-project-names t)
(setq muse-project-alist
`(
("pci"
(
"/home/sa/misc/hi/pci/"
:default "index"
)
(
:base "html"
:path "/home/sa/misc/hi/pci/"
)
)
(,website-project
(
,website-local
:default "index"
)
(
:base "xhtml"
:path ,website-public-xhtml-dir
)
)
(,weblog-project
(
,@(muse-project-alist-dirs weblog-local)
:default "journal"
)
,@(muse-project-alist-styles weblog-local weblog-public-xhtml-dir "journal-xhtml")
,@(muse-project-alist-styles weblog-local weblog-public-rss-dir "journal-rss") )
(,planner-project
(
,planner-local
:default "taskpool"
:major-mode planner-mode
:visit-link planner-visit-link
)
(
:base "planner-xhtml"
:path ,planner-public-xhtml-dir
)
)
)
)
(setq website-favicon-image
"<link rel=\"shortcut icon\" href=\"<lisp>website-favicon-ico-image</lisp>\"/>"
)
(setq muse-html-charset-default "utf-8"
muse-html-encoding-default 'utf-8)
(setq muse-xhtml-doctype
"<?xml version=\"1.0 encoding=\"<lisp>(muse-html-encoding)</lisp> \"?>
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">"
)
(setq muse-xhtml-style-sheet
(concat
"<link rel=\"stylesheet\"
type=\"text/css\"
charset=\"utf-8\"
media=\"all\"
href=\"<lisp>default-style-sheet</lisp>\" />"
)
)
(setq website-public-xhtml-dir-short "/ws/")
(setq muse-project-menu-list
`(
("Home" ,(concat website-public-xhtml-dir-short "home.html") "")
("FAQs" ,(concat website-public-xhtml-dir-short "faq.html") "")
("About Me" ,(concat website-public-xhtml-dir-short "about_me.html") "")
("Weblog" ,(concat website-public-xhtml-dir-short "weblog.html") "")
("Photo Albums" "/albums/index.html" "")
)
)
(setq muse-xhtml-license
"<!-- Creative Commons Licence -->
<div id=\"license\">
<div id=\"licenseim\">
<a rel=\"license\"
href=\"http://creativecommons.org/licenses/by-sa/3.0/\">
<img
src=\"http://i.creativecommons.org/l/by-sa/3.0/88x31.png\"
alt=\"Creative Commons License\" border=\"0\" />
</a>
</div>
<div id=\"licensetx\">
The content of this site is licensed under
<a rel=\"license\"
href=\"http://creativecommons.org/licenses/by-sa/3.0/\">
Creative Commons Attribution-Share Alike 3.0 License</a>.
</div>
</div>
<!-- /Creative Commons Licence -->
<!--
<rdf:RDF xmlns=\"http://web.resource.org/cc/\"
xmlns:dc=\"http://purl.org/dc/elements/1.1/\"
xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">
<Work rdf:about=\"\">
<dc:title>Never Ending Science</dc:title>
<dc:date>2005</dc:date>
<dc:description>Markus Gattol's Weblog</dc:description>
<dc:creator><Agent>
<dc:title><lisp>the-authors-name</lisp></dc:title>
</Agent></dc:creator>
<dc:rights><Agent>
<dc:title><lisp>the-authors-name</lisp></dc:title>
</Agent></dc:rights>
<dc:type rdf:resource=\"http://purl.org/dc/dcmitype/Text\" />
<dc:source rdf:resource=\"<lisp>remote-http-root</lisp>/\"/>
<license rdf:resource=\"http://creativecommons.org/licenses/by-sa/3.0/\" />
</Work>
<License rdf:about=\"http://creativecommons.org/licenses/by-sa/3.0/\">
<permits rdf:resource=\"http://web.resource.org/cc/Reproduction\" />
<permits rdf:resource=\"http://web.resource.org/cc/Distribution\" />
<requires rdf:resource=\"http://web.resource.org/cc/Notice\" />
<requires rdf:resource=\"http://web.resource.org/cc/Attribution\" />
<permits rdf:resource=\"http://web.resource.org/cc/DerivativeWorks\" />
<requires rdf:resource=\"http://web.resource.org/cc/ShareAlike\" />
</License>
</rdf:RDF>
-->"
)
(setq muse-html-meta-content-type "application/xhtml+xml")
(setq muse-xhtml-head
"<head>
<title><lisp>(muse-publishing-directive \"title\")</lisp></title>
<meta name=\"generator\" content=\"muse.el\" />
<meta http-equiv=\"<lisp>muse-html-meta-http-equiv</lisp>\"
content=\"<lisp>muse-html-meta-content-type</lisp>\" />
<lisp>
(let ((maintainer (muse-style-element :maintainer)))
(when maintainer
(concat \"<link rev=\\\"made\\\" href=\\\"\" maintainer \"\\\" />\")))
</lisp>
<lisp>muse-xhtml-style-sheet</lisp>
<lisp>website-favicon-image</lisp>
<script type=\"text/javascript\">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-17869550-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>"
)
(setq muse-xhtml-headline
"<div id=\"sunoheader\">
<div id=\"sunoheadertop\">
<div id=\"sunoheadertitle\">
<img id=\"sunotitleimg\"
alt=\"auf.suno\"
src=\"/misc/mm/si/components/me_thumb.jpg\" />
</div>
<div id=\"sunoheadertext\">
<div id=\"sunoheadeng\">
Connector, geek, investor, agnostic, sportsman, libertarian, business enabler, globetrotter, <a href=\"/ws/business_global.html\">cosmopolitan</a>, autodidact, funny finch, tech evangelist,<br/>
socially liberal but fiscally conservative, innovator, artist, software developer, Schöngeist ... elegantiorum litterarum amans oder studiosus ...<br/><br/>
This is the website of Markus Gattol.
It is composed, driven and <a href=\"/ws/debian_security.html\">secured</a>/<a href=\"/ws/dm-crypt_luks.html\">encrypted</a> exclusively by Open Source Software.
The speciality of this<br/> website is that it is seamlessly integrating into my daily working environment (<a href=\"/ws/python.html\">Python</a> + <a href=\"/ws/mongodb.html\">MongoDB</a> + <a href=\"/ws/debian_notes_cheat_sheets.html\">Linux</a> + <a href=\"/ws/ssh.html\">SSH</a> + <a href=\"/ws/scm.html\">GIT</a>)
which therefore means<br/> it becomes a fully fledged and automatized publishing and communication platform. It will be under construction until 2014.<br/><br/>
<a href=\"http://en.wikipedia.org/wiki/Free-software\">Open Source / Free Software</a>, because freedom is in everyone's language ...<br/>Frihed Svoboda Libertà Vrijheid เสรีภาพ Liberté Freiheit Cê̤ṳ-iù Ελευθερία Свобода חרות Bebas Libertada 自由
</div>
</div>
<div id=\"sunoheaderbottom\">
<img id=\"sunoheadimg\"
alt=\"auf.suno\"
src=\"/misc/mm/si/components/line_grey.png\" />
</div>
</div>
</div>"
)
(setq muse-xhtml-header
"<lisp>muse-xhtml-doctype</lisp>
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<lisp>muse-xhtml-head</lisp>
<body>
<div id=\"header\">
<lisp>muse-xhtml-headline</lisp>
</div>
<table id=\"body\"><tr valign=\"top\">
<td id=\"left\">
<lisp>(muse-xhtml-menu muse-project-menu-list)</lisp>
</td>
<td id=\"content\">
<table class=\"headline\">
<tr class=\"headline\">
<td class=\"leftheadline\">
<div class=\"info\">
<div class=\"title\">
<lisp>(muse-publishing-directive \"title\")</lisp>
</div>
<div class=\"status\">
<lisp>(muse-publish-status)</lisp>
</div>
<div class=\"pagecode\">
<lisp>(muse-publish-pagecode)</lisp>
</div>
<div class=\"lastchange\">
Last changed: <lisp>(my-date-insert-3)</lisp>
</div>
<div class=\"about\">
<strong>Abstract:</strong><br /><hr />
<lisp>(muse-publishing-directive \"about\")</lisp>
</div>
</div>
</td>
<lisp>(muse-publish-content)</lisp>
</tr>
</table>
<!-- Page -->\n"
)
(setq muse-xhtml-footer
"<!-- End of page -->\n
</td>
</tr>
</table>
<div id=\"footer\">
<lisp>muse-xhtml-license</lisp>
</div>
</body>
</html>"
)
(setq planner-xhtml-header
"<lisp>muse-xhtml-doctype</lisp>
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<lisp>muse-xhtml-head</lisp>
<body>
<div id=\"header\">
<lisp>muse-xhtml-headline</lisp>
</div>
<table id=\"body\"><tr valign=\"top\">
<td id=\"left\">
<lisp>(muse-xhtml-menu muse-project-menu-list)</lisp>
</td>
<td id=\"content\">
<table class=\"headline\">
<tr class=\"headline\">
<td class=\"leftheadline\">
<div class=\"info\">
<div class=\"title\">
<lisp>(muse-publishing-directive \"title\")</lisp>
</div>
<div class=\"status\">
<lisp>(muse-publish-status)</lisp>
</div>
<div class=\"lastchange\">
Last changed: <lisp>(my-date-insert-3)</lisp>
</div>
</div>
</td>
<lisp>(muse-publish-content)</lisp>
</tr>
</table>
<!-- Page -->\n"
)
(setq planner-xhtml-footer
"<!-- End of page -->
</td>
</table>
<div id=\"footer\">
<lisp>muse-xhtml-license</lisp>
</div>
</body>
</html>"
)
(setq muse-journal-date-format "%A, %Y-%m-%d ")
(setq muse-journal-rss-base-url (concat remote-http-root "/blog/"))
(setq muse-journal-html-entry-template
"<div class=\"entry\">
<a name=\"%anchor%\" style=\"text-decoration: none\"> </a>
<div class=\"entry-body\">
<div class=\"entry-head\">
<div class=\"entry-date\">
<span class=\"date\">%date%</span>
</div>
<div class=\"entry-title\">
<h2>%title%</h2>
</div>
</div>
<div class=\"entry-text\">
%text%
</div>
</div>
</div>\n\n"
)
(require 'remember-planner)
(add-hook 'remember-mode-hook (lambda () (abbrev-mode t)))
(setq remember-handler-functions '(remember-planner-append))
(setq remember-annotation-functions planner-annotation-functions)
(require 'planner)
(setq planner-carry-tasks-forward 0)
(setq planner-renumber-notes-automatically t)
(add-hook 'planner-mode-hook 'allout-mode)
(defun planner-dpt ()
"Template to build new planner day pages."
(insert
"#contentdepth 2\n<literal><div class=\"navigate_daypages\"></literal>\n[[<lisp>(planner-get-previous-existing-day (planner-page-name))</lisp>][< Previous Day]] [[/pim/planner_index.html#overview][| Index |]] [[<lisp>(planner-get-next-existing-day (planner-page-name))</lisp>][Next Day >]]\n<literal></div></literal>\n\n* Schedule\n\n* Index of Note Headlines\n\n<notes>\n\n* Notes\n\n* Tasks\n"
)
)
(setq planner-day-page-template 'planner-dpt)
(defun planner-ppt ()
"Template to build new planner plan/project pages."
(insert
"#title Insert Title ...
#status notok | Project is in its early stage.
#contentdepth 2
The reader can use either one of the two links below to *center* himself
again i.e. either go to the *index page* or the *main page* of Suno Ano's
to-the-net-published PIM (Personal Information Manager) system data.
Pick the first one to start at the very beginning. This one explains
what the schedule is, how to read it i.e. a description of certain
symbols etc., why it is so valuable to Suno and how it works. Pick the
second one if you already know about the PIM (Personal Information
Manager) system Suno uses and how he uses it to manage his schedule.
You should know all the different symbols and icons and what they
determine in order to be able to understand the information below. If
you have problems to understand it, then pick the first link, take
your time to read and then come back.
1. Back to the [[/ws/my_schedule.html][main page]] of Suno Ano's schedule. The main page has a
[[/ws/my_schedule.html#how_to_read_the_schedule][section]] which describes how to read this pages.
2. Back to PIM (Personal Information Manager) [[/pim/planner_index.html#overview][index]]. All pages in
Suno's schedule can be reached from the index page -- it is the
center of Suno's to-the-net-published PIM data.
The sections below match the GTD (Getting Things Done) [[/ws/gtd.html#planning][planning]] major
model. There are three special sections -- *Index of Note Headlines*, *Notes* and *Tasks*
contain data that is generated from the PIM (Personal Information Manager) system. *Index of Note Headlines* is not part of the planning major model
but just in place to provide an index for *Notes* which matches the *Brainstorming* part of the planning major model. The *Tasks* section matches the
*Identifying next Actions* phase of the planning major model.
* Defining the Purpose\n* Envisioning the Outcome\n* Index of Note Headlines\n<notes>\n* Notes\n* Organizing / Project Plan\n* Tasks\n"
)
)
(setq planner-plan-page-template 'planner-ppt)
(require 'planner-cyclic)
(setq planner-cyclic-diary-file
(concat emacs-root-dir "planner_cyclic/planner_cyclic_tasks_file"))
(setq planner-cyclic-diary-nag nil)
(setq planner-appt-schedule-cyclic-behaviour 'future)
(require 'planner-id)
(setq planner-id-add-task-id-flag t)
(setq planner-id-update-automatically t)
(setq planner-id-tracking-file
(concat emacs-root-dir "planner_id/planner_id_tracking_file"))
(require 'planner-rank)
(setq planner-sort-tasks-key-function 'planner-sort-tasks-by-rank)
(add-hook 'planner-create-task-from-buffer-hook 'planner-rank-change)
(add-hook 'planner-create-task-from-buffer-hook 'planner-rank-update-all)
(add-hook 'planner-create-task-from-buffer-hook 'planner-sort-tasks)
(add-hook 'planner-create-task-hook 'planner-rank-change)
(add-hook 'planner-create-task-hook 'planner-rank-update-all)
(add-hook 'planner-create-task-hook 'planner-sort-tasks)
(require 'planner-deadline)
(require 'planner-trunk)
(setq planner-trunk-rule-list
'(
("\\`[0-9][0-9][0-9][0-9]\\.[0-9][0-9]\\.[0-9][0-9]\\'" nil
(
("delegated" "Delegated Tasks")
("errands" "Errands")
("travel.before" "Before Traveling")
("travel.during" "During Traveling")
("travel.after" "After Traveling")
("communicate.video" "Video Communication")
("communicate.audio" "Audio Communication")
("communicate.text" "Text Communication")
("entity.people" "Entity - People")
("entity.company" "Entity - Company")
("entity.organization" "Entity - Organization")
("place.otg" "Place - On-the-Go")
("place.home" "Place - At Home")
("place.office" "Place - At the Office")
("sk.science" "Skills and Knowledge - Science and Research")
("sk.it" "Skills and Knowledge - IT (Information Technology)")
("resource.body" "Body")
("resource.entertainment" "Entertainment")
("resource.hardware" "Hardware")
("resource.software" "Software")
("lof.1" "Levels of Focus - Level 1 also known as Life Goals")
("lof.2" "Levels of Focus - Level 2 also known as 5 year Visions")
("lof.3" "Levels of Focus - Level 3 also known as Yearly Goals")
("lof.4" "Levels of Focus - Level 4 also known as Areas of Responsibility")
("lof.5" "Levels of Focus - Level 5 also known as Current Projects")
("lof.6" "Levels of Focus - Level 6 also known as Current Actions")
("cyclic" "Cyclic Tasks:")
("taskpool" "Miscellaneous") )
)
)
)
(add-hook 'planner-mode-hook 'planner-trunk-tasks)
(require 'planner-multi)
(require 'planner-tasks-overview)
(require 'planner-notes-index)
(require 'planner-w3m)
(require 'planner-notes-index)
(require 'planner-gnus)
(planner-gnus-insinuate)
(require 'planner-bbdb)
(require 'planner-erc)
(require 'planner-publish)
(setq planner-publish-markup-regexps
'((1270 "\\(\\s-*{{Rank:\\s-+\\([0-9][\\.\\-][0-9]+\\)\\s-+-\\s-+I=\\([0-9]\\)\\s-+U=\\([0-9]\\)}}\\)" 0 "")
(1271 "{{\\([^:\n]+\\):" 0 " / Task ID: ")
(1272 "}}" 0 " / ")
(1275 "^#\\([A-C]\\)\\([0-9]*\\)\\s-*\\([_oXDCP]\\)\\s-*\\(.+\\)" 0 task)
(1280 "^\\.#[0-9]+\\s-*" 0 note)
(3200 planner-date-regexp 0 link)
)
)
(require 'planner-zoom)
(defun my-planner-unset-local-keybindings ()
"Remove some keybindings for planner major mode. In special, I
wanted to use the S-arrow keys e.g. S-<up> for navigation, so I
had to unset the local keybindings for them made by
planner-zoom."
(interactive)
(local-unset-key (kbd "S-<up>"))
(local-unset-key (kbd "S-<down>"))
(local-unset-key (kbd "S-<left>"))
(local-unset-key (kbd "S-<right>")))
(add-hook 'planner-mode-hook 'my-planner-unset-local-keybindings t)
(setq planner-rss-base-url (concat remote-http-root planner-public-rss-dir))
(setq planner-rss-category-feeds
`(("."
,(concat planner-public-rss-dir "planner.misc.xml")
,(concat "<?xml version=\"1.0\" encoding=\"utf-8\"?>
<rss version=\"2.0\">
<channel>
<title>Markus Gattol's Planner Notes RSS Feed</title>
<link>" remote-http-root "</link>
<description>This RSS feed contains notes from Planner, my PIM (Personal Information Manager) system.</description>
<language>en-us</language>
<generator>Emacs Muse</generator>
</channel></rss>\n"))
)
)
(setq planner-rss-feed-limits '(("." nil 20)))
(add-to-list 'remember-planner-append-hook 'planner-rss-add-note t)
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
(require 'bbdb)
(setq bbdb-root-dir (concat emacs-root-dir "bbdb/"))
(setq bbdb-file (concat bbdb-root-dir "bbdb"))
(bbdb-initialize 'gnus 'message 'sc)
(bbdb-insinuate-message)
(bbdb-insinuate-sc)
(setq bbdb-send-mail-style 'gnus)
(setq bbdb-dwim-net-address-allow-redundancy t)
(setq bbdb-quiet-about-name-mismatches t)
(setq bbdb-north-american-phone-numbers-p nil)
(setq bbdb-check-zip-codes-p nil)
(setq bbdb-offer-save 1)
(defun ignore-obfuscated-addresses ()
(if (string-match "public\\.gmane\\.org$" net)
nil
(if (string-match "bugs\\.launchpad\\.net$" net)
nil
'ask)))
(setq bbdb-always-add-addresses 'ignore-obfuscated-addresses)
(load "auctex.el" nil t t)
(load "preview-latex.el" nil t t)
(setq TeX-auto-save t)
(setq TeX-parse-self t)
(setq TeX-auto-untabify t)
(setq TeX-display-help t)
(setq TeX-save-query nil)
(setq TeX-clean-confirm nil)
(setq-default TeX-master nil)
(add-hook 'TeX-mode-hook (lambda () (TeX-fold-mode 1)))
(add-hook 'TeX-mode-hook (lambda () (TeX-source-specials-mode 1)))
(add-hook 'TeX-mode-hook (lambda () (TeX-toggle-debug-bad-boxes)))
(add-hook 'TeX-mode-hook (lambda () (TeX-toggle-debug-warnings)))
(add-hook 'TeX-mode-hook (lambda () (outline-minor-mode)))
(add-hook 'TeX-mode-hook (lambda () (abbrev-mode t)))
(add-hook 'TeX-mode-hook (lambda () (auto-fill-mode 1)))
(add-hook 'TeX-mode-hook 'LaTeX-math-mode)
(autoload 'etexshow "etexshow" "Browswer for ConTeXt commands." t)
(setq etexshow-xml-files-alist
`((,(concat emacs-root-dir "libs/etexshow/cont-en.xml") .
,(concat "/tmp/cont-en.cache"))))
(setq etexshow-comment-file
(concat emacs-root-dir "libs/etexshow/cont-en-comments.xml"))
(setq TeX-PDF-mode t)
(setq revert-without-query '(".+pdf$"))
(add-hook 'doc-view-mode-hook 'auto-revert-mode)
(require 'ecb)
(setq ecb-layout-name "leftright2")
(require 'dvc-autoloads)
(dvc-insinuate-gnus)
(dvc-dired-hook)
(setq dvc-config-directory (concat emacs-root-dir "libs/scm/dvc_config/"))
(setq xgit-log-max-count '5000)
(setq dvc-tips-enabled 'nil)
(require 'ediff)
(setq ediff-split-window-function 'split-window-horizontally)
(setq diff-switches "-U 4")
(require 'css-mode)
(add-to-list 'auto-mode-alist '("\\.css\\'" . css-mode))
(require 'python)
(add-hook 'python-mode-hook 'pylint-python-hook)
(add-hook 'python-mode-hook 'eldoc-mode)
(global-set-key (kbd "s-l") 'sort-lines)
(global-set-key (kbd "s-<right>") 'text-scale-increase)
(global-set-key (kbd "s-<left>") 'text-scale-decrease)
(global-set-key (kbd "s-<tab>") 'text-scale-adjust)
(global-set-key (kbd "s-z") 'delete-blank-lines)
(require 'midnight)
(setq midnight-delay '14400)
(setq clean-buffer-list-delay-general '2)
(require 'linemark)
(global-set-key (kbd "s-s") 'viss-bookmark-toggle)
(global-set-key (kbd "s-<up>") 'viss-bookmark-prev-buffer)
(global-set-key (kbd "s-<down>") 'viss-bookmark-next-buffer)
(global-set-key (kbd "s-c") 'viss-bookmark-clear-all-buffer)
(global-set-key (kbd "C-y") 'suspend-frame)
(global-set-key (kbd "C-z") 'yank)
(global-set-key (kbd "M-z") 'yank-pop)
(global-set-key [S-down-mouse-1] 'flyspell-correct-word)
(global-set-key (kbd "C-c s") 'just-one-space)
(global-set-key (kbd "C-c D") 'my-remove-duplicates)
(global-set-key (kbd "C-c C") 'my-compute-replace-region)
(global-set-key (kbd "C-c R") 'my-reverse-chars-in-region)
(global-set-key (kbd "C-c U") 'my-unique-lines)
(global-set-key (kbd "C-x p b") 'pastie-buffer)
(global-set-key (kbd "C-x p r") 'pastie-region)
(global-set-key (kbd "C-x p g") 'pastie-get)
(global-set-key (kbd "C-x w") 'wtf-is)
(global-set-key (kbd "<f8> s") 'bbdb-snarf)
(global-set-key (kbd "<f1> K") 'save-buffers-kill-terminal)
(global-set-key (kbd "C-x C-c") 'capitalize-region)
(global-set-key (kbd "M-&") 'replace-string)
(global-set-key (kbd "s-1") 'my-surround-sexp-0)
(global-set-key (kbd "s-2") 'my-surround-sexp-1)
(global-set-key (kbd "s-3") 'my-surround-sexp-2)
(global-set-key (kbd "M-S-<left>") (lambda () (interactive) (scroll-left 2)))
(global-set-key (kbd "M-S-<right>") (lambda () (interactive) (scroll-right 2)))
(global-set-key (kbd "M-S-<up>") (lambda () (interactive) (scroll-up 3)))
(global-set-key (kbd "M-S-<down>") (lambda () (interactive) (scroll-down 3)))
(global-set-key (kbd "<f7> i") 'dvc-init)
(global-set-key (kbd "<f7> d") 'dvc-dired-jump)
(global-set-key (kbd "<f7> S") 'dvc-status)
(global-set-key (kbd "<f7> D") 'dvc-diff)
(global-set-key (kbd "<f7> C") 'dvc-changelog)
(global-set-key (kbd "<f7> B") 'dvc-bookmarks)
(global-set-key (kbd "<f7> L") 'dvc-open-internal-log-buffer)
(global-set-key (kbd "<f7> P") 'dvc-show-process-buffer)
(global-set-key (kbd "<f7> E") 'dvc-show-last-error-buffer)
(global-set-key (kbd "<f10> W") 'w3m)
(defun my-w3m-unset-local-keybindings ()
"Remove some keybindings for w3m major mode. In special, I wanted
to use the arrow keys for navigation, so I had to unset the local
keybindings for them."
(interactive)
(local-unset-key (kbd "<up>"))
(local-unset-key (kbd "<down>"))
(local-unset-key (kbd "<left>"))
(local-unset-key (kbd "<right>")))
(add-hook 'w3m-mode-hook 'my-w3m-unset-local-keybindings)
(add-hook 'w3m-mode-hook
'(lambda ()
(define-key w3m-mode-map (kbd "S") 'my-interactive-w3m-search)
(define-key w3m-mode-map (kbd "s") 'w3m-search)
(define-key w3m-mode-map (kbd "<f10> c u") 'my-w3m-copy-url-at-point)
(define-key w3m-mode-map (kbd "<tab>") 'w3m-next-anchor)
(define-key w3m-mode-map (kbd "<backtab>") 'w3m-previous-anchor)
(define-key w3m-mode-map (kbd "<delete>") 'w3m-scroll-down-or-previous-url)
(define-key w3m-mode-map (kbd "<f10> v p") 'w3m-view-this-url)
(define-key w3m-mode-map (kbd "<f10> v e") 'w3m-view-url-with-external-browser)
(define-key w3m-mode-map (kbd "<f10> v n") 'w3m-view-this-url-new-session)
(define-key w3m-mode-map (kbd "n") 'w3m-view-next-page)
(define-key w3m-mode-map (kbd "p") 'w3m-view-previous-page)
(define-key w3m-mode-map (kbd "=") 'w3m-view-header)
(define-key w3m-mode-map (kbd "\\") 'w3m-view-source)
(define-key w3m-mode-map (kbd "^") 'w3m-view-parent-page)
(define-key w3m-mode-map (kbd "<mouse-2>") 'w3m-mouse-view-this-url)
(define-key w3m-mode-map (kbd "S-<mouse-2>") 'w3m-mouse-view-this-url-new-session)
(define-key w3m-mode-map (kbd "<f10> a c") 'w3m-bookmark-add-current-url)
(define-key w3m-mode-map (kbd "<f10> a p") 'w3m-bookmark-add-this-url)
(define-key w3m-mode-map (kbd "+") 'w3m-antenna-add-current-url)
(define-key w3m-mode-map (kbd "A") 'w3m-antenna)
(define-key w3m-mode-map (kbd "<f10> p u") 'w3m-print-this-url)
(define-key w3m-mode-map (kbd "<f10> p c") 'w3m-print-current-url)
(define-key w3m-mode-map (kbd "<f10> d c") 'w3m-download)
(define-key w3m-mode-map (kbd "<f10> d p") 'w3m-download-this-url)
(define-key w3m-mode-map (kbd "<f10> g u") 'w3m-goto-url)
(define-key w3m-mode-map (kbd "<f10> g n") 'w3m-goto-url-new-session)
(define-key w3m-mode-map (kbd "<f10> h") 'w3m-gohome)
(define-key w3m-mode-map (kbd "<f10> i t") 'w3m-toggle-inline-images)
(define-key w3m-mode-map (kbd "<f10> i s") 'w3m-save-image)
(define-key w3m-mode-map (kbd "<f10> n") 'w3m-namazu)
(define-key w3m-mode-map (kbd "h") 'w3m-history)
(define-key w3m-mode-map (kbd "H") 'w3m-db-history)
(define-key w3m-mode-map (kbd "R") 'w3m-reload-this-page)
(define-key w3m-mode-map (kbd "v") 'w3m-bookmark-view)
(define-key w3m-mode-map (kbd "<f10> w") 'w3m-weather)
(define-key w3m-mode-map (kbd "]") 'w3m-next-form)
(define-key w3m-mode-map (kbd "[") 'w3m-previous-form)
(define-key w3m-mode-map (kbd "}") 'w3m-next-image)
(define-key w3m-mode-map (kbd "{") 'w3m-previous-image)
(define-key w3m-mode-map (kbd "<f10> <f10>") 'w3m-submit-form)
(define-key w3m-mode-map (kbd "q") 'w3m-close-window)
(define-key w3m-mode-map (kbd "Q") 'w3m-quit)
)
)
(global-set-key (kbd "C-x c") 'command-history)
(global-set-key (kbd "C-x z") 'browse-kill-ring)
(global-set-key (kbd "C-x y") 'repeat)
(global-set-key (kbd "C-c C-^") 'underhat-region)
(global-set-key (kbd "C-c e") 'erase-buffer)
(global-set-key (kbd "M-Q") 'unfill-paragraph)
(global-set-key (kbd "M-n") 'number-lines-region)
(global-set-key (kbd "<f5> D") 'dired-other-frame)
(global-set-key (kbd "<f5> m r")
(lambda () (interactive)
(dired-mark-files-in-region
(region-beginning) (region-end)))
)
(global-set-key (kbd "<f5> c d") 'dired-compare-directories)
(setq wdired-allow-to-change-permissions t)
(global-set-key (kbd "<f5> f n") 'find-name-dired) (global-set-key (kbd "<f5> f c") 'find-grep-dired) (global-set-key (kbd "<f5> f l") 'locate-with-filter)
(global-set-key (kbd "<f5> o a") 'dired-omit-here-always)
(global-set-key (kbd "<f5> v d") 'dired-virtual)
(global-set-key (kbd "<f5> m e") 'dired-mark-extension)
(global-set-key (kbd "<f5> m s") 'dired-mark-sexp)
(global-set-key (kbd "<f5> f e") 'dired-flag-extension)
(fset 'my-window-split
[?\C-x ?3 ?\C-x ?2])
(fset 'my-open-and-arrange-buffers
[kp-enter M-up S-up ?\C-x ?b ?i ?m ?a ?g ?e ?- ?d ?i ?r ?e ?d return])
(global-set-key (kbd "<f5> S") 'my-window-split) (global-set-key (kbd "<f5> A") 'my-open-and-arrange-buffers)
(global-set-key (kbd "<f5> I") (kbd "<f5> S C-t d <f5> A"))
(global-set-key (kbd "<f5> c g") 'image-dired-gallery-generate)
(global-set-key (kbd "<f5> s S") 'image-dired-slideshow-start)
(global-set-key (kbd "<f5> s s") 'image-dired-slideshow-stop)
(global-set-key (kbd "<f5> SPC") 'image-dired-slideshow-step)
(global-set-key (kbd "<f5> s a") 'image-dired-show-all-from-dir)
(global-set-key (kbd "<f5> c e") 'image-dired-copy-with-exif-file-name)
(global-set-key (kbd "<f5> c t") 'image-dired-dired-edit-comment-and-tags)
(global-set-key (kbd "<f5> d p") 'image-dired-dired-display-properties)
(global-set-key (kbd "<f5> a t") 'image-dired-tag-files)
(global-set-key (kbd "<f5> d t") 'image-dired-delete-tag)
(global-set-key (kbd "<f5> c a") 'image-dired-dired-comment-files)
(global-set-key (kbd "<f5> m t") 'image-dired-mark-tagged-files)
(global-set-key (kbd "<f5> t d") 'image-dired-display-thumbs)
(global-set-key (kbd "<f5> t a") 'image-dired-display-thumbs-append)
(global-set-key (kbd "<f5> t c") 'image-dired-create-thumbs)
(global-set-key (kbd "<f5> t D") 'image-dired-delete-char)
(global-set-key (kbd "<f5> t r") 'image-dired-refresh-thumb)
(global-set-key (kbd "C-c `") 'allout-hide-bodies)
(global-set-key (kbd "C-c ~") 'allout-show-all)
(global-set-key (kbd "C-`") 'allout-beginning-of-current-entry)
(global-set-key (kbd "C-~") 'allout-end-of-entry)
(global-set-key (kbd "s-`") 'allout-end-of-current-subtree)
(global-set-key (kbd "C-c SPC C-t") 'allout-mark-topic)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> i")
'muse-index)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "C-<return>")
'muse-html-insert-blank-line)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> q w")
'muse-insert-quotation-source-wikipedia)
(define-key muse-mode-map (kbd "<f6> q u")
'muse-insert-quotation-source-urbandictionary)
(define-key muse-mode-map (kbd "<f6> q f d")
'muse-insert-quotation-source-freedictionary)
(define-key muse-mode-map (kbd "<f6> q f c")
'muse-insert-quotation-source-free-computing-dictionary)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> f r")
'Footnote-renumber-footnotes)
(define-key muse-mode-map (kbd "<f6> f g")
'Footnote-goto-footnote)
(define-key muse-mode-map (kbd "<f6> f d")
'Footnote-delete-footnote)
(define-key muse-mode-map (kbd "<f6> f c")
'Footnote-cycle-style)
(define-key muse-mode-map (kbd "<f6> f b")
'Footnote-back-to-message)
(define-key muse-mode-map (kbd "<f6> f a")
'Footnote-add-footnote)
(define-key muse-mode-map (kbd "<f6> f i")
'Footnote-insert-numbered-footnote)
(define-key muse-mode-map (kbd "<f6> f R")
'Footnote-refresh-footnotes)
)
)
(global-set-key (kbd "<f6> T")
(lambda (tool)
(interactive
"sInsert tool respectively command name: "
)
(insert
(concat
"*** "
(shell-quote-argument tool)
"\n"
"<example>\n"
(shell-command-to-string
(concat
"debtags show "
(shell-quote-argument tool)
" | egrep '^Name:|^Package:|^Description:|^Tag'"
)
)
"</example>"
"\n"
)
)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t m")
'muse-insert-math-tags)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t e")
'muse-insert-example-tags)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t c")
'muse-insert-code-tags)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t v")
'muse-insert-verse-tags)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t C")
'muse-insert-comment-tags)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t p")
'muse-insert-python-tags)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t l")
'muse-insert-lisp-tags)
)
)
(add-hook 'muse-mode-hook
'(lambda ()
(define-key muse-mode-map (kbd "<f6> t s e")
'muse-insert-src-emacs-lisp-tags)
)
)
(global-set-key (kbd "<f9> T") 'plan)
(global-set-key (kbd "<f9> p")
(lambda () (interactive) (planner-goto-plan-page "lof.6")))
(global-set-key (kbd "<f9> P")
(lambda () (interactive) (planner-goto-plan-page "lof.5")))
(global-set-key (kbd "<f9> c") 'planner-create-task-from-buffer)
(global-set-key (kbd "<f9> C") 'planner-create-task)
(global-set-key (kbd "<f9> o") 'planner-tasks-overview-show-summary)
(global-set-key (kbd "<f9> O") 'planner-tasks-overview)
(global-set-key (kbd "<f9> g") 'planner-goto-plan-page)
(global-set-key (kbd "<f9> <kp-8>") 'planner-zoom-iup)
(global-set-key (kbd "<f9> <kp-2>") 'planner-zoom-idown)
(global-set-key (kbd "<f9> <kp-6>") 'planner-zoom-inext)
(global-set-key (kbd "<f9> <kp-4>") 'planner-zoom-iprev)
(global-set-key (kbd "<f9> -") 'planner-goto-previous-daily-page)
(global-set-key (kbd "<f9> +") 'planner-goto-next-daily-page)
(global-set-key (kbd "<f9> m u") 'planner-multi-update-task)
(global-set-key (kbd "<f9> m d") 'planner-delete-task)
(global-set-key (kbd "<f9> m D") 'planner-multi-task-delete-this-page)
(global-set-key (kbd "<f9> m e") 'planner-multi-edit-task-description)
(global-set-key (kbd "<f9> m r") 'planner-multi-replan-task)
(global-set-key (kbd "<f9> m s") 'planner-sort-tasks) (global-set-key (kbd "<f9> m m") 'planner-multi-copy-or-move-task)
(global-set-key (kbd "<f9> t x") 'planner-multi-task-xref)
(global-set-key (kbd "<f9> n x") 'planner-multi-note-xref)
(global-set-key (kbd "<f9> <up>") 'planner-raise-task)
(global-set-key (kbd "<f9> <down>") 'planner-lower-task)
(global-set-key (kbd "<f9> m U") 'planner-rank-update-all)
(global-set-key (kbd "<f9> m c") 'planner-rank-change)
(global-set-key (kbd "<f9> s o") 'planner-task-open)
(global-set-key (kbd "<f9> s p") 'planner-task-in-progress)
(global-set-key (kbd "<f9> s P") 'planner-task-pending)
(global-set-key (kbd "<f9> s d") 'planner-task-done)
(global-set-key (kbd "<f9> s D") 'planner-task-delegated)
(global-set-key (kbd "<f9> s c") 'planner-task-cancelled)
(global-set-key (kbd "<f9> d a") 'planner-deadline-add)
(global-set-key (kbd "<f9> d r") 'planner-deadline-remove)
(global-set-key (kbd "<f9> d c") 'planner-deadline-change)
(global-set-key (kbd "<f9> d u") 'planner-deadline-update)
(global-set-key (kbd "<f9> a f") 'planner-appt-forthcoming-display)
(global-set-key (kbd "<f9> a a") 'planner-appt-show-alerts)
(global-set-key (kbd "<f9> i a") 'planner-id-add-task)
(global-set-key (kbd "<f9> i A") 'planner-id-add-task-id-to-all)
(global-set-key (kbd "<f9> i s") 'planner-id-search-id)
(global-set-key (kbd "<f9> i f") 'planner-id-follow-id-at-point)
(global-set-key (kbd "<f9> i j") 'planner-id-jump-to-linked-task)
(global-set-key (kbd "<f9> R") 'remember-region)
(global-set-key (kbd "<f9> r") 'remember)
(global-set-key (kbd "<f9> n d") 'planner-multi-note-delete)
(global-set-key (kbd "<f9> n D") 'planner-multi-note-delete-this-page)
(global-set-key (kbd "<f9> n r") 'planner-replan-note)
(global-set-key (kbd "<f9> n R") 'planner-renumber-notes)
(global-set-key (kbd "<f9> n u") 'planner-update-note)
(global-set-key (kbd "<f9> n s") 'planner-search-notes)
(global-set-key (kbd "<f9> n j") 'planner-jump-to-linked-note)
(global-set-key (kbd "<f9> n c") 'planner-create-note-from-task)
(global-set-key (kbd "<f9> n a") 'planner-rss-add-note)
(global-set-key (kbd "<f8> G") 'gnus-other-frame)
(global-set-key (kbd "M-<up>") 'bs-cycle-next)
(global-set-key (kbd "M-<down>") 'bs-cycle-previous)
(global-set-key (kbd "<S-up>") 'windmove-up)
(global-set-key (kbd "<S-down>") 'windmove-down)
(global-set-key (kbd "<S-left>") 'windmove-left)
(global-set-key (kbd "<S-right>") 'windmove-right)
(global-set-key (kbd "M-<right>") 'forward-word)
(global-set-key (kbd "M-<left>") 'backward-word)
(global-set-key (kbd "C-<right>") 'forward-sexp)
(global-set-key (kbd "C-<left>") 'backward-sexp)
(global-set-key (kbd "C-S-<right>") 'forward-sentence)
(global-set-key (kbd "C-S-<left>") 'backward-sentence)
(global-set-key (kbd "C-c t f")
(fset 'toggle-flyspell-mode
(lambda () "Toggle flyspell-mode"
(interactive)
(toggle-option 'flyspell-mode)
)
)
)
(global-set-key (kbd "C-c t a")
(fset 'toggle-auto-fill-mode
(lambda () "Toggle auto-fill-mode"
(interactive)
(toggle-option 'auto-fill-mode)
)
)
)
(global-set-key (kbd "C-c t A")
(fset 'toggle-abbrev-mode
(lambda () "Toggle abbrev-mode"
(interactive)
(toggle-option 'abbrev-mode)
)
)
)
(global-set-key (kbd "C-c t d")
(fset 'toggle-dedicated-mode
(lambda () "Toggle dedicated-mode"
(interactive)
(toggle-option 'dedicated-mode)
)
)
)
(global-set-key (kbd "C-c t h")
(fset 'toggle-highlight-changes-mode
(lambda () "Toggle highlight-changes-mode"
(interactive)
(toggle-option 'highlight-changes-visible-mode)
)
)
)
(global-set-key (kbd "C-<tab>") 'indent-relative)
(global-set-key (kbd "C-c r c g") 'calc-grab-rectangle)
(global-set-key (kbd "C-c r s r") 'string-rectangle)
(global-set-key (kbd "C-c r s i") 'string-insert-rectangle)
(global-set-key (kbd "C-c r k") 'kill-rectangle)
(global-set-key (kbd "C-c r z") 'yank-rectangle)
(global-set-key (kbd "C-c r c l e") 'clear-rectangle)
(global-set-key (kbd "C-c r c l o") 'close-rectangle)
(global-set-key (kbd "C-c r d e") 'delete-rectangle)
(global-set-key (kbd "C-c r d i") 'delimit-columns-rectangle)
(global-set-key (kbd "C-c r o") 'open-rectangle)
(global-set-key (kbd "C-c r r r") 'replace-rectangle)
(require 'boxquote)
(global-set-key (kbd "C-c b z") 'boxquote-yank)
(global-set-key (kbd "C-c b r") 'boxquote-region)
(global-set-key (kbd "C-c b u") 'boxquote-unbox-region)
(global-set-key (kbd "C-c b t") 'boxquote-title)
(global-set-key (kbd "C-c b i") 'boxquote-insert-file)
(global-set-key (kbd "C-c b k") 'boxquote-kill)
(global-set-key (kbd "C-c b s") 'boxquote-shell-command)
(global-set-key (kbd "C-c b b") 'boxquote-buffer)
(global-set-key (kbd "C-c b p") 'boxquote-paragraph)
(global-set-key (kbd "C-c b n") 'boxquote-narrow-to-boxquote)
(global-set-key (kbd "C-c b w") 'boxquote-where-is)
(global-set-key (kbd "C-c b d f") 'boxquote-describe-function)
(global-set-key (kbd "C-c b d k") 'boxquote-describe-key)
(global-set-key (kbd "C-c b d v") 'boxquote-describe-variable)
(global-set-key (kbd "M-e") 'dabbrev-expand)
(global-set-key (kbd "M-E") 'dabbrev-completion)
(global-set-key (kbd "C-c o") 'recentf-interactive-complete)
(global-set-key (kbd "C-c a t")
(lambda () (interactive) (ansi-term "/bin/bash")))
(defun my-get-file-name-with-absolute-path
() (interactive)
(message "Buffer is currently visiting the file at location: %s"
buffer-file-name
)
)
(global-set-key (kbd "M-p")
(lambda () (interactive)
(progn
(my-get-file-name-with-absolute-path)
(kill-new (buffer-file-name))
)
)
)
(defun my-insert-filename-with-absolute-path (file)
"Interactively ask for file/directory name and insert absolute path at point."
(interactive "FPath: ")
(insert (expand-file-name file)))
(global-set-key (kbd "M-P") 'my-insert-filename-with-absolute-path)
(global-set-key (kbd "C-c C-SPC") 'my-sum-up-region)
(global-set-key (kbd "C-c C-u") 'describe-unbound-keys)
(global-set-key (kbd "C-c C-o") 'occur)
(global-set-key (kbd "C-c C-r") 'my-count-lines-words-characters-region)
(global-set-key (kbd "<s-prior>") 'highlight-changes-previous-change)
(global-set-key (kbd "<s-next>") 'highlight-changes-next-change)
(global-set-key (kbd "s-SPC") 'highlight-changes-remove-highlight)
(global-set-key (kbd "C-c f")
(lambda (file pattern)
(interactive
"sFortunefile to take quotation from: \nsPattern to search for: ")
(shell-command
(concat "fortune "
(shell-quote-argument file)
" -i -m "
(shell-quote-argument pattern)
" | sed 's/^%//' -"
)
(current-buffer)
)
)
)
(global-set-key (kbd "C-c <up>") '(lambda () (interactive) (recenter 1)))
(global-set-key (kbd "C-c <down>") '(lambda () (interactive) (recenter -1)))
(global-set-key (kbd "C-c SPC m") 'my-date-insert-1)
(global-set-key (kbd "C-c SPC t") 'my-date-insert-2)
(global-set-key (kbd "C-c SPC T") 'my-date-insert-5)
(global-set-key (kbd "C-c SPC w") 'my-date-insert-4)
(setq muse-html-style-sheet "<style type=\"text/css\">\n
p
{\n
margin: .4em 0 .5em 0;\n
line-height: 1.5em;\n
}\n
.verse
{\n
margin: 3em 0em 2em 0em;\n
}\n
body
{\n
font-family: Arial, Helvetica, Futura, sans-serif;\n
color: black;\n
margin: 0;\n
padding: 0;\n
font-size: 0.95em;\n
width: 98%;\n
margin-left: auto;\n
margin-right: auto;\n
}\n
h1
{\n
font-size: 2em;\n
font-weight: bold;\n
margin-top: .3em;\n
text-align: left;\n
padding-top: .3em;\n
padding-right: 0.7em;\n
}\n
h2
{\n
background: black;\n
color: #ffffff;\n
border: 1px solid #000000;\n
font-family: sans-serif;\n
font-size: 1.5em;\n
font-weight: bold;\n
height:25px;\n
margin: 6em 0em 2em 0em;\n
padding-bottom: .4em;\n
padding-left: .5em;\n
padding-right:7px;\n
padding-top: .1em;\n
}\n
h3
{\n
border: 2px dashed #535353;\n
font-family: sans-serif;\n
font-size: 1.2em;\n
font-weight: bold;\n
margin: 3em 0em 1em 0em;\n
padding-bottom: .2em;\n
padding-left: .5em;\n
padding-top: .2em;\n
}\n
h4
{\n
border-right: 1px dashed #535353;\n
border-top: 1px dashed #535353;\n
font-family: sans-serif;\n
font-size: 1.2em;\n
margin: 2em 0em 0em 0em;\n
padding-bottom: .5em;\n
padding-left: .5em;\n
padding-top: .5em;\n
}\n
h5
{\n
font-family: sans-serif;\n
font-size: 1.0em;\n
margin: 2em 0em 0em 0em;\n
padding-bottom: .5em;\n
padding-left: .5em;\n
padding-top: .5em;\n
}\n
h6
{\n
font-family: sans-serif;\n
font-size: 1em;\n
margin: 2em 3em 0em 0em;\n
padding-bottom: .5em;\n
padding-left: .5em;\n
padding-top: .5em;\n
}\n
pre
{\n
padding: 1em;\n
color: black;\n
background-color: #EDEFF2;\n
line-height: 1.1em;\n
margin: 0em 0em 2em 1.1em;\n
overflow: auto;\n
width: 98%;\n
}\n
.example
{\n
overflow-x: auto;\n
width: 700px;\n
margin-left: 8em;\n
}\n
code
{\n
background-color: #EDEFF2;\n
padding:.3em;\n
}\n
</style>")
(custom-set-variables
'(canlock-password "a2c507628f7a84656af354b9909b8d0367eb480b")
'(ecb-options-version "2.32"))
(custom-set-faces
'(default ((t nil)))
'(buffer-menu-delete-mark ((t (:background "Red" :foreground "white" :weight bold))))
'(buffer-menu-modified-mark ((t (:foreground "red" :weight bold))))
'(buffer-menu-read-only-mark ((t (:foreground "black"))))
'(buffer-menu-save-mark ((t (:background "green" :foreground "white" :weight bold))))
'(buffer-menu-size ((t (:foreground "black"))))
'(buffer-menu-star-buffer ((t (:foreground "black"))))
'(buffer-menu-time ((t (:foreground "black"))))
'(buffer-menu-view-mark ((t (:background "LightBlue" :foreground "white" :weight bold))))
'(compilation-error ((t (:foreground "red" :underline nil :height 100 :width condensed))))
'(cursor ((t (:background "green"))))
'(diff-added ((t (:inherit diff-changed :foreground "green3"))))
'(diff-removed ((t (:inherit diff-changed :foreground "DeepSkyBlue4"))))
'(flyspell-duplicate ((t (:background "Gold3" :foreground "black"))))
'(flyspell-incorrect ((t (:background "red" :foreground "black"))))
'(font-lock-comment-face ((((class color) (min-colors 88) (background light)) (:foreground "DeepSkyBlue4"))))
'(font-lock-constant-face ((((class color) (min-colors 88) (background light)) (:foreground "green3"))))
'(fringe ((((class color) (background light)) (:background "white"))))
'(gnus-button ((t nil)))
'(gnus-cite-1 ((((class color) (background light)) (:foreground "cyan4"))))
'(gnus-cite-10 ((((class color) (background light)) (:foreground "red"))))
'(gnus-cite-11 ((((class color) (background light)) (:background "red" :foreground "white"))))
'(gnus-cite-2 ((((class color) (background light)) (:foreground "dodger blue"))))
'(gnus-cite-3 ((((class color) (background light)) (:foreground "forestgreen"))))
'(gnus-cite-4 ((((class color) (background light)) (:foreground "sienna2"))))
'(gnus-cite-5 ((((class color) (background light)) (:foreground "orange2"))))
'(gnus-cite-6 ((((class color) (background light)) (:foreground "maroon3"))))
'(gnus-cite-7 ((((class color) (background light)) (:foreground "maroon2"))))
'(gnus-cite-8 ((((class color) (background light)) (:foreground "red3"))))
'(gnus-cite-9 ((((class color) (background light)) (:foreground "red2"))))
'(gnus-cite-attribution ((t (:foreground "black"))))
'(gnus-header-content ((t (:foreground "indianred4"))))
'(gnus-header-newsgroups ((t (:foreground "MidnightBlue"))))
'(gnus-signature ((t nil)))
'(gnus-summary-selected ((t (:box (:line-width 1 :color "green" :style released-button)))))
'(highlight-changes ((((min-colors 88) (class color)) (:background "gray95"))))
'(highlight-changes-delete ((((min-colors 88) (class color)) (:background "gray80"))))
'(mode-line ((((class color) (min-colors 88)) (:background "LightGreen" :foreground "black" :box (:line-width 2 :color "green" :style released-button) :height 0.8))))
'(mode-line-buffer-id ((t (:foreground "black" :weight bold))))
'(mode-line-highlight ((((class color) (min-colors 88)) (:box (:line-width 2 :color "black" :style released-button)))))
'(mode-line-inactive ((default (:weight light :height 0.8)) (((class color) (min-colors 88) (background light)) (:background "LightBlue" :foreground "black"))))
'(muse-bad-link ((t (:foreground "blue" :underline nil :weight normal))))
'(muse-comment ((((class color) (background light)) (:foreground "DeepSkyBlue4"))))
'(muse-header-1 ((t (:background "black" :foreground "white" :weight bold :height 1.5))))
'(muse-header-2 ((t (:foreground "black" :box (:line-width 1 :color "black") :weight bold :height 1.3))))
'(muse-header-3 ((t (:foreground "black" :weight bold :height 1.1))))
'(muse-header-4 ((t (:foreground "grey50" :weight bold :height 1.1))))
'(muse-header-5 ((t (:foreground "grey40" :height 0.85))))
'(muse-link ((t (:foreground "blue" :underline nil :weight normal))))
'(planner-delegated-task-face ((t (:foreground "grey40"))))
'(planner-high-priority-task-face ((t (:foreground "red1"))))
'(planner-id-face ((((class color) (background light)) (:foreground "grey60" :height 0.9))))
'(planner-in-progress-task-face ((t (:weight bold :height 1.3))))
'(planner-low-priority-task-face ((t (:foreground "black"))))
'(planner-medium-priority-task-face ((t (:foreground "orange"))))
'(planner-note-headline-face ((t (:foreground "black" :height 1.0))))
'(region ((((class color) (min-colors 88) (background light)) (:background "LightBlue"))))
'(vertical-border ((nil (:foreground "white")))))