* https://mastodonapp.uk/@JdeBP/116793159030149624
You can see it here in Ritter vi on lines 83 et seq. of ex_vis.h . vi actually has three flavours of its 'open' mode, for cursor addressable video terminals, non-cursor addressable video terminals, and actual paper terminals.
There's an as-yet unfilled niche for the retrocomputeristas with genuine ADM-3s or (as someone pointed out) TI Silent 703s and suchlike to do a YouTube video showing Joy+Horton vi in its 3 open modes.
My favorite features are the ranges on the commands (like substitute or delete), piping the buffer into the bottomless utility of the classic UNIX command line, and the . do again command.
About the only vim feature I use today is being able to navigate while entering text, but even after all this time, that is not automatic to me.
I have used syntax coloring a couple of times, I find it particularly useful for XML, especially XML with chunks of XML commented out.
Of course when I got onto the BSD VAX, someone set me straight and it was Emacs from there on..
"Gunnar Ritter <gunnarr@acm.org> 2007-11-29"
Just give me basic vi, or a complete editor
* https://ex-vi.sourceforge.net/viin/paper-7.html#section53
It's basically the answer to the question of how one does vi-like visual editing when the cursor cannot be moved to arbitrary locations on the terminal, or sometimes cannot even be moved upwards.
Amusing factoid: It's actually sort of the other way around. open mode was added to ex before visual mode was. visual mode is the answer to the question of how you can take advantage of an ability to move the cursor around arbitrarily.
* https://www.oreilly.com/library/view/learning-the-vi/1565924...
VIM and STEVIE never implemented it. VIM makes :open do the same as :visual . nvi and nvi2 issue a 'not implemented' error for the :open nex command. Watcom vi does not even have :open . Nor do NeoVIM, nextvi, neatvi, and viless.
Mortice Kern vi has open mode. So does elvis version 2.
What do you mean by "roff/troff macros"?
EDIT: Ah, you're probably talking about the "section-wise" movements, defined in POSIX with language like "A line whose first character is a <period> and whose second and third characters match a two-character pair in the 'sections' edit option (see ex)" - that's the first time I've stumbled upon the 'sections' and 'paragraphs' options in the Vim manual ... Very quaint!
Elvis, at its latest release (2.2.0) is a required part of Slackware, part of the A (essential system) package series. I have it installed on my system, alongside Plasma 6.7 and kernel 7.1.
:x is a vi feature, that was introduced by Mary Ann Horton to actual Joy+Horton vi in February 1980.
* https://code.illumos.org/plugins/gitiles/illumos-gate/+/refs...
Ritter's vi is derived from Joy+Horton vi. Illumos has the original.
Looks like dog shit on mobile.
I agree that this general style is good, just without some of this page's fuckups.
ZQ - discard & exit
<meta name="viewport" content="width=640, initial-scale=1">
This matches the max-width specified by the CSS. However, a smaller viewport width might be appropriate to increase the text size on mobile.Much more practically, the best designs are the ones who don't demand of the user they be consumed in a single form across every scenario.
The Traditional Vi
Source Code for Modern Unix Systems
The vi editor is one of the most common text editors on Unix. It was developed starting around 1976 by Bill Joy at UCB, who was tired of the ed editor. But since he used ed as a code base, access to the original sources has required a commercial Unix Source Code License for more than twenty years. In January 2002, Caldera was so kind to remove usage restrictions to the Ancient Unix Code by a BSD-style license (see the announcement at Slashdot) and thus vi is now finally free.
Compared to most of its many clones, the traditional vi is a rather small program (the binary size is approximately 160 kBytes on i386) just with its extremely powerful editing interface, but lacking fancy features like multiple undo, multiple screens, or syntax highlighting.
This port of vi has generally preserved the original style, terminal control, and feature set. It adds support for international character sets, including multibyte encodings such as UTF-8, and some minor enhancements that were not present in BSD vi 3.7, but had been included in later vi versions for System V or in POSIX.2.
New releases of this project are announced on freshmeat.net. You can use their subscription service to get an email when a new version is available.
Browse the CVS repository
The most recent results of development are sometimes made available in the public CVS repository. Use
$ cvs -d:pserver:anonymous@ex-vi.cvs.sourceforge.net:/cvsroot/ex-vi login CVS password: $ cvs -d:pserver:anonymous@ex-vi.cvs.sourceforge.net:/cvsroot/ex-vi co ex-vi
to retrieve a copy. Follow these instructions for more information. If you want to report a problem, please look at the Changes file in CVS to see if it has already been resolved, and if so, try if the fix works for you. Do not use the code from CVS unless you have a special reason to do so. It may be incorrect, not well tested, and might not even compile. Also note that the libuxre subdirectory and the regexp.h include file are not available from CVS because their contents are maintained as part of the Heirloom Toolchest. So to build from CVS sources, copy these items from an earlier release archive.

Gunnar Ritter <gunnarr@acm.org> 2007-11-29
