Live data from Hacker News

The POSIX specification of vi

pubs.opengroup.org

31–40 of 50 posts

Re: The POSIX specification of vi

#32

Note that vim includes a useful tutorial you can invoke by "vimtutor" on the command line or from within vim with ":help tutor"; for neovim try ":Tutorial".

Nvi has :viusage and :exusage. Vim is not POSIX vi; vim to vi it's what zsh it's to sh. Nvi2 it's closer as it has very few additions on top of vi, but it has Unicode support which can be a lifesaver if you live in Europe or Japan, allowing you to use Nvi everywhere (I do, as it's my post editor under Mutt/Slrn,Tut and so on).

Re: The POSIX specification of vi

#33
post #25

It's notable that vi has been specified by POSIX (along with ed and ex), but not emacs.

vi was born on UNIX early enough that every UNIX wound up with it. Emacs was born on mainframes and made its way to UNIX much later, after vi had already become the standard.

This. Emacs came from GNU which GNU is not Unix; Emacs it's a tool to give Unix users freedoom (and a Lisp, OFC) from the Lisp Machines RMS used to use. Also, Emacs it's really huge, the closes to a "Posix Emacs" would be mg, as it's included under the OpenBSD base, but sadly it doesn't support Unicode. If it supported it, tons of Emacs users would use it as a quick editing tool, as 'mg' still launchers faster than 'emacs -nw -Q'.

And, as you said, Emacs and Lisp were for big machines, and Emacs it's like psychodelic/progressive rock: something to freely experiment creatively without machine restrictions. If you improvise "live", as jazz masters do (Lisp Machines), the better.

Unix would be like techno music from Kraftwerk: simple but well made beats and samples -machine made-, repetitive, they sound automated. But once they are put together they create something new and brilliant. Some people remix these samples and they create crazy stuff like the songs of The Avalanches, too. Kinda like Unix orthogonality between small tools and pipes.

Very different philosophies, but mixing GNU (Unix clone) and Emacs (Emacs from ITS was distinct from GNU Emacs) created something really powerful. For instance, you could automate mail and usenet fetching and sending data in the background with daemons (freeing resources for Emacs and unblocking I/O) and hack the frontend/parsing code like crazy, Or Telega, with telega and telega-server as the daemon to talk with Telegram, or even something like Mu and Mu4e for Email. Or simply, EMMS calling mpv in the background for audio and video playing -you can watch movies fom Emacs- (and mpv itself to yt-dlp for online videos) seamlessly.

In the art world, that would be like industrial music, a mix between automatization and improvisation, and, FFS, Ministry and some Prodigy songs were 100x better than Techno subgenres and every Hair Rock and Heavy Metal band with the same poses and tropes everywhere...

Re: The POSIX specification of vi

#34
post #33
post #25

Earlier quoted context omitted.

vi was born on UNIX early enough that every UNIX wound up with it. Emacs was born on mainframes and made its way to UNIX much later, after vi had already become the standard.

This. Emacs came from GNU which GNU is not Unix; Emacs it's a tool to give Unix users freedoom (and a Lisp, OFC) from the Lisp Machines RMS used to use. Also, Emacs it's really huge, the closes to a "Posix Emacs" would be mg, as it's included under the OpenBSD base, but sadly it doesn't support Unicode. If it supported it, tons of Emacs users would use it as a quick editing tool, as 'mg' still launchers faster than '…

Just to clarify, Emacs came from ITS, predating GNU by IIRC almost a decade and even the actual construction of any Lisp machines. GNU Emacs was at least the fifth Emacs, following the original PDP-10 Emacs, Multics Emacs, Zmacs, and Gosmacs.

Re: The POSIX specification of vi

#35
post #28
post #14

Huawei EulerOS is one of the few POSIX compliant Linux distros, but it’s a commercial one [0] But it has a FOSS release, openEuler [1] I actually want to download it now to check if the vi there is really that POSIX version 0, https://www.opengroup.org/openbrand/register/brand3622.htm 1, https://www.openeuler.org/en/

I used to work for Huawei. From what I remember, vi was just vim.

Somebody spent time and money to make vim posix-compliant: https://vimhelp.org/vi_diff.txt.html#posix

Re: The POSIX specification of vi

#36
post #23

> Move Down > Synopsis: > [count] j Why would you ever specify configurable shortcuts? Does is break posix when a user changes them?

> Does it break posix

A vim that ships out of the box with different shortcuts than those -- I presume yes. But if the user configures them then it's upto them I guess. Just like a user can swap around /bin/cat and /bin/echo.

Re: The POSIX specification of vi

#37

Ugh, all this crazy head-spinning cursor commotion... I'll just keep using ed, thank you very much.

COPY CON ... on DOS, bro. nuttin else comes close or if ur 2 weak, edlin.

I did my high school typewriting test in PC skills using edlin, and never ever used it again.

For coding in MS-DOS, I was using Borland IDEs, and there was the nice Q programmers editor as well.

Re: The POSIX specification of vi

#38

It's notable that vi has been specified by POSIX (along with ed and ex), but not emacs.

https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xcu...

> The community of emacs editing enthusiasts was adamant that the full emacs editor not be included in IEEE Std 1003.2-1992 because they were concerned that an attempt to standardize this very powerful environment would encourage vendors to ship versions conforming strictly to the standard, but lacking the extensibility required by the community. The author of the original emacs program also expressed his desire to omit the program. Furthermore, there were a number of historical UNIX systems that did not include emacs, or included it without supporting it, but there were very few that did not include and support vi.

Re: The POSIX specification of vi

#39
post #34
post #33

Earlier quoted context omitted.

This. Emacs came from GNU which GNU is not Unix; Emacs it's a tool to give Unix users freedoom (and a Lisp, OFC) from the Lisp Machines RMS used to use. Also, Emacs it's really huge, the closes to a "Posix Emacs" would be mg, as it's included under the OpenBSD base, but sadly it doesn't support Unicode. If it supported it, tons of Emacs users would use it as a quick editing tool, as 'mg' still launchers faster than '…

Just to clarify, Emacs came from ITS, predating GNU by IIRC almost a decade and even the actual construction of any Lisp machines. GNU Emacs was at least the fifth Emacs, following the original PDP-10 Emacs, Multics Emacs, Zmacs, and Gosmacs.

I hope the downvote isn't because of your answer, because I already mentioned that. I even emulated ITS under Simh, and I tried both Emacs and MacLisp.
Post reply on HN