Live data from Hacker News

Emacs is special regarding UIs

lists.gnu.org

121–130 of 418 posts

Re: Emacs is special regarding UIs

#121
post #82
post #73

Earlier quoted context omitted.

> The shift away from X11 means no more forwarding X11 applications over ssh, which is slow at best and buggy and insecure at worst. Yes but sometimes you really need that and it's a life saver. EDIT: I just remembered about LTSP (Linux Terminal Server Project) which many schools used to lower the TCO of computing infrastructure. That relied heavily on Xorg's network transparency. I wonder what will happen to LTSP

Honestly, I think people's reliance on X forwarding is just due to the fact that it happens to exist, not because they really need it. There's nothing like X forwarding on Windows to my knowledge. If X forwarding didn't exist people would have figured out how to do what they needed over SSH with text or when GUI's are irreplaceable sysadmins would have set up an actual remote desktop solution like on other modern ope…

> There's nothing like X forwarding on Windows to my knowledge.

if windows was enough for my needs I'd use it ?

Re: Emacs is special regarding UIs

#122
post #46

Emacs is not a text editor, it's a platform independent VM which can run your scripts with a text UI. E.g. do you want keep an eye on some information which can be fetched from the net? You just write a script which regularly fetches the info and puts it into a buffer, so you can take a look at it anytime, and then regardless of platform you have that info readily available just by installing your own emacs config fi…

> Emacs is not a text editor

https://www.gnu.org/software/emacs/:

> [Emacs is] an extensible, customizable, free/libre text editor — and more

Re: Emacs is special regarding UIs

#123
This is somewhat oblique to the content of the post but "special" is about right. "Unnecessarily obtuse", particularly from a contemporary perspective, might be a less kind way to describe it. I could say the same about the documentation which, frankly, is not great at making you immediately productive. It's written like an academic treastise, not a tutorial for a piece of software that exists to help you get stuff done and where learning the software is not an end in itself.

I've recently started making a relatively determined attempt to become proficient with emacs due to increasing frustration at poor performance from both VSCode and Sublime Text when working with larger projects and, I'm not going to lie, it's hard going.

Take something as basic as working with multiple windows. Emacs has concepts of buffers, windows, and frames, but windows and frames are diametrically opposite in concept to windows and frames in client side web development.

That's not too difficult to grasp but, say you're in dired, and you want to open a file in a new OS window (in emacs-speak this would be a frame). You'd think you could just move the caret over the filename and hit some key combination to open that file in another window (sorry, I mean frame). Possibly you can but the nearest I've managed to get so far is (from memory) C-x 5 f, which brings up the minibuffer prefilled with the pathname of the directory you're browsing in dired, and then you have to start typing the filename (which, granted, will autocomplete), which seems somewhat redundant, and only then can you open the file.

It's also full of things to trip you up, like the key bindings for switching to another (emacs) window and killing a buffer - both fairly common operations - being far too similar and easy to confuse for a newbie.

It just seems so deliberately contrary, but I'm hoping the investment will pay dividends given time and persistence (this is, however, approximately my fourth or fifth attempt in 20 years to learn emacs, so we'll see).

Re: Emacs is special regarding UIs

#124

Earlier quoted context omitted.

> How does emacs UI work? Emacs has the idea of _buffers_ which are the actual window panes that you can view. The _buffer_ has data in the form of text which has properties in much the same way a block of html can have properties. An emacs-lisp function has full access to do anything it wants with the buffer. For example it can insert contents, change the font family, change the bit of text into a button with a call…

In other words, Emacs has its own markup language? how does emacs know that a specific bit of text is a button, for example?

Yes, Emacs supports a limited form of "rich text". See text-mode.

It's supported by text properties [1] and overlays [2]. Character properties are special attributes attached to a single character, while overlays can attach attributes to a "region" and override old text properties (like div in HTML).

In Emacs,

> A button is essentially a set of text or overlay properties, attached to a stretch of text in a buffer. [3]

The Emacs display engine is sorta like an HTML render engine.

[1] https://www.gnu.org/software/emacs/manual/html_node/elisp/Te...

[2] https://www.gnu.org/software/emacs/manual/html_node/elisp/Ov...

[3] https://www.gnu.org/software/emacs/manual/html_node/elisp/Bu...

Re: Emacs is special regarding UIs

#125

This is somewhat oblique to the content of the post but "special" is about right. "Unnecessarily obtuse", particularly from a contemporary perspective, might be a less kind way to describe it. I could say the same about the documentation which, frankly, is not great at making you immediately productive. It's written like an academic treastise, not a tutorial for a piece of software that exists to help you get stuff d…

These are reasonable criticisms of Emacs’s interface, but the topic of the post is interfaces in Emacs, not Emacs’s interface. Sublime has no comparison point.

Re: Emacs is special regarding UIs

#126
post #8

Earlier quoted context omitted.

As a non Emacs user, is the speed of Emacs Lisp a frustration in typical day to day usage?

What are you using now? If VScode or Atom you won't feel any degradation. If vim or SublimeText, some things will take few extra dozens of milliseconds. You could test the Doom Emacs, which is trying to be a feature-full emacs environment optimized for speed.

I've been using Vim for a very long time now, recently adding CoC has slowed things a bit however I am quite fond of some of the features, so I might start enabling it only when I want those.

I'm not looking to encouragement to change (after 20 years in Vim that ship has likely sailed for good), I was just curious if the speed of Emacs lisp was a frequent bugbear.

Re: Emacs is special regarding UIs

#127
post #108

Emacs and org-mode is frequently mentioned on HN as being awesome, but I don't feel like I could ever switch; I've got enough issues with vim already. For one, all the keyboard shortcuts and commands that you have to learn; I don't know if I have the capacity to learn all that anymore, not without deliberate practice, while in modern editors you can get by with keyboard + mouse and slowly learn some new shortcuts her…

I think your intuition is about right: the IDE is going to squish all before it at the environments/runtimes it supports well, the vi(m) obsession with modal keyboard golf is a waste of time and org mode is a curious subcult of the the already weird (but, like, totally different from those vim heretics!) emacs cult. The other things are worth exploring for fun and curiosity but it's sensible to look at them as they a…

As a long-time evil-mode / emacs user, I would say your comment is pretty accurate.

Two objections come to mind at the moment::

* vim keybindings have helped my RSI significantly (and before you go there, I got RSI when I was an IDE user, before I focused on on Emacs)

* Using Emacs and building my own config has not made me massively more efficient at the workflow level, but it has taught me a great deal about software design and development than I would have otherwise learned.

Re: Emacs is special regarding UIs

#128
post #17

Earlier quoted context omitted.

> Norton Commander, anyone? to this day there is no comparable tool Directory Opus. I've used it for nearly 30 years. First thing I install on Windows.

Or FAR.

yeah FAR Commander is an underappreciated pearl

Re: Emacs is special regarding UIs

#129
post #95
post #73

Earlier quoted context omitted.

> The shift away from X11 means no more forwarding X11 applications over ssh, which is slow at best and buggy and insecure at worst. Yes but sometimes you really need that and it's a life saver. EDIT: I just remembered about LTSP (Linux Terminal Server Project) which many schools used to lower the TCO of computing infrastructure. That relied heavily on Xorg's network transparency. I wonder what will happen to LTSP

For terminal server use cases, there are things like VNC, SPICE, NX, etc. The X11/ssh thing is for when you want to run a mix of local and remote applications on a single desktop, which i think is pretty unusual these days.

Wheelchair users are also pretty unusual and we don’t go removing ramps from everywhere. I’m growing pretty tired of the “your use case is unusual, so fuck you” argument.

Re: Emacs is special regarding UIs

#130

Earlier quoted context omitted.

Emacs support of non-fixed width fonts is also pretty bad. My language Urdu is basically impossible to write on Emacs - or at least it was 5 years ago when I struggled with it a lot.

The HarfBuzz font engine should help. What trouble were you having with specifically?

Clarification: HarfBuzz is available in Emacs as of the recent 27.1 release.
Post reply on HN