Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Brain fried -- Core dumped


computers / comp.misc / Re: State of the Terminal

SubjectAuthor
* State of the TerminalBen Collver
+* Re: State of the TerminalRetrograde
|+* Re: State of the TerminalD
||`- Re: State of the Terminalcandycanearter07
|+* Re: State of the TerminalJohanne Fairchild
||`* Re: State of the TerminalJohanne Fairchild
|| `- Re: State of the TerminalJohanne Fairchild
|`- Re: State of the TerminalTheo
+- Re: State of the TerminalAnton Shepelev
`- Re: State of the TerminalLawrence D'Oliveiro

1
State of the Terminal

<slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3540&group=comp.misc#3540

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: bencoll...@tilde.pink (Ben Collver)
Newsgroups: comp.misc
Subject: State of the Terminal
Date: Mon, 18 Mar 2024 00:28:53 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 499
Message-ID: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
Injection-Date: Mon, 18 Mar 2024 00:28:53 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="c492d685850f74165666f9f5737165f2";
logging-data="4010800"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/yVZTlwPg17ISsuFAn74PXcx+Y7IbDOpo="
User-Agent: slrn/1.0.3 (Linux)
Cancel-Lock: sha1:VRZv/DrglX9m11MbXUadWlDwzSM=
 by: Ben Collver - Mon, 18 Mar 2024 00:28 UTC

State of the Terminal
=====================
March 12, 2024

This is a companion article to my talk at Neovimconf 2023.

I have been using Vim/Neovim as my full time text editor for close to
10 years. I've spent a lot of time in the terminal and have become
very aware of the many flaws and idiosyncrasies of this bizarre
platform. But I also think it gets a lot of things right! And I'm not
alone in this belief: terminal based tools are still widely popular
even in the presence of many alternatives (the StackOverflow
developer survey shows that Neovim is the "most loved" editor 3 years
in a row).

It's only been in the last couple of years that I've begun to dig
deep into the inner workings of how terminal emulators, and the
applications that run inside of them, really work. I've learned that
there is a lot of innovation and creative problem solving happening
in this space, even though the underlying technology is over half a
century old.

I've also found that many people who use terminal based tools
(including shells like Bash and editors like Vim) know very little
about terminals themselves, or some of the modern features and
capabilities they can support.

In this article, we'll discuss some of the problems that terminal
based applications have historically had to deal with (and what the
modern solutions are) as well as some features that modern terminal
emulators support that you may not be aware of.

But first, some (very) brief history.

Background & History
====================
Most terminal emulators today can directly trace their roots back to
the DEC VT100. The VT100 was not the first video terminal, nor was it
the last, but it was the most popular (at the time). And as we've
learned from history many times since, what becomes popular creates
the de facto standard for everything that comes after.

DEC VT100 Jason Scott, CC BY 2.0 via Wikimedia Commons
<https://gpanders.com/img/DEC_VT100_terminal.jpg>

Video terminals were an improvement on the teletype machines that
preceded them. They could move the cursor around the screen to create
interactive interfaces. They could use color, and clear and redraw
their displays quickly without feeding out reams of paper.

Different video terminals had their own unique way of doing things
using unique, proprietary escape codes (a sequence of bytes beginning
with the escape 0x1b character). This made life difficult for
applications because they had to know which of these sequences to
use. Libraries and helper programs (e.g. termcap) were created to
help ameliorate these issues (we still live with the descendant of
these early libraries, terminfo).

Eventually, formal standards were created, such as ECMA-48 and ANSI
X3.64 (from which the term "ANSI escape codes" derives), which
defined a set of standard escape sequences. The DEC VT100 was the
first video terminal to support these new standards. Its popularity,
combined with the new standards, meant that programs now had a set of
known good escape sequences they could reliably use. Its popularity
spawned many clones, which in turn supported the same sequences for
compatibility with applications.

<https://en.wikipedia.org/wiki/ANSI_escape_code>

Graphical window systems eventually replaced hardware video
terminals, but users still wanted to use the terminal based programs
they were accustomed to (you know how those vi people are). In 1984,
work began on a software terminal emulator at MIT. This emulator
became part of the X project and was named Xterm. Xterm implemented
its own features which did not exist on the video terminals it
emulated, such as mouse tracking and a configurable color palette.
These features were in turn copied by Xterm clones, until eventually
Xterm itself became the new de facto standard.

<https://en.wikipedia.org/wiki/Xterm>

Terminal Emulator Basics
========================
Terminal based applications write two kinds of data to the terminal
emulator: printable text that is displayed to the user, and control
codes, which modify the terminal emulator's state. Control codes are
either single bytes in the C0 character set (bytes 0x00 through 0x1f)
or sequences of bytes that begin with the escape character (0x1b).
These sequences are most commonly referred to as "escape sequences",
and it is these sequences that do the bulk of the heavy lifting in
terminal applications.

Most control codes from the C0 character set are not used today, but
regardless of experience with terminals or terminal applications,
most developers are likely familiar with control codes such as \r
(carriage return), which moves the cursor to the beginning of the
current line, and \n (line feed), which moves the cursor to the next
line.

Escape sequences are varied and numerous, but the vast majority used
in practice fall into one of three categories: Control Sequence
Introducer (CSI), Device Control String (DCS), and Operating System
Command (OSC).

CSI sequences are those which begin with the prefix ESC [ (0x1b
0x5b). Escape sequences in this category are those which reposition
the cursor, change the cursor style, clear the screen, set foreground
and background colors, and more.

OSC sequences are those which begin with the prefix ESC ] and are
typically used for things that modify or interact with the user's
environment outside of the terminal emulator itself (hence the name
"Operating System Command"). Examples are reading from or writing to
the system clipboard, changing the title of the terminal emulator's
window, or sending desktop notifications.

Xterm maintains a list of all of the control sequences it supports on
its website, which, along with vt100.net, forms an informal
pseudo-specification for VT100 emulators. Note that this list may not
contain some control sequences used by other, modern terminal
emulators for features which Xterm does not support (e.g. the Kitty
keyboard protocol, which we'll discuss later).

<https://invisible-island.net/xterm/ctlseqs/ctlseqs.html>

<https://vt100.net/>

Escape sequences are actually quite easy to use, and you can even do
it straight from your shell. Try running the following command from
any shell:

printf '\e[1;32mHello \e[0;4;31mworld!\n\e[0m'

This command will print the text "Hello world!", with "Hello" in
green, bold text and "world!" in red, underlined text.

The escape sequences used here are of the form CSI <parameters> m,
which is so common it has its own name: Select Graphic Rendition
(SGR). The SGR escape sequence sets foreground and background colors
for all printed text. The first escape sequence in the example
\e[1;32m enables the bold attribute (1) and sets the foreground color
to green (32). The second escape sequence \e[0;4;31m first clears any
existing styles (0), then enables the underline attribute (4), and
finally sets the foreground text color to red (31). Finally, the last
escape sequence \e[0m resets all styles back to their defaults.

Another use case for simple CSI sequences is redrawing text on the
screen on an already existing line (e.g. for a progress bar or text
that updates itself over time). Hint: look at \r, CSI A, and CSI K.

Most escape sequences are sent from the application to the terminal
emulator, but occasionally the terminal emulator sends escape
sequences to the application. Usually this is done in response to a
query from the application (for instance, to determine if a certain
mode is set).

Problems & Solutions
====================
Terminal emulators are descended from old, legacy technologies, which
brings with it its fair share of problems. Many of these problems
have been (mostly) solved, or at least ameliorated, while others are
still active areas of innovation and research.

Key Encoding
------------
Terminal emulators and terminal applications communicate through a
stream of bytes. When a user presses a key the terminal sends the
byte representation of the character associated with that key. The
old video terminals only supported ASCII so this was, generally,
fairly straightforward.

Modifier keys like Ctrl and Alt complicate this situation. Alt
modified keys are encoded by prefixing the character with an Esc. But
this has a problem: including an extra Esc byte for the Alt modifier
introduces ambiguity between Alt modified key presses and two
separate key presses. When an application sees Esc C, should it
interpret it as Alt-C or did the user press Esc and then press C?
Applications usually solve this by measuring the amount of time
between Esc and the next character. If the time is less than some
defined interval, it is considered an Alt modified key press (Vim
uses the ttimeoutlen option, tmux uses the escape-time option).

Ctrl modified keys are an even bigger problem. When Ctrl is used as a
modifier, the shifted2 version of the key has the 7th bit masked off
(for example, C is 0x43 and after masking the 7th bit the byte
becomes 0x03). This means that not only can the Shift modifier not be
used in conjunction with Ctrl, but that certain Ctrl modified keys
are completely indistinguishable from other control codes.


Click here to read the complete article
Re: State of the Terminal

<65fa9e28$0$19599$882e4bbb@reader.netnews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3548&group=comp.misc#3548

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!feeder.usenetexpress.com!tr1.iad1.usenetexpress.com!198.186.191.154.MISMATCH!news-out.netnews.com!s1-1.netnews.com!eu1.netnews.com!not-for-mail
X-Trace: DXC=:cZl;6WWdk<ZAK<;;BBJC;HWonT5<]0T=M9@aW=nh=g:4fb5@bE@D^82ag1<^1n6R>oY2F6PNJk>=nNSPWG;oJ9=[24eVB6lkR1ESnnojHHGf0
X-Complaints-To: support@blocknews.net
Newsgroups: comp.misc
From: fun...@amongus.com.invalid (Retrograde)
Subject: Re: State of the Terminal
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
Reply-To: fungus@amongus.com.invalid
X-Face: B,ckSl,FpK$Tw&Gx_oee5Tcj|RCK=sbQ=a&cJ9)e*A|.f}uctF}Rohq&$BI&OBVck/zSV DV s<~Tu)q"Z]^2KikYTfy^bh'9MsB'ObTszVRGI_#zXVB\_B4BE~|Ad
User-Agent: slrn/1.0.3 (Linux)
Date: 20 Mar 2024 08:28:24 GMT
Lines: 13
Message-ID: <65fa9e28$0$19599$882e4bbb@reader.netnews.com>
NNTP-Posting-Host: 127.0.0.1
X-Trace: 1710923304 reader.netnews.com 19599 127.0.0.1:39149
 by: Retrograde - Wed, 20 Mar 2024 08:28 UTC

On 2024-03-18, Ben Collver <bencollver@tilde.pink> wrote:
> State of the Terminal
>=====================
> March 12, 2024
>
> This is a companion article to my talk at Neovimconf 2023.
>
> I have been using Vim/Neovim as my full time text editor for close to
> 10 years. I've spent a lot of time in the terminal and have become
> very aware of the many flaws and idiosyncrasies of this bizarre

This was one of the best things I've read in a while; many thanks for
posting it - great stuff, very interesting.

Re: State of the Terminal

<f081c384-9880-65ca-9e07-d8ecf27fb622@example.net>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3549&group=comp.misc#3549

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!.POSTED!not-for-mail
From: nos...@example.net (D)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: Wed, 20 Mar 2024 10:14:41 +0100
Organization: i2pn2 (i2pn.org)
Message-ID: <f081c384-9880-65ca-9e07-d8ecf27fb622@example.net>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain> <65fa9e28$0$19599$882e4bbb@reader.netnews.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII; format=flowed
Injection-Info: i2pn2.org;
logging-data="2602891"; mail-complaints-to="usenet@i2pn2.org";
posting-account="w/4CleFT0XZ6XfSuRJzIySLIA6ECskkHxKUAYDZM66M";
In-Reply-To: <65fa9e28$0$19599$882e4bbb@reader.netnews.com>
X-Spam-Checker-Version: SpamAssassin 4.0.0
 by: D - Wed, 20 Mar 2024 09:14 UTC

On Wed, 20 Mar 2024, Retrograde wrote:

> On 2024-03-18, Ben Collver <bencollver@tilde.pink> wrote:
>> State of the Terminal
>> =====================
>> March 12, 2024
>>
>> This is a companion article to my talk at Neovimconf 2023.
>>
>> I have been using Vim/Neovim as my full time text editor for close to
>> 10 years. I've spent a lot of time in the terminal and have become
>> very aware of the many flaws and idiosyncrasies of this bizarre
>
> This was one of the best things I've read in a while; many thanks for
> posting it - great stuff, very interesting.
>

Agree, great job!

Re: State of the Terminal

<uteur9$1i6u0$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3550&group=comp.misc#3550

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: candycan...@candycanearter07.nomail.afraid (candycanearter07)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: Wed, 20 Mar 2024 15:20:09 -0000 (UTC)
Organization: the-candyden-of-code
Lines: 26
Message-ID: <uteur9$1i6u0$1@dont-email.me>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
<65fa9e28$0$19599$882e4bbb@reader.netnews.com>
<f081c384-9880-65ca-9e07-d8ecf27fb622@example.net>
Injection-Date: Wed, 20 Mar 2024 15:20:09 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="62ae208eaafc47c2cd5e45906b9dc8c1";
logging-data="1645504"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+9AfEkwc41nLetoM/Re3f3XcBXz0uGvSXUgkibr4OKxw=="
User-Agent: slrn/pre1.0.4-9 (Linux)
Cancel-Lock: sha1:9HePUqmyM//f1+jlfW5vPB0q50A=
X-Face: b{dPmN&%4|lEo,wUO\"KLEOu5N_br(N2Yuc5/qcR5i>9-!^e\.Tw9?/m0}/~:UOM:Zf]%
b+ V4R8q|QiU/R8\|G\WpC`-s?=)\fbtNc&=/a3a)r7xbRI]Vl)r<%PTriJ3pGpl_/B6!8pe\btzx
`~R! r3.0#lHRE+^Gro0[cjsban'vZ#j7,?I/tHk{s=TFJ:H?~=]`O*~3ZX`qik`b:.gVIc-[$t/e
ZrQsWJ >|l^I_[pbsIqwoz.WGA]<D
 by: candycanearter07 - Wed, 20 Mar 2024 15:20 UTC

D <nospam@example.net> wrote at 09:14 this Wednesday (GMT):
>
>
> On Wed, 20 Mar 2024, Retrograde wrote:
>
>> On 2024-03-18, Ben Collver <bencollver@tilde.pink> wrote:
>>> State of the Terminal
>>> =====================
>>> March 12, 2024
>>>
>>> This is a companion article to my talk at Neovimconf 2023.
>>>
>>> I have been using Vim/Neovim as my full time text editor for close to
>>> 10 years. I've spent a lot of time in the terminal and have become
>>> very aware of the many flaws and idiosyncrasies of this bizarre
>>
>> This was one of the best things I've read in a while; many thanks for
>> posting it - great stuff, very interesting.
>>
>
> Agree, great job!

Agreed.
--
user <candycane> is generated from /dev/urandom

Re: State of the Terminal

<87edc4emae.fsf@tudado.org>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3551&group=comp.misc#3551

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: jfairch...@tudado.org (Johanne Fairchild)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: Wed, 20 Mar 2024 16:27:37 -0300
Organization: A noiseless patient Spider
Lines: 18
Message-ID: <87edc4emae.fsf@tudado.org>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
<65fa9e28$0$19599$882e4bbb@reader.netnews.com>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="d220832ae7fe558a68d062ab3e74107b";
logging-data="1760013"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+kgQbscaEW7lBqvfMKiejaTaJETRNPOm4="
Cancel-Lock: sha1:C3xiV9M6ynFYFFX8XI9m+UY+Cvg=
sha1:9cVTGsIKzbOO4/SPCGsHuhgXBvw=
 by: Johanne Fairchild - Wed, 20 Mar 2024 19:27 UTC

Retrograde <fungus@amongus.com.invalid> writes:

> On 2024-03-18, Ben Collver <bencollver@tilde.pink> wrote:
>> State of the Terminal
>>=====================
>> March 12, 2024
>>
>> This is a companion article to my talk at Neovimconf 2023.
>>
>> I have been using Vim/Neovim as my full time text editor for close to
>> 10 years. I've spent a lot of time in the terminal and have become
>> very aware of the many flaws and idiosyncrasies of this bizarre
>
> This was one of the best things I've read in a while; many thanks for
> posting it - great stuff, very interesting.

Thanks for sharing! I haven't read it yet, but I did it print it out
yesterday. More soon. (Life gets busy.)

Re: State of the Terminal

<RZq*dgWFz@news.chiark.greenend.org.uk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3557&group=comp.misc#3557

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.szaf.org!nntp-feed.chiark.greenend.org.uk!ewrotcd!.POSTED.chiark.greenend.org.uk!not-for-mail
From: theom+n...@chiark.greenend.org.uk (Theo)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: 21 Mar 2024 10:03:59 +0000 (GMT)
Organization: University of Cambridge, England
Message-ID: <RZq*dgWFz@news.chiark.greenend.org.uk>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain> <65fa9e28$0$19599$882e4bbb@reader.netnews.com>
Injection-Info: chiark.greenend.org.uk; posting-host="chiark.greenend.org.uk:212.13.197.229";
logging-data="27579"; mail-complaints-to="abuse@chiark.greenend.org.uk"
User-Agent: tin/1.8.3-20070201 ("Scotasay") (UNIX) (Linux/5.10.0-22-amd64 (x86_64))
Originator: theom@chiark.greenend.org.uk ([212.13.197.229])
 by: Theo - Thu, 21 Mar 2024 10:03 UTC

Retrograde <fungus@amongus.com.invalid> wrote:
> On 2024-03-18, Ben Collver <bencollver@tilde.pink> wrote:
> > State of the Terminal
> >=====================
> > March 12, 2024
> >
> > This is a companion article to my talk at Neovimconf 2023.
> >
> > I have been using Vim/Neovim as my full time text editor for close to
> > 10 years. I've spent a lot of time in the terminal and have become
> > very aware of the many flaws and idiosyncrasies of this bizarre
>
> This was one of the best things I've read in a while; many thanks for
> posting it - great stuff, very interesting.

There's also a talk version, which is worth watching (covers similar but not
identical ground):

https://vimeo.com/896237832

Re: State of the Terminal

<871q8279zt.fsf@tudado.org>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3569&group=comp.misc#3569

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: jfairch...@tudado.org (Johanne Fairchild)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: Fri, 22 Mar 2024 08:59:34 -0300
Organization: A noiseless patient Spider
Lines: 22
Message-ID: <871q8279zt.fsf@tudado.org>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
<65fa9e28$0$19599$882e4bbb@reader.netnews.com>
<87edc4emae.fsf@tudado.org>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="bd3986489e2ce07ffae4ffd1deb0ec50";
logging-data="3060374"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+aFigOWZpkD/xWGTfJBJ7afs2vY/w1Jf0="
Cancel-Lock: sha1:K47hi/eQ8zBnSSbZC3Jb0eoygjM=
sha1:n/NORb2+vPpgs05/tiY1lM3ra7w=
 by: Johanne Fairchild - Fri, 22 Mar 2024 11:59 UTC

Johanne Fairchild <jfairchild@tudado.org> writes:

> Retrograde <fungus@amongus.com.invalid> writes:
>
>> On 2024-03-18, Ben Collver <bencollver@tilde.pink> wrote:
>>> State of the Terminal
>>>=====================
>>> March 12, 2024
>>>
>>> This is a companion article to my talk at Neovimconf 2023.
>>>
>>> I have been using Vim/Neovim as my full time text editor for close to
>>> 10 years. I've spent a lot of time in the terminal and have become
>>> very aware of the many flaws and idiosyncrasies of this bizarre
>>
>> This was one of the best things I've read in a while; many thanks for
>> posting it - great stuff, very interesting.
>
> Thanks for sharing! I haven't read it yet, but I did it print it out
> yesterday. More soon. (Life gets busy.)

Thanks for the great read.

Re: State of the Terminal

<20240322152219.d6adc1092a767c148a3d2ff5@g{oogle}mail.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3570&group=comp.misc#3570

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: anton....@g{oogle}mail.com (Anton Shepelev)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: Fri, 22 Mar 2024 15:22:19 +0300
Organization: A noiseless patient Spider
Lines: 15
Message-ID: <20240322152219.d6adc1092a767c148a3d2ff5@g{oogle}mail.com>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Info: dont-email.me; posting-host="3e04a8186427104ff39011c30d87cd7b";
logging-data="3070537"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19BdHye0FcWjs7YVbPTKQCGPAzhuenED08="
Cancel-Lock: sha1:xPbIhoUWxujpCAV04WqFFYkKd5U=
X-Newsreader: Sylpheed 3.7.0 (GTK+ 2.24.30; i686-pc-mingw32)
 by: Anton Shepelev - Fri, 22 Mar 2024 12:22 UTC

Ben Collver:

> State of the Terminal
> ====================
> March 12, 2024
>
> This is a companion article to my talk at Neovimconf 2023

Since people enjoy this article, I should like to share a great
"See also" entry: <https://vt100.net/emu/>. It includes a working
state mahine for the parser.

--
() ascii ribbon campaign -- against html e-mail
/\ www.asciiribbon.org -- against proprietary attachments

Re: State of the Terminal

<87il1e5t1k.fsf@tudado.org>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3571&group=comp.misc#3571

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: jfairch...@tudado.org (Johanne Fairchild)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: Fri, 22 Mar 2024 09:51:03 -0300
Organization: A noiseless patient Spider
Lines: 27
Message-ID: <87il1e5t1k.fsf@tudado.org>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
<65fa9e28$0$19599$882e4bbb@reader.netnews.com>
<87edc4emae.fsf@tudado.org> <871q8279zt.fsf@tudado.org>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="bd3986489e2ce07ffae4ffd1deb0ec50";
logging-data="3082916"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+iHb0m409WJ+UH6nndis6mWqStXxJnPS8="
Cancel-Lock: sha1:UGUe/1Q1ZqPeO3GI5TE2V199FAM=
sha1:CIUDKVI8QOhlxUzGMvgFNHfnb1U=
 by: Johanne Fairchild - Fri, 22 Mar 2024 12:51 UTC

Johanne Fairchild <jfairchild@tudado.org> writes:

> Johanne Fairchild <jfairchild@tudado.org> writes:
>
>> Retrograde <fungus@amongus.com.invalid> writes:
>>
>>> On 2024-03-18, Ben Collver <bencollver@tilde.pink> wrote:
>>>> State of the Terminal
>>>>=====================
>>>> March 12, 2024
>>>>
>>>> This is a companion article to my talk at Neovimconf 2023.
>>>>
>>>> I have been using Vim/Neovim as my full time text editor for close to
>>>> 10 years. I've spent a lot of time in the terminal and have become
>>>> very aware of the many flaws and idiosyncrasies of this bizarre
>>>
>>> This was one of the best things I've read in a while; many thanks for
>>> posting it - great stuff, very interesting.
>>
>> Thanks for sharing! I haven't read it yet, but I did it print it out
>> yesterday. More soon. (Life gets busy.)
>
> Thanks for the great read.

I also wanted to mention the references. Thanks for adding all the
references.

Re: State of the Terminal

<uu5u21$6am5$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=3644&group=comp.misc#3644

  copy link   Newsgroups: comp.misc
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.misc
Subject: Re: State of the Terminal
Date: Fri, 29 Mar 2024 08:27:45 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 7
Message-ID: <uu5u21$6am5$1@dont-email.me>
References: <slrnuvf2an.iv9.bencollver@svadhyaya.localdomain>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Fri, 29 Mar 2024 08:27:45 +0100 (CET)
Injection-Info: dont-email.me; posting-host="521a9234fa531f5fbb354bce794424cb";
logging-data="207557"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+nrgNKbEqL3hi1K1+eK6dr"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:P9k4NnJXEs5dzpBokI8plslA5OI=
 by: Lawrence D'Oliv - Fri, 29 Mar 2024 08:27 UTC

On Mon, 18 Mar 2024 00:28:53 -0000 (UTC), Ben Collver wrote:

> Control codes are either single bytes in the C0 character set (bytes
> 0x00 through 0x1f) or sequences of bytes that begin with the escape
> character (0x1b).

Don’t forget CSI, 0x9b, equivalent to 0x1b 0x5b.

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor