;;; my-settings.el --- Sets a number of defaults -*- lexical-binding: t -*- ;;; Commentary: ;;; Code: (defvar my/custom-settings (expand-file-name "var/emacs-custom.el" user-emacs-directory) "Path to Emacs custom variables.") ;; set utf-8 as the default encoding (prefer-coding-system 'utf-8-unix) (setq locale-coding-system 'utf-8) (set-language-environment 'utf-8) (set-terminal-coding-system 'utf-8) (set-keyboard-coding-system 'utf-8) ;; alias yes-or-no to y-or-n (fset 'yes-or-no-p 'y-or-n-p) (setq auto-save-default nil) ;; don't auto save files (setq auto-save-list-file-prefix nil) ;; no backups (setq create-lockfiles nil) ;; don't use a lock file (setq confirm-kill-emacs #'yes-or-no-p) ;; ask before killing emacs (setq custom-file my/custom-settings) ;; where to save custom settings (setq make-backup-files nil) ;; really no backups (setq minibuffer-message-timeout 0.5) ;; How long to display an echo-area message (setq next-screen-context-lines 5) ;; scroll 5 lines at a time (setq require-final-newline t) ;; ensure newline exists at the end of the file (setq ring-bell-function 'ignore) ;; really no bell (setq tab-always-indent 'complete) ;; when using TAB, always indent (setq visible-bell nil) ;; no bell (setq column-number-mode t) ;; show column number in the mode line (setq-default indent-tabs-mode nil) ;; turn off tab indentation (setq-default cursor-type 'box) ;; cursor is a horizontal bar (setq-default delete-by-moving-to-trash t) ;; delete files by moving them to the trash (setq initial-scratch-message "") ;; empty scratch buffer (setq garbage-collection-messages t) ;; log when the gc kicks in (custom-set-variables '(use-file-dialog nil) '(use-dialog-box nil) '(inhibit-startup-screen t) '(inhibit-startup-message t) '(inhibit-startup-echo-area-message t)) (setq user-full-name "Franck Cuny" user-mail-address "franck@fcuny.net" add-log-mailing-address "franck@fcuny.net") (require 'savehist) (setq savehist-file (expand-file-name "var/history" user-emacs-directory)) (setq history-length 1000) (setq history-delete-duplicates t) (setq savehist-save-minibuffer-history t) (add-hook 'after-init-hook #'savehist-mode) (require 'midnight) (add-hook 'after-init-hook #'midnight-mode) (require 'saveplace) (setq save-place-forget-unreadable-files t) (add-hook 'after-init-hook #'save-place-mode) (unless (and (fboundp 'server-running-p) (server-running-p)) (server-start)) (when (memq window-system '(mas ns)) (require 'exec-path-from-shell) (add-hook 'emacs-startup-hook (lambda () (exec-path-from-shell-initialize)))) (provide 'my-settings) ;;; my-settings.el ends here