Live data from Hacker News

Making Emacs Popular Again

lwn.net

581–590 of 782 posts

Re: Making Emacs Popular Again

#581
post #18

Earlier quoted context omitted.

> And the old "I have suffered therefore the others have to suffer". Actually, its an extremely important point. Tools which optimise for the professional are better than those which do so for the noob. Whenever you can achieve both, do so, but never side with the beginner otherwise. People should learn their tools, and they shouldn't be beginners for long, so making things "friendly" at the cost of rewarding experti…

This is absolutely true. However, if you can make a tool more learnable for new users without sacrificing its optimization for power users, you should. One way to do that is to not gratuitously invent new terms, and to use terms people are familiar with. Using conventions like "M-x" throughout the documentation, even with a note at the front of the manual that "We refer to Alt as Meta for historical reasons.", is nee…

"M = Alt", "C = Control" is such a trivial thing to remember, yet it is brought up as a critical emacs deficiency every time. Why isn't this argument brought up in every Mac/PC discussion, or Xbox versus playstation?

Re: Making Emacs Popular Again

#582
post #429

Earlier quoted context omitted.

This view is obviously biased against Emacs, but I don't disagree completely with the premise. As an Emacs user, being "immediately productive" (whatever that means) is not your topmost priority. You mold your Emacs to a workflow unique to you, notice things you are doing often, add elisp functions to change it to make those things easier, and carry them with you from job to job. As your job evolves and changes, you…

> You mold your Emacs to a workflow unique to you, notice things you are doing often, add elisp functions to change it to make those things easier, and carry them with you from job to job. As your job evolves and changes, you maintain and grow your Emacs files over decades, and borrow from someone else's workflows. I've been writing software for ~24 years, and I can understand the need for this in the past. Now, I ju…

I was going to say pong. Or fireplace. Or maybe the same experience on macos or linux or editing files on an embedded router remotely with tramp.

But really the customization is the use case.

just some examples:

I have written a few specialized diff functions. diff two directories, diff 20 files, diff what I have vs checked in. many different comment-out-a-region functions. remote compile. local compile, but build this part of a project or build it this way. every language I code in has customizations, for indent, for tabs, for colors, several "insert a debug printf".

They are all silly and redundant of no consequence. I frequently rewrite them or throw them away depending on the project I'm working on.

they are meta-silly even: f2 will rotate through editing my 3 startup files.

However - when the time gets tight and I have to do something on a schedule, I'm not grinding through some other person's decision of what is best, I'm just doing it. I also get better at it with time.

Re: Making Emacs Popular Again

#583
post #429

Earlier quoted context omitted.

> You mold your Emacs to a workflow unique to you, notice things you are doing often, add elisp functions to change it to make those things easier, and carry them with you from job to job. As your job evolves and changes, you maintain and grow your Emacs files over decades, and borrow from someone else's workflows. I've been writing software for ~24 years, and I can understand the need for this in the past. Now, I ju…

You can do one thing in JetBrains: edit code. That's it. In Emacs, I read my mail, I organise my agenda, I write technical reports, blog posts, I wrote my entire thesis in org-mode. I collect research notes in Emacs, and a journal. I do my bookkeeping and accounting in Emacs. I write Confluence articles, so I don't have to deal with Confluence's shitty interface. I edit remote files, I edit files via sudo on my machi…

Really? There's a way to edit confluence pages in emacs? you've made me very happy!

EDIT: https://www.emacswiki.org/emacs/ConfluenceMode

Re: Making Emacs Popular Again

#584

Earlier quoted context omitted.

"I don't care about org mode" Thanks for specifying this and confirming my observations. My experience has been that Emacs users are much more likely than users of other text editors to be researchers and other avid note-takers who do care about tools like Org mode. For example, I have a personal knowledge base that includes several thousand Org files containing my notes. It's not a coincidence that the creator of Or…

I'm a researcher, and I have a git repository for my notes, which I edit using markdown. It supports latex math, tables, cross links, labels, and html if I need to do anything fancy, like inserting images, videos, etc. (youtube embedded video? no problem). I can edit them from any device, and they get sync'ed everywhere via git. I can also read them from everywhere, and markdown renders super nicely. I take markdown…

Can you elaborate, please? How do you use latex, images and cross-links in markdown?

Re: Making Emacs Popular Again

#585

Earlier quoted context omitted.

I am not a passionate Emacs user and I strongly dislike the weird bugs that rear their heads sometimes. I was always a vim user, but switched to Emacs because it has better support for completion, etc. while having nearly perfect vi emulation. I would even go as far as saying that Evil is vi implemented in Emacs Lisp. I try VS Code every now and then, but I always stop because of two reasons: incomplete vi(m) emulati…

How does emacs have better support for completion than vim?

https://www.emacswiki.org/emacs/CategoryCompletion

Re: Making Emacs Popular Again

#586
post #349

Earlier quoted context omitted.

I would like to understand why vim does not seem to have this problem? I guess as stated below, it's just they way it is marketed. Because the way I see it, emacs is much easier to start out with than vim. If I start emacs, I can navigate around the text with the arrow keys, the way I would expect from most other text entry systems. Then I can just type stuff. I can click at points in the text to navigate there, just…

> I would like to understand why vim does not seem to have this problem? That’s seriously begging the question — I mean, there’s a pretty popular running joke about quitting vim and it’s been many years since I’ve heard any recommend it as easy to get started with. In the 90s people suggested it due to Emacs hitting memory constraints but most CPUs now have more cache now than those computers had.

I know, people are joking about how it's not usable. But still there are a lot of people using it! So maybe it's not actually an issue for adoption, so I wonder why this argument comes up with emacs then, which, in my opinion, is OOTB not as weird as vim for someone unfamiliar with either of them.

Re: Making Emacs Popular Again

#587

New employee 1 workflow at company X: 1. Install VS Code 2. Click extensions and install language specific plugin 3. Work New employee 2 workflow at company X: 1. Install emacs 2. Try to install some source code indexing tool 3. Tool is missing 13 dependencies, so spend 4 hours finding, installing and configuring the dependencies. 4. Spend another couple hours reading non-existent to terrible documentation (documenta…

This view is obviously biased against Emacs, but I don't disagree completely with the premise. As an Emacs user, being "immediately productive" (whatever that means) is not your topmost priority. You mold your Emacs to a workflow unique to you, notice things you are doing often, add elisp functions to change it to make those things easier, and carry them with you from job to job. As your job evolves and changes, you…

> You mold your Emacs to a workflow unique to you, notice things you are doing often, add elisp functions to change it to make those things easier, and carry them with you from job to job.

I'm using emacs for 15 years, and it doesn't work for me. When I noticed things I'm doing often, I already have a habit of doing these things by this way. So if I wrote an elisp-function to automate things, I wouldn't use it, because my unique way doesn't include this function.

I'm trying to find a courage to migrate from emacs to some other IDE, where everything already configured, where I could create new habits relying on automation. You know, like use syntax-aware indexing software instead of " find . -name *.[ch] -exec grep -Hn something {} \; ". I tried etags, but it doesn't work often enough. So my unique way is to simplify workflow and start with find/grep solution, which works in 100% of cases.

emacs is a subject of "lisp curse"[1]: it is too configurable for people to make it usable. People just hack around to make it work for them, and no one tries to make reasonable defaults, because when you set up text editor and ready to make reasonable defaults your editor already is configured and you personally doesn't need no defaults.

[1] http://www.winestockwebdesign.com/Essays/Lisp_Curse.html

Re: Making Emacs Popular Again

#588
post #513

Earlier quoted context omitted.

Render images alone is too basic, that was already possible in XEmacs. I really meant like Jupyter Notebooks, interactive images and data structures, that you can click on and change to your pleasure and plug into Elisp code to be called back.

Org-babel does this, and is less limited in language choice than Jupyter; you can use any language for which a binding exists (there are many, including Python) in any code block, irrespective of what you use in any other. The interfaces are pretty clean, and you can have inline images, although I think not interactive ones. Data structures are expressible in code or in tables. I don't use it much these days, having…

Thanks, I will have a look into it, if anything at least not to spread misinformation.

Re: Making Emacs Popular Again

#589

Earlier quoted context omitted.

As a regular emacs user, I can tell you that start-up time is one of the lowest things on my priority list of things that I wish would be improved. Emacs is not vim. Emacs is not designed to be a program you open for every file. Emacs is and IDE. You open it every time your computer starts, and then you go to Emacs and find files from there. Occasionally, you'll have a file and want to look at it, and then you'll use…

We agree completely. Neither Emacs users nor developers care about start-up time or size on disk. And that's why Vim is installed by default on Linux distros (and macOS and WSL) and Emacs isn't. And that's partly why people learn Vim before they learn Emacs.

Yes, we are probably in agreement on that point. We probably disagree on whether we should care about start-up time.

We probably also disagree on what exactly it means to learn Vim before learning Emacs. I've been using Vim as a console editor far before I knew Emacs existed, but I have no idea how to use Vim for anything more than basic editing. Choosing an editor to learn as your development environment (which is what I would consider 'learning Emacs/vim/etc' actually means) is unlikely to be a decision you take based on system defaults. You are far more likely to learn the editor/IDE that your mentors use, whether that is Vim or Emacs or, as was my case originally, Borland Turbo C. Alternatively, when you are experienced enough to make a conscious choice of editor to invest in learning and customizing, your criteria will be more varied, but still likely not depend that much on system defaults.

Re: Making Emacs Popular Again

#590

Earlier quoted context omitted.

Somethings I find more convenient with Emacs than modern IDEs: -Remote file editing with Tramp: This is much better even than using vi/pick over a terminal. -Very flexible kill ring copy paste mechanism: can do complicated text manipulations with easy access to copy paste history. -Easy macro recording and playback. -Very flexible windowing: can show even multiple windows with the same file, even synchronized scrolli…

Apart from remote file editing everything else exists in modern IDEs. When is the last time you looked at an IDE?

Remote file-editing is also available with other editors and IDEs. Everything KDE has it out if the box for example. Vim has IIRC some protocols. VS Code got some a bit ago as I heard.
Post reply on HN