;;; my-complete.el -- Completion related extensions for emacs core -*- lexical-binding: t -*- ;; Copyright (C) 2023 Free Software Foundation. ;; Author: Yuchen Pei ;; Package-Requires: ((emacs "28.2")) ;; This file is part of dotfiles. ;; dotfiles is free software: you can redistribute it and/or modify it under ;; the terms of the GNU Affero General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; dotfiles is distributed in the hope that it will be useful, but WITHOUT ;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General ;; Public License for more details. ;; You should have received a copy of the GNU Affero General Public ;; License along with dotfiles. If not, see . ;;; Commentary: ;; Completion related extensions for emacs core. Covering minibuffer, ;; icomplete, recentf etc. ;;; Code: ;;; icomplete ;; FIXME: do we still need these? (defun my-icomplete-vertical-forward-page () "Forward page in icomplete." (interactive) (dotimes (_ (1- (window-total-height))) (icomplete-forward-completions))) (defun my-icomplete-vertical-backward-page () "Backward page in icomplete." (interactive) (dotimes (_ (1- (window-total-height))) (icomplete-backward-completions))) ;;; recentf (defun my-recentf-save-list-silently () (interactive) (let ((inhibit-message t)) (recentf-save-list))) (defun my-recentf-add-all-open-buffers () (interactive) (dolist (buffer (buffer-list)) (when-let ((filename (buffer-file-name buffer))) (recentf-add-file filename)))) (provide 'my-complete) ;;; my-complete.el ends here