- Start REPL with
ielm
. - Execute expression in mini-buffer with
M-:
. - Debug config starting Emacs with:
emacs --debug-init
. - Reload config in current buffer with
M-x eval-buffer
.
- Cheatsheet: http://xahlee.info/emacs/emacs/emacs_org_markup.html
- Zettelkasten with Org: https://github.com/egh/org-mode-zettelkasten
- Wrapping lines (
M-x fill-paragraph
/M-q
): http://ergoemacs.org/emacs/emacs_unfill-paragraph.html - Show the markup with
M-x visible-mode
- Wrap long lines with
M-x visual-line-mode
- Generate TAGS for all the project dependencies with
codex update
command and then load them withM-x visit-tags-table
. Jump to tag is now possible withM-.
.
- When switching between them, disable previous themes with
M-x disable-theme
to not have interference.
- Create tags with custom script
ctags-citre
. - Tags are not used if
eglot
is enabled. Disable it witheglot-shutdown
to use tags withcitre
. - With the
citre-mode
, see https://github.com/universal-ctags/citre/blob/master/docs/user-manual/citre-peek.md#peek-the-definition-of-a-symbol on how to navigate when usingcitre-peek
.
- Mark a region with
annotate-annotate
- List annotations with
annotate-show-annotation-summary
- Disable with
annotate-toggle-all-annotations-text
- Overlay a symbol with
symbol-overlay-put
- Disable with
symbol-overlay-remove-all
vdiff
/ediff
: to merge changes between different filessmerge-mode
/smerge-ediff
: to merge diff3 output from git
- Correct closest misspelled word with
z =
. - Change language with
jinx-languages
. - Enable
text-mode
to check the grammar withlanguagetool
(run firstsystemctl start languagetool.service
).
- Highlight nodes of the code with
tree-sitter-query-builder
. You can see the full code structure withtree-sitter-debug-mode
. Highlight query example for Python:
(type (identifier) @var)
(return_statement (call (identifier)) @var)
- Select a piece of text and call
gpt-dwin
orcodegpt
.
- First convert a notebook to Org with
pandoc notebook.ipynb -o notebook.org
. - Execute its code blocks using https://github.com/nnicandro/emacs-jupyter.
- Select with:
M-x tab-switch
.
- Refresh repos with:
package-refresh-contents
. - Upgrade all new available versions with:
package-list-packages
and later pressU x
.
- Save current session (windows/buffers) with:
desktop-save
- Restore session with:
desktop-change-dir
- Use
*-ts-mode
in all the hooks for language modes.