Version 3.1.0 of package Denote has just been released in GNU ELPA. You can now find it in M-x list-packages RET.
Denote describes itself as: ================================================= Simple notes with an efficient file-naming scheme ================================================= More at https://elpa.gnu.org/packages/denote.html ## Summary: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ DENOTE: SIMPLE NOTES WITH AN EFFICIENT FILE-NAMING SCHEME Protesilaos Stavrou i...@protesilaos.com ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ This manual, written by Protesilaos Stavrou, describes the customization options for the Emacs package called `denote' (or `denote.el'), and provides every other piece of information pertinent to it. The documentation furnished herein corresponds to stable version 3.1.0, released on 2024-09-04. Any reference to a newer feature which does not yet form part of the latest tagged commit, is explicitly marked as such. Current development target is 3.2.0-dev. ## Recent NEWS: ━━━━━━━━━━━━━━━━━━━━━━ CHANGE LOG OF DENOTE Protesilaos Stavrou i...@protesilaos.com ━━━━━━━━━━━━━━━━━━━━━━ This document contains the release notes for each tagged commit on the project’s main git repository: <https://github.com/protesilaos/denote>. The newest release is at the top. For further details, please consult the manual: <https://protesilaos.com/emacs/denote>. Table of Contents ───────────────── 1. Version 3.1.0 on 2024-09-04 1 Version 3.1.0 on 2024-09-04 ═════════════════════════════ Denote is stable and reliable though we keep adding minor refinements to it. Remember that many—if not all—of these are intended for experienced users who have developed their own workflow and want to adapt Denote to its particularities. We may call them “power users”. New users do not need to know about every single feature. A basic configuration is enough and is why the original video I did about Denote (from even before I published version `0.1.0') is still relevant. For example: ┌──── │ ;; Start with something like this. │ (use-package denote │ :ensure t │ :bind │ (("C-c n n" . denote) │ ("C-c n r" . denote-rename-file) │ ("C-c n i" . denote-link) ; "insert" mnemonic │ ("C-c n b" . denote-backlinks)) │ :config │ (setq denote-directory (expand-file-name "~/Documents/notes/"))) └──── And here is the same idea with a little bit more convenience: ┌──── │ ;; Another basic setup with a little more to it. │ (use-package denote │ :ensure t │ :hook (dired-mode . denote-dired-mode) │ :bind │ (("C-c n n" . denote) │ ("C-c n r" . denote-rename-file) │ ("C-c n l" . denote-link) │ ("C-c n b" . denote-backlinks)) │ :config │ (setq denote-directory (expand-file-name "~/Documents/notes/")) │ │ ;; Automatically rename Denote buffers when opening them so that │ ;; instead of their long file name they have a literal "[D]" │ ;; followed by the file's title. Read the doc string of │ ;; `denote-rename-buffer-format' for how to modify this. │ (denote-rename-buffer-mode 1)) └──── 1.1 The `denote-sort-dired' command is more configurable ──────────────────────────────────────────────────────── The `denote-sort-dired' command asks for a literal string or regular expression and then produces a fully fledged Dired listing of matching files in the `denote-directory'. Combined with the efficient Denote file-naming scheme, this is a killer feature to collect your relevant files in a consolidated view and have the full power of Dired available. By default `denote-sort-dired' prompts for the file name component to sort by and then asks whether to reverse the sorting or not. Users who want a more streamlined experience can configure the user option `denote-sort-dired-extra-prompts'. It is possible to skip the prompts altogether and use the default values for (i) which component to sort by and (ii) whether to reverse the sort. To this end, users can have something like this in their configuration: ┌──── │ ;; Do not issue any extra prompts. Always sort by the `title' file │ ;; name component and never do a reverse sort. │ (setq denote-sort-dired-extra-prompts nil) │ (setq denote-sort-dired-default-sort-component 'title) │ (setq denote-sort-dired-default-reverse-sort nil) └──── For me, Dired is one of the best things about Emacs and I like how it combines so nicely with Denote file names (this is the cornerstone of Denote, after all). 1.2 The `denote-sort-dired' sorting functions are customisable ────────────────────────────────────────────────────────────── Power users may want to control how the sorting works and what it is matching on a per file-name-component basis. The user options are these: • `denote-sort-title-comparison-function'. • `denote-sort-keywords-comparison-function'. • `denote-sort-signature-comparison-function'. One use-case is to match specific patterns inside of file names, such … …