summary refs log tree commit diff
path: root/emacs.d/lib/settings.el
blob: 8eeb7d425508efd6acba2cf4cd445cd450b1c3d3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
;; I don't want a startup screen
(setq inhibit-startup-screen t)

;; disable tool bar and the scroll bar
(dolist (mode '(tool-bar-mode scroll-bar-mode menu-bar-mode))
  (when (fboundp mode) (funcall mode -1)))

;; auto close bracket, parenthesis insertion
(electric-pair-mode 1)

;; show trailing white space for prog modes
;; FIXME this should probably be moved somewhere else. I need
;; to revisit the various prog-mode-hook.
(add-hook 'prog-mode-hook
          (lambda () (setq show-trailing-whitespace t)))

;; I don't care about any frontend other than magit
(setf vc-handled-backends nil
      vc-follow-symlinks t)

;; alias yes-or-no to y-or-n
(fset 'yes-or-no-p 'y-or-n-p)

;; set utf-8 as the default encoding
(prefer-coding-system 'utf-8-unix)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)

;; reload the buffer when a file changes
(global-auto-revert-mode 1)

;; show column number in the mode line
(setq column-number-mode t)

;; when saving the file, ensure a newline exists at the end of the file
(setq require-final-newline t)

;; no initial message in the scratch buffer
(setq initial-scratch-message nil)

;; scroll 5 lines at a time
(setq next-screen-context-lines 5)

;; when using TAB, always indent
(setq tab-always-indent 'complete)

;; don't auto save files
(setq auto-save-default nil)

;; I really don't want backup files
(setq auto-save-list-file-prefix nil
      make-backup-files nil)

;; How long to display an echo-area message when the minibuffer is active.
(setq minibuffer-message-timeout 0.5)

;; don't use a lock file
(setq-default create-lockfiles nil)

;; show parenthesis
(show-paren-mode +1)

;; no blinking cursor
(blink-cursor-mode -1)

;; I don't want a frindge on the right
(fringe-mode '(4 . 0))

;; frame title
(setq frame-title-format '( "%b" " [" (:eval mode-name) "]"))

;; where to save custom settings
(setq custom-file (expand-file-name "var/emacs-custom.el" user-emacs-directory))

;; where to save the bookmarks
(setq bookmark-default-file (expand-file-name "var/bookmarks" user-emacs-directory)
      bookmark-save-flag 1)

;; time display
(setq display-time-24hr-format t)
(setq display-time-default-load-average nil)
(setq display-time-format "")

;; cursor is a thin bar
(setq-default cursor-type 'hbar)

;; highlight current line
(global-hl-line-mode 1)

;; Set default font.
(set-face-attribute 'default nil :height 140 :weight 'normal :width 'normal :font "DejaVu Sans Mono")

;; no bell
(setq visible-bell nil)
(setq ring-bell-function 'ignore)

;; don't use native full screen on OS-X
(when (eq system-type 'darwin)
  (setq ns-use-native-fullscreen nil))

(provide 'settings)