Tip
Unlock the power of Emacs! Join my next exclusive “Emacs Boost” course!
Ready to supercharge your productivity and become an Emacs ninja? Look no further!
What you’ll learn:
- Master Emacs from the basics to advanced tricks.
- Boost your editing efficiency and streamline your workflow.
- Customize Emacs to fit your unique needs.
- And much more!
Audience:
Open to anyone interested in Emacs, from beginners to advanced users.
Why choose my course?
- Expert instructor with 25 years of Emacs experience.
- Hands-on exercises to reinforce your learning.
- Networking opportunities with like-minded Emacs enthusiasts.
- Personalized attention.
Don’t miss this opportunity to take your Emacs skills to the next level!
Visit https://emacsboost.com/en/ for more information, dates and locations, and to reserve your seat.
Are you in search of an Emacs configuration file that comes with numerous pre-enabled packages and a more user-friendly default setup? Look no further! This resource will spare you countless hours of manual configuration.
Introducing the ”Emacs Leuven” configuration file, packaged as an Emacs Lisp library and ready for your use. What’s more, it’s finely tuned to ensure a swift Emacs startup time of approximately 2 seconds!
Incorporating the Emacs Leuven library into your Emacs environment is a straightforward process:
- Download or clone the Emacs-Leuven repository from GitHub.
- Integrate Emacs-Leuven into your Emacs configuration file:
;; Ensure that `emacs-leuven' libraries are included in your Emacs ;; `load-path'. (add-to-list 'load-path "/PATH/TO/emacs-leuven/lisp") ;; Load Emacs-Leuven and its associated modules. (require 'emacs-leuven) (require 'emacs-leuven-org) (require 'emacs-leuven-bbdb) (require 'emacs-leuven-ess) (require 'emacs-leuven-ledger) ;; Customize your settings here, which can override the defaults provided by ;; Emacs-Leuven.
- Restart Emacs to apply the changes.
To effortlessly install all the additional packages referenced below without prompts, insert the following line before requiring Emacs-Leuven:
;; Install all extra Emacs packages without asking for confirmation.
(setq leuven-install-all-missing-elpa-packages t)
Subject | Package | Description |
---|---|---|
Basic editing commands | undo-tree | |
Help | info+ | |
The mark and the region | goto-chg | |
expand-region | ||
multiple-cursors | ||
ace-jump-mode | ||
ace-link | ||
Controlling the display | pager | |
fancy-narrow | ||
highlight-symbol | ||
color-identifiers-mode | ||
diff-hl | ||
ws-butler | ||
powerline | ||
interaction-log | ||
Searching and replacement | fuzzy | |
anzu | ||
Commands for fixing typos | dictionary | |
Files Handling | helm | |
helm-swoop | ||
Major and minor modes | csv-mode | |
helm-descbinds | ||
Indentation | indent-guide | |
Commands for human languages | key-chord | |
boxquote | ||
SGML and HTML modes | tidy | |
Editing Programs | imenu-anywhere | |
hideshowvis | ||
flycheck | ||
Maintaining programs | litable | |
git-timemachine | ||
git-messenger | ||
Abbrevs | yasnippet | |
auto-complete | ||
company | ||
company-quickhelp | ||
Gnus | bbdb | |
Document viewing | pdf-tools | |
Running shell commands from Emacs | multi-term | |
cygwin-mount | ||
Hyperlinking and navigation features | google-this | |
google-translate | ||
Customization | guide-key | |
ace-window | ||
auctex | ||
bookmark+ | ||
circe | ||
diminish | ||
dired+ | ||
dired-single | ||
ess | ||
fill-column-indicator | ||
flycheck | ||
flycheck-ledger | ||
git-commit-mode | ||
graphviz-dot-mode | ||
htmlize | ||
idle-require | ||
ledger-mode | ||
leuven-theme | ||
rainbow-mode | ||
unbound |
To specify packages that should be excluded from installation by Emacs Leuven (and not suggested for installation), incorporate a configuration snippet like the following into your Emacs configuration file:
(setq leuven-excluded-packages '(some-useless-package
...
other-annoying-package))
Unlock time-saving techniques and enhance your productivity using the Emacs Leuven keyboard shortcuts. Experience a streamlined workflow that puts you in control.
Key binding conventions: http://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html
Global key bindings.
Shortcut | What it runs |
---|---|
<f2> | save-buffer |
<S-f2> | org-save-buffer-and-do-related |
<C-f2> | (for interaction-log mode) |
<f3> | find-file (or helm-for-files) |
<f4> | helm-semantic-or-imenu |
<M-f4> | save-buffers-kill-terminal |
<f7> | leuven-babel-translate |
<f8> | call-last-kbd-macro |
<S-f8> | leuven-toggle-kbd-macro-recording-on/off |
<C-f8> | name-last-kbd-macro |
<C-f9> | leuven-vc-jump |
<C-f11> | bbdb |
<f12> | bury-buffer |
<S-f12> | leuven-kill-this-buffer-without-query |
<C-f12> | leuven-revert-buffer-without-query |
Shortcut | What it runs |
---|---|
<f1> | info |
<S-f1> | man-follow |
<C-f1> | info-lookup-symbol |
Shortcut | What it runs |
---|---|
<f11> | undo |
C-S-z | redo |
<S-f11> | redo |
Shortcut | What it runs |
---|---|
<f5> | delete-other-windows |
<f6> | other-window |
<C-f6> | balance-windows |
C-= | compare-windows |
C-c ~ | leuven-swap-windows |
C-c | | leuven-toggle-window-split |
Shortcut | What it runs |
---|---|
<next> | pager-page-down |
<prior> | pager-page-up |
M-ù | backward-paragraph |
M-* | forward-paragraph |
Shortcut | What it runs |
---|---|
<return> | newline-and-indent |
C-c ^ | sort-lines |
M-G | what-line |
<C-S-down> | leuven-move-line-down |
<C-S-up> | leuven-move-line-up |
Shortcut | What it runs |
---|
Shortcut | What it runs |
---|---|
C-c o | helm-occur |
C-o | leuven–isearch-occur |
C-o | occur |
Shortcut | What it runs |
---|---|
C-$ | flyspell-buffer |
C-M-$ | leuven-flyspell-toggle-dictionary |
Shortcut | What it runs |
---|---|
<f9> | recompile |
<S-f9> | make-clean |
<f10> | next-error |
<S-f10> | previous-error |
<C-f10> | first-error |
Shortcut | What it runs |
---|---|
<C-f2> | bmkp-toggle-autonamed-bookmark-set/delete |
<S-f2> | bmkp-next-bookmark-this-file/buffer-repeat |
<C-S-f2> | bmkp-delete-all-autonamed-for-this-buffer) |
C-x r b | helm-bookmark-ext |
C-x r l | helm-bookmarks |
Shortcut | What it runs |
---|---|
<S-f2> | org-save-buffer-and-do-related |
<C-f3> | leuven-org-todo-list-current-dir |
<f4> | helm-org-headlines |
<M-f6> | visible-mode |
C-M-] | org-cycle-global ;; <S-tab> |
M-] | org-cycle-local |
C-c l | org-store-link |
C-c c | org-capture |
C-c b | org-switchb |
C-c a | org-agenda |
C-c L | org-insert-link-global |
C-c o | org-open-at-point-global |
C-c C-b | org-switch-to-agenda |
\C-\M-n | outline-next-visible-heading |
\C-\M-p | outline-previous-visible-heading |
\C-\M-u | outline-up-heading |
C-c C-x f | org-footnote-action |
C-c C-x C-i | org-clock-in |
C-c C-x C-j | org-clock-goto |
C-c C-x C-o | org-clock-out |
C-c C-x C-q | leuven-org-clock-in-interrupted-task |
( | leuven-org-agenda-toggle-tasks-details |
C-c C-e | org-export-dispatch |
M-P | htmlize-buffer |
C-c C-e h o | htmlize-view-buffer |
M-; | leuven-org-comment-dwim |
C-M-\ | leuven-org-indent-region |
C-c C-v C-d | org-babel-demarcate-block |
C-c m | org-mime-subtree |
C-c m | leuven-mail-subtree |
N | leuven-org-agenda-new |
Z | leuven-org-agenda-mark-done-and-add-followup |
Shortcut | What it runs |
---|---|
<return> | dired-single-buffer |
<mouse-1> | dired-single-buffer-mouse |
^ | (anonymous function) |
e | browse-url-of-dired-file |
E | w32-dired-open-files-externally |
C-c f 1 | find-name-dired |
C-c f 2 | find-grep-dired |
C-c f 3 | rgrep |
I still have to sort them out, by mode (when applicable).
Shortcut | What it runs |
---|---|
C-c SPC | ace-jump |
C-) | match-paren |
x | leuven-vc-dir-hide-up-to-date-and-unregistered |
E | vc-ediff |
= | leuven-vc-diff |
M-? | etags-select-find-tag-at-point |
C-c e | ecb-minor-mode |
M-/ | hippie-expand |
<tab> | ac-expand |
< | scroll-calendar-right |
> | scroll-calendar-left |
<C-down> | comint-next-matching-input-from-input |
<C-up> | comint-previous-matching-input-from-input |
<down> | comint-next-input |
<up> | comint-previous-input |
<C-backspace> | backward-kill-word |
<left> | speedbar-contract-line |
<right> | speedbar-expand-line |
<S-return> | leuven-ess-eval |
M– | ess-smart-underscore |
C-* | leuven-hlt-highlight-current-word |
C-c ! | shell |
C-c . | leuven-insert-current-date |
C-c C-c | tidy-buffer |
C-c C-x nil | |
C-c d l | dictionary-lookup-definition |
C-c d m | dictionary-match-words |
C-c d s | dictionary-search |
C-c g g | leuven-google-search |
C-c g r | leuven-google-search-region |
C-c g s | |
C-c g w | leuven-google-search-word-at-point |
C-c n | |
C-c q | boxquote-region |
C-c s | yas-insert-snippet |
C-c t | toggle-truncate-lines |
C-c T | multi-term |
C-c z | toggle-full-screen |
C-h A | apropos-variable |
C-h E | elisp-index-search |
C-S-n | hlt-next-highlight |
C-S-p | hlt-previous-highlight |
C-x b | helm-buffers-list |
C-x C-b | electric-buffer-list |
C-x C-b | ibuffer |
C-x p | proced |
M-o | |
M-p | ps-print-buffer-with-faces |
M-x | helm-M-x |
Found a bug or have an idea for a new feature? Share your thoughts on the GitHub issue tracker.
I welcome contributions in any form! Feel free to submit patches to enhance the project.
If you find the emacs-leuven project enhancing your Emacs experience and simplifying your workflow, seize the opportunity to express your appreciation! Help fuel future development by making a donation through PayPal. Your support is invaluable — thank you!
Remember, regardless of donations, emacs-leuven will always remain freely accessible, both as in Belgian beer and as in speech.
Copyright (C) 1999-2024 Free Software Foundation, Inc.
Author: Fabrice Niessen
Keywords: emacs configuration file
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.