From 8897dcf3948daf12c5019bcb57acf0cf540ea279 Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Sat, 10 Sep 2011 17:49:33 +0200 Subject: EMACS: Init style update --- .emacs.d/functions.el | 152 -------------------------------------------------- 1 file changed, 152 deletions(-) delete mode 100644 .emacs.d/functions.el (limited to '.emacs.d/functions.el') diff --git a/.emacs.d/functions.el b/.emacs.d/functions.el deleted file mode 100644 index 8ceed5b..0000000 --- a/.emacs.d/functions.el +++ /dev/null @@ -1,152 +0,0 @@ -(defun quote-region () - (interactive) - (let ((beginning (region-beginning)) - (end (region-end))) - (save-excursion - (goto-char end) - (insert ?') - (goto-char beginning) - (insert ?')))) - -(defun what-face (pos) - "Find out which face the current position uses" - (interactive "d") - (let ((face (or (get-char-property (point) 'read-face-name) - (get-char-property (point) 'face)))) - (if face - (message "Face: %s" face) - (message "No face at %d" pos)))) - -(defun my-comp-finish-function (buf str) - "Don't show compilation window if everything went ok" - (if (string-match "exited abnormally" str) - ;; there were errors - (message "compilation errors, press C-x ` to visit") - ;; no errors, make the compilation window go away in 0.5 seconds - (run-at-time 0.5 nil 'delete-windows-on buf) - (message "NO COMPILATION ERRORS!"))) - -(defun fullscreen () - "Fill the entire screen with emacs" - (interactive) - (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 - '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0)) - (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 - '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0))) - -(defun c-toggle-header-source () - "Toggle between a C source and header file" - (interactive) - (let ((ext (file-name-extension (buffer-file-name))) - (noext (file-name-sans-extension (buffer-file-name)))) - (if (string= (substring ext 0 1) "c") - (find-file (concat noext ".h")) - (find-file (concat noext ".c"))))) - -(defun browse-to-current-file () - "Show current file in browser" - (interactive) - (browse-url buffer-file-name)) - -(defun comment-line () - "Toggle comment on a line" - (interactive) - (save-excursion - (beginning-of-line) - (insert "//"))) - -(defun add-php-keywords () - "Designed for c and c-style languages - -Currently adds | & ! . + = - / % * , < > ? : ->" - ;; Add ! at the beginning of font lock - (font-lock-add-keywords - 'php-mode - '(("\\([!]\\|\\=>\\)" 1 font-lock-operator-face))) - ;; Add the rest at the end of font lock - (font-lock-add-keywords - 'php-mode - '(("\\(->\\|[|.+=&/%*,:?<>-]\\)" 1 font-lock-operator-face) - ("\\(;\\)" 1 font-lock-end-statement)) 1)) - -(defun add-html-keywords () - "Designed for html, show some smarty tags" - (font-lock-add-keywords - 'html-mode - '(("{\\(\\*.*\\*\\)}" 1 font-comment-face) - ("{\\/?\\(extends\\|block\\|foreach\\(else\\)?\\|if\\)" - 1 font-lock-builtin-face) - ("\\$\\(\\(?:\\sw\\|\\s_\\)+\\)\\(?:|\\(\\(?:\\sw\\|\\s_\\)+\\):\\)" - (1 font-lock-variable-name-face) - (2 font-lock-function-name-face)) - ("\\$\\(\\(?:\\sw\\|\\s_\\)+\\)" - 1 font-lock-variable-name-face) - ("{\\(\\(?:\\sw\\|\\s_\\)+\\).*}" - 1 font-lock-function-name-face)))) - -(defun buffer-major-mode (buffer-or-string) - "Find out which major-mode is currently used" - (with-current-buffer buffer-or-string major-mode)) - -(defun show-init-sections () - (interactive) - (occur ";;\s +.*\s +;;") - (other-window 1)) - -(defun list-functions () - (interactive) - (occur - "\\(?:\\(?:private\\|protected\\|public\\) \\)?function \\(?:\\sw\\)+(\\sw*)")) - -(defun insert-init-title (title width) - (interactive "stitle: \nnwidth: ") - (insert-char ?\; width) - (insert "\n;;") - (insert-char ?\s (floor (/ (- (- width 4.0) (length title)) 2))) - (insert title) - (insert-char ?\s (ceiling (/ (- (- width 4.0) (length title)) 2))) - (insert ";;\n") - (insert-char ?\; width)) - -(defun replace-occurrences (from to) - (save-excursion - (goto-char (point-min)) - (while (search-forward from nil t) - (replace-match to)))) - -(defun replace-html-special-chars () - (replace-occurrences "é" "é")) - -(defun on-before-save () - (if (eq (buffer-major-mode (current-buffer)) 'html-mode) - (replace-html-special-chars)) - (if (not (eq (buffer-major-mode (current-buffer)) 'markdown-mode)) - (delete-trailing-whitespace))) - -(defun on-after-save () - (let ((fname (buffer-file-name))) - (let ((suffix (file-name-extension fname))) - (if (string-equal suffix "el") - (byte-compile-file fname))))) - -(defun pretty-lambdas () - (font-lock-add-keywords - nil `(("(\\(lambda\\>\\)" - (0 (progn - (compose-region (match-beginning 1) - (match-end 1) - ?λ))))))) - -;; http://emacs-fu.blogspot.com/2009/01/navigating-through-source-code-using.html -(defun djcb-gtags-create-or-update () - "create or update the gnu global tag file" - (interactive) - (if (not (= 0 (call-process "global" nil nil nil " -p"))) ; tagfile - (let ((olddir default-directory) ; doesn't exist? - (topdir (read-directory-name - "gtags: top of source tree:" default-directory))) - (cd topdir) - (shell-command "gtags && echo 'created tagfile'") - (cd olddir)) ; restore - ;; tagfile already exists; update it - (shell-command "global -u && echo 'updated tagfile'"))) -- cgit v1.2.3-54-g00ecf