;;; -*- lexical-binding: t; -*- ;; Backups (make-directory "~/.cache/emacs_backups/" t) (make-directory "~/.cache/emacs_autosave/" t) (setq backup-directory-alist '(("." . "~/.cache/emacs_backups/"))) (setq auto-save-file-name-transforms '((".*" "~/.cache/emacs_autosave/" t))) ;; Keep backups, but avoid same directory since it can be slow on tramp. (setq version-control t delete-old-versions -1 vc-make-backup-files t create-lockfiles nil backup-by-copying t) (setq-default indent-tabs-mode nil) (setq sentence-end-double-space nil) (setq save-interprogram-paste-before-kill t) (setq mouse-yank-at-point t) (setq enable-recursive-minibuffers t) (set-language-environment "utf-8") (setq require-final-newline t) ;; Save bookmark list every time a bookmark is added. (setq bookmark-save-flag 1) (delete-selection-mode 1) (setq savehist-file "~/.cache/emacs/savehist-history") (savehist-mode 1) ;; Resize settings (setq frame-inhibit-implied-resize t) (setq pixel-scroll-precision-mode t) (setq kill-whole-line t) (defun kj/kill-word-or-region (arg) (interactive "p") (if (region-active-p) (kill-region (region-beginning) (region-end)) (backward-kill-word (or arg 1)))) (global-set-key (kbd "C-w") 'kj/kill-word-or-region) (defun kj/open-line (n) (interactive "*p") (beginning-of-line) (open-line n) (indent-according-to-mode)) (global-set-key (kbd "C-o") 'kj/open-line) (provide 'kj-defaults)