X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=dot-files%2F_emacs_el;h=34b7454ccf425af97a8a65fba7a9098258a32d50;hb=b207f2bb8d21a031e29191329c94560596692e11;hp=632ebefe3dd4f39f9469ea9bcfb1ce38d6a001e2;hpb=6b5ddfaf9fbe65cd2ef9fd91a377065a83ebef5f;p=sugar.git diff --git a/dot-files/_emacs_el b/dot-files/_emacs_el index 632ebef..34b7454 100644 --- a/dot-files/_emacs_el +++ b/dot-files/_emacs_el @@ -42,6 +42,42 @@ ;; windmove (windmove-default-keybindings) +;; file renaming +;; Originally from stevey, adapted to support moving to a new directory. +(defun rename-file-and-buffer (new-name) + "Renames both current buffer and file it's visiting to NEW-NAME." + (interactive + (progn + (if (not (buffer-file-name)) + (error "Buffer '%s' is not visiting a file!" (buffer-name))) + ;; Disable ido auto merge since it too frequently jumps back to the original + ;; file name if you pause while typing. Reenable with C-z C-z in the prompt. + (let ((ido-auto-merge-work-directories-length -1)) + (list (read-file-name (format "Rename %s to: " (file-name-nondirectory + (buffer-file-name)))))))) + (if (equal new-name "") + (error "Aborted rename")) + (setq new-name (if (file-directory-p new-name) + (expand-file-name (file-name-nondirectory + (buffer-file-name)) + new-name) + (expand-file-name new-name))) + ;; Only rename if the file was saved before. Update the + ;; buffer name and visited file in all cases. + (if (file-exists-p (buffer-file-name)) + (rename-file (buffer-file-name) new-name 1)) + (let ((was-modified (buffer-modified-p))) + ;; This also renames the buffer, and works with uniquify + (set-visited-file-name new-name) + (if was-modified + (save-buffer) + ;; Clear buffer-modified flag caused by set-visited-file-name + (set-buffer-modified-p nil))) + + (setq default-directory (file-name-directory new-name)) + + (message "Renamed to %s." new-name)) + ;; Host specific configuration ------------------------------------------------ (let ((host (system-name))) (cond ((equal host "aria.cielonegro.org") @@ -125,20 +161,34 @@ (load-file path) (message "Warning: file %s is absent" path))) -;; session -(require-if-present 'session) +;; ditz +(require-if-present 'ditz) ;; flyspell (require-if-present 'flyspell) -;; ditz -(require-if-present 'ditz) +;; jaspace +(require-if-present 'jaspace) + +;; glsl +(autoload 'glsl-mode "glsl-mode" nil t) +(add-to-list 'auto-mode-alist '("\\.glsl\\'" . glsl-mode)) +(add-to-list 'auto-mode-alist '("\\.vert\\'" . glsl-mode)) +(add-to-list 'auto-mode-alist '("\\.frag\\'" . glsl-mode)) +(add-to-list 'auto-mode-alist '("\\.geom\\'" . glsl-mode)) + +;; rust +(autoload 'rust-mode "rust-mode" nil t) +(add-to-list 'auto-mode-alist '("\\.rs\\'" . rust-mode)) + +;; session +(require-if-present 'session) ;; mediawiki (require-if-present 'mediawiki) -;; jaspace -(require-if-present 'jaspace) +;; midnight +(require-if-present 'midnight) ;; color-theme (require-if-present 'color-theme) @@ -295,8 +345,7 @@ Will prompt you shell name when you type `C-u' before this command." t) (autoload 'cleite "cleite" "Cleite RSS Aggregator -- Emacs Interface" t) ;; javascript -(autoload 'js2-mode "js2" nil t) -(add-to-list 'auto-mode-alist '("\\.js$" . js2-mode)) +(add-to-list 'auto-mode-alist '("\\.js$" . javascript-mode)) (add-to-list 'auto-mode-alist '("\\.json$" . javascript-mode)) ;; typescript @@ -386,10 +435,6 @@ Will prompt you shell name when you type `C-u' before this command." t) (setq cperl-indent-level 4) (setq cperl-indent-parens-as-block t) -;; Lua -(autoload 'lua-mode "lua-mode" "Lua Mode" t) -(add-to-list 'auto-mode-alist '("\\.lua\\'" . lua-mode)) - ;; Erlang (require-if-present 'erlang-start) (setq erlang-electric-commands nil) @@ -535,6 +580,7 @@ Will prompt you shell name when you type `C-u' before this command." t) '(appt-message-warning-time 20) '(browse-url-browser-function (quote browse-url-firefox)) '(canlock-password "a14fa4d2601465d55585c291fa8b3943e189e716") + '(clean-buffer-list-delay-general 7) '(cleite:auto-refresh-interval nil) '(cleite:measure-srpc-call-time t) '(compilation-scroll-output (quote first-error)) @@ -582,6 +628,7 @@ Will prompt you shell name when you type `C-u' before this command." t) '(js2-indent-on-enter-key nil) '(js2-mirror-mode nil) '(js2-use-font-lock-faces t) + '(lua-indent-level 4) '(makefile-mode-hook (quote ((lambda nil (set-variable (quote tab-width) 8))))) '(markdown-live-preview-delete-export (quote delete-on-export)) '(mediawiki-site-alist @@ -644,6 +691,7 @@ Will prompt you shell name when you type `C-u' before this command." t) (30 subj) "|" (0 body)))) + '(midnight-mode t) '(mouse-wheel-progessive-speed nil) '(mouse-wheel-scroll-amount (quote (1 ((shift) . 5) ((control))))) '(mpc-browser-tags @@ -685,10 +733,10 @@ Will prompt you shell name when you type `C-u' before this command." t) '(safe-local-variable-values (quote ((todo-categories "Todo" "Todo" "Todo" "Todo")))) '(select-enable-clipboard t) '(session-use-package t nil (session)) - '(tramp-auto-save-directory "/tmp/tramp-auto-save") - '(tramp-completion-reread-directory-timeout 2) - '(tramp-default-host "localhost") - '(tramp-default-method "sshx") + '(tramp-auto-save-directory "/tmp/tramp-auto-save" nil (tramp)) + '(tramp-completion-reread-directory-timeout 2 nil (tramp)) + '(tramp-default-host "localhost" nil (tramp)) + '(tramp-default-method "sshx" nil (tramp)) '(uniquify-buffer-name-style (quote forward) nil (uniquify)) '(uniquify-trailing-separator-p t) '(vc-cvs-diff-switches (quote ("-u"))) @@ -710,7 +758,8 @@ Will prompt you shell name when you type `C-u' before this command." t) '(whitespace-style (quote (face tabs trailing space-before-tab newline indentation empty space-after-tab))) - '(woman-cache-filename "~/.wmncach.el")) + '(woman-cache-filename "~/.wmncach.el") + '(yaml-block-literal-electric-alist (quote ((62 . "-"))))) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful.