The denote-prompts option
The user option denote-prompts determines how the denote command will behave interactively (Standard note creation).
Commands that prompt for user input to construct a Denote file name include, but are not limited to: denote, denote-signature, denote-type, denote-date, denote-subdirectory, denote-rename-file, denote-dired-rename-files.
The value of this user option is a list of symbols, which includes any of the following:
‘
title’: Prompt for the title of the new note (Thedenote-history-completion-in-promptsoption).‘
keywords’: Prompts with completion for the keywords of the new note. Available candidates are those specified in the user optiondenote-known-keywords. If the user optiondenote-infer-keywordsis non-nil, keywords in existing note file names are included in the list of candidates. The ‘keywords’ prompt usescompleting-read-multiple, meaning that it can accept multiple keywords separated by a comma (or whatever the value ofcrm-separatoris).‘
file-type’: Prompts with completion for the file type of the new note. Available candidates are those specified in the user optiondenote-file-type. Without this prompt,denoteuses the value ofdenote-file-type.‘
subdirectory’: Prompts with completion for a directory or subdirectory in which to create the note. Available candidates are the value of the user optiondenote-directoryand all of its subdirectories (Thedenote-directoryoption). Any subdirectory must already exist: Denote will not create it.‘
date’: Prompts for the date of the new note. It will expect an input like 2022-06-16 or a date plus time: 2022-06-16 14:30. Without the ‘date’ prompt, thedenotecommand uses thecurrent-time.‘
identifier’: Prompts with completion for the identifier of the new note. It expects a string that has the format ofdenote-date-identifier-format. [ Also see: A custom identifier that is a simple string given at the prompt each time. ]‘
template’: Prompts for a KEY among thedenote-templates. The value of that KEY is used to populate the new note with content, which is added after the front matter (The denote-templates option).‘
signature’: - Prompts for an arbitrary string that can be used for any kind of workflow, such as a special tag to label the ‘part1’ and ‘part2’ of a large file that is split in half, or to add special contexts like ‘home’ and ‘work’, or even priorities like ‘a’, ‘b’, ‘c’. One other use-case is to implement a sequencing scheme that makes notes have hierarchical relationships. This is handled by our optional extension ‘denote-sequence.el’, which is its own package (Write sequence notes or “folgezettel”).
The prompts occur in the given order.
If the value of this user option is nil, no prompts are used. The resulting file name will consist of an identifier (i.e. the date and time) and a supported file type extension (per denote-file-type).
Recall that Denote’s standard file-naming scheme is defined as follows (The file-naming scheme):
ID--TITLE__KEYWORDS.EXTIf either or both of the ‘title’ and ‘keywords’ prompts are not included in the value of this variable, file names will be any of those permutations:
ID.EXT
ID--TITLE.EXT
ID__KEYWORDS.EXTWhen in doubt, always include the ‘title’ and ‘keywords’ prompts.
Finally, this user option only affects the interactive use of the denote or other relevant commands (advanced users can call it from Lisp). In Lisp usage, the behaviour is always what the caller specifies, based on the supplied arguments.