diff options
-rw-r--r-- | emacs | 11 | ||||
-rw-r--r-- | emacs.d/lisp/self-compile-mode.el | 61 | ||||
-rw-r--r-- | emacs.d/lisp/self-compile-mode.elc | bin | 0 -> 2030 bytes |
3 files changed, 63 insertions, 9 deletions
@@ -398,15 +398,8 @@ (save-excursion (flyspell-buffer))) (ad-activate 'ispell-pdict-save t) -; byte-compile .emacs -(defun autocompile nil - "compile itself if ~/.emacs" - (interactive) - (require 'bytecomp) - (if (or (string= (buffer-file-name) (expand-file-name "~/.emacs")) - (string= (buffer-file-name) (expand-file-name "~/.dotfiles/emacs"))) - (byte-compile-file "~/.dotfiles/emacs"))) -(add-hook 'after-save-hook 'autocompile) +;; auto compile files +(require 'self-compile-mode) ; keine Abfrage wenn ein template existiert (setq template-query nil) diff --git a/emacs.d/lisp/self-compile-mode.el b/emacs.d/lisp/self-compile-mode.el new file mode 100644 index 0000000..637f3f1 --- /dev/null +++ b/emacs.d/lisp/self-compile-mode.el @@ -0,0 +1,61 @@ +;;; self-compile-mode.el --- A simple minor mode for byte compiling files. + +;; Copyright (C) 2012 Alexander Sulfrian + +;; Author: Alexander Sulfrian <alexander@sulfrian.net> +;; Created: 2012-03-14 +;; Keywords: minor-mode compile lisp + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. +;; +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with this program; if not, write to the Free Software +;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +;;; Commentary: + +;; Simply activate this minor mode and the file in the buffer should +;; get byte-compiled after you safe it. +;; +;; Tip: Enable this mode wiht local file variables in the header or +;; footer of an elisp file, to byte compile it every time. You could +;; try for example the following code in the header of the file: +;; ;; -*- self-compile-mode: t -*- + +;;; Code: + +(provide 'self-compile-mode) + +(defun autocompile nil + "compile itself if ~/.emacs" + (interactive) + (require 'bytecomp) + (if self-compile-mode + (byte-compile-file (buffer-file-name)))) + +(define-minor-mode self-compile-mode + "Toggle Self Compile mode. +With no argument, this command toggles the mode. +Non-null prefix argument turns on the mode. +Null prefix argument turns off the mode. + +When Self Compile mode is enabled, the file gets +byte compiled after saving." + :init-value nil + :lighter " Compile") +(add-hook 'after-save-hook 'autocompile) + +;; Local variables: +;; self-compile-mode: t +;; end: + +;;; self-compile-mode.el ends here + diff --git a/emacs.d/lisp/self-compile-mode.elc b/emacs.d/lisp/self-compile-mode.elc Binary files differnew file mode 100644 index 0000000..5f3be8d --- /dev/null +++ b/emacs.d/lisp/self-compile-mode.elc |