diff options
Diffstat (limited to '.emacs.d/init.el')
| -rw-r--r-- | .emacs.d/init.el | 127 | 
1 files changed, 25 insertions, 102 deletions
| diff --git a/.emacs.d/init.el b/.emacs.d/init.el index 2fc32fb..c708afb 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -4,35 +4,24 @@  (add-to-list 'package-archives               '("melpa" . "https://melpa.org/packages/") t) -;; Do not persist customizations -(setq custom-file (make-temp-file "emacs-custom-")) - -;; Place backups in ~/.backups/ directory, like a civilized program. -;; ------  (if (file-directory-p "~/.backup")      (setq backup-directory-alist '(("." . "~/.backup")))    (message "Directory does not exist: ~/.backup")) -(filesets-init) +(setq + backup-by-copying t    ; Don't delink hardlinks + delete-old-versions t  ; Clean up the backups + kept-new-versions 3    ; keep some new versions + kept-old-versions 2   ; and some old ones, too + version-control t)      ; Use version numbers on backups -(setq backup-by-copying t    ; Don't delink hardlinks -      delete-old-versions t  ; Clean up the backups -      version-control t      ; Use version numbers on backups, -      kept-new-versions 3    ; keep some new versions -      kept-old-versions 2)   ; and some old ones, too +;; Do not persist customizations +(setq custom-file (make-temp-file "emacs-custom-")) -;; --------- -;; Generic keybindings -;; --------- -(global-set-key (kbd "C-c d") 'diff-buffer-with-file) +;; Global keybindings  (global-set-key (kbd "C-c R") 'revert-buffer)  (global-set-key (kbd "C-c w") 'whitespace-cleanup) -(global-set-key (kbd "C-c b s") 'bookmark-set) -(global-set-key (kbd "C-c b j") 'bookmark-jump) - -(global-set-key (kbd "<f12>") 'compile) -  (defun help/insert-em-dash ()    "Inserts an EM-DASH (not a HYPEN, not an N-DASH)"    (interactive) @@ -40,77 +29,16 @@  (global-set-key (kbd "C--") #'help/insert-em-dash) -;; ------ -;; General config -;; ------ - -(setq fill-column 79) +(setq fill-column 79) ; Wrap lines +(setq mouse-yank-at-point t) ; Do not follow mouse curors when mouse-yanking -;; Make sure that pressing middle mouse button pastes right at point, -;; not where the mouse cursor is. -(setq mouse-yank-at-point t) - -(setq column-number-mode 1) -(setq line-number-mode 1) -(setq-default indent-tabs-mode nil) -(setq-default tab-width 4) - -(setq-default c-basic-offset 4) - -;; ------ -;; Initialize environment -;; ------ - -(require 'server) -(setq server-client-instructions nil) -(unless (server-running-p) -  (server-start)) +(setq-default indent-tabs-mode nil) ; No tabs when indenting +(setq-default tab-width 4) ; How many spaces a tab represents -;; Load themes early in the bootstrap process. -(load-file "~/.emacs.d/rul-init.d/themes.el") - -;; ------ -;; Helper for compilation. -;; ------ -;; Close the compilation window if there was no error at all. -(defun compilation-exit-autoclose (status code msg) -  ;; If M-x compile exists with a 0 -  (when (and (eq status 'exit) (zerop code)) -    ;; then bury the *compilation* buffer, so that C-x b doesn't go there -    (bury-buffer) -    ;; and delete the *compilation* window -    (delete-window (get-buffer-window (get-buffer "*compilation*")))) -  ;; Always return the anticipated result of compilation-exit-message-function -  (cons msg code)) - -;; Specify my function (maybe I should have done a lambda function) -(setq compilation-exit-message-function 'compilation-exit-autoclose) -(setq compilation-read-command nil) - -;; Themes -(add-to-list 'custom-theme-load-path "~/.emacs.d/themes/") - -;; Remove scratch message  (setq initial-scratch-message "") -;; Ask y or n instead of yes or no  (defalias 'yes-or-no-p 'y-or-n-p) -;; Fancier buffer selection -(global-set-key (kbd "C-x C-b") 'bs-show) - -;;; Stefan Monnier <foo at acm.org>. It is the opposite of fill-paragraph -(defun unfill-paragraph (&optional region) -  "Takes a multi-line paragraph and makes it into a single line of text." -  (interactive (progn (barf-if-buffer-read-only) '(t))) -  (let ((fill-column (point-max)) -        ;; This would override `fill-column' if it's an integer. -        (emacs-lisp-docstring-fill-column t)) -    (fill-paragraph nil region))) - -;; Handy key definition -(define-key global-map "\M-Q" 'unfill-paragraph) -  ;; Only flash the mode line  (setq ring-bell-function        (lambda () @@ -124,29 +52,24 @@  (setq show-paren-delay 0)  (show-paren-mode 1) -;; Save what you enter into minibuffer prompts -(setq history-length 25) -(savehist-mode 1) +(savehist-mode 1) ; Save histories, including minibuffer + +(save-place-mode 1) ; Remember and restore cursor information -;; Remember and restore cursor information -(save-place-mode 1) +(setq auto-save-no-message t) ; Do not print a message when auto-saving -;; Do not print a message when auto-saving -(setq auto-save-no-message t) +(pixel-scroll-precision-mode 1) ; Precision scrolling -;;;; Desktop -;; (setq desktop-path `(,user-emacs-directory)) -;; (setq desktop-base-file-name "desktop") -;; (desktop-save-mode 1) +;; Server +(require 'server) +(setq server-client-instructions nil) ; Keep it quiet when opening an ec -;; It's easier to get to magit if symlinks are followed. -(setq vc-follow-symlinks t) ;; drop +(unless (server-running-p) +  (server-start))  (dolist (path '("~/.emacs.d/rul-lisp/config" "~/.emacs.d/rul-lisp/packages"))    (add-to-list 'load-path path)) -(pixel-scroll-precision-mode 1) -  (require 'rul-completion)  (require 'rul-fm)  (require 'rul-prog) @@ -157,12 +80,12 @@  (require 'rul-wm)  (require 'rul-write) -(load-file "~/.emacs.d/rul-init.d/fonts.el") -  ;; Init parts (will be deprecated in favor of packages) +(load-file "~/.emacs.d/rul-init.d/themes.el")  (load-file "~/.emacs.d/rul-init.d/auto-fill.el")  (load-file "~/.emacs.d/rul-init.d/flycheck.el")  (load-file "~/.emacs.d/rul-init.d/flyspell.el") +(load-file "~/.emacs.d/rul-init.d/fonts.el")  (load-file "~/.emacs.d/rul-init.d/go-lang.el")  (load-file "~/.emacs.d/rul-init.d/hydra.el")  (load-file "~/.emacs.d/rul-init.d/ibuffer.el") | 
