TheWizardBay

Everything but the one you thought.

Home About Not sure what else to put here


Why Use Emacs When, You Know, VSCode with Vim Keys Exists

Table of Contents

Preface

According to the 2022 Developer Survey by Stackoverflow, VSCode is the most popular IDE for developers with a ratio of 74.48% in 71,010 responses, while Emacs is at 4.51%. This figure is convincing from my point of view, as many of my colleagues and friends use VSCode daily and love the tool for its convenience, powerfulness and `just-werks'. Indeed, VSCode is good and has been recieving lots and lots of effort from developers all over the world to make it better (under Microsoft's supervision of course). And if you already obtain Vim keybindings as your own muscle memory, the combination of a modern and extensible IDE and a highly productive editing style would give you (might be) the best coding workflow ever.

Then why should you use Emacs?

What is Emacs

According to Emacs is Sexy, Emacs is a highly extensible text editor. It is built on a C core and provides a fully featured Lisp environment. Emacs is strongly competent for all things that are related to text manipulation. It comes with a fully capable GUI interface, so it's also good at text presentation. Most importantly, it is Free Software, you are free to run, copy, study, distribute, change & improve it under the GNU General Public License. It has a vibrant community, with lots of people sharing their experience, their workflow, and their code to make Emacs more and more powerful.

For those that are unfamiliar with these words, here's a more down-to-earth translation:

Any thing that has to do with texts, whether displaying it or editing it, Emacs could do it the way you want it to.

If not, you could easily improve it to make it able to, freely. You truly own it.

These descriptions seem light but few software utilities have reached this level. Emacs is one of them.

Free as in Freedom

Emacs is free software, the `free' means `Freedom' instead of `free beer'.This means that not only can it be downloaded and used for free, but users are also free to modify and distribute the software as they see fit. The concept of freedom in software refers to users having the ability to study, change, and distribute the software according to their own needs and preferences. This is in contrast to proprietary software, where the user is limited in their ability to modify or distribute the software.

The freedom that comes with using Emacs is one of the key reasons why it has remained a popular and widely-used text editor for over three decades and why a large and active community has developed around Emacs. This community contributes new features, bug fixes, and packages to enhance the functionality of the software. This has been instrumental in making Emacs one of the most flexible and customizable text editors available.

The existence of a vibrant community also ensures that the software continues to evolve and improve over time. People come and share their experiences, workflow and configuration, so that other people could learn and collaborate.This leads to a self-sustaining cycle of growth and improvement, where everyone benefits from the collective knowledge and expertise of the community.

The community's passion and commitment to the software ensures that it will continue to be developed and improved for many years to come. Whether you're a beginner or an experienced user, there is always something new to learn from the community and a way to contribute and give back.

Open-source products might be `sunsetted', commercial corporations might lose interest, Emacs will always be here, and we can expect it to continue to be a valuable tool for many generations to come.

Sharpen Your Axe

“Give me six hours to chop down a tree and I will spend the first four sharpening the axe.”

― Abraham Lincoln

Polishing your tools is always a smart move.

Hackers are known for their laziness, but they're actually just highly efficient. They want to streamline their work processes so they can have more free time to continue being productive. By continually looking for ways to optimize their workflow and increase efficiency, they can make the most of their time and resources.

If you're faced with a six-hour task, a hacker would aim to complete it in just two hours, then use the remaining time to figure out how to do it even faster and better next time. This drive for optimization and efficiency is a fundamental part of the hacker mentality, and it's not just beneficial for individuals. It drives technological advancements and fuels innovation in the tech world.

We're surrounded by powerful tools for automation, and the methods and philosophy for optimizing workflows have never been better. It's a great time to take advantage of these tools on a personal level, and one tool you should definitely consider is Emacs.

Some people may be intimidated by their first experience with Emacs, with its unconventional keybindings and 1990s-style GUI. But don't let that stop you. Before uninstalling the program and leaving a negative review, give it a chance.

Think of Vanilla Emacs as a rod made of top-quality steel. You can still accomplish a lot with just the basics, but many users prefer a more versatile, all-in-one tool. You can buy tools made by others, hire someone to make them for you, or learn the craft and modify your own tools as you go along. Whether you're a professional or a hobbyist, the key is to learn how to customize your tools for better results.

Code Is Not All

Have you ever stopped to think about all the different types of text you work with in a day? Whether it's writing emails, reading articles, or even jotting down notes, you likely spend a significant portion of your time working with text. And when it comes to working with code, it's important to have the right tools for the job.

Emacs is a Text Editor, like Vim. Just like Vim, it's designed to make working with text as efficient and straightforward as possible. You could easily make edits, search for specific information, and even automate tasks with just a few keystrokes. And unlike some other text editors, Emacs is easily customizable, so you can configure it to work just the way you want it to.

It could be an IDE. If you're looking for a tool that can help you write, test, and debug code, then Emacs could be an excellent option. With its support for multiple programming languages, you could easily use it as an integrated development environment (IDE) for all your coding needs. And with its customizable interface, you can make sure that the IDE works just the way you want it to.

It could be a front-end control panel for all the things you do on your computer. With its support for plugins and scripts, you could use Emacs to automate all sorts of tasks, from managing your to-do list to organizing your files, making it easier to keep track of what you're working on and switch between tasks.

In conclusion, the versatility and customization options of Emacs make it a valuable tool for managing all types of text, not just code, providing you with a more comprehensive text editor that can streamline your workflow and simplify your daily tasks.

Lisp

Have you ever heard the enduring joke about how Emacs is actually an operating system, not just a text editor? Well, there's actually some truth to that. You see, at its core, Emacs is a Lisp virtual machine, or a Lisp VM for short.

Now, you may be thinking, what is a Lisp VM and why is it significant? Well, the truth is that Lisp is a really good programming language. It's been around for decades and has a long history of being used for a variety of purposes, from scientific computing to artificial intelligence. By incorporating a Lisp VM, Emacs gains the power and flexibility of this versatile language, making it much more than just a simple text editor.

So, the next time you hear the joke about how Emacs is an operating system, remember that there's actually some truth to it. With its built-in Lisp VM, it's much more than just a tool for editing text.

All Your Thing Are Belong to Emacs

Emacs has gained a reputation for being a highly versatile and flexible platform, and its users have a tendency to increasingly rely on it for a wide range of computing needs. The reason for this is rooted in the way that Emacs operates. Unlike many other platforms, Emacs does not have a namespace for functions. This means that every function is loaded in the same place, allowing for easy intercommunication between different functions. This level of interactivity across different programs is unmatched by even the UNIX pipes, which were considered revolutionary in their own right. The ability to share source code between different packages provides even greater freedom and opens up an array of new possibilities for users.

Another primary advantage of using Emacs is the ability to hack together a custom front-end for various tasks. Whether it's for controlling external functions or for managing specific workflows, the adaptability of Emacs makes it simple for users to craft their ideal environment. And as users become more familiar with the platform, they often find new and creative ways to extend its functionality.

Emacs is not just a text editor, it's an all-in-one computing solution that can handle a wide range of tasks. From coding and debugging, to writing notes and documentation, to managing to-do lists, chatting with colleagues, reading RSS feeds and e-books, organizing files, sending and receiving emails, and much more, Emacs is a comprehensive tool that streamlines many of the tasks that computer users face on a daily basis. The versatility and customization options offered by Emacs make it a highly efficient and flexible platform for a variety of workflows.

Organized Life & Workflow

Org Mode, the versatile and feature-packed extension of the Emacs text editor, is finally here. With its markup language capabilities, Org Mode is not only a powerful GTD (Getting Things Done) software, but also a powerful writing tool. The software is equipped with an export and publish engine that takes care of all your formatting issues, giving you the peace of mind to focus on your content. In fact, this very blog site you're viewing right now is fully generated by Org Mode. The power of Org Mode lies in its ability to simplify the publishing process, freeing up valuable time and energy for content creation.

The Org Mode community is known for being one of the most dedicated and passionate groups of users around a specific tool. This is because Org Mode is more than just a tool for organizing information, it's a tool for organizing life. It's designed to help users manage every aspect of their life, from their personal to-do list to their professional schedule. And as a result, Org Mode users tend to form a tight-knit community, sharing their workflows, tips, and lifestyles around the tool.

This is not just a simple text editor or a task manager, it's a way of life. The users of Org Mode understand that it is more than just a tool for organizing information, but it is a tool for enhancing their overall productivity and efficiency. With its markup language, built-in GTD software, and powerful export and publishing engine, Org Mode provides users with everything they need to keep their life in order and maintain their focus on the tasks that matter most.

And as more and more users adopt Org Mode, the community continues to grow and evolve. People from all walks of life and all professions are discovering the power of this tool and the positive impact it can have on their daily routines. Whether you are a student, a professional, or simply someone looking to get more organized, Org Mode is a tool that you should definitely consider.

Conclusion

In conclusion, using Emacs as a text editor is a smart choice for anyone looking to increase their efficiency and streamline their workflow. With its rich history, active community, and powerful capabilities, Emacs offers a flexible and customizable experience that can help you get the most out of your time and resources. Whether you're a beginner or an experienced user, there's always something new to learn and a way to improve your setup. So, don't be intimidated by its unconventional default interface - give it a chance, sharpen your axe, and see what it can do for you.


Would like to comment? Start a discussion in my public inbox by sending an email to ~ika/public-inbox@lists.sr.ht [mailing list etiquette]