

Emacs – The 100% Extendable Text Editor – x86 Blog
source link: https://x86blog.com/emacs-the-100-extendable-text-editor/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Emacs – The 100% Extendable Text Editor
This is a revision of a past article that I wrote on LinkedIn.
This is a continuation of my previous article, where I went over how to turn your terminal-based Emacs instance into your own minimal remote IDE. The main purpose of this article goes through how to even further extend your Emacs instance running on your local machine. With that, some of these features only work on the GUI instance of Emacs and not the terminal-based version. Also note, that a lot of these features are included in the Spacemacs distribution by default, but by adding what you want to your current Emacs instance in apposed to removing un-wanted features from Spacemacs, this will allow your Emacs instance to boot faster, run faster, and give you absolute control on how YOU want YOUR Emacs to behave. On the other hand, If you don’t want to take the time to do this yourself, check out the Spacemacs text editor, it’s pretty great!
Vim Bindings
As a fellow developer who has used Vim a lot, sometimes it’s difficult to move away from Vim’s unique way of key sequences and alternating modes. Thankfully, there exists some Emacs packages (EVIL mode) that gives Emacs its counterparts’ Vim-style keybindings. There are various reasons why someone would want to use Vim-style functionality in Emacs, but to name a couple:
- If you’ve heard of the dreaded Emacs-pinky from over-use of the Ctrl key, Vim can help save your life (or at least the tendons in your fingers and wrist) with it’s ergonomic key strokes.
- If you want to use Vim keybindings and functions, but want to harness the power of Emacs and it’s embedded programming language, “Elisp”, then EVIL mode is definitely for you.
Whether you want to use traditional Emacs keys to manipulate text, or Vim keys, Emacs-mode and Vim-mode can each respectively be toggled on or off on a whim’s notice.
Other Keybindings
Simply including EVIL mode into Emacs doesn’t give you the highly desired Vim LEADER key by default. If you would like to configure Vim-style keybindings and/or Emacs-style keybindings in a general, more convenient way, then General.el is for you. Whether you are in Emacs mode, or Vim’s normal, visual, or insert modes, you can use the same key-sequences to execute Emacs functions.
One more thing about keybindings…
I’ve talked a lot about keybindings so far, and honestly, I have to say that Emacs has a lot of them (sometimes it seems like too many). To better know which key sequences match to which functions, which-key.el is another great package to help you out. No other package helps you learn more about Emacs than the which-key package. which-key displays a popup buffer with a list of different options of completing your mid-keystroke executions.
Sublime-like Editing
If you want smooth-scrolling, a minimap, or even a distraction-free interface similar to the Sublime text editor, this can be enabled as well thanks to the Sublimity package. Another important package to take note of is minimap.el, as some prefer to use this minimap feature over Sublimity’s.
Directory Tree
Most IDE’s and graphical text editors have some sort of tree-like file explorer. NeoTree allows Emacs to have a left-paned buffer that is dedicated to files and directory navigation. Simply press enter with your cursor over a file, and it will open! As an alternative, you can actually use Emacs’ built in `dired` function, but NeoTree is more eye-friendly.
Themes
When launched at first startup, a lot of IDE’s will ask you which theme you would like your editor to be in (usually the only options are light and dark themes). Emacs has this beat, as there are dozens of already built in themes, and hundreds of themes you can use that have been built by 3rd-parties. The themes used for the screenshots for this article are the spacemacs-dark and doom-one themes (the doom-one theme is used in the screenshot above).
More UI Customizations
Emacs is 100% customizable and extendable. Not only can you change the overall theme, but you can also change Emacs’ native mode-line too! You can also easily disable the menu icons that are visible in the GUI by default. Make Emacs look the way you like it!
TRAMP (Transparent Remote (file) Access, Multiple Protocol)
Emacs has built-in remote-file access, and supports the most popular file transfer protocols (i.e. SSH, SCP, Telnet, etc). On systems where SSH is not a supported protocol without 3rd-party modules (Microsoft Windows), you can use PuTTY’s plink.exe program to connect to remote servers. This is great for when you can’t run Emacs within the terminal on the remote server, but still want to edit remote files from your local Emacs instance. And guess what? When you save a remote file in your local Emacs instance, it automatically saves on the remote server! Neat!
The screenshot above shows the directory listing on the server! You can delete files from here too if you want, and it will reflect on the corresponding system.
Afterthoughts
There are still a ton of features that I have not mentioned that you can enable to further extend Emacs and to make it feel closer to Visual Studio, NetBeans, Code::Blocks, Eclipse, or other common IDE’s. The possibilities of extension and customization are nearly endless!
CategoriesInformativeTagsEmacs
Recommend
-
129
Skip to content
-
110
Skip to content
-
102
Skip to content
-
87
Skip to content
-
88
2017-12-19 Emacs news Posted: Dec 21, 2017 - Modified: Apr 12, 2018|
-
66
-
60
tiptap A renderless and extendable rich-text editor for Vue.js Why I built tiptap I was looking for a text editor for
-
35
tiptap A renderless and extendable rich-text editor for Vue.js Why I built tiptap I was looking for a text editor for
-
17
Emacs is no text editorJanuary 12, 2020… and that’s OK.The Start of a Journey
-
8
8 Reasons Why Emacs is the Best Text Editor for ProgrammingJuly 28th 2021 new story6
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK