397 comments

[ 0.20 ms ] story [ 133 ms ] thread
As the author states, the purpose of this is for users who work in other editors. But if that’s the case, when would they need this? Assuming they mean when a user is logged into another device where they only have terminal access. But in that case, this wouldn’t be installed by default-one reason to learn vim or emacs. So is the use case that one would just install this on the remote box and that their permissions would allow for this? If they have the permissions wouldn’t they just be able to connect via their existing IDE and skip the terminal altogether?
I started using this because my favorite editor (micro) has very poor syntax highlighting for ruby. It's a very specific use case but it's quite nice and I'm considering switching to modeless vim
Why not just use an editor that’s really good at it then? Given you don’t prioritize portability.
You claim that you forget Vim keybindings, but then you have this on your about page:

   email: echo soaper.:.disroot.:.org | sed 's/.:./@/; s/.:././'
What’s that have to do with Vim keybindings in particular?
I was just saying that if one can remember sed syntax, Vim's should be easy to follow.
You don't need to memorize the syntax to have a script.
No joke: I wouldn’t have a programming career if remembering syntax were a requirement.
The author might just have copied that sed expression form someone else.

Or looked it up once and probably now forgotten it.

Also regex expressions are not vi expresions and have wider applications so author might use them regularly.

So nothing here suggest that the author can remember vi.

We all have limited capacity to learn stuff. If I didn't already know Vim, there's very little chance I'd have the motivation/time/energy to learn it for the first time now.
This is just a vim config. On shared systems it is very common to have permission to edit your home directory but not to install additional software (and frowned upon to install software into your homedir even though it is possible).
The main reason I don't use IDEs is because I always find sshfs to be annoyingly slow, and it is often convenient for me to edit code on a VPS.

So I am definitely going to try this.

Why not just use nano where all the common operations are labeled clearly at the bottom of the screen?
The author answers that in the linked thing, the short of it is for the vim features that nano doesn't have.
I wonder which sort of features they could have in mind, if learning the basic modes is too hard for the intended user of the plugin.
They mention that as well - syntax highlighting is one example.
nano of course has syntax highlighting, so I’m curious where it falls short.
Does it have syntax highlighting for the same amount of languages as vim does, out of the box?

I just installed nano-7.2-1 and opened a HTML file with `nano test.html` and it opened without syntax highlight, I can see the point in authors endeavor if syntax highlighting out of the box is what they're looking for.

I feel like if yiu want a fully featured IDE with language highlighting, debugging breakpoints, and code completion, but at the same time you want more ergonomic user interface, you should just use VSCode instead of doing everything in the terminal
As the author states, this is for people who do most things in a different (modal) editor and just need a terminal editor on occasion.
After years of vi users trying to turn every perfectly working program into a worse version of vi, it's heartening to see we're taking the fight for sanity and justice back to their territory.
(comment deleted)
Just fact that ones you learn vim motions it is hard to let go since they are so powerful
Well, reasonable people can have different, even more reasonable explanations for that 'fact'!

https://news.ycombinator.com/item?id=25099049

[flagged]
Personally, I find it a bit tiring that the usual response coming from the vim userbase towards someone not liking vim is either a) you obviously didn't learn it well enough, or b) you must be a bad programmer.

Sure, vim is a great tool, but it's just a tool. You're perfectly allowed to not like it and/or prefer to use other tools.

I’m using vim precisely because its modal - multi-key combos hurt my hands, modal has me doing fewer finger contortions.
(comment deleted)
(comment deleted)
You can also rebind combos to not hurt
I need to get some fresh air and listen to peaceful music to forget that I saw this! Vim has been one of the best discoveries of my life BECAUSE of its modes, and I've taken that modal approach to my browsers, VSCode, etc.
If you don't already do it the neovim extension for vscode is nights and days better than the one trying to emulate vim in javascript.
I tried both (mainly to use my neovim extensions) but unfortunately it was buggy (around 6 months ago) for me. Has it gotten more stable now?
the only time i've seen any bugs is when the neovim version lagged behind what they require in the project. i would work but not well. upgrading neovim fixed it for me.

though, like any project, there are probably bugs at the edges... not sure what bugs you are experiencing however.

(comment deleted)
Oh man, I'll give you an E- for the effort.
Emacs has Evil Mode for simulating a modeful editor with vi-style keybinding. Vim now has an extension to do the opposite thing. It would be extra amusing if it supports Emacs-style keybindings (but it doesn't).
Wow. This appears to be made for exactly me.

I've half-learned vim and like the idea of it, but frankly I also use so many other "regular" programs that at times I wish I never learned vim.

I'm really hoping this is more-or-less what I think it is.

Everyone has their preferred setup, so I guess it is cool that this exists for that reason.

But come on! Learning vim bindings is one of life’s greatest pleasures. Once you’re hooked you’ll hate any non-mode based editors.

(comment deleted)
As both an avid vim and emacs user, and a lover of both:

This is heresy!!!!!!!!!!

Conceptually the reasons the author give for this (syntax highlighting and other features of vim outclass other terminal-based editors) make total sense.

That said there's something absolutely defiling about this. It's like installing a V8 in a Tesla, or replacing the pumpkin in pumpkin pie.

I love that it will make VIM more accessible for more people, but I hate how they do it. Kudos to the author.

> I hate how they do it

What exactly do you hate?

The site says:

> > Ctrl+S to save, select text using Shift+←/→/↑/↓, and copy/paste using Ctrl+C/V.

I haven't setup Control-S, but I have very similar bindings: Shift and arrows for selecting, then Alt or Control-Shift for moving the selection around, as shown on https://raw.githubusercontent.com/csdvrx/CuteVim/main/record...

Also, like the author I have a shortcut to change themes (F9) and another to toggle invisible chars (F8), and I try to use the top of the screen as much as possible (I show the offset in hex, the row and column position etc).

I like how vim is modal, but some Windows shortcuts (like Control-C) just make too much sense to given them up on Linux: I have put `stty intr ^X` because using Shift-Control-C to copy from the terminal was way worse.

Having a few chording shortcuts give you the best of both worlds!

BTW, all of the other shortcuts proposed on this site make a lot of sense to me: I do expect Ctrl-F to search, and Ctrl-T to open tabs, I think I will copy a few :)

Back in my day, when we pressed Ctrl+S, the terminal froze, and that's just the way we liked it.

https://unix.stackexchange.com/questions/12107/how-to-unfree...

> Back in my day, when we pressed Ctrl+S, the terminal froze, and that's just the way we liked it.

I don't think anyone needs (or even wants) the terminal to freeze on such a common shortcut in 2024.

Personally, I have reclaimed Ctrl S for word delete (usually done by Alt-d)

Related: why does the shortcut to delete back a word (^W), close my browser tab?
Delete current word, delete current tab. Its related.
That's why I think MacOS is superior: it actually uses the "meta" key for useful stuff. So, Cmd-W would close the tab, and Ctrl-W would probably still delete a word (can't check right now, but it has a lot of 80s-era keyboard shortcuts for text still working)
macOS uses a lot of Emacs bindings. Ctrl-a for beginning of line, ctrl-e for end, etc etc.

And, agreed, macOS' use of shortcuts is fantastic and I wish I could replicate it on Linux.

If you use gnome/xfce:

    gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs"

    xfconf-query -c xsettings -p /Gtk/KeyThemeName -s Emacs
Try both commands.
Very cool!

I also want to use Command (Super or Hyper?), which really improves keyboard shortcuts. Command + left/right = jump to beginning or end of line, Option + left/right = jump to beginning/end of word. I know you can do the same with Control + Shift, but some apps don't support it. Plus Cmd+c/x/v for copy/cut/paste works fine in terminals, I don't have to remember to "code switch" my shortcut "language". Cmd+Backspace deletes the whole line, etc etc.

I just swap Ctrl and Caps Lock, much better.

setkbmap us -option ctrlL:swapcaps -option compose:rwin

You can place that command at XFCE's startup settings for applications.

You missed the point; Ctrl-C is never going to be "copy" in a terminal, since that shortcut is already in use. Cmd-C can work everywhere, but GUI applications on linux do not default to that.
> You missed the point; Ctrl-C is never going to be "copy" in a terminal, since that shortcut is already in use

My `stty intr ^X` disagrees

I've made Ctrl-C do copy paste in the terminal, even in vim, with a special function for wayland:

vnoremap <C-C> <CMD>call WLCopy()<CR>

I bound WindowsKey-C to run the command "xsel|xsel -b" which copies the active selection to the clipboard. It's a small step in the right direction; it's possible to get paste working as well, but that takes awareness of apps (or reconfiguring all GUI applications to use the same shortcut as the terminal).
This still happens to me too often. Especially annoying in web-based editors.
it also switches focus window, which is makes things even more confusing
That gets me multiple times a day. What is even worse is ^h opens the history instead of just deleting the last character.
> I don't think anyone needs (or even wants) the terminal to freeze on such a common shortcut in 2024.

I find it rather useful to keep important output of programs on the screen when it is impossible (or I forget) to pipe them into a pager.

Super helpful for basically anything in a terminal. Stuff is going to flow by pretty quickly or at least keep bumping the terminal every couple seconds, usually when you _least_ want it to do so. Reading off whatever your program emitted while it's pushing the terminal up every half a second gets really annoying without Ctrl-S. It's probably the most used terminal shortcut after Ctrl-C for me.
That's a fine argument, but not relevant for when you're in an editor -- and modern TUI apps disable XON/XOFF for that reason.
We should concede that /etc/profile ought to disable that with stty by default.
> I like how vim is modal, but some Windows shortcuts (like Control-C) just make too much sense to given them up on Linux

Ctrl-C does work in the GUI. That said, one thing I like about Linux is being able to highlight text using the mouse and then pasting it by middle-clicking. I don't have to interact with the keyboard at all to copy and paste text that way.

Remapping Ctrl-O denies the ability to switch modes. That’s what turns this from simply an opinionated config to a breaking change.
That's fair, changes should try to preserve existing uses
> It's like installing a V8 in a Tesla, or replacing the pumpkin in pumpkin pie.

Most pumpkin pies are actually made with butternut squash and other similar squashes, not pumpkin.

https://en.wikipedia.org/wiki/Cucurbita_moschata

https://www.thekitchn.com/whats-actually-in-your-canned-pump...

Not sure about where you’re from but where I’m from, you don’t make pumpkin pie from a can. You make it with pumpkin purée. From scratch. Get out of here with your non-pumpkin pumpkin pie propaganda.

Some pumpkin, blended into a paste, some brown sugar, an egg or two, some heavy cream and some cinnamon and crushed cloves and you have your pie filling.

You can make it with homemade butternut squash puree too, and it will taste better because of its sweetness. Give it a try sometime.
That’s a butternut squash pie, not a pumpkin pie. ;)

Try with pumpkin, nutmeg, cinnamon, and cloves… it’s that old timer pumpkin pie taste.

Apparently coffee cake has no coffee in it so we really can’t believe anything anymore.
Oh but mine does… the glaze is powdered sugar and espresso.
My life has been a lie. That sounds incredible.
To be fair - coffee cake in the US is cake to have with coffee and doesn’t normally contain any coffee.

In the UK and EU, coffee cake is cake with coffee.

Likewise tea cakes in the US are cakes made with tea and tea cakes in UK and EU are cakes to have with tea. So…

Not a lie, just a Spider-Man meets Spider-Man moment when you learn you can actually make coffee cakes with coffee (or espresso) and you can make tea cakes with tea (I prefer oolong).

I’m from the EU and I’ve never had coffee cake with no coffee nor tea cake with no tea. Very fascinating tidbit about the naming, TIL
To confuse matters more, in this part of EU the coffee cake is made with coffee and tea cake is made without tea.
pie you have pumpkin with
You owe me a new keyboard and monitor tyvm
Were you drinking hot computer tea when you read that comment?
Oyster stout shouldn't have oysters in, but usually does.
This sounds good but not the kind of coffee cake I’m used to
yellow or moist white cake (or marbled cake) with butter crumble brown sugar top and an espresso glaze. The coffee cake of coffee lovers.
Reading this thread I can't help but feel like HN readers need a reactordev recipe book.
But coffee cake is the cake you have with coffee, not made from it.
Not true. Standard staple in my oarents house was coffee cake made from coffee with walnuts.
well maybe pumpkin pie is a pie you have with pumpkin
Wait until you learn about Tunnock’s Tea Cakes.
There's no tea, and they aren't cakes - but there is a whole fresh Tunnock in every one!
Next you are probably going to tell me black forest cake is not made in the black forest any more.
It’s only Black Forest cake if it comes from that region of Germany. Otherwise it’s known as Chocolate Cherry Conifer Cake.
American coffee cake doesn't have coffee, but English coffee cake does.
Wait until you find out what baby food is really made of.
In Australia it’s known as “butternut pumpkin”. Anyway I always used kabocha squash.
In most places in the world, the word “pumpkin“ refers to squash. A squash pie is also a pumpkin pie.
Yes, and pumpkins are squashes (Cucurbita) but pumpkin originates in New England USA where it refers to the orange squash gourd used to make Halloween carvings and decorations. Being that I'm from the US, this is "pumpkin". Not to downplay squash-based pastries or pies but there's only one pie that I will eat, day or night, no matter what - the beautiful, delicious, pumpkin pie. Plain, with whipped cream, with ice cream, with chocolate drizzle, with caramel.
I freely acknowledge that you can make a delicious “pumpkin” pie with butternut squash, but a real sugar pie pumpkin (use Halloween leftovers and their mealy starchy flesh at your peril) remains superior in my opinion. Sweet potato pie, though, can be absolutely delightful with no squash in sight. Just don’t call it pumpkin pie. ;)
I've tried it and my experience is the exact opposite. I have good results with for example "Crown Prince" variety pumpkins, which I find far sweeter and tastier than butternut.
if you're looking for a good pumpkin pie alternative while pumpkins are out of season, sweet potato pie is also excellent.
What's fun about this is that I was taught from my mother, and her mother before her, to use Butternut Squash when making "pumpkin pie" from scratch.

This "tradition" of using Butternut Squash instead goes back to the 1930s at least.

Some areas have different ingredients depending on what’s available. Here in the United States, real pumpkin is preferred. You can use any gourd to make a pie but for the true pumpkin pie aficionados like myself, I can tell the difference when someone uses real pumpkin vs butternut squash vs sweet potato vs just creme, eggs, and brown sugar and some flour (I’m looking at you, Wegmans).

In the southeast coast of US, if you make a “pumpkin pie” with squash, you won’t be invited back next year.

Given that my mother, grandmother, and I, were born in the States, I can definitely say that "preferred" isn't as wide spread as you think it is.
Ah, I always wondered why pumpkin pies are relatively delicious, while pumpkin is gross. I chalked it up to the sugar.

(Chalk and sugar in the same sentence just made me think of Macdonald's milk shakes.)

In my household for the last 20 years, it is made from pumpkin. First from sweet pumpkins we would pick up every year at the Halloween pumpkin patch that we as a family tradition would take our daughter too. Now it is made from ones grown in our own garden. They are simple to grow. Pick them, roast them, purée them and freeze until needed. We also make a lovely spicy Indian style pumpkin soup from the purée. The pie is quite different from any store purchased pie and well worth it.
In most countries outside the US, squash is called pumpkin.
> In most countries outside the US [and Canada], squash is called pumpkin.
If you actually want to be pedantic, note that I did not say all countries, therefore my original statement was just as correct as your edit.
If YOU actually want to be pedantic, I was making the point that it's a North American thing, not a US thing.
> I was making the point that it's a North American thing

No you weren't. To use your style, if YOU want to play along and be pedantic, then your edit wasn't about North America, it was about just the U.S. and Canada.

I've heard this claim various times, but it doesn't really make a lot of sense. Butternut squash has a carb:fiber ratio of about 6:1. Canned pumpkin is more like 3.5:1. Sure, the USDA might be lax on the precise definition of the word "pumpkin", but I don't expect them to go so easy on the nutrition data.

As Wikipedia notes:

>The term [pumpkin] is most commonly applied to round, orange-colored squash varieties, though it does not possess a scientific definition and may be used in reference to many different squashes of varied appearance.

If the article is simply intending to say that it does not usually come from squashes that are orange, oblate and ridged, then that's fair. But I don't think it's mostly butternut squash, and I don't see why manufacturers would try to hide using the most popular variety of squash.

> but I don't expect them to go so easy on the nutrition data

Interestingly, I expected them to go easy on pretty much anything

But butternut squash is pretty similar to pumpkin. They are both winter squash, and the definition of pumpkin is a little fuzzy anyway. This would be more like replacing the pumpkin with apples.
If you'd left off "not pumpkin", you'd be technically correct. But it's a somewhat nuanced topic.

https://www.snopes.com/fact-check/canned-pumpkin-isnt-actual...

[I'll just add one more note, not mentioned in the article, which is that typical Jack-o'-lantern pumpkins are quite awful for cooking. Much worse than any canned pumpkin. If you want to cook with fresh pumpkin, research the varietals that are known for good texture and flavor. Don't grab a carving pumpkin from the pile.]

> As much of 90 percent of pumpkin sold in the U.S. (and 85 percent worldwide) is a proprietary cultivar known as a Dickinson pumpkin, which are less photogenic than the type of pumpkins commonly used for display purposes.

Ugh, they really are much less aesthetic than a nice plump orange one. This feels similar to the childhood realization that regardless of the name or the box color there's not really much strawberry juice in anything; it's all apple and pear.

In the US, canned pumpkin is 100% pumpkin, and the big name frozen pumpkin pies all list pumpkin, not butternut squash or other imitators.

And then you have sweet potato pie...

For those curious another common major percentage of “pumpkin pie” blends (such as from Libby’s) is Dickinson squash/pumpkin which is a subspecies of Cucurbita Moschata like butternut squash. These can be found as heirloom seeds. https://www.thespruceeats.com/what-are-dickinson-pumpkins-52...

Here in the Willamette Valley of Oregon, we grow a lot of crops for seeds, of which various squashes are some. It’s amusing to see the first time, but squash grown for seed is typically just shredded in the field, with seeds collected and the flesh tossed out over the field. Results in a lot of “wtf are they doing” among those unfamiliar, because it looks exactly like pumpkins were grown just to immediately destroy them.

Seriously, it hurts. It makes sense, but it hurts. If only there were a more gentle path to editor modes. Maybe some simple graphical representation of the modes and commands that could be down in the corner? Like a dynamic vim infographic that clued a user into the most likely commands.
Helix is beginner friendly. It's keybindings make more sense than vim's.
Yeah but it’s a small island.

If you learn Vim you’ll have access to Vi and Vi-like interfaces in lots of other software including terminals, database clients and everything that uses readline.

Curious what kind of interfaces you're thinking about? (Aside from vi, vim, nvim)

From my experience anything with "vi navigation" basically just means using the home row keys for navigation + modes. So I haven't come across many interfaces yet where the verb order differences between helix/vim come into play.

Then the question is readline. Not saying that vi or emacs deserve to win readline, but it’s up to you to describe how Helix mode would differ from vi mode.
Overleaf, for example, supports most of Vim’s bindings.
In vimium I use vim navigation for scrolling around, / for search, and a bunch of tab actions that aren't vim accurate but vim inspired.

In mpv I use gg/G to getting to the beginning/end of a file.

Many terminal file managers use vim binds or idioms (such as x for delete, marks, etc).

i3 window manager leans heavily on vim defaults for navigating windows.
Shells have Vi mode: bash, fish, zsh.
For me, the reason to learn vim is because if you know how to use it it's a really nice editor that's preinstalled on almost any system you shell into. I use VSCode on my home system and occasionally on a remote system, but I'll use neovim when doing a quick edit from the command line and vi when I happen to be o a remote system. In my ideal world, I would just use one editor everywhere, including if I'm hot-seating on a system that is not mine and without internet access: having vi already under my fingers is a nice approximation of great editor + everywhere.
Helix is wonderful. I did make one keybinding change: Switching in and out of Insert mode is CTRL-i so I don't have to wander off to the escape key so often.
I think Helix by default binds `Ctrl-[` to return to normal mode.

That was more convenient for me, especially as I remap my caps-lock key to CTRL system-wide.

it’s not helix, ctrl-[ produces the same key code as escape and it works the same in a terminal (so it works in vi, emacs, etc)
>If only there were a more gentle path to editor modes. Maybe some simple graphical representation of the modes and commands that could be down in the corner?

I taught myself vim by setting the vim cheat sheet to be my terminal background, though I greyed it out slightly so it didn't obscure what I was typing. Once you have that there are only a few phrases you really need to know: "+p, "+y, "+d to access the system clipboard, :split and :vsplit, C-w w to switch windows, and g C-g for word/char count.

https://www.glump.net/_media/howto/desktop/vim-graphical-che...

If I had a lot more free time, I've been noodling with some designs for a text editor with modes. It would start up by default in the equivalent of vim's insert mode where all the normal CUA keybindings (e.g. ctrl-c for copy) worked. But with many more. Then, if you go to the equivalent of normal mode you can just press X to do the same thing ctrl-X does in insert mode.
(comment deleted)
For those who don't know, there are at least two different V8-powered Teslas.

https://youtu.be/x-6kHjF1U1E?t=402

https://twitter.com/FthePump1/status/1738425546621825468

Emacs runs in a terminal. Vim isn't installed everywhere, Vi is. If you're going to install an editor and a config you might as well just install Emacs.
> Vim isn't installed everywhere, Vi is

Doesn't most major distributions alias vi to vim nowadays? I think I've also come across vi being aliased to vim-tiny if I remember correctly.

I believe only the BSDs install real vi in the base OS.

Everywhere else, when you type vi, you get vim. Some neophile Linux distros provide neovim instead.

Regardless, vi and vim (and neovim) are the same in basic operations.

It's still functionally correct that "vi is always installed" and no additional action is necessary for basic text editing.

It’s similar to preferring guitar hero because a real guitar has too many frets and too many chords to learn
I guess it's the end-goal then, though. If your goal is to become a rockstar and play the guitar in a band, GH is probably a very bad route to it. But if it is to "have fun" its perfect.

Same with this vim: if you just need an editor that is recognisable and "not weird" then this modeless vim might be useful; though why not just install nano, pico, gedit, notepad++ or even notepad.exe?

More like learning the clavicord.

“But your fingers aren't touching the strings!”

> It's like installing a V8 in a Tesla

Maybe putting diesel generator in a Tesla so you can use it even though charging is not your cup of tea.

I disagree. It makes no more sense than turning a modeless editor into a modal one. Just use the right tool for the job.
In Jef Raskin’s ‘Humane Interface’, there’s a good justification to why modes are evil, mainly leading to excessive user errors, so it’s not that surprising.
"That said there is something absolutely defining about this."

Not expecting anyone to agree, but this is how I feel when using minimal shells that do not implement vi editing, e.g., set -V or set -o vi. Busybox/toybox is one example. In the aggregate, I actually do more editing on the command line than I do in vi. If the shell is permanently set to emacs-like keys and editing then I am constantly switching back and forth to "vi mode" everytime I edit a text file and return to the shell, i.e., nonstop.

Or if you hate modes, it’s like installing a Tesla motor in a car that was originally powered by the screaming souls of the damned :)
> This configuration is not meant for the aficionado who prefers vim over graphical editors. This is meant for people who normally use GUI editors (like VSCode), but sometimes need an editor that can run in a terminal.

So it probably not for many people here. But I like it although I use vim as IDE when doing remote development.

I attempted this within a few days of first being exposed to vi - 35 years ago.

But since I was logging into different machines all the time I soon decided it was better to just use vi the way it came out of the box, modes and all. That philosophy has served me well over the years.

> But since I was logging into different machines all the time

We now have actually portable executables (multiplatform, multios) that contain their own config file: you can just scp 1 binary and be done with it.

Do you have a link to this? It is not always possible, arcane non x86 arches, low bandwidth connections, but time is the big thing. A binary upload just to change some lines in a machine on the other side of the world. I am lazy.
I had a similar realization early after first picking up vim in college: customization of any tool eventually hits a point of diminishing returns beyond which further alterations reduce your ability to use the tool in its default state. It's an insight I've found applies to almost any tool... From software to hardware and beyond.

Master the default behavior of a tool, and then improve your effectiveness with customization, but not so much customization that you can no longer use the tool effectively in its unmodified state. Sometimes you have to use other people's tools, and it's important to still work effectively when you do.

I agree with this very much! I learnt it the hard way: my experience with many powerful tools, Vim included, was to learn the basics first, customize it to the point where you can't recognize it anymore, and then finally strip it down to the basics again, keeping only the configuration that doesn't prevent me from using the the raw features.

I used to manage complex "dotfiles" and scripts to configure a new computer, etc. I still technically do, but they are much more simple now. I just don't want to spend my time on configuring the stuff anymore, and appreciate the out-of-the-box experience much more. This by itself became a criterion when choosing new tools, frameworks, etc.

I used to think like that, but 10 years ago I decided to create a git-repo for my .emacs.d and started configuring beyond the most trivial settings (and including all dependencies in the repo too). Diminishing returns? Not sure how to measure. Editor configuration was never anything I did because I thought it would somehow save time, as some seem to imply, but rather just about removing sharp edges and making the experience of editing files nicer. With everything a quick git clone away it is rare that I have to work without my configuration.
I totally agree, but we should concede that the defaults need to accommodate the next billion users instead. I propose that a distribution ought to have the right to:

- Easy-mode as sensible-editor

- runtime mswin.vim, set nocompatible, etc as the skel vimrc

These are easier to change than driving new users to Google “how to exit vi”.

But remapping Ctrl-O, like this post, is a breaking change.

Speaking about mswin.vim which does mostly what this does: what's the point of this project.
IBM CUA

I’ve always wondered how different Unix/Linux would be today if decades ago a Common User Access (standardized menu system like FILE | EDIT | etc) had been defined for TUI apps (like how it was for Windows & Mac OS).

Imagine VI & EMacs having the same key bindings due to standards.

https://sqlite.org/hctree/doc/hctree/doc/hctree/index.html#s...

vi and emacs are prehistoric. Folks now are ok with / and \ and maybe some can deal with : as a file separator.

But in the precambrian era you needed to know about ^ to edit a specific version of a file, because diffs were tracked.

They're both wonderful and amazing and can handle anything, because they had to handle everything when filesystems were like a brand new invention and nobody really knew what was good or bad, so they threw everything in.

Tough to get standards before standards exist.

Power of Vi is that its keybindings are way more ergonomical compared to IBM CUA. If you're a touch typist.

It doesn't make sense to change Vi/Vim/NeoVim keybindings because they're so convenient, composable and easy to remember.

That is only the case if you think you have to press Ctrl using your pinky. You can use the side if your palm instead. Then CUA suddenly becomes very ergonomic. Try it. I've done this for over 15 years now across a plethora of different keyboards and also survived several years of Emacs unharmed thanks to it.
I just tried this on my laptop and it is the most uncomfortable thing I've done on a keyboard.
It's probably due to my shoddy description. You put your fingers into the touch typing homerow. Shift your left hand enough for the edge of your palm to be above the ctrl key. It might also be the base joint of your pinky, depending on the size of your hand. Now press that side down enough to activate the ctrl key while keeping your fingers on the homerow. It's like having an eleventh finger to control the keyboard.
I feel like i'll get carpal tunnel if i do this five times lol, your hands might be a lot smaller than mine
How do you do that without hitting Shift? It seems needlessly finicky compared to just properly holding the key down with my pinky. I'd say the best way to avoid RSI while using key combinations is to follow proper procedure and hit the opposite modifier, e.g. Left Control + S (Right Control for Qwerty typists).
I used to do approximately this, from maybe the mid-90s to 2015-ish, but finally that keyboard died (RIP dear friend) and I find that it doesn't work properly on any keyboard I've found since.

Not quite the side of my palm, but the joint where my pinky meets my palm. My hands are relatively large, dunno if that's relevant.

I should put more work into buying a keyboard that it does work on, I think using my finger for Ctrl might be starting to cause RSIs in my middle-aged hands.

I guess I'll also add that for me it's a bigger deal when gaming than when using CUA. That Ctrl button is the one true place to put crouch, dangit.

Most of the time the joint that you describe works for me. Sometimes I use the side of my palm. It has worked for me on pretty much any keyboard so far, regardless of the height of the caps or the travel. On those with an fn-key I have had to remap the key somehow, sometimes in the BIOS sometimes using software. The exception is a smallish bluetooth keyboard I bought for a tablet. It's fn-key is hard to remap inside mobile OSes.
Emacs has a mode called cua-mode with keybindings thats more simillar to ones from other modern gui programms like browser.
So very much this. Around the end of the 1980s / start of the 1990s, all the big DOS apps switched their weird proprietary UIs out for CUA ones. Sometimes with an option to go back, but not often. Sometimes with some of the old UI as well, but mostly, big-bang.

And everything was better, the users adjusted, nobody ever looked back and we were all better off.

Sadly the memo never reached the Unix world, and those terrible 1970s are now enshrined as holy writ.

I have found "micro" to be a really good "modeless" alternative to vim
(comment deleted)
Yeah, same. However, it is a pain to install on some systems because, for example, the Ubuntu package installs a debug build that puts a log text file (or similar, I forget the details) in $CWD everywhere you go. So you end up downloading a binary off Github, which feels dirty to me. And there are some other micro configuration tweaks I like to do.

I'm definitely going to compare this against micro.

What's wrong with "modal"? I don't think "modeful" is a word.
See http://worrydream.com/refs/Tesler%20-%20A%20Personal%20Histo... (specifically the sidebar “How Modes Degrade Usability”) There’s also a sidebar “Objections to Modeless Editing and Cut/Copy-Paste”
I think you misread/misunderstood OP.
My point was just that "modeful" isn't a word. Vim is a "modal editor." The article you cite does not include the word "modeful."
I'm not sure modeless has meaning. It's just an initial mode map in a way.
[flagged]
(comment deleted)