Update README.md
This commit is contained in:
58
README.md
58
README.md
@@ -292,7 +292,6 @@ Native compilation enhances Emacs performance by converting Elisp code into nati
|
||||
;; Ensure adding the following compile-angel code at the very beginning
|
||||
;; of your `~/.emacs.d/post-init.el` file, before all other packages.
|
||||
(use-package compile-angel
|
||||
:ensure t
|
||||
:demand t
|
||||
:config
|
||||
;; The following disables compilation of packages during installation;
|
||||
@@ -336,7 +335,6 @@ To fix this, add **exec-path-from-shell** to `~/.emacs.d/post-init.el`:
|
||||
(use-package exec-path-from-shell
|
||||
:if (and (or (display-graphic-p) (daemonp))
|
||||
(eq system-type 'darwin)) ; macOS only
|
||||
:ensure t
|
||||
:demand t
|
||||
:functions exec-path-from-shell-initialize
|
||||
:config
|
||||
@@ -478,7 +476,6 @@ To configure `corfu` and `cape`, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; current candidates, positioned either below or above the point. Candidates
|
||||
;; can be selected by navigating up or down.
|
||||
(use-package corfu
|
||||
:ensure t
|
||||
:commands (corfu-mode global-corfu-mode)
|
||||
|
||||
:hook ((prog-mode . corfu-mode)
|
||||
@@ -500,7 +497,6 @@ To configure `corfu` and `cape`, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; in-buffer completion. It integrates with Corfu or the default completion UI,
|
||||
;; by providing additional backends through completion-at-point-functions.
|
||||
(use-package cape
|
||||
:ensure t
|
||||
:commands (cape-dabbrev cape-file cape-elisp-block)
|
||||
:bind ("C-c p" . cape-prefix-map)
|
||||
:init
|
||||
@@ -529,7 +525,6 @@ Add the following to `~/.emacs.d/post-init.el` to set up Vertico, Consult, and E
|
||||
;; navigate and select from completion candidates (e.g., when `M-x` is pressed).
|
||||
(use-package vertico
|
||||
;; (Note: It is recommended to also enable the savehist package.)
|
||||
:ensure t
|
||||
:config
|
||||
(vertico-mode))
|
||||
|
||||
@@ -537,7 +532,6 @@ Add the following to `~/.emacs.d/post-init.el` to set up Vertico, Consult, and E
|
||||
;; to input multiple patterns separated by spaces, which Orderless then
|
||||
;; matches in any order against the candidates.
|
||||
(use-package orderless
|
||||
:ensure t
|
||||
:custom
|
||||
(completion-styles '(orderless basic))
|
||||
(completion-category-defaults nil)
|
||||
@@ -547,7 +541,6 @@ Add the following to `~/.emacs.d/post-init.el` to set up Vertico, Consult, and E
|
||||
;; In addition to that, Marginalia also enhances Vertico by adding rich
|
||||
;; annotations to the completion candidates displayed in Vertico's interface.
|
||||
(use-package marginalia
|
||||
:ensure t
|
||||
:commands (marginalia-mode marginalia-cycle)
|
||||
:hook (after-init . marginalia-mode))
|
||||
|
||||
@@ -559,7 +552,6 @@ Add the following to `~/.emacs.d/post-init.el` to set up Vertico, Consult, and E
|
||||
;; Embark is an Emacs package that acts like a context menu, allowing
|
||||
;; users to perform context-sensitive actions on selected items
|
||||
;; directly from the completion interface.
|
||||
:ensure t
|
||||
:commands (embark-act
|
||||
embark-dwim
|
||||
embark-export
|
||||
@@ -582,14 +574,12 @@ Add the following to `~/.emacs.d/post-init.el` to set up Vertico, Consult, and E
|
||||
(window-parameters (mode-line-format . none)))))
|
||||
|
||||
(use-package embark-consult
|
||||
:ensure t
|
||||
:hook
|
||||
(embark-collect-mode . consult-preview-at-point-mode))
|
||||
|
||||
;; Consult offers a suite of commands for efficient searching, previewing, and
|
||||
;; interacting with buffers, file contents, and more, improving various tasks.
|
||||
(use-package consult
|
||||
:ensure t
|
||||
:bind (;; C-c bindings in `mode-specific-map'
|
||||
("C-c M-x" . consult-mode-command)
|
||||
("C-c h" . consult-history)
|
||||
@@ -695,7 +685,6 @@ To install and configure these packages, add the following to `~/.emacs.d/post-i
|
||||
;; The undo-fu package is a lightweight wrapper around Emacs' built-in undo
|
||||
;; system, providing more convenient undo/redo functionality.
|
||||
(use-package undo-fu
|
||||
:ensure t
|
||||
:commands (undo-fu-only-undo
|
||||
undo-fu-only-redo
|
||||
undo-fu-only-redo-all
|
||||
@@ -708,7 +697,6 @@ To install and configure these packages, add the following to `~/.emacs.d/post-i
|
||||
;; The undo-fu-session package complements undo-fu by enabling the saving
|
||||
;; and restoration of undo history across Emacs sessions, even after restarting.
|
||||
(use-package undo-fu-session
|
||||
:ensure t
|
||||
:commands undo-fu-session-global-mode
|
||||
:hook (after-init . undo-fu-session-global-mode))
|
||||
```
|
||||
@@ -770,7 +758,6 @@ Configuring Vim keybindings in Emacs can greatly enhance your editing efficiency
|
||||
|
||||
;; Vim emulation
|
||||
(use-package evil
|
||||
:ensure t
|
||||
:commands (evil-mode evil-define-key)
|
||||
:hook (after-init . evil-mode)
|
||||
|
||||
@@ -811,7 +798,6 @@ Configuring Vim keybindings in Emacs can greatly enhance your editing efficiency
|
||||
|
||||
(use-package evil-collection
|
||||
:after evil
|
||||
:ensure t
|
||||
:init
|
||||
;; It has to be defined before evil-colllection
|
||||
(setq evil-collection-setup-minibuffer t)
|
||||
@@ -832,7 +818,6 @@ You can also install the [vim-tab-bar](https://github.com/jamescherti/vim-tab-ba
|
||||
``` emacs-lisp
|
||||
;; Give Emacs tab-bar a style similar to Vim's
|
||||
(use-package vim-tab-bar
|
||||
:ensure t
|
||||
:commands vim-tab-bar-mode
|
||||
:hook (after-init . vim-tab-bar-mode))
|
||||
```
|
||||
@@ -850,7 +835,6 @@ The `evil-surround` package simplifies handling surrounding characters, such as
|
||||
;; using S" or gS".
|
||||
(use-package evil-surround
|
||||
:after evil
|
||||
:ensure t
|
||||
:commands global-evil-surround-mode
|
||||
:custom
|
||||
(evil-surround-pairs-alist
|
||||
@@ -896,7 +880,6 @@ To configure **easysession**, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; manage Emacs editing sessions and utilizes built-in Emacs functions to
|
||||
;; persist and restore frames.
|
||||
(use-package easysession
|
||||
:ensure t
|
||||
:commands (easysession-switch-to
|
||||
easysession-save-as
|
||||
easysession-save-mode
|
||||
@@ -961,7 +944,6 @@ This configuration sets up `markdown-mode` with deferred loading to improve star
|
||||
```elisp
|
||||
;; Automatically generate a table of contents when editing Markdown files
|
||||
(use-package markdown-toc
|
||||
:ensure t
|
||||
:commands (markdown-toc-generate-toc
|
||||
markdown-toc-generate-or-refresh-toc
|
||||
markdown-toc-delete-toc
|
||||
@@ -1077,7 +1059,6 @@ For folding based on indentation levels, the **[outline-indent](https://github.c
|
||||
;; - Move backward/forward to the indentation level of the current line
|
||||
;; - and other features.
|
||||
(use-package outline-indent
|
||||
:ensure t
|
||||
:commands outline-indent-minor-mode
|
||||
|
||||
:custom
|
||||
@@ -1146,7 +1127,6 @@ To configure **apheleia**, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; Apheleia is an Emacs package designed to run code formatters (e.g., Shfmt,
|
||||
;; Black and Prettier) asynchronously without disrupting the cursor position.
|
||||
(use-package apheleia
|
||||
:ensure t
|
||||
:commands (apheleia-mode
|
||||
apheleia-global-mode)
|
||||
:hook ((prog-mode . apheleia-mode)))
|
||||
@@ -1201,7 +1181,6 @@ The [yasnippet-snippets](https://github.com/AndreaCrotti/yasnippet-snippets) pac
|
||||
```elisp
|
||||
;; The official collection of snippets for yasnippet.
|
||||
(use-package yasnippet-snippets
|
||||
:ensure t
|
||||
:after yasnippet)
|
||||
|
||||
;; YASnippet is a template system designed that enhances text editing by
|
||||
@@ -1209,7 +1188,6 @@ The [yasnippet-snippets](https://github.com/AndreaCrotti/yasnippet-snippets) pac
|
||||
;; abbreviation, YASnippet automatically expands it into a full template, which
|
||||
;; can include placeholders, fields, and dynamic content.
|
||||
(use-package yasnippet
|
||||
:ensure t
|
||||
:commands (yas-minor-mode
|
||||
yas-global-mode)
|
||||
|
||||
@@ -1309,7 +1287,6 @@ To enable **stripspace** and automatically delete trailing whitespace, add the f
|
||||
;; that automatically removes trailing whitespace and blank lines at the end of
|
||||
;; the buffer when saving.
|
||||
(use-package stripspace
|
||||
:ensure t
|
||||
:commands stripspace-local-mode
|
||||
|
||||
;; Enable for prog-mode-hook, text-mode-hook, conf-mode-hook
|
||||
@@ -1364,7 +1341,6 @@ To configure **org-mode**, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; scheduling, deadlines, time tracking, and exporting to multiple formats
|
||||
;; including HTML, LaTeX, PDF, and Markdown.
|
||||
(use-package org
|
||||
:ensure t
|
||||
:commands (org-mode org-version)
|
||||
:mode
|
||||
("\\.org\\'" . org-mode)
|
||||
@@ -1434,7 +1410,6 @@ To configure **auto-package-update**, add the following to `~/.emacs.d/post-init
|
||||
```elisp
|
||||
;; This automates the process of updating installed packages
|
||||
(use-package auto-package-update
|
||||
:ensure t
|
||||
:custom
|
||||
;; Set the number of days between automatic updates.
|
||||
;; Here, packages will only be updated if at least 7 days have passed
|
||||
@@ -1479,7 +1454,6 @@ To configure **buffer-terminator**, add the following to `~/.emacs.d/post-init.e
|
||||
|
||||
```emacs-lisp
|
||||
(use-package buffer-terminator
|
||||
:ensure t
|
||||
:custom
|
||||
;; Enable/Disable verbose mode to log buffer cleanup events
|
||||
(buffer-terminator-verbose nil)
|
||||
@@ -1511,7 +1485,6 @@ To configure **treemacs**, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; in the left window, providing a persistent view of files, projects, and
|
||||
;; other elements.
|
||||
(use-package treemacs
|
||||
:ensure t
|
||||
:commands (treemacs
|
||||
treemacs-select-window
|
||||
treemacs-delete-other-windows
|
||||
@@ -1611,15 +1584,12 @@ To configure **treemacs**, add the following to `~/.emacs.d/post-init.el`:
|
||||
|
||||
;; (use-package treemacs-evil
|
||||
;; :after (treemacs evil)
|
||||
;; :ensure t)
|
||||
;;
|
||||
;; (use-package treemacs-icons-dired
|
||||
;; :hook (dired-mode . treemacs-icons-dired-enable-once)
|
||||
;; :ensure t)
|
||||
;;
|
||||
;; (use-package treemacs-tab-bar ; treemacs-tab-bar if you use tab-bar-mode
|
||||
;; :after (treemacs)
|
||||
;; :ensure t
|
||||
;; :config (treemacs-set-scope-type 'Tabs))
|
||||
;;
|
||||
;; (treemacs-start-on-boot)
|
||||
@@ -1634,7 +1604,6 @@ To configure **helpful**, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; Helpful is an alternative to the built-in Emacs help that provides much more
|
||||
;; contextual information.
|
||||
(use-package helpful
|
||||
:ensure t
|
||||
:commands (helpful-callable
|
||||
helpful-variable
|
||||
helpful-key
|
||||
@@ -1660,7 +1629,6 @@ It operates by generating a dynamic, temporary mapping: upon invocation, such as
|
||||
To configure **avy**, add the following to `~/.emacs.d/post-init.el`:
|
||||
```elisp
|
||||
(use-package avy
|
||||
:ensure t
|
||||
:commands (avy-goto-char
|
||||
avy-goto-char-2
|
||||
avy-next)
|
||||
@@ -1682,7 +1650,6 @@ The functions above also ensures that any modified buffers are saved prior to ex
|
||||
To configure **bufferfile**, add the following to `~/.emacs.d/post-init.el`:
|
||||
```elisp
|
||||
(use-package bufferfile
|
||||
:ensure t
|
||||
:commands (bufferfile-copy
|
||||
bufferfile-rename
|
||||
bufferfile-delete)
|
||||
@@ -1710,14 +1677,12 @@ To enhance the Elisp development experience, add the following to `~/.emacs.d/po
|
||||
```emacs-lisp
|
||||
;; Enables automatic indentation of code while typing
|
||||
(use-package aggressive-indent
|
||||
:ensure t
|
||||
:commands aggressive-indent-mode
|
||||
:hook
|
||||
(emacs-lisp-mode . aggressive-indent-mode))
|
||||
|
||||
;; Highlights function and variable definitions in Emacs Lisp mode
|
||||
(use-package highlight-defined
|
||||
:ensure t
|
||||
:commands highlight-defined-mode
|
||||
:hook
|
||||
(emacs-lisp-mode . highlight-defined-mode))
|
||||
@@ -1727,7 +1692,6 @@ Other optional packages that may be useful include:
|
||||
```emacs-lisp
|
||||
;; Prevent parenthesis imbalance
|
||||
(use-package paredit
|
||||
:ensure t
|
||||
:commands paredit-mode
|
||||
:hook
|
||||
(emacs-lisp-mode . paredit-mode)
|
||||
@@ -1737,14 +1701,12 @@ Other optional packages that may be useful include:
|
||||
;; For paredit+Evil mode users: enhances paredit with Evil mode compatibility
|
||||
;; --------------------------------------------------------------------------
|
||||
;; (use-package enhanced-evil-paredit
|
||||
;; :ensure t
|
||||
;; :commands enhanced-evil-paredit-mode
|
||||
;; :hook
|
||||
;; (paredit-mode . enhanced-evil-paredit-mode))
|
||||
|
||||
;; Displays visible indicators for page breaks
|
||||
(use-package page-break-lines
|
||||
:ensure t
|
||||
:commands (page-break-lines-mode
|
||||
global-page-break-lines-mode)
|
||||
:hook
|
||||
@@ -1753,7 +1715,6 @@ Other optional packages that may be useful include:
|
||||
;; Provides functions to find references to functions, macros, variables,
|
||||
;; special forms, and symbols in Emacs Lisp
|
||||
(use-package elisp-refs
|
||||
:ensure t
|
||||
:commands (elisp-refs-function
|
||||
elisp-refs-macro
|
||||
elisp-refs-variable
|
||||
@@ -1777,7 +1738,6 @@ To configure **inhibit-mouse**, add the following to `~/.emacs.d/post-init.el`:
|
||||
;; - Reinforce a keyboard-centric workflow by discouraging reliance on the mouse
|
||||
;; for navigation.
|
||||
(use-package inhibit-mouse
|
||||
:ensure t
|
||||
:config
|
||||
(if (daemonp)
|
||||
(add-hook 'server-after-make-frame-hook #'inhibit-mouse-mode)
|
||||
@@ -1805,7 +1765,6 @@ To enable *quick-sdcv*, add the following to your `~/.emacs.d/post-init.el`:
|
||||
|
||||
```emacs-lisp
|
||||
(use-package quick-sdcv
|
||||
:ensure t
|
||||
:custom
|
||||
(quick-sdcv-unique-buffers t)
|
||||
(quick-sdcv-dictionary-prefix-symbol "►")
|
||||
@@ -2265,6 +2224,8 @@ The `straight.el` package is a declarative package manager for Emacs that aims t
|
||||
(goto-char (point-max))
|
||||
(eval-print-last-sexp)))
|
||||
(load bootstrap-file nil 'nomessage))
|
||||
|
||||
(setq straight-use-package-by-default t)
|
||||
```
|
||||
|
||||
### Configuring Elpaca (package manager)
|
||||
@@ -2326,6 +2287,21 @@ And [add the Elpaca bootstrap code](https://github.com/progfolio/elpaca?tab=read
|
||||
;; Optional: Install use-package support
|
||||
;; (elpaca elpaca-use-package
|
||||
;; (elpaca-use-package-mode))
|
||||
|
||||
(elpaca
|
||||
elpaca-use-package
|
||||
;; Enable use-package :ensure support for Elpaca.
|
||||
(elpaca-use-package-mode))
|
||||
|
||||
;; TODO windows
|
||||
;; Uncomment for systems which cannot create symlinks:
|
||||
;; (elpaca-no-symlink-mode)
|
||||
|
||||
;; Install use-package support
|
||||
(elpaca
|
||||
elpaca-use-package
|
||||
;; Enable use-package :ensure support for Elpaca.
|
||||
(elpaca-use-package-mode))
|
||||
```
|
||||
|
||||
## Frequently asked questions
|
||||
|
||||
Reference in New Issue
Block a user