7 Best Emacs-Like Text Editors August 13, 2020 Steve Emms Software, Utilities Over the years, one of the most emotive areas in the world of Linux is the choice of text editor. Starting emacs emacs to start emacs. emacs filename to start emacs and load a file emacs -nw filename to start emacs with no new window (load file) Quitting X C quit emacs (Can be used with impunity - the system will prompt if the workspace has not yet been saved.) G aborts any command in progress Help H T to see the tutorial H A topic.
- Telega1. Utilizes the Telegram API to provide ALL of the Telegram functionality combined with various extras
- Magit. Git doesn’t get any better.
- GPG. More of a non-interface, but easily make org or other files GPG encrypted so a password is requested before emacs unencrypts the files.
- Notmuch. Great interfaces for use of the Notmuch email indexing program.
- Shell. Unlike eshell, this is a true wrapper: you are literally using a shell process on the system.
- Dired. Essentially a wrapper around your system’s “ls” command, it is truly magnificent.
There is already an abundance of stuff about its features elsewhere. What are some of the Emacs wrappers/interfaces that you recommend? Any you wish for?
Footnotes
1 You can start with Telega at https://zevlg.github.io/telega.el/#introduction
- Reddit: https://www.reddit.com/r/emacs/comments/m2v1fj/best_emacs_interfaces/
Best Emacs Themes
![Best osx operating system Best osx operating system](/uploads/1/1/7/9/117909255/276124542.jpg)
UPDATED: <2021-06-15 Tue>
Best Emacs Keyboard
CREATED: <2014-04-26 Sat>
I will show the minimum setup and explain details.
Topics covered in official manual (
flyspell-mode-predicate
, for example) are NOT discussed.You can check my complete configuration HERE.
Suggestion for non-programmers
Emacs finds the right dictionary by querying the locale.
You can run the command
locale
in the shell to get current locale.Below set up force Emacs to use the dictionary 'en_US':
That's it!
Some people prefer hunspell because hunspell gives better suggestions for typo fix. We can run both programs to demonstrate,
Run
man aspell
or man hunspell
in shell if you have more questions. I've nothing more to say.Suggestion for programmers
I recommend aspell instead of hunspell (Though hunspell is fine).
Please insert below code into your
~/.emacs
:There is one minor issue in this setup. If a camel case word contains correct two character sub-word. Aspell will regard the word as typo. So aspell might produce some noise (aspell 0.60.8 has new option
--camel-case
which solves this problem completely).See https://github.com/redguardtoo/emacs.d/blob/master/lisp/init-spelling.el for the solution.
Why
Aspell
aspell is recommended because its option
--run-together
(since aspell 0.60.8, option --camel-case
replaces =run-together
). That option could check the camel case word. Variable name often uses camel case naming convention these days. Read my Effective spell check in Emacs for advanced tips.If Emacs starts an aspell process with
--run-together
option, that process is not closed so it can be re-used by other commands.This behavior will be a problem if you want Emacs/aspell correct the typo by running the command
ispell-word
because an aspell process with '–run-together' will produce too much noise.For example, for a typo 'helle' Emacs will give you extra candidates. It's hard to find the desired word 'hello':
The better solution is before running 'M-x ispell-word', we'd better restart the aspell process without the argument '–run-together'.
Best Osx Games
Here is the screen shot after we applying this fix:
Best Emacs Distro
As I mentioned, the global variable
ispell-extra-args
contains arguments Emacs will always append to a spell checker process (aspell). That's the only variable you need care about.There is another variable
ispell-cmd-args
. It is actually some extra arguments Emacs could send to the existing spell checker process when you 'M-x ispell-word'. In my opinion, it's useless. I mention it because its name is confusing. ispell-extra-args
contains command line arguments the spell checker always uses. The ispell-cmd-args
contains the extra arguments which might be used.Hunspell
I cannot find hunspell option to check camel case words.
Best Osx For Macbook Pro
Hunspell always checks the environment variable LC_ALL, LC_MESSAGES and LANG at first to find the default dictionary unless you give it the dictionary in the command line. If it cannot find the default dictionary, the spell checker process won't start. Aspell does not have this issue. For example, if aspell cannot find the zh_CN dictionary, it will fall back into English dictionary.
Specify the
ispell-extra-args
will NOT stop hunspell to search for the default dictionary at the beginning because ispell-extra-args
is NOT used by hunspell.For example, I am a Chinese and my locale is
zh_CN.utf-8
. So hunspell always searches the dictionary zh_CN. Even I'm only interested in English spell checking.To specify the dictionary explicitly, I need hack the Emacs code which is kind of mess.
Finally, I figured out,
You can pass the extra arguments to the hunspell by tweaking
ispell-local-dictionary-alist
.FAQ
How to setup Hunspell
The easiest way is to set up environment variable
DICPATH
.For example, on macOS (LibreOffice is installed first),
You can also run
Please enable JavaScript to view the comments powered by Disqus.Comments powered by Disqushunspell -D
in shell to figure out where hunspell actually searches dictionaries.