From 2969e688d4e8cc3e8fb3faea11068109877c8d76 Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Wed, 27 Jul 2011 23:47:42 +0200 Subject: EMACS: moved emacs.el to emacs.d/init.el --- compile-emacs.el | 6 - emacs.d/init.el | 342 +++++++++++++++++++++++++++++++++++++++++ emacs.d/ryuslash-load-path.el | 10 ++ emacs.el | 350 ------------------------------------------ install.sh | 4 +- 5 files changed, 353 insertions(+), 359 deletions(-) delete mode 100644 compile-emacs.el create mode 100644 emacs.d/init.el create mode 100644 emacs.d/ryuslash-load-path.el delete mode 100644 emacs.el diff --git a/compile-emacs.el b/compile-emacs.el deleted file mode 100644 index 239b8b4..0000000 --- a/compile-emacs.el +++ /dev/null @@ -1,6 +0,0 @@ -(add-to-list 'load-path "~/.emacs.d/elisp") -(add-to-list 'load-path "~/.emacs.d/naquadah-theme") -(add-to-list 'load-path "~/.emacs.d/elisp/markdown-mode") -(add-to-list 'load-path "~/.emacs.d/elisp/git-commit-mode") - -(byte-compile-file "emacs.el") diff --git a/emacs.d/init.el b/emacs.d/init.el new file mode 100644 index 0000000..4c74dec --- /dev/null +++ b/emacs.d/init.el @@ -0,0 +1,342 @@ +;; -*- mode: Emacs-Lisp; -*- +(load "~/.emacs.d/ryuslash-load-path") + +;;; Autopair +(require 'autopair) +(autopair-global-mode t) ; automatically add the other delimiter +(setq autopair-skip-criteria 'always + autopair-autowrap t + autopair-blink nil) +(setq-default autopair-dont-pair '(:string (?\' ?\") :comment (?\'))) + +;; Column marker +(defun set-column-markers (cm1 cm2) + (column-marker-1 cm1) + (column-marker-2 cm2)) + +(require 'column-marker) + +(dolist (hook '(prog-mode-hook html-mode-hook)) + (add-hook hook + (lambda () + (set-column-markers 73 81)))) + +(add-hook 'php-mode-hook + (lambda () + (set-column-markers 76 81))) + +;;; Org mode +(require 'org-crypt) +(require 'org-publish) +(setq + org-tags-exclude-from-inheritance '("crypt") + org-crypt-key "33E8CC1CC4" + org-use-fast-todo-selection t + org-default-notes-file (concat org-directory + "/notes.org") + org-outline-path-complete-in-steps t + org-return-follows-link t + org-log-into-drawer t + org-todo-keywords '((sequence "TODO(t)" + "IN PROGRESS(p)" + "WAITING(w@/!)" + "|" + "DONE(d!/!)" + "CANCELLED(c@/!)")) + org-refile-targets '((org-agenda-files :maxlevel . 5) + (nil :maxlevel . 5)) + org-todo-keyword-faces + '(("TODO" :foreground "red" :weight bold) + ("IN PROGRESS" :foreground "yellow" :weight bold) + ("DONE" :foreground "forest green" :weight bold) + ("WAITING" :foreground "orange" :weight bold) + ("CANCELLED" :foreground "orangered" :weight bold))) +(add-to-list 'auto-mode-alist '("\\.commitmsg$" . org-mode)) +(global-set-key "\C-cl" 'org-store-link) +(global-set-key "\C-cc" 'org-capture) +(global-set-key "\C-ca" 'org-agenda) +(add-hook 'org-mode-hook + (lambda () + (flyspell-mode t) + (auto-fill-mode t))) +(org-crypt-use-before-save-magic) + +;;; Rainbow delimiters +(require 'rainbow-delimiters) +(setq rainbow-delimiters-max-face-count 8) + +;;; Uniquify +(require 'uniquify) +(setq uniquify-buffer-name-style 'post-forward) + +;;; Go +(autoload 'go-mode "go-mode" "Major mode for google go" t) +(autoload 'gofmt "go-mode" "" t) +(autoload 'go-fmt-before-save "go-mode" "" t) +(add-to-list 'auto-mode-alist '("\\.go$" . go-mode)) +(add-hook 'go-mode-hook + (lambda () + (turn-off-auto-fill) + (column-marker-1 -1))) + +;;; Htmlize +(require 'htmlize) +(setq htmlize-output-type 'inline-css) + +;;; Git +(require 'git) + +;;; Markdown mode +(autoload 'markdown-mode "markdown-mode" "Major mode for Markdown" t) +(setq whitespace-style '(face trailing)) ; For use with markdown mode +(add-to-list 'auto-mode-alist '("\\.m\\(ark\\)?do?wn$". markdown-mode)) +(add-hook 'markdown-mode-hook + (lambda () + (whitespace-mode 1) + (turn-on-auto-fill))) + +;;; Zencoding mode +(autoload 'zencoding-mode "zencoding-mode" "Minor mode for zencoding" t) +(add-hook 'sgml-mode-hook 'zencoding-mode) ; Auto-start on any markup + ; modes + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; REQUIRES ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(load-file "~/.emacs.d/functions.el") +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; AUTOLOADS ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(autoload 'vala-mode "vala-mode" "Major mode for Vala" t) +(autoload 'csharp-mode "csharp-mode" "Major mode for C#" t) +(autoload 'sqlplus-mode "sqlplus" "Major mode for PL/SQL" t) +(autoload 'batch-mode "batch-mode" "Major mode for Batch" t) +(autoload 'lua-mode "lua-mode" "A Major mode for Lua" t) +(autoload 'php-mode "pi-php-mode" "Major mode for PHP" t) +(autoload 'graphviz-dot-mode "graphviz-dot-mode" "Major mode for dot" t) +(autoload 'cmake-mode "cmake-mode" "Major mode for CMake" t) +(autoload 'rainbow-mode "rainbow-mode" "Minor mode for colors" t) +(autoload 'stumpwm-mode "stumpwm-mode" "Major mode for stumpwm" t) +(autoload 'muttrc-mode "muttrc-mode" "Major mode for muttrc" t) +(autoload 'git-commit-mode "git-commit" "" t) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; VARIABLES ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(defvar font-lock-operator-face 'font-lock-operator-face) +(defvar font-lock-end-statement 'font-lock-end-statement) + +(defadvice server-create-window-system-frame + (after set-system-frame-colours ()) + "Set custom frame colours when creating the first frame on a display" + (message "Running after frame-initialize") + (setup-system-frame-colours)) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; SETTINGS ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(setq-default indent-tabs-mode nil) ; spaces, no tabs +(setq-default truncate-lines t) ; don't wrap +(setq-default php-warn-if-mumamo-off nil) ; don't warn me about this +(setq-default tab-width 4) + +(setq inhibit-startup-message t) ; Don't show welcome screen +(setq require-final-newline t) ; Always put final newline +(setq inhibit-default-init t) ; Don't load default library +(setq scroll-conservatively 101) ; scroll only one line +(setq browse-url-browser-function 'browse-url-generic) +(setq browse-url-generic-program (getenv "BROWSER")) +(setq uniquify-buffer-name-style 'reverse) +(setq jit-lock-defer-time 0.2) ; Don't fontlock immediately +(setq ido-save-directory-list-file nil) +(setq ido-auto-merge-delay-time 2) ; Wait before fixing names +(setq mouse-autoselect-window t) +(setq pop-up-windows nil) +(setq mail-header-separator "") + +(setq frame-title-format ; I don't like emacs@cloud, must have file + '(:eval ; name + (concat "emacs: " (buffer-name)))) + +(setq backup-directory-alist ; backup file location + `((".*" . ,temporary-file-directory))) + +(setq auto-save-file-name-transforms ; autosave file location + `((".*" ,temporary-file-directory t))) + +(setq default-frame-alist ; default frame settings + (append '((font . "DejaVu Sans Mono-10:antialias=true")))) + +(if window-system + (x-init) + (cli-init)) + +(fset 'yes-or-no-p 'y-or-n-p) ; switch yes or no to y or n + +(tool-bar-mode -1) ; no toolbar +(menu-bar-mode -1) ; no menubar +(scroll-bar-mode -1) ; no scrollbars +(line-number-mode -1) ; don't show line number in splitter +(global-linum-mode t) ; Show line numbers in gutter +(column-number-mode t) ; show column number in splitter +(global-font-lock-mode t) ; show syntax highlighting, old +(delete-selection-mode t) ; delete selection upon typing +(show-paren-mode t) ; show the opposite paren +(ido-mode t) + +(add-to-list 'compilation-finish-functions 'my-comp-finish-function) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; FILE ASSOCIATIONS ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(add-to-list 'auto-mode-alist '("\\.vala$" . vala-mode)) +(add-to-list 'auto-mode-alist '("\\.vapi$" . vala-mode)) +(add-to-list 'auto-mode-alist '("\\.cs$" . csharp-mode)) +(add-to-list 'auto-mode-alist '("\\.bat$" . batch-mode)) +(add-to-list 'auto-mode-alist '("\\.lua$" . lua-mode)) +(add-to-list 'auto-mode-alist '("\\.php[345]?$" . php-mode)) +(add-to-list 'auto-mode-alist '("\\.js\\(on\\)?$" . js-mode)) +(add-to-list 'auto-mode-alist '("CMakeLists\\.txt$" . cmake-mode)) +(add-to-list 'auto-mode-alist '("\\.cmake$" . cmake-mode)) +(add-to-list 'auto-mode-alist '("\\.css$" . css-mode)) +(add-to-list 'auto-mode-alist '("stumpwmrc" . stumpwm-mode)) +(add-to-list 'auto-mode-alist '(".*mutt.*" . message-mode)) +(add-to-list 'auto-mode-alist '("COMMIT_EDITMSG$" . git-commit-mode)) + +(add-to-list 'file-coding-system-alist '("\\.vala$" . utf-8)) +(add-to-list 'file-coding-system-alist '("\\.vapi$" . utf-8)) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; KEYBINDS ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(global-set-key "\C-m" 'newline-and-indent) +(global-set-key (kbd "C-x n r") 'narrow-to-region) +(global-set-key [f5] '(lambda () + (interactive) + (revert-buffer nil t nil))) +(global-set-key [M-left] 'windmove-left) +(global-set-key [M-right] 'windmove-right) +(global-set-key [M-up] 'windmove-up) +(global-set-key [M-down] 'windmove-down) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; HOOKS ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(add-hook 'before-save-hook 'on-before-save) +(add-hook 'after-save-hook 'on-after-save) +(add-hook 'prog-mode-hook 'on-prog-mode) +(add-hook 'c-mode-hook 'on-c-mode) +(add-hook 'html-mode-hook 'on-html-mode) +(add-hook 'php-mode-hook 'on-php-mode) +(add-hook 'message-mode-hook 'on-mail-mode) +(add-hook 'git-commit-mode-hook 'auto-fill-mode) +(add-hook 'css-mode-hook 'rainbow-mode) +(add-hook 'after-make-frame-functions 'setup-system-frame-colours t) + +(add-hook 'gtags-mode-hook + (lambda () + (local-set-key (kbd "M-,") 'gtags-find-tag) ; find a tag, + ; also M-. + (local-set-key (kbd "M-.") 'gtags-find-rtag))) ; reverse + ; tag + +(add-hook 'c-mode-common-hook + (lambda () + (require 'gtags) + (gtags-mode t) + (djcb-gtags-create-or-update))) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; SKELETONS ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(define-skeleton cmake-project-skeleton + "A cmake project template file" + "Name: " + "cmake_minimum_required(VERSION 2.6)\n" + "project(" str ")\n" + "\n" + "set(" str "_VERSION_MAJOR 0)\n" + "set(" str "_VERSION_MINOR 0)\n" + "set(" str "_VERSION_PATCH 0)\n" + "\n" + "set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR})\n" + "add_subdirectory(src)") + +(define-skeleton myaethon-set-varchar-docstring + "A docstring for a varchar setter" + "" + "\/* Setter for the " + (skeleton-read "name: ") + " column\n" + "\n" + '(indent-according-to-mode) + "$value: string, no longer than " + (skeleton-read "len: ") + " characters */" + '(fill-paragraph)) + +(define-skeleton myaethon-set-array-varchar-docstring + "A docstring for an array/varchar setter" + "" + '(setq name (skeleton-read "name: ")) + '(setq len (string-to-number (skeleton-read "length: "))) + '(setq size (floor (/ (- len 1) 2))) + "/* Setter for the " + name + " column\n" + "\n" + '(indent-according-to-mode) + "$value: array, with no more than " + (number-to-string size) + " elements; string, no langer than " + (number-to-string len) + " characters */" + '(fill-paragraph)) + +(define-skeleton myaethon-simple-entity + "A basic database entity" + "" + '(setq name (skeleton-read "Name: ")) + "\n" + '(indent-region (point-min) (point-max))) + +(ad-activate 'server-create-window-system-frame) +(add-php-keywords) +(add-html-keywords) +(make-face 'font-lock-operator-face) +(make-face 'font-lock-end-statement) +(set-face-foreground 'font-lock-operator-face "#EDD400") +(set-face-foreground 'font-lock-end-statement "#888A85") + +;; Custom file +(setq custom-file "~/.emacs.d/custom.el") +(load custom-file) diff --git a/emacs.d/ryuslash-load-path.el b/emacs.d/ryuslash-load-path.el new file mode 100644 index 0000000..984c136 --- /dev/null +++ b/emacs.d/ryuslash-load-path.el @@ -0,0 +1,10 @@ +(add-to-list 'load-path "~/.emacs.d/elisp") +(add-to-list 'load-path "~/.emacs.d/elisp/git-commit-mode") +(add-to-list 'load-path "~/.emacs.d/elisp/lua-mode") +(add-to-list 'load-path "~/.emacs.d/elisp/markdown-mode") +(add-to-list 'load-path "~/.emacs.d/elisp/pi-php-mode") +(add-to-list 'load-path "~/.emacs.d/elisp/rainbow") +(add-to-list 'load-path "~/.emacs.d/elisp/rainbow-delimiters") +(add-to-list 'load-path "~/.emacs.d/elisp/zencoding") + +(provide 'ryuslash-load-path) diff --git a/emacs.el b/emacs.el deleted file mode 100644 index 5d55db7..0000000 --- a/emacs.el +++ /dev/null @@ -1,350 +0,0 @@ -;; -*- mode: Emacs-Lisp; -*- -(add-to-list 'load-path "~/.emacs.d/elisp") - -;;; Autopair -(require 'autopair) -(autopair-global-mode t) ; automatically add the other delimiter -(setq autopair-skip-criteria 'always - autopair-autowrap t - autopair-blink nil) -(setq-default autopair-dont-pair '(:string (?\' ?\") :comment (?\'))) - -;; Column marker -(defun set-column-markers (cm1 cm2) - (column-marker-1 cm1) - (column-marker-2 cm2)) - -(require 'column-marker) - -(dolist (hook '(prog-mode-hook html-mode-hook)) - (add-hook hook - (lambda () - (set-column-markers 73 81)))) - -(add-hook 'php-mode-hook - (lambda () - (set-column-markers 76 81))) - -;;; Org mode -(require 'org-crypt) -(require 'org-publish) -(setq - org-tags-exclude-from-inheritance '("crypt") - org-crypt-key "33E8CC1CC4" - org-use-fast-todo-selection t - org-default-notes-file (concat org-directory - "/notes.org") - org-outline-path-complete-in-steps t - org-return-follows-link t - org-log-into-drawer t - org-todo-keywords '((sequence "TODO(t)" - "IN PROGRESS(p)" - "WAITING(w@/!)" - "|" - "DONE(d!/!)" - "CANCELLED(c@/!)")) - org-refile-targets '((org-agenda-files :maxlevel . 5) - (nil :maxlevel . 5)) - org-todo-keyword-faces - '(("TODO" :foreground "red" :weight bold) - ("IN PROGRESS" :foreground "yellow" :weight bold) - ("DONE" :foreground "forest green" :weight bold) - ("WAITING" :foreground "orange" :weight bold) - ("CANCELLED" :foreground "orangered" :weight bold))) -(add-to-list 'auto-mode-alist '("\\.commitmsg$" . org-mode)) -(global-set-key "\C-cl" 'org-store-link) -(global-set-key "\C-cc" 'org-capture) -(global-set-key "\C-ca" 'org-agenda) -(add-hook 'org-mode-hook - (lambda () - (flyspell-mode t) - (auto-fill-mode t))) -(org-crypt-use-before-save-magic) - -;;; Rainbow delimiters -(add-to-list 'load-path "~/.emacs.d/elisp/rainbow-delimiters") -(require 'rainbow-delimiters) -(setq rainbow-delimiters-max-face-count 8) - -;;; Uniquify -(require 'uniquify) -(setq uniquify-buffer-name-style 'post-forward) - -;;; Go -(autoload 'go-mode "go-mode" "Major mode for google go" t) -(autoload 'gofmt "go-mode" "" t) -(autoload 'go-fmt-before-save "go-mode" "" t) -(add-to-list 'auto-mode-alist '("\\.go$" . go-mode)) -(add-hook 'go-mode-hook - (lambda () - (turn-off-auto-fill) - (column-marker-1 -1))) - -;;; Htmlize -(require 'htmlize) -(setq htmlize-output-type 'inline-css) - -;;; Git -(require 'git) - -;;; Markdown mode -(add-to-list 'load-path "~/.emacs.d/elisp/markdown-mode") -(autoload 'markdown-mode "markdown-mode" "Major mode for Markdown" t) -(setq whitespace-style '(face trailing)) ; For use with markdown mode -(add-to-list 'auto-mode-alist '("\\.m\\(ark\\)?do?wn$". markdown-mode)) -(add-hook 'markdown-mode-hook - (lambda () - (whitespace-mode 1) - (turn-on-auto-fill))) - -;;; Zencoding mode -(add-to-list 'load-path "~/.emacs.d/elisp/zencoding") -(autoload 'zencoding-mode "zencoding-mode" "Minor mode for zencoding" t) -(add-hook 'sgml-mode-hook 'zencoding-mode) ; Auto-start on any markup - ; modes - -(add-to-list 'load-path "~/.emacs.d/elisp/git-commit-mode") -(add-to-list 'load-path "~/.emacs.d/elisp/lua-mode") -(add-to-list 'load-path "~/.emacs.d/elisp/pi-php-mode") -(add-to-list 'load-path "~/.emacs.d/elisp/rainbow") - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; REQUIRES ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -(load-file "~/.emacs.d/functions.el") -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; AUTOLOADS ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(autoload 'vala-mode "vala-mode" "Major mode for Vala" t) -(autoload 'csharp-mode "csharp-mode" "Major mode for C#" t) -(autoload 'sqlplus-mode "sqlplus" "Major mode for PL/SQL" t) -(autoload 'batch-mode "batch-mode" "Major mode for Batch" t) -(autoload 'lua-mode "lua-mode" "A Major mode for Lua" t) -(autoload 'php-mode "pi-php-mode" "Major mode for PHP" t) -(autoload 'graphviz-dot-mode "graphviz-dot-mode" "Major mode for dot" t) -(autoload 'cmake-mode "cmake-mode" "Major mode for CMake" t) -(autoload 'rainbow-mode "rainbow-mode" "Minor mode for colors" t) -(autoload 'stumpwm-mode "stumpwm-mode" "Major mode for stumpwm" t) -(autoload 'muttrc-mode "muttrc-mode" "Major mode for muttrc" t) -(autoload 'git-commit-mode "git-commit" "" t) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; VARIABLES ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(defvar font-lock-operator-face 'font-lock-operator-face) -(defvar font-lock-end-statement 'font-lock-end-statement) - -(defadvice server-create-window-system-frame - (after set-system-frame-colours ()) - "Set custom frame colours when creating the first frame on a display" - (message "Running after frame-initialize") - (setup-system-frame-colours)) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; SETTINGS ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(setq-default indent-tabs-mode nil) ; spaces, no tabs -(setq-default truncate-lines t) ; don't wrap -(setq-default php-warn-if-mumamo-off nil) ; don't warn me about this -(setq-default tab-width 4) - -(setq inhibit-startup-message t) ; Don't show welcome screen -(setq require-final-newline t) ; Always put final newline -(setq inhibit-default-init t) ; Don't load default library -(setq scroll-conservatively 101) ; scroll only one line -(setq browse-url-browser-function 'browse-url-generic) -(setq browse-url-generic-program (getenv "BROWSER")) -(setq uniquify-buffer-name-style 'reverse) -(setq jit-lock-defer-time 0.2) ; Don't fontlock immediately -(setq ido-save-directory-list-file nil) -(setq ido-auto-merge-delay-time 2) ; Wait before fixing names -(setq mouse-autoselect-window t) -(setq pop-up-windows nil) -(setq mail-header-separator "") - -(setq frame-title-format ; I don't like emacs@cloud, must have file - '(:eval ; name - (concat "emacs: " (buffer-name)))) - -(setq backup-directory-alist ; backup file location - `((".*" . ,temporary-file-directory))) - -(setq auto-save-file-name-transforms ; autosave file location - `((".*" ,temporary-file-directory t))) - -(setq default-frame-alist ; default frame settings - (append '((font . "DejaVu Sans Mono-10:antialias=true")))) - -(if window-system - (x-init) - (cli-init)) - -(fset 'yes-or-no-p 'y-or-n-p) ; switch yes or no to y or n - -(tool-bar-mode -1) ; no toolbar -(menu-bar-mode -1) ; no menubar -(scroll-bar-mode -1) ; no scrollbars -(line-number-mode -1) ; don't show line number in splitter -(global-linum-mode t) ; Show line numbers in gutter -(column-number-mode t) ; show column number in splitter -(global-font-lock-mode t) ; show syntax highlighting, old -(delete-selection-mode t) ; delete selection upon typing -(show-paren-mode t) ; show the opposite paren -(ido-mode t) - -(add-to-list 'compilation-finish-functions 'my-comp-finish-function) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; FILE ASSOCIATIONS ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(add-to-list 'auto-mode-alist '("\\.vala$" . vala-mode)) -(add-to-list 'auto-mode-alist '("\\.vapi$" . vala-mode)) -(add-to-list 'auto-mode-alist '("\\.cs$" . csharp-mode)) -(add-to-list 'auto-mode-alist '("\\.bat$" . batch-mode)) -(add-to-list 'auto-mode-alist '("\\.lua$" . lua-mode)) -(add-to-list 'auto-mode-alist '("\\.php[345]?$" . php-mode)) -(add-to-list 'auto-mode-alist '("\\.js\\(on\\)?$" . js-mode)) -(add-to-list 'auto-mode-alist '("CMakeLists\\.txt$" . cmake-mode)) -(add-to-list 'auto-mode-alist '("\\.cmake$" . cmake-mode)) -(add-to-list 'auto-mode-alist '("\\.css$" . css-mode)) -(add-to-list 'auto-mode-alist '("stumpwmrc" . stumpwm-mode)) -(add-to-list 'auto-mode-alist '(".*mutt.*" . message-mode)) -(add-to-list 'auto-mode-alist '("COMMIT_EDITMSG$" . git-commit-mode)) - -(add-to-list 'file-coding-system-alist '("\\.vala$" . utf-8)) -(add-to-list 'file-coding-system-alist '("\\.vapi$" . utf-8)) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; KEYBINDS ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(global-set-key "\C-m" 'newline-and-indent) -(global-set-key (kbd "C-x n r") 'narrow-to-region) -(global-set-key [f5] '(lambda () - (interactive) - (revert-buffer nil t nil))) -(global-set-key [M-left] 'windmove-left) -(global-set-key [M-right] 'windmove-right) -(global-set-key [M-up] 'windmove-up) -(global-set-key [M-down] 'windmove-down) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; HOOKS ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(add-hook 'before-save-hook 'on-before-save) -(add-hook 'after-save-hook 'on-after-save) -(add-hook 'prog-mode-hook 'on-prog-mode) -(add-hook 'c-mode-hook 'on-c-mode) -(add-hook 'html-mode-hook 'on-html-mode) -(add-hook 'php-mode-hook 'on-php-mode) -(add-hook 'message-mode-hook 'on-mail-mode) -(add-hook 'git-commit-mode-hook 'auto-fill-mode) -(add-hook 'css-mode-hook 'rainbow-mode) -(add-hook 'after-make-frame-functions 'setup-system-frame-colours t) - -(add-hook 'gtags-mode-hook - (lambda () - (local-set-key (kbd "M-,") 'gtags-find-tag) ; find a tag, - ; also M-. - (local-set-key (kbd "M-.") 'gtags-find-rtag))) ; reverse - ; tag - -(add-hook 'c-mode-common-hook - (lambda () - (require 'gtags) - (gtags-mode t) - (djcb-gtags-create-or-update))) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; SKELETONS ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(define-skeleton cmake-project-skeleton - "A cmake project template file" - "Name: " - "cmake_minimum_required(VERSION 2.6)\n" - "project(" str ")\n" - "\n" - "set(" str "_VERSION_MAJOR 0)\n" - "set(" str "_VERSION_MINOR 0)\n" - "set(" str "_VERSION_PATCH 0)\n" - "\n" - "set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR})\n" - "add_subdirectory(src)") - -(define-skeleton myaethon-set-varchar-docstring - "A docstring for a varchar setter" - "" - "\/* Setter for the " - (skeleton-read "name: ") - " column\n" - "\n" - '(indent-according-to-mode) - "$value: string, no longer than " - (skeleton-read "len: ") - " characters */" - '(fill-paragraph)) - -(define-skeleton myaethon-set-array-varchar-docstring - "A docstring for an array/varchar setter" - "" - '(setq name (skeleton-read "name: ")) - '(setq len (string-to-number (skeleton-read "length: "))) - '(setq size (floor (/ (- len 1) 2))) - "/* Setter for the " - name - " column\n" - "\n" - '(indent-according-to-mode) - "$value: array, with no more than " - (number-to-string size) - " elements; string, no langer than " - (number-to-string len) - " characters */" - '(fill-paragraph)) - -(define-skeleton myaethon-simple-entity - "A basic database entity" - "" - '(setq name (skeleton-read "Name: ")) - "\n" - '(indent-region (point-min) (point-max))) - -(ad-activate 'server-create-window-system-frame) -(add-php-keywords) -(add-html-keywords) -(make-face 'font-lock-operator-face) -(make-face 'font-lock-end-statement) -(set-face-foreground 'font-lock-operator-face "#EDD400") -(set-face-foreground 'font-lock-end-statement "#888A85") - -;; Custom file -(setq custom-file "~/.emacs.d/custom.el") -(load custom-file) diff --git a/install.sh b/install.sh index 4cfb500..38f758d 100755 --- a/install.sh +++ b/install.sh @@ -48,9 +48,7 @@ linkmy conkeror .conkeror linkmy conkyrc .conkyrc copymy conky_box.lua .conky_box.lua # EMACS -linkmy emacs.el .emacs.el -emacs --script compile-emacs.el || return 1 -linkmy emacs.elc .emacs.elc +emacs --batch -l emacs.d/init.el --eval "(byte-compile-file \"emacs.d/init.el\")" || return 1 linkmy emacs.d .emacs.d # FONTS linkmy fonts.conf .fonts.conf -- cgit v1.2.3-54-g00ecf