diff options
Diffstat (limited to 'lisp/core/init-session.el')
| -rw-r--r-- | lisp/core/init-session.el | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/lisp/core/init-session.el b/lisp/core/init-session.el new file mode 100644 index 0000000..d768390 --- /dev/null +++ b/lisp/core/init-session.el @@ -0,0 +1,62 @@ +;;; init-session.el --- Session management -*- lexical-binding: t; -*- + +;; Copyright (C) 2026 Richard Qin +;; SPDX-License-Identifier: GPL-3.0-or-later + +;; Author: Richard Qin +;; This file is not part of GNU Emacs. + +;;; Commentary: + +;; Preserve command history, recently opened files, +;; and cursor positions between Emacs sessions. + +;;; Code: + +;; ------------------------------------------------------------ +;; Command history +;; ------------------------------------------------------------ + +(require 'savehist) + +(setq savehist-file + (expand-file-name + "var/savehist" + user-emacs-directory)) + +(savehist-mode 1) + + +;; ------------------------------------------------------------ +;; Cursor positions +;; ------------------------------------------------------------ + +(require 'saveplace) + +(setq save-place-file + (expand-file-name + "var/places" + user-emacs-directory)) + +(save-place-mode 1) + + +;; ------------------------------------------------------------ +;; Recent files +;; ------------------------------------------------------------ + +(require 'recentf) + +(setq recentf-save-file + (expand-file-name + "var/recentf" + user-emacs-directory)) + +(setq recentf-max-saved-items 200) + +(recentf-mode 1) + + +(provide 'init-session) + +;;; init-session.el ends here |
