This is my attempt at configuring Emacs the way I like it. Eternally work in progress.
Practical Emacs setup with Vim-ish influences and affection for Hydras.
Unlike most Emacs configurations packages, Adequate emacs.d should not be
installed as the ~/.emacs.d directory. Instead, if you wish to use Adequate,
you should make ~/.emacs to be a symbolic link to the project's init.el. The
initialization code will figure out where Adequate is installed and add the
appropriate directories to Emacs load path.
git clone https://bitbucket.org/Soft/emacs.d.git
ln -s ./emacs.d/init.el ~/.emacs
Not having Adequate's project directory be user's ~/.emacs.d frees us from
having to craft a detailed .gitignore for all the files Emacs might create
inside its init directory. Additionally, having Adequate be in a separate
location helps us keep the project files clean and reduces the possibility of
inadvertently committing unnecessary files.
| Key | Function |
|---|---|
C-c w |
Window option hydra |
C-c t |
Buffer option hydra |
C-c f |
Folding hydra |
C-c m |
Bookmark hydra |
C-c s |
Search within project with ag and Helm |
C-c <space> |
Helm swoop within project or file |
C-c <return> |
Eshell or term if universal argument was supplied |
C-c g g |
Magit status |
C-c g l |
Git log of current branch |
C-c g d |
Diff unstaged or staged changes if universal argument was supplied |
C-c x |
Prefix for misc features |
C-c b |
Find file in a project |
C-c i |
Emacs Lisp REPL |
<F12> |
Neotree Toggle |
In addition to configuring existing Emacs modules, Adequate contains a bunch of new modules. Ideally, these would eventually make their way to Melpa, but for now they can be found here.
portage-mode, portage-mode-accept-keywords-mode and portage-mode-use-mode
add syntax highlighting and other convenience features for
Portage's configuration files. These are
mainly useful in Gentoo-based environments.
ebuild-mode can be used to edit
Portage's ebuild files.
Use Helm for finding and visiting Org files from org-directory.
Use Helm for inserting emoji characters.
Use Helm for selecting Weechat chat buffers.
mpris-control-info-mode display the currently playing song in Emacs mode line.
The mode should support all media players compatible with the MPRIS D-Bus Interface
Specification.
dbus-control-mode is a global minor mode that exposes Emacs as a D-Bus
service. This makes it possible to open files in existing Emacs instances using
emacs-opener.el script. Emacs built-in daemon mode provides similar
functionality.
all-monitors-fill-all-monitors function can be used to quickly fill all the
monitors with Emacs frames. By default, the new frames will be full screen
state, but if universal argument is supplied, the frames will be maximized.
google-translate-repl builds upon google-translate module by offering a
REPL-like interface to the translator. :source and :target commands can be
used to control source and target languages. The :swap command can be used to
swap the source and target languages.
gll-guess-language-lite-mode builds upon guess-language module by providing
a simpler mode for buffer language detection that does not try to support
multiple languages in a single buffer.