Re: adding tty output redirection detection

Vincent Yang <[email protected]> Wed, 15 Jul 2026 14:39:48 +0800
Newsgroups gmane.editors.nano.devel
Message-ID <[email protected]>
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------NeejYZlUfJaHKRhZJiAjF00Z
Content-Type: multipart/mixed; boundary="------------KH6KjI1x5OPm8nj59do0pQA2";
 protected-headers="v1"; hp="clear"
Message-ID: <[email protected]>
Date: Wed, 15 Jul 2026 14:39:48 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: adding tty output redirection detection
To: [email protected]
References: <[email protected]>
 <[email protected]>
Content-Language: en-GB
From: Vincent Yang <[email protected]>
Autocrypt: [email protected]; keydata=
 xjMEaSWvihYJKwYBBAHaRw8BAQdAczH28HsKFUf137/i0vCJVs503Tfa0SvSoMz0sCqrZz/N
 SVZpbmNlbnQgWWFuZyAoQSBHUEcga2V5IGZvciBzaWduaW5nIG1lc3NhZ2VzKSA8eWFuZy52
 aW5jZW50LmhAaWNsb3VkLmNvbT7CkwQTFgoAOxYhBADM1NKV6A+xNI5IDfuml/HQ5Y71BQJp
 Ja+KAhsDBQsJCAcCAiICBhUKCQgLAgQWAgMBAh4HAheAAAoJEPuml/HQ5Y71lsgA/2dRYgVF
 x7UVlXHZa5KGSggmcB/k3K6VgAYdXUdmTCupAP9SDEn5EqK1V+hApUzfm+aEQfwYalfuFE5i
 gTu5vjQRCc44BGklr4oSCisGAQQBl1UBBQEBB0CdaDTViQAyiDWSCNHaQVRbgvVfoxHDpGHQ
 uZsEHMy+OgMBCAfCeAQYFgoAIBYhBADM1NKV6A+xNI5IDfuml/HQ5Y71BQJpJa+KAhsMAAoJ
 EPuml/HQ5Y71OGgBAOw0Cmc75BcfyPt7oabHJGHpDYFbX4x3WFe6uzM+gXmfAP4xmNkjKMXF
 r51sGiUBX2ZgJ1zhQoenk+ioLetKKFenDA==
In-Reply-To: <[email protected]>

--------------KH6KjI1x5OPm8nj59do0pQA2
Content-Type: multipart/mixed; boundary="------------bUC3uLrA4hUsXhwFemRilZ7P"

--------------bUC3uLrA4hUsXhwFemRilZ7P
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTQtMDctMjAyNiAyMDo0MywgQmVubm8gU2NodWxlbmJlcmcgd3JvdGU6DQo+IEknbSBv
a2F5IHdpdGggdGhhdC7CoCBCdXQuLi4gbG9va2luZyBhdCBzb21lIG90aGVyIGVkaXRvcnMs
IG1vc3Qgb2YgdGhlbSANCj4gd2lsbA0KPiBqdXN0IGhhbmcgd2hlbiBzdGFuZGFyZCBvdXRw
dXQgaXMgcmVkaXJlY3RlZCwgYW1vbmcgdGhlbTogam9lLCBuZSwgZnRlLCANCj4gbHBlLA0K
PiBsZSwgYW5kIHBpY28uDQpZZXMsIGJ1dCB0aGUgcHJvYmxlbSB3aXRoIGl0IGp1c3QgaGFu
Z2luZyB0aGVyZSBpcyB0aGF0IHNvbWV0aW1lcyB5b3UgDQp0cnkgcHJlc3NpbmcgdGhlIGtl
eWJvYXJkIHRvIHNlZSBpZiB0aGUgcHJvZ3JhbSBpcyByZXNwb25kaW5nLiBTaW5jZSB0aGUg
DQppbnB1dCB3aWxsIHN0aWxsIGJlIGVudGVyZWQgaW5zaWRlIHRoZSBidWZmZXIsIHdoaWNo
IG1lYW5zIHdoZW4geW91IGRvIA0KXlggeW91IGhhdmUgdG8gcHJlc3MgYW5vdGhlciAnbicg
Zm9yIGl0IHRvIHF1aXQgc3VjY2Vzc2Z1bGx5LCBhbmQgdGhhdCANCnVzdWFsbHkgbWVzc2Vz
IHVwIG15IGJyYWluLg0KPiBUaGF0IGxhdHRlciBiZWhhdmlvciBtaWdodCBiZSBjb25zaWRl
cmVkLCBidXQgdGhlIG1vc3QgY29uc2lzdGVudCB3b3VsZCBiZQ0KPiB0byBiZWhhdmUgbGlr
ZSB3aGVuIHN0YW5kYXJkIGlucHV0IGlzIG5vdCBhIHRlcm1pbmFsOg0KPiANCj4gIMKgIGh0
dHBzOi8vY2dpdC5naXQuc2F2YW5uYWguZ251Lm9yZy9jZ2l0L25hbm8uZ2l0L2NvbW1pdC8/
aWQ9OGQ3YjcxNmUNClN1cmUsIEkgdGhpbmsgaXQgaXMgZmluZSBhcyBsb25nIGFzIHRoZSB1
c2VycyBrbm93IHdoYXQgaXMgaGFwcGVuaW5nIA0Kd2hlbiB0aGV5IHJlZGlyZWN0IHN0ZG91
dC4NCg0KVmluY2VudCBZYW5nDQo=
--------------bUC3uLrA4hUsXhwFemRilZ7P
Content-Type: text/plain; charset=UTF-8;
 name="0001-startup-quit-program-if-stdout-is-not-a-TTY.patch"
Content-Disposition: attachment;
 filename="0001-startup-quit-program-if-stdout-is-not-a-TTY.patch"
Content-Transfer-Encoding: base64

RnJvbSBlZjdhOWZjMWRmY2I2Njk4NWUyOWIyN2ZhNmU0Y2UzNWFjNmVhYmU0IE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBWaW5jZW50IFlhbmcgPHlhbmcudmluY2VudC5oQGlj
bG91ZC5jb20+CkRhdGU6IFdlZCwgMTUgSnVsIDIwMjYgMTQ6MzI6MzMgKzA4MDAKU3ViamVj
dDogW1BBVENIXSBzdGFydHVwOiBxdWl0IHByb2dyYW0gaWYgc3Rkb3V0IGlzIG5vdCBhIFRU
WQoKVGhlcmUgaXMgbm8gcmVhc29uIHRvIHBpcGUvcmVkaXJlY3QgbmFubyBhcyBpdCBpcyBq
dXN0IGEgbG90IG9mIGFuc2kKY29kZXMsIHNvIG5vdCBhbGxvd2luZyB0aGlzIGhhcyBubyBu
ZWdhdGl2ZSBhZmZlY3QuCgpCdXQgaXQgY2FuIHByZXZlbnQgdXNlcnMgZnJvbSBhY2NpZGVu
dGFsbHkgZG9pbmcgc28sIGFuZCBsZXQgdGhlbQprbm93IHdoYXQgaXMgZ29pbmcgb24uCgpT
aWduZWQtb2ZmLWJ5OiBWaW5jZW50IFlhbmcgPHlhbmcudmluY2VudC5oQGljbG91ZC5jb20+
Ci0tLQogc3JjL25hbm8uYyB8IDQgKysrKwogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9u
cygrKQoKZGlmZiAtLWdpdCBhL3NyYy9uYW5vLmMgYi9zcmMvbmFuby5jCmluZGV4IDEyOWZm
Nzg3Li40YWYyMDA2OCAxMDA2NDQKLS0tIGEvc3JjL25hbm8uYworKysgYi9zcmMvbmFuby5j
CkBAIC0yMTU2LDYgKzIxNTYsMTAgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2
KQogCXNldF91cF9zaWd3aW5jaF9oYW5kbGVyKCk7CiAjZW5kaWYKIAorCS8qIENoZWNrIGlm
IHN0ZG91dCBpcyBhIFRUWSwgb3RoZXJ3aXNlIGV4aXQgKi8KKwlpZighaXNhdHR5KFNURE9V
VF9GSUxFTk8pKQorCQlkaWUoXygiU3RhbmRhcmQgb3V0cHV0IGlzIG5vdCBhIHRlcm1pbmFs
XG4iKSk7CisKIAkvKiBDdXJzZXMgbmVlZHMgVEVSTTsgaWYgaXQgaXMgdW5zZXQsIHRyeSBm
YWxsaW5nIGJhY2sgdG8gYSBWVDIyMC4gKi8KIAlpZiAoZ2V0ZW52KCJURVJNIikgPT0gTlVM
TCkKIAkJcHV0ZW52KCJURVJNPXZ0MjIwIik7Ci0tIAoyLjU1LjAKCg==
--------------bUC3uLrA4hUsXhwFemRilZ7P
Content-Type: application/pgp-keys; name="OpenPGP_0xFBA697F1D0E58EF5.asc"
Content-Disposition: attachment; filename="OpenPGP_0xFBA697F1D0E58EF5.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xjMEaSWvihYJKwYBBAHaRw8BAQdAczH28HsKFUf137/i0vCJVs503Tfa0SvSoMz0
sCqrZz/NSVZpbmNlbnQgWWFuZyAoQSBHUEcga2V5IGZvciBzaWduaW5nIG1lc3Nh
Z2VzKSA8eWFuZy52aW5jZW50LmhAaWNsb3VkLmNvbT7CkwQTFgoAOxYhBADM1NKV
6A+xNI5IDfuml/HQ5Y71BQJpJa+KAhsDBQsJCAcCAiICBhUKCQgLAgQWAgMBAh4H
AheAAAoJEPuml/HQ5Y71lsgA/2dRYgVFx7UVlXHZa5KGSggmcB/k3K6VgAYdXUdm
TCupAP9SDEn5EqK1V+hApUzfm+aEQfwYalfuFE5igTu5vjQRCc44BGklr4oSCisG
AQQBl1UBBQEBB0CdaDTViQAyiDWSCNHaQVRbgvVfoxHDpGHQuZsEHMy+OgMBCAfC
eAQYFgoAIBYhBADM1NKV6A+xNI5IDfuml/HQ5Y71BQJpJa+KAhsMAAoJEPuml/HQ
5Y71OGgBAOw0Cmc75BcfyPt7oabHJGHpDYFbX4x3WFe6uzM+gXmfAP4xmNkjKMXF
r51sGiUBX2ZgJ1zhQoenk+ioLetKKFenDA=3D=3D
=3DhK0d
-----END PGP PUBLIC KEY BLOCK-----

--------------bUC3uLrA4hUsXhwFemRilZ7P--

--------------KH6KjI1x5OPm8nj59do0pQA2--

--------------NeejYZlUfJaHKRhZJiAjF00Z
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wnsEABYIACMWIQQAzNTSlegPsTSOSA37ppfx0OWO9QUCalcrNQUDAAAAAAAKCRD7ppfx0OWO9VB3
AQC5SUA2qHXCuNNZErDmv7En0ggleOaUKOcbafsomyqAPgEArSyLyJVcJw2IKeaHNX2L5og5SAZk
0FjSPCWYTBIQ3gc=
=xC+9
-----END PGP SIGNATURE-----

--------------NeejYZlUfJaHKRhZJiAjF00Z--