Emacs: Move user-emacs-directory to cache
parent
c5797d3287
commit
02b58cc380
|
@ -20,16 +20,14 @@
|
|||
(setq file-name-handler-alist default-file-name-handler-alist))
|
||||
(add-hook 'after-init-hook 'ambrevar/reset-file-name-handler-alist)
|
||||
|
||||
(defvar ambrevar/emacs-cache-folder "~/.cache/emacs/"
|
||||
"Cache folder is everything we do not want to track together
|
||||
with the configuration files.")
|
||||
(if (not (file-directory-p ambrevar/emacs-cache-folder))
|
||||
(make-directory ambrevar/emacs-cache-folder t))
|
||||
|
||||
;;; Store additional config in a 'lisp' subfolder and add it to the load path so
|
||||
;;; that `require' can find the files.
|
||||
;;; This must be done before moving `user-emacs-directory'.
|
||||
(add-to-list 'load-path (expand-file-name "lisp/" user-emacs-directory))
|
||||
|
||||
;;; Move user-emacs-directory so that user files don't mix with cache files.
|
||||
(setq user-emacs-directory "~/.cache/emacs/")
|
||||
|
||||
(when (require 'package nil t)
|
||||
;; TODO: MELPA's https sometimes return
|
||||
;; emacs melpa invalid: certificate host does not match hostname
|
||||
|
@ -38,7 +36,6 @@
|
|||
(setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/")))
|
||||
(add-to-list 'package-archives '("melpa" . "https://melpa.milkbox.net/packages/"))
|
||||
(add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t)
|
||||
(setq package-user-dir (concat ambrevar/emacs-cache-folder "elpa"))
|
||||
(package-initialize))
|
||||
|
||||
;;; Site Lisp folder for local packages and development.
|
||||
|
@ -50,7 +47,7 @@
|
|||
(dolist (dir (directory-files path t "^[^\\.]"))
|
||||
(when (file-directory-p dir)
|
||||
(setq load-path (add-to-list 'load-path dir))))))
|
||||
(let ((site-lisp (expand-file-name "site-lisp/" user-emacs-directory)))
|
||||
(let ((site-lisp (expand-file-name "site-lisp/" "~/.local/share/emacs/")))
|
||||
(add-to-list 'load-path site-lisp)
|
||||
(ambrevar/package-refresh-load-path site-lisp))
|
||||
|
||||
|
@ -109,8 +106,7 @@
|
|||
;;; Debbugs
|
||||
(nconc package-selected-packages '(debbugs))
|
||||
(with-eval-after-load 'debbugs
|
||||
(setq debbugs-gnu-all-severities t
|
||||
debbugs-gnu-persistency-file (expand-file-name "debbugs" ambrevar/emacs-cache-folder)))
|
||||
(setq debbugs-gnu-all-severities t))
|
||||
|
||||
;;; Diff
|
||||
;;; TODO: In diff-mode, both `[[` and `C-M-a` do not go back to previous index
|
||||
|
@ -383,8 +379,6 @@
|
|||
|
||||
;;; StackExchange
|
||||
(nconc package-selected-packages '(sx))
|
||||
(with-eval-after-load 'sx
|
||||
(setq sx-cache-directory (concat ambrevar/emacs-cache-folder "sx")))
|
||||
|
||||
;;; Syntax checking
|
||||
(nconc package-selected-packages '(flycheck helm-flycheck))
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; Elfeed
|
||||
|
||||
(setq elfeed-db-directory (concat ambrevar/emacs-cache-folder "elfeed"))
|
||||
(setq elfeed-db-directory (expand-file-name "elfeed" user-emacs-directory))
|
||||
|
||||
(defun ambrevar/elfeed-play-with-mpv ()
|
||||
"Play entry link with mpv."
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
;;; TODO: Change face from purple to white?
|
||||
;;; TODO: Delete entry from cache? See `emms-cache-del'.
|
||||
|
||||
(setq emms-directory (concat ambrevar/emacs-cache-folder "emms"))
|
||||
(emms-all)
|
||||
;; TODO: emms-all causes some "require"d files to be loaded twice if called after, say, emms-browser was loaded.
|
||||
(emms-history-load)
|
||||
|
|
|
@ -96,8 +96,6 @@
|
|||
;;; REVIEW: `kill -#' does not work.
|
||||
;;; See #29156.
|
||||
|
||||
(setq eshell-directory-name (concat ambrevar/emacs-cache-folder "eshell"))
|
||||
|
||||
;;; Use TRAMP to use Eshell as root.
|
||||
(require 'em-tramp)
|
||||
(setq password-cache t)
|
||||
|
|
|
@ -23,8 +23,6 @@
|
|||
;;; Needs dvipng.
|
||||
;;; With TeXlive, the following packages are needed: psnfss, symbol, zapfding
|
||||
(when (and (executable-find "dvipng") (require 'latex-math-preview nil t))
|
||||
(setq latex-math-preview-cache-directory-for-insertion
|
||||
(concat ambrevar/emacs-cache-folder "latex-math-preview-cache"))
|
||||
(local-set-key (kbd "C-c p") 'latex-math-preview-expression)
|
||||
(local-set-key (kbd "C-c j") 'latex-math-preview-insert-symbol)
|
||||
(local-set-key (kbd "C-c C-j") 'latex-math-preview-last-symbol-again)
|
||||
|
|
|
@ -5,8 +5,6 @@
|
|||
(define-key org-mode-map (kbd "C-c C-a") 'org-agenda)
|
||||
|
||||
(setq
|
||||
;; Move annoying babel folder.
|
||||
org-babel-temporary-directory (concat ambrevar/emacs-cache-folder "babel")
|
||||
;; Disable line splitting on M-RET.
|
||||
org-M-RET-may-split-line '((default))
|
||||
org-insert-heading-respect-content t
|
||||
|
|
|
@ -16,37 +16,21 @@
|
|||
(setq echo-keystrokes 0.5)
|
||||
|
||||
;;; Remember last cursor position.
|
||||
(setq save-place-file (concat ambrevar/emacs-cache-folder "saveplace"))
|
||||
(save-place-mode)
|
||||
;;; When the daemon is killed abruptly, places are not saved. Adding this hook
|
||||
;;; allows to save places at a strategic moment.
|
||||
(add-hook 'before-save-hook 'save-place-kill-emacs-hook)
|
||||
|
||||
;;; Network files
|
||||
(setq url-cookie-file (concat ambrevar/emacs-cache-folder "url.cookies")
|
||||
url-cache-directory (expand-file-name "url/cache" ambrevar/emacs-cache-folder))
|
||||
(with-eval-after-load 'nsm
|
||||
(setq nsm-settings-file (concat ambrevar/emacs-cache-folder "network-security.data")))
|
||||
|
||||
;;; Bookmark file to cache folder.
|
||||
(setq bookmark-default-file (concat ambrevar/emacs-cache-folder "emacs.bmk"))
|
||||
|
||||
;;; Recent files.
|
||||
(setq recentf-save-file (concat ambrevar/emacs-cache-folder "recentf")
|
||||
recentf-max-saved-items 40)
|
||||
(setq recentf-max-saved-items 40)
|
||||
|
||||
;;; Save M-: history.
|
||||
(setq savehist-file (concat ambrevar/emacs-cache-folder "savehist"))
|
||||
(savehist-mode)
|
||||
|
||||
;;; Disable autosave features.
|
||||
(setq auto-save-default nil)
|
||||
(setq auto-save-list-file-prefix nil)
|
||||
|
||||
;;; Place backup files in specific directory.
|
||||
(setq backup-directory-alist
|
||||
`(("." . ,(concat ambrevar/emacs-cache-folder "backups/"))))
|
||||
|
||||
;;; Default mode
|
||||
(setq-default major-mode 'text-mode)
|
||||
|
||||
|
@ -273,8 +257,6 @@
|
|||
;; might never be saved. See
|
||||
;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28943.
|
||||
desktop-auto-save-timeout 5
|
||||
desktop-dirname (expand-file-name "desktop" ambrevar/emacs-cache-folder)
|
||||
desktop-path (list desktop-dirname)
|
||||
;; desktop-restore-eager 4 ; Can be annoying as you don't have your last-loaded buffers immediately.
|
||||
desktop-load-locked-desktop 'ask
|
||||
desktop-restore-frames nil
|
||||
|
@ -286,8 +268,6 @@
|
|||
(add-hook 'after-make-frame-functions 'ambrevar/desktop-init) ; This does not fix the window register restoration.
|
||||
(add-to-list 'desktop-modes-not-to-save 'pdf-view-mode)
|
||||
(add-to-list 'desktop-modes-not-to-save 'image-mode)
|
||||
(unless (file-directory-p desktop-dirname)
|
||||
(make-directory desktop-dirname t))
|
||||
;; TODO: `compile-history' should be buffer local but that does not work.
|
||||
;; http://user42.tuxfamily.org/compile-history-local/index.html
|
||||
;; http://stackoverflow.com/questions/22995203/one-compile-command-per-buffer-not-directory
|
||||
|
@ -360,10 +340,6 @@
|
|||
("Australia/Melbourne" "Melbourne")
|
||||
("Africa/Nairobi" "Uganda")))
|
||||
|
||||
;;; Tramp
|
||||
(setq tramp-persistency-file-name (concat ambrevar/emacs-cache-folder "tramp")
|
||||
tramp-backup-directory-alist backup-directory-alist)
|
||||
|
||||
;;; Frame title
|
||||
(setq frame-title-format (concat "%b" (unless (daemonp) " [serverless]")))
|
||||
|
||||
|
@ -379,7 +355,4 @@
|
|||
(when (require 'pinentry nil t)
|
||||
(pinentry-start))
|
||||
|
||||
;;; Semanticdb folders must be set before starting semantic.
|
||||
(setq semanticdb-default-save-directory (concat ambrevar/emacs-cache-folder "semanticdb"))
|
||||
|
||||
(provide 'main)
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
((nil . ((ambrevar/prettify-inhibit-p . t))))
|
|
@ -22,7 +22,6 @@
|
|||
.config/transmission-daemon/stats.json
|
||||
.config/transmission-daemon/torrents/
|
||||
.dbus
|
||||
.emacs.d/site-lisp/
|
||||
.fontconfig
|
||||
.gimp*
|
||||
.gnupg
|
||||
|
@ -30,6 +29,7 @@
|
|||
.lesshst
|
||||
.local/share/Trash
|
||||
.local/share/applications/wine*
|
||||
.local/share/emacs
|
||||
.local/share/icons
|
||||
.local/share/mime/*
|
||||
.mbsyncrc
|
||||
|
|
Loading…
Reference in New Issue