Emacs: Open File Fast 🚀

By Xah Lee. Date: . Last updated: .

Note: this function xah-open-file-fast is now obsolete. In emacs 28, use bookmark-jump, and turn on fido-vertical-mode [see Emacs: icomplete, Name Completion]

Here's a command that lets you open file fast by a fuzzy completion on file names in your bookmark.

First, you need to add files you use frequently to emacs bookmark. [see Emacs: Bookmark]

Put the following in your emacs init file.

(defun xah-open-file-fast ()
  "Prompt to open a file from bookmark `bookmark-bmenu-list'.
This command is similar to `bookmark-jump', but use `ido-mode' interface, and ignore cursor position in bookmark.

URL `http://xahlee.info/emacs/emacs/emacs_hotkey_open_file_fast.html'
Version 2013-01-01 2022-05-16"
  (interactive)
  (require 'ido)
  (require 'bookmark)
  (bookmark-maybe-load-default-file)
  (let (($this-bookmark
         (ido-completing-read "Open bookmark:" (mapcar (lambda ($x) (car $x)) bookmark-alist))))
    (find-file (bookmark-get-filename $this-bookmark))))

Alt+x xah-open-file-fast, then it will prompt with real-time name completion as you type.

Give this command a easy key, such as F8. [see Emacs Keys: Define Key]

For best efficiency, add a unique digit or 2 letter sequence in front of each bookmark file name you use frequently, so that opening a file is just 3 keystrokes, for example, emacs blog can be eb emacs blog, so you can just type F8 e b Enter to open it.

Why ignore bookmarked cursor position?

So, now xah-open-file-fast ignores the position in bookmark.

Note, you should have save-place-mode on. It saves last cursor position. [see Emacs Init: Save Cursor Position]