Rocksolid Light

News from da outaworlds

mail  files  register  groups  login

Message-ID:  

Your best consolation is the hope that the things you failed to get weren't really worth having.


comp / comp.lang.python / Re: Terminal Emulator (Posting On Python-List Prohibited)

SubjectAuthor
* Terminal EmulatorGordinator
+- Re: Terminal EmulatorAlan Gauld
+- Re: Terminal EmulatorGrant Edwards
+- Re: Terminal EmulatorGrant Edwards
+- Re: Terminal EmulatorMirko
+- RE: Terminal Emulator<avi.e.gross
+- Re: Terminal EmulatorCameron Simpson
+* Re: Terminal EmulatorStefan Ram
|+- Re: Terminal EmulatorGordinator
|`* Re: Terminal Emulator (Posting On Python-List Prohibited)Lawrence D'Oliveiro
| `* Re: Terminal Emulator (Posting On Python-List Prohibited)Gordinator
|  +- Re: Terminal Emulator (Posting On Python-List Prohibited)Lawrence D'Oliveiro
|  +- Re: Terminal Emulator (Posting On Python-List Prohibited)Peter J. Holzer
|  +- Re: Terminal Emulator (Posting On Python-List Prohibited)Grant Edwards
|  +* Re: Terminal Emulator (Posting On Python-List Prohibited)Mats Wichmann
|  |`* Re: Terminal Emulator (Posting On Python-List Prohibited)Piergiorgio Sartor
|  | +* venvs vs. package management (was: Terminal Emulator (Posting On Python-List ProPeter J. Holzer
|  | |`* Re: venvs vs. package managementPiergiorgio Sartor
|  | | `- Re: venvs vs. package managementLeft Right
|  | +* Re: Terminal Emulator (Posting On Python-List Prohibited)Alan Gauld
|  | |`* Re: Terminal Emulator (Posting On Python-List Prohibited)Gilmeh Serda
|  | | +- Re: Terminal Emulator (Posting On Python-List Prohibited)2QdxY4RzWzUUiLuE
|  | | +- Re: Terminal Emulator (Posting On Python-List Prohibited)MRAB
|  | | +- Re: Terminal Emulator (Posting On Python-List Prohibited)2QdxY4RzWzUUiLuE
|  | | +- Re: Terminal Emulator (Posting On Python-List Prohibited)Grant Edwards
|  | | `- Re: Terminal Emulator (Posting On Python-List Prohibited)Gordinator
|  | +- Re: Terminal Emulator (Posting On Python-List Prohibited)Grant Edwards
|  | +- Re: Terminal Emulator (Posting On Python-List Prohibited)Thomas Passin
|  | +- pip and venvs on Debian (was: Terminal Emulator)Akkana Peck
|  | `- Re: pip and venvs on DebianRoel Schroeven
|  `- Re: Terminal Emulator (Posting On Python-List Prohibited)Grant Edwards
+- Re: Terminal EmulatorPeter J. Holzer
+- Re: Terminal EmulatorPeter J. Holzer
`- Re: Terminal EmulatorPiergiorgio Sartor

Pages:12
Subject: Terminal Emulator
From: Gordinator
Newsgroups: comp.lang.python
Organization: usenet-news.net
Date: Tue, 14 May 2024 17:44 UTC
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!npeer.as286.net!npeer-ng0.as286.net!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx07.ams4.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Newsgroups: comp.lang.python
Content-Language: en-US
From: gordinator@gordinator.org (Gordinator)
Subject: Terminal Emulator
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 6
Message-ID: <fqN0O.38287$ZZU.19060@fx07.ams4>
X-Complaints-To: abuse@usenet-news.net
NNTP-Posting-Date: Tue, 14 May 2024 17:44:43 UTC
Organization: usenet-news.net
Date: Tue, 14 May 2024 18:44:43 +0100
X-Received-Bytes: 974
View all headers

I wish to write a terminal emulator in Python. I am a fairly competent
Python user, and I wish to try a new project idea. What references can I
use when writing my terminal emulator? I wish for it to be a true
terminal emulator as well, not just a Tk text widget or something like that.

If you have any advice, please do let me know!

Subject: Re: Terminal Emulator
From: Alan Gauld
Newsgroups: comp.lang.python
Date: Tue, 14 May 2024 19:06 UTC
References: 1 2
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: learn2program@gmail.com (Alan Gauld)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Tue, 14 May 2024 20:06:36 +0100
Lines: 30
Message-ID: <mailman.0.1715713600.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de /STL43yF9+p4D5Q1sMBDogJ1kCjNM2cn4cFKtUFIlWiQ==
Cancel-Lock: sha1:CasNUB7P9III7Ev+fZzON/71FcA= sha256:xT4xcE8aV08m6jPe46N67Tkb/fjdS155OGFCGej7sMI=
Return-Path: <learn2program@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
reason="2048-bit key; unprotected key"
header.d=gmail.com header.i=@gmail.com header.b=RlUcnkpR;
dkim-adsp=pass; dkim-atps=neutral
X-Spam-Status: OK 0.007
X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'fairly': 0.05; 'gui':
0.05; 'python.': 0.08; 'terminal': 0.09; 'that.': 0.15;
'component.': 0.16; 'expose': 0.16; 'flickr': 0.16;
'from:name:alan gauld': 0.16; 'guis': 0.16; 'idea.': 0.16;
'message-id:@yahoo.co.uk': 0.16; 'photo-blog': 0.16; 'subset':
0.16; 'terminals': 0.16; 'url-ip:79.170.44.132/32': 0.16; 'url-
ip:79.170.44/24': 0.16; 'url-ip:79.170/16': 0.16; 'url-ip:79/8':
0.16; 'url:alan-g': 0.16; 'url:alan_gauld': 0.16;
'url:alangauldphotos': 0.16; 'wrote:': 0.16; 'python': 0.16;
'api': 0.17; 'url:amazon': 0.19; 'to:addr:python-list': 0.20;
'written': 0.22; 'code': 0.23; 'to:name:python-list@python.org':
0.24; 'object': 0.26; 'header:User-Agent:1': 0.30; 'program':
0.31; 'python-list': 0.32; 'received:192.168.1': 0.32; 'there':
0.33; 'header:In-Reply-To:1': 0.34; 'received:google.com': 0.34;
'from:addr:gmail.com': 0.35; 'author': 0.37; 'received:192.168':
0.37; 'could': 0.38; 'quite': 0.39; 'text': 0.39; 'use': 0.39;
'decide': 0.39; 'alan': 0.40; 'learn': 0.40; 'both': 0.40;
'something': 0.40; 'want': 0.40; 'try': 0.40; 'should': 0.40;
'sharing': 0.60; 'sample': 0.61; 'follow': 0.62; 'true': 0.63;
'online': 0.63; 'your': 0.64; 'wish': 0.66; 'url-ip:18/8': 0.67;
'latter': 0.69; 'study.': 0.69; 'url:author': 0.69; 'site': 0.70;
'standalone': 0.84; 'mode.': 0.89
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1715713598; x=1716318398; darn=python.org;
h=content-transfer-encoding:in-reply-to:references:to
:content-language:subject:user-agent:mime-version:date:message-id
:from:from:to:cc:subject:date:message-id:reply-to;
bh=SOe1GlFqBp9DAgIt+4nRbf80I28iBe4uolQyAIGpX9M=;
b=RlUcnkpRBxDQwsZ7WLmyCax+Uxm8rHf073vwvZUNtLbZWLeNL43xRgd61g8GudjHTE
T5kE5PsfRftU6emKYrMEdUc71iRRJ7X3Za/NVnGCyrLwPhQf6Nq0c3iGieEIkJ5blVSv
V1WZ3YxTecHKvs/HF8LAR5hCdEmViBJ+peCU2R+a5q2eKgn0bF4NgudVWEuxumaEw9xI
mVnBQYgao5Ve0jSKNdNTZnNdWW9RlViKMMhLQl7H3RA5CpoRAlOcG/lo+Zb4Z7zLkQkf
9F05s+LoqRKhTkL2E5jq3/+wkP6X93jm8DJWIxBLCrsuCffAWmTViarmgoWA7bK1h9LE
MtjQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1715713598; x=1716318398;
h=content-transfer-encoding:in-reply-to:references:to
:content-language:subject:user-agent:mime-version:date:message-id
:from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=SOe1GlFqBp9DAgIt+4nRbf80I28iBe4uolQyAIGpX9M=;
b=vrXFn2lCiR2fQwglbwTo/buvmqpBwgeOAyhiar6UxyQhHvKeCgQ8fDAa4iN/p+8lvr
sI4/LqCdu8Xk7dpDop9Pwje2oApXDdfnIk3icOjS9FNxUBTPFtHtvFxFrdRbgCQKgHzr
NQ+fjL2XpYfeC60nL13YHktaHXWxEhFG8iqhl+4fkM5g4/V/BIr3TEP09wVd/DGG90Pz
MUYPrY4uktQ7zDYaUb8ivK05NaIVnAlkxYQLmJYKpgoV6gvqxadJgCO5Z0tVHtSS1Zj5
fXF49txPOiWyJky2qynueKQwUan0xzDo6sZwmIG9ePX95rFEzAiOmTlMxDO3X5U3lfKa
rPJA==
X-Forwarded-Encrypted: i=1;
AJvYcCVNPCveAmIX9HU+bX9rqekbDCT7XLIvbk5A7TM2vYYt3Qbi03b5KldSD6Go3RSIJaGA3mT8BXoSKVghNixIoaCNw8Q+aSWs
X-Gm-Message-State: AOJu0YwNKLPDJj47LSCSODcbKZ2+O9Q2vWrQiNyTtnWvsNWH3qKDy7dL
TKRJsaROThGf8V36Th/PdNUsqAaycnCvVch5+OtfbbBoe/+nDM25
X-Google-Smtp-Source: AGHT+IHLMRojSQHUtI71E7c5hSBRv8rq5aqomOtxSDiv+Cdrh0TVKoRrXvPIbyJjyNKN3myjHBRM5Q==
X-Received: by 2002:a05:600c:3144:b0:420:1db0:53c1 with SMTP id
5b1f17b1804b1-4201db054a9mr22221225e9.41.1715713597877;
Tue, 14 May 2024 12:06:37 -0700 (PDT)
X-Google-Original-From: Alan Gauld <alan.gauld@yahoo.co.uk>
User-Agent: Mozilla Thunderbird
Content-Language: en-GB
In-Reply-To: <fqN0O.38287$ZZU.19060@fx07.ams4>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
View all headers

On 14/05/2024 18:44, Gordinator via Python-list wrote:
> I wish to write a terminal emulator in Python. I am a fairly competent
> Python user, and I wish to try a new project idea. What references can I
> use when writing my terminal emulator? I wish for it to be a true
> terminal emulator as well, not just a Tk text widget or something like that.

The first thing is to decide which terminal. A VT100 is very different
from a 3270. And even a VT330 is quite different from a VT100 although
sharing a common subset of control codes. And if you start looking at
graphical terminals things get even more interesting!

The other thing to consider is whether it will be a standalone app or
a GUI component. If the latter do you want to expose your own API or
clone the manufacturers? Or both?!
Or you could make it an object that can be used both in GUIs and in
"robotic" or "batch" mode. So many options.

Most of the specs are available online and there must be dozens of
terminal emulators around written in C so you should have plenty
of sample code to study. Good luck!

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos

Subject: Re: Terminal Emulator
From: Grant Edwards
Newsgroups: comp.lang.python
Date: Tue, 14 May 2024 19:47 UTC
References: 1 2 3
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: grant.b.edwards@gmail.com (Grant Edwards)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Tue, 14 May 2024 15:47:18 -0400 (EDT)
Lines: 14
Message-ID: <mailman.1.1715716039.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
<4Vf6MB5t85znW60@mail.python.org>
X-Trace: news.uni-berlin.de 90Gw/xO3LpgLVfiLPGqs6AVKM7ntbqlMF7fRAXY7IE4Q==
Cancel-Lock: sha1:gIa9dVxZTWjr3dRr/v8dgiqHQTc= sha256:TGjSKQiDhkhnskxsGCaStmX51syfjCJ2mUuvi2eK5Zs=
Return-Path: <grant.b.edwards@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.010
X-Spam-Evidence: '*H*': 0.98; '*S*': 0.00; 'fairly': 0.05; 'python.':
0.08; 'ports': 0.09; 'terminal': 0.09; 'that.': 0.15;
'from:addr:grant.b.edwards': 0.16; 'from:name:grant edwards':
0.16; 'gauld': 0.16; 'idea.': 0.16; 'wrote:': 0.16; 'python':
0.16; 'to:addr:python-list': 0.20; 'header:User-Agent:1': 0.30;
'python-list': 0.32; 'from:addr:gmail.com': 0.35; 'text': 0.39;
'use': 0.39; 'decide': 0.39; 'alan': 0.40; 'something': 0.40;
'try': 0.40; 'true': 0.63; 'wish': 0.66; 'message-id:invalid':
0.68
User-Agent: slrn/1.0.3 (Linux)
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <4Vf6MB5t85znW60@mail.python.org>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
View all headers

On 2024-05-14, Alan Gauld via Python-list <python-list@python.org> wrote:
> On 14/05/2024 18:44, Gordinator via Python-list wrote:
>
>> I wish to write a terminal emulator in Python. I am a fairly
>> competent Python user, and I wish to try a new project idea. What
>> references can I use when writing my terminal emulator? I wish for
>> it to be a true terminal emulator as well, not just a Tk text
>> widget or something like that.
>
> The first thing is to decide which terminal.

You also need to decide if you're going to support real serial ports
or just ptys.

Subject: Re: Terminal Emulator
From: Grant Edwards
Newsgroups: comp.lang.python
Date: Tue, 14 May 2024 20:03 UTC
References: 1 2 3
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: grant.b.edwards@gmail.com (Grant Edwards)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Tue, 14 May 2024 16:03:33 -0400 (EDT)
Lines: 33
Message-ID: <mailman.2.1715717014.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
<4Vf6jx1MWJznVGB@mail.python.org>
X-Trace: news.uni-berlin.de 8MQEw25uWggB64w+64m0PQroZrUfCnufx1weSQ1RzQZw==
Cancel-Lock: sha1:xmbCdMQeizlwZzyObFLTxZp9SwE= sha256:rZ5+EATC8fuDx3LXQrFrEf77zbyFxTkrx17qbxdVbYo=
Return-Path: <grant.b.edwards@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.060
X-Spam-Evidence: '*H*': 0.88; '*S*': 0.00; 'fairly': 0.05; 'python.':
0.08; 'ansi': 0.09; 'terminal': 0.09; 'that.': 0.15; 'database.':
0.16; 'from:addr:grant.b.edwards': 0.16; 'from:name:grant
edwards': 0.16; 'gauld': 0.16; 'idea.': 0.16; 'subset': 0.16;
'terminals': 0.16; 'wrote:': 0.16; 'python': 0.16; 'probably':
0.17; 'to:addr:python-list': 0.20; 'header:User-Agent:1': 0.30;
'putting': 0.31; 'python-list': 0.32; 'from:addr:gmail.com': 0.35;
'really': 0.37; 'could': 0.38; 'means': 0.38; 'quite': 0.39;
'text': 0.39; 'use': 0.39; 'break': 0.39; 'decide': 0.39; 'alan':
0.40; 'something': 0.40; 'want': 0.40; 'try': 0.40; 'sharing':
0.60; 'provide': 0.60; 'apps': 0.62; 'true': 0.63; 'your': 0.64;
'well': 0.65; 'wish': 0.66; 'message-id:invalid': 0.68; 'ignore':
0.71; "you'll": 0.73; 'life': 0.77; 'easier,': 0.84; 'exists':
0.91
User-Agent: slrn/1.0.3 (Linux)
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <4Vf6jx1MWJznVGB@mail.python.org>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
View all headers

On 2024-05-14, Alan Gauld via Python-list <python-list@python.org> wrote:
> On 14/05/2024 18:44, Gordinator via Python-list wrote:
>
>> I wish to write a terminal emulator in Python. I am a fairly
>> competent Python user, and I wish to try a new project idea. What
>> references can I use when writing my terminal emulator? I wish for
>> it to be a true terminal emulator as well, not just a Tk text
>> widget or something like that.
>
> The first thing is to decide which terminal.

If you want to make life easier, make it a superset of a terminal that
already exists in the terminfo database.

Going with some sort of ANSI terminal will probably provide
operability even with dumb apps which ignore $TERM and just spit out
basic ANSI escape sequences.

If you really want to break trail, you could invent your own control
sequences, which means you'll have to write terminfo and/or termcap
entries as well as the terminal emulator.

> A VT100 is very different from a 3270. And even a VT330 is quite
> different from a VT100 although sharing a common subset of control
> codes. And if you start looking at graphical terminals things get
> even more interesting!

"Intersting" is putting it mildly...

Subject: Re: Terminal Emulator
From: Mirko
Newsgroups: comp.lang.python
Date: Tue, 14 May 2024 20:37 UTC
References: 1 2
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: mirkok.lists@googlemail.com (Mirko)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Tue, 14 May 2024 22:37:17 +0200
Lines: 26
Message-ID: <mailman.3.1715719041.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<a5593057-8c23-44ca-a1b1-764016ac9f35@googlemail.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de YEPzMKgFWqg9GFdJ4Tvs8QL/dxZPuonH1d6zxXb8fPPw==
Cancel-Lock: sha1:AyYSMZAEZnrWvIraJ+mgfLlxYlw= sha256:qGpyXit1qrwFur400FAkNKKX4MypUrk+uRLfl66iqWg=
Return-Path: <mirkok.lists@googlemail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
reason="2048-bit key; unprotected key"
header.d=googlemail.com header.i=@googlemail.com header.b=fYEIPH7y;
dkim-adsp=pass; dkim-atps=neutral
X-Spam-Status: OK 0.008
X-Spam-Evidence: '*H*': 0.98; '*S*': 0.00; '(which': 0.04; 'fairly':
0.05; 'gui': 0.05; 'python.': 0.08; 'from:addr:googlemail.com':
0.09; 'message-id:@googlemail.com': 0.09; 'schrieb': 0.09;
'terminal': 0.09; 'that.': 0.15; '102,': 0.16; 'cases,': 0.16;
'gtk': 0.16; 'idea.': 0.16; 'standard,': 0.16; 'terminals': 0.16;
'python': 0.16; 'to:addr:python-list': 0.20; 'input': 0.21;
'written': 0.22; 'python,': 0.25; 'depends': 0.25; 'header:User-
Agent:1': 0.30; 'dec': 0.31; 'mean': 0.34; 'header:In-Reply-To:1':
0.34; 'received:google.com': 0.34; 'runs': 0.35; 'processes':
0.36; 'text': 0.39; 'use': 0.39; 'both': 0.40; 'something': 0.40;
'want': 0.40; 'try': 0.40; 'true': 0.63; 'with:': 0.64; 'look':
0.65; 'wish': 0.66; 'let': 0.66; 'shows': 0.67; 'virtual': 0.71;
'low': 0.74; 'received:37': 0.78; '220,': 0.84; 'getty': 0.84
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=googlemail.com; s=20230601; t=1715719039; x=1716323839; darn=python.org;
h=content-transfer-encoding:in-reply-to:from:content-language
:references:to:subject:user-agent:mime-version:date:message-id:from
:to:cc:subject:date:message-id:reply-to;
bh=wLDWy3i9IYV1QW0EBC42wVMW0johtCTxoDVOnyGIOQI=;
b=fYEIPH7yOxSqWfu/3eVBNs+PzzexPhPXxd3Bb9ynYdbK90TKJeUcc5razr3P4R425i
e7X4u1K90mWGkb+J/LnIV0unpSBF0EcofOwJzqDScC6d27jHiWK2BXycxxn+GdfHbhZE
4Z5BZbTCcSjj4x+r7vF1NRGfs0nc7ml9C8r4jSMt6A/nrV3EF61arAtJrqPPlCik0rW3
O/3SMSmEOVVfEJUMytOJ27U+PqZ2Fsxiaruun5Tp+g3YIx4RS+qZNGaQe43+7eobMh7w
oqX2eT33QyfOGxjt8uyxqrQBJZ8oS/TGHVNYmxg0MbxiZ+I2HkIr5tzIT9uK5R6mmnOY
KJ1g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1715719039; x=1716323839;
h=content-transfer-encoding:in-reply-to:from:content-language
:references:to:subject:user-agent:mime-version:date:message-id
:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=wLDWy3i9IYV1QW0EBC42wVMW0johtCTxoDVOnyGIOQI=;
b=HB+8XqkqpWaeyWQI/sznClSc2LilLqlImIVzn0uf1cORi9cYPWKfiYdfPsVxW8FcTh
j6vBqHt9unBJW2F2XnJyBDpty1ZSSDlz2pN7bLIfjrkIpcmH6iI8Z88/qwQH7npZW0Fr
+2LzAnjvKJCf7sHC3AJ7rLkio+GHEuS8K2qJop337q1G34DKA43+AEc+GuKT0WaOhDWd
CJrtbCGCRX38sjUBu5CKRZw/p7gJvwFHXhOccd64fSVeFbn8ouysW69MOnqy+PxJ35rc
8nswZWpCozqVt8bB2f/yO26B9yX/8s97uTQYsI4QLY6KBLMzd5q4P3XgrT1PGNXAq6dG
e4vQ==
X-Gm-Message-State: AOJu0YzEpmBQJ7KbIzyOeLYYACx6ff06WADUYpu5dUiuFhyjqRUHOy/H
FXb8PKCaC2QkUpMob0QPBOXgjgh4r5V00QVv/41PO2sqk4iRHMQ0qpENCA==
X-Google-Smtp-Source: AGHT+IEhitx2rk8xA2l85K1LMQCMk2tY4wMT/YCDMiVRaZlO5o3BHk5VCt4G/fltPddao/ST8nB7fA==
X-Received: by 2002:a2e:80c3:0:b0:2df:c2b:8c84 with SMTP id
38308e7fff4ca-2e51fd4adb7mr86930241fa.1.1715719039105;
Tue, 14 May 2024 13:37:19 -0700 (PDT)
User-Agent: Mozilla Thunderbird
Content-Language: de-DE, en-US
In-Reply-To: <fqN0O.38287$ZZU.19060@fx07.ams4>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <a5593057-8c23-44ca-a1b1-764016ac9f35@googlemail.com>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
View all headers

Am 14.05.24 um 19:44 schrieb Gordinator via Python-list:
> I wish to write a terminal emulator in Python. I am a fairly
> competent Python user, and I wish to try a new project idea. What
> references can I use when writing my terminal emulator? I wish for
> it to be a true terminal emulator as well, not just a Tk text widget
> or something like that.
>
> If you have any advice, please do let me know!

Not sure, what you mean with:

> true terminal emulator as well, not just a Tk text widget or something like that
If you want to write a GUI terminal, than that *is* a terminal
emulator and *has* a text widget as its visible core. If you want to
write something like getty which runs on the virtual terminals
(Ctrl+Alt+F*) than that is a terminal (not a terminal emulator).

In both cases, you write something that gets input from the
keyboard, processes it and shows the result. How that processing is
done, depends on the terminal standard, like DEC VT{100, 102, 220,
320, etc}.

For a start, you might want to look at Terminator, which is a
terminal emulator written in Python, Gtk and libvte (which does all
the low level stuff).

Subject: RE: Terminal Emulator
From: <avi.e.gross@gmail.com>
Newsgroups: comp.lang.python
Date: Tue, 14 May 2024 21:10 UTC
References: 1 2 3
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: <avi.e.gross@gmail.com>
Newsgroups: comp.lang.python
Subject: RE: Terminal Emulator
Date: Tue, 14 May 2024 17:10:41 -0400
Lines: 62
Message-ID: <mailman.4.1715721049.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
<003b01daa643$2d78ebd0$886ac370$@gmail.com>
Mime-Version: 1.0
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de ggXMDHBHYlx4uXu/JsB/CA4Dnq/Mbl3XYl4G2B2MwYFg==
Cancel-Lock: sha1:AgPrjIJQvOkMiSkIzwkD2+07gt4= sha256:WzOn0QlSz0dJ75mGD6ufBDLk6MOR19qTM2sMMn8kEGM=
Return-Path: <avi.e.gross@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
reason="2048-bit key; unprotected key"
header.d=gmail.com header.i=@gmail.com header.b=GHxqMqPl;
dkim-adsp=pass; dkim-atps=neutral
X-Spam-Status: OK 0.003
X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'stream': 0.04; 'fairly':
0.05; 'gui': 0.05; 'python.': 0.08; 'better,': 0.09;
'received:108': 0.09; 'terminal': 0.09; 'url:mailman': 0.15;
'that.': 0.15; '2024': 0.16; 'book:': 0.16; 'component.': 0.16;
'expose': 0.16; 'flickr': 0.16; 'gauld': 0.16; 'guis': 0.16;
'idea.': 0.16; 'photo-blog': 0.16; 'similar,': 0.16; 'subset':
0.16; 'terminals': 0.16; 'url-ip:79.170.44.132/32': 0.16; 'url-
ip:79.170.44/24': 0.16; 'url-ip:79.170/16': 0.16; 'url-ip:79/8':
0.16; 'url:alan-g': 0.16; 'url:alan_gauld': 0.16;
'url:alangauldphotos': 0.16; 'wrote:': 0.16; 'python': 0.16;
'api': 0.17; 'code.': 0.17; 'message-id:@gmail.com': 0.18;
'url:amazon': 0.19; 'to:addr:python-list': 0.20; 'written': 0.22;
'code': 0.23; 'skip:- 10': 0.25; 'url-ip:188.166.95.178/32': 0.25;
'url-ip:188.166.95/24': 0.25; 'url:listinfo': 0.25; 'url-
ip:188.166/16': 0.25; 'normally': 0.26; 'object': 0.26;
'approach': 0.31; 'module': 0.31; 'url-ip:188/8': 0.31; 'program':
0.31; 'python-list': 0.32; 'url:dp': 0.32; 'but': 0.32; 'there':
0.33; 'able': 0.34; 'same': 0.34; 'header:In-Reply-To:1': 0.34;
'received:google.com': 0.34; 'from:addr:gmail.com': 0.35; 'files':
0.36; 'author': 0.37; 'could': 0.38; 'quite': 0.39; 'text': 0.39;
'use': 0.39; 'decide': 0.39; 'alan': 0.40; 'learn': 0.40; 'both':
0.40; 'something': 0.40; 'want': 0.40; 'try': 0.40; 'should':
0.40; 'sharing': 0.60; 'sample': 0.61; 'from:': 0.62; 'to:': 0.62;
'follow': 0.62; 'true': 0.63; 'send': 0.63; 'online': 0.63; 'our':
0.64; 're:': 0.64; 'your': 0.64; 'hesitate': 0.65; 'wish': 0.66;
'accept': 0.67; 'and,': 0.69; 'latter': 0.69; 'study.': 0.69;
'url:author': 0.69; 'site': 0.70; 'sent:': 0.78; 'standalone':
0.84; 'mode.': 0.89
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1715721046; x=1716325846; darn=python.org;
h=thread-index:content-language:content-transfer-encoding
:mime-version:message-id:date:subject:in-reply-to:references:to:from
:from:to:cc:subject:date:message-id:reply-to;
bh=iyzflNBDQ7gXayG9ubSKTwZHJP/1eDOa4AS1E8SYzFk=;
b=GHxqMqPlqkvXCoBJ7elpORQygoqNHb6wRuVYquF5p/Kg1fPjMYiiPJ0/iqi+qmAh8j
aRe70QDbycxQPRgSY9kEtgexcCbqpVCuJeP8oYCoolQfRvAE4TfqDB/Uvn0O3sVYL95j
oU9wOkWlhFfrXZUi1CbaQCEJ1qSbnZ9/UvoLW7vF05RQerZfFOa7Mzsqe1ZABFWQHm/P
kcPPx68eKDUn75Ey+TK3zEJilCdDgK8/5iBd/FMh5Iqhemk4xr6TejAx1hTDKImKZ3lk
Rve5Z+EFGjw+CUMugiHSHjgRy07jv4ydmHiymo1nqcJcqcsHPP/dclNnLPftUOWsLDAw
CHwQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1715721046; x=1716325846;
h=thread-index:content-language:content-transfer-encoding
:mime-version:message-id:date:subject:in-reply-to:references:to:from
:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=iyzflNBDQ7gXayG9ubSKTwZHJP/1eDOa4AS1E8SYzFk=;
b=GlpXBaU+OqeWrcGs5iGCWp5C+0CMVrzox/rBXpGKfvi7mtfj0jRD1sWDbQuBxXeMAx
NJs2a5/lmmg9NAByDkvSlJY0q4qyUVV5KqVZUMVQP/rk9qBxJFc/LFzl4s3V58jXMcJs
/zCyqd8Gd8ormbEMtxS7Th1xJSt8eEmtRkq0KDlW02nP6cQawFflWuIOkEpoxEGiNA4A
Q3Ec6gxTw+zVyZYPbTVH9hX+1z+VFfbk8jJ2hps310rBonS7M44R+A+VJJicQFUXblmr
oKX9nodunbnFmr8omKbnN3VUsVWkxOVloQmtJdzTuPt4rYE6y4/O2aiJbd7aEFwyTX+A
Z7Jw==
X-Forwarded-Encrypted: i=1;
AJvYcCUrWKgzSxfijf6d3oMaAwBwuessRuyYccpWJIBuU+0Pr27G/0MJNI6OIQcIrjC40xQOmexeibb5h0FzQgkbw20fEhXe9kWJ
X-Gm-Message-State: AOJu0YxBx3lp/djjcKDjTlqiTY4gwhctHgAWWuLrIAOlB7nBgECt/Ihb
2/Y36ty9dGzXqaOqWgOXQCqY+X7e3SxX3a5BFqyAK2XCzxoeU2GCK3eLZw==
X-Google-Smtp-Source: AGHT+IFSyX+OYlABkD1QKn448Kre5m9o0PF/4gPd5XVVu7UwcLaWUySrDYyMBiY79sTTK2Xxvs6plg==
X-Received: by 2002:a05:622a:48c:b0:43a:1377:60f2 with SMTP id
d75a77b69052e-43dfdb5ed3cmr134997171cf.36.1715721046357;
Tue, 14 May 2024 14:10:46 -0700 (PDT)
In-Reply-To: <ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
X-Mailer: Microsoft Outlook 16.0
Content-Language: en-us
Thread-Index: AQF/MB6sCKgEbR30FhjMmyavf2BJsQGcqkEdskFAmyA=
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <003b01daa643$2d78ebd0$886ac370$@gmail.com>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
View all headers

The topic was to re-invent the wheel yet again and create a terminal
emulator.

I hesitate to say this but one approach is to consider the curses module as
described by our very own Alan Gauld in a book:

https://www.amazon.com/Programming-curses-Python-Alan-Gauld-ebook/dp/B091B85
B77

The topic is how to make a terminal emulator and as Alan mentions, each kind
of terminal may accept various kinds of escape sequences. There are files
available the are normally used by curses to get a description of sorts of
the capabilities and details of a terminal like a VT100 that curses can use
to decide what stream of bytes to send to update a screen.

You might be able to use something similar, or better, to see what your
terminal emulator should emulate.

And, it may even be possible for you to emulate lots of terminals with the
same basic code.

-----Original Message-----
From: Python-list <python-list-bounces+avi.e.gross=gmail.com@python.org> On
Behalf Of Alan Gauld via Python-list
Sent: Tuesday, May 14, 2024 3:07 PM
To: Gordinator <gordinator@gordinator.org>; python-list@python.org
Subject: Re: Terminal Emulator

On 14/05/2024 18:44, Gordinator via Python-list wrote:
> I wish to write a terminal emulator in Python. I am a fairly competent
> Python user, and I wish to try a new project idea. What references can I
> use when writing my terminal emulator? I wish for it to be a true
> terminal emulator as well, not just a Tk text widget or something like
that.

The first thing is to decide which terminal. A VT100 is very different
from a 3270. And even a VT330 is quite different from a VT100 although
sharing a common subset of control codes. And if you start looking at
graphical terminals things get even more interesting!

The other thing to consider is whether it will be a standalone app or
a GUI component. If the latter do you want to expose your own API or
clone the manufacturers? Or both?!
Or you could make it an object that can be used both in GUIs and in
"robotic" or "batch" mode. So many options.

Most of the specs are available online and there must be dozens of
terminal emulators around written in C so you should have plenty
of sample code to study. Good luck!

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos

--
https://mail.python.org/mailman/listinfo/python-list

Subject: Re: Terminal Emulator
From: Cameron Simpson
Newsgroups: comp.lang.python
Date: Tue, 14 May 2024 22:35 UTC
References: 1 2
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: cs@cskk.id.au (Cameron Simpson)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Wed, 15 May 2024 08:35:55 +1000
Lines: 8
Message-ID: <mailman.5.1715726590.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ZkPnS1Lqy1qZH0Jh@cskk.homeip.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
X-Trace: news.uni-berlin.de Y/0OkWwj4qI/j5bGPLR+FgsERkTntjfldWRHLA4J4lGg==
Cancel-Lock: sha1:QWuCBJUjRtjnTXppFcblAuOJYJA= sha256:1p4PBsNdCBcXD2OFK3doQl4Z2Q/m/V1v0v+4Uty1180=
Return-Path: <cameron@cskk.id.au>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.001
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'fairly': 0.05; 'python.':
0.08; 'cc:addr:python-list': 0.09; 'module.': 0.09; 'terminal':
0.09; 'cc:no real name:2**0': 0.14; 'from:addr:cs': 0.16;
'from:addr:cskk.id.au': 0.16; 'from:name:cameron simpson': 0.16;
'idea.': 0.16; 'message-id:@cskk.homeip.net': 0.16;
'received:13.237': 0.16; 'received:13.237.201': 0.16;
'received:13.237.201.189': 0.16; 'received:cskk.id.au': 0.16;
'received:id.au': 0.16; 'received:mail.cskk.id.au': 0.16;
'wrote:': 0.16; 'cc:addr:python.org': 0.20; 'cc:2**0': 0.25;
'header:User-Agent:1': 0.30; 'header:In-Reply-To:1': 0.34;
'received:au': 0.35; 'text': 0.39; 'use': 0.39; 'something': 0.40;
'try': 0.40; 'true': 0.63; 'received:13': 0.64; 'wish': 0.66;
'received:userid': 0.66
Mail-Followup-To: Gordinator <gordinator@gordinator.org>,
python-list@python.org
Content-Disposition: inline
In-Reply-To: <fqN0O.38287$ZZU.19060@fx07.ams4>
User-Agent: Mutt/2.2.7 (2022-08-07)
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <ZkPnS1Lqy1qZH0Jh@cskk.homeip.net>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
View all headers

On 14May2024 18:44, Gordinator <gordinator@gordinator.org> wrote:
>I wish to write a terminal emulator in Python. I am a fairly competent
>Python user, and I wish to try a new project idea. What references can
>I use when writing my terminal emulator? I wish for it to be a true
>terminal emulator as well, not just a Tk text widget or something like
>that.

Start with the `pty` module.

Subject: Re: Terminal Emulator
From: Stefan Ram
Newsgroups: comp.lang.python
Organization: Stefan Ram
Date: Wed, 15 May 2024 10:31 UTC
References: 1
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: ram@zedat.fu-berlin.de (Stefan Ram)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: 15 May 2024 10:31:25 GMT
Organization: Stefan Ram
Lines: 12
Expires: 1 Feb 2025 11:59:58 GMT
Message-ID: <TUI-20240515112645@ram.dialup.fu-berlin.de>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de ra9qUccw/F4gW4WwHJt/lAVwlgf0D2X9QJTZb8fm8IIfqe
Cancel-Lock: sha1:S4pSGrT0bzTKQUVgiFrmK89yNMI= sha256:azDavu1AEc4xkOAafUPVPdA21wEH//WAhmR8MCP7SDU=
X-Copyright: (C) Copyright 2024 Stefan Ram. All rights reserved.
Distribution through any means other than regular usenet
channels is forbidden. It is forbidden to publish this
article in the Web, to change URIs of this article into links,
and to transfer the body without this notice, but quotations
of parts in other Usenet posts are allowed.
X-No-Archive: Yes
Archive: no
X-No-Archive-Readme: "X-No-Archive" is set, because this prevents some
services to mirror the article in the web. But the article may
be kept on a Usenet archive server with only NNTP access.
X-No-Html: yes
Content-Language: en-US
View all headers

Gordinator <gordinator@gordinator.org> wrote or quoted:
>I wish to write a terminal emulator in Python.

We need somethin like a portable curses module (plus colorama)
and it has got to work on both Windoze and Linux straight out
of the box in standard Python. And it would be even sicker if it
could run in that IDLE console too! That way, we could code up
some legit terminal-based software (like slrn or Nethack) using
just plain ol' Python, no extra stuff required. It's a real
shame it ain't already part of the standard library. Someone's
got to step up and make this happen. Python needs a portable
console TUI! It'd be the bomb if you could make /that/ happen!

Subject: Re: Terminal Emulator
From: Gordinator
Newsgroups: comp.lang.python
Organization: usenet-news.net
Date: Wed, 15 May 2024 11:24 UTC
References: 1 2
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!nntp.comgw.net!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx01.ams4.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Terminal Emulator
Newsgroups: comp.lang.python
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de>
Content-Language: en-US
From: gordinator@gordinator.org (Gordinator)
In-Reply-To: <TUI-20240515112645@ram.dialup.fu-berlin.de>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 10
Message-ID: <lX01O.194800$kMLb.38675@fx01.ams4>
X-Complaints-To: abuse@usenet-news.net
NNTP-Posting-Date: Wed, 15 May 2024 11:24:01 UTC
Organization: usenet-news.net
Date: Wed, 15 May 2024 12:24:01 +0100
X-Received-Bytes: 1210
View all headers

> We need somethin like a portable curses module (plus colorama)

Agreed, getting curses to work on Windows is SUCH a pain, and I don't
think I've ever done it. Naturally, as a Linux user, I don't find much
need to do it anyway.

Colorama would also be cool in the standard library as well. I have
worked on projects in the past where only the standard library could be
used, so I 100% agree with this. But that's something for the PSF to
talk about. Maybe someone could write a PEP for this.

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Lawrence D'Oliv
Newsgroups: comp.lang.python
Organization: A noiseless patient Spider
Date: Thu, 16 May 2024 00:12 UTC
References: 1 2
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Thu, 16 May 2024 00:12:29 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 8
Message-ID: <v23j1c$15nao$4@dont-email.me>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 16 May 2024 02:12:29 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="42d7c1986794b3cba0b7055c53f5ee1e";
logging-data="1236312"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18pPphy0dXcKL4myoc/dnDA"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:GETLJpUPBY35hWfkvmH4PtbtH54=
View all headers

On 15 May 2024 10:31:25 GMT, Stefan Ram wrote:

> We need somethin like a portable curses module (plus colorama) and
> it has got to work on both Windoze and Linux straight out of the box
> in standard Python.

Something else for Windows Python users to complain that they cannot get
to install properly?

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Gordinator
Newsgroups: comp.lang.python
Organization: usenet-news.net
Date: Thu, 16 May 2024 18:46 UTC
References: 1 2 3
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!news.quux.org!weretis.net!feeder9.news.weretis.net!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx05.ams4.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Newsgroups: comp.lang.python
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
Content-Language: en-US
From: gordinator@gordinator.org (Gordinator)
In-Reply-To: <v23j1c$15nao$4@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 12
Message-ID: <Pvs1O.8533$H1X8.1544@fx05.ams4>
X-Complaints-To: abuse@usenet-news.net
NNTP-Posting-Date: Thu, 16 May 2024 18:46:07 UTC
Organization: usenet-news.net
Date: Thu, 16 May 2024 19:46:07 +0100
X-Received-Bytes: 1345
View all headers

On 16/05/2024 01:12, Lawrence D'Oliveiro wrote:
> On 15 May 2024 10:31:25 GMT, Stefan Ram wrote:
>
>> We need somethin like a portable curses module (plus colorama) and
>> it has got to work on both Windoze and Linux straight out of the box
>> in standard Python.
>
> Something else for Windows Python users to complain that they cannot get
> to install properly?

To be fair, the problem is the fact that they use Windows (but I guess
Linux users have to deal with venvs, so we're even.

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Lawrence D'Oliv
Newsgroups: comp.lang.python
Organization: A noiseless patient Spider
Date: Thu, 16 May 2024 23:07 UTC
References: 1 2 3 4
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Thu, 16 May 2024 23:07:03 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 21
Message-ID: <v263in$1q62t$4@dont-email.me>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Fri, 17 May 2024 01:07:04 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="83e232b818d553f0fe0e404c9d6ad506";
logging-data="1906781"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+NkOGGllmbFmzXxmWmckvZ"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:0PiKzz8z7QndcjpwAC1gZjJ6nKo=
View all headers

On Thu, 16 May 2024 19:46:07 +0100, Gordinator wrote:

> On 16/05/2024 01:12, Lawrence D'Oliveiro wrote:
>
>> On 15 May 2024 10:31:25 GMT, Stefan Ram wrote:
>>
>>> We need somethin like a portable curses module (plus colorama) and it
>>> has got to work on both Windoze and Linux straight out of the box in
>>> standard Python.
>>
>> Something else for Windows Python users to complain that they cannot
>> get to install properly?
>
> To be fair, the problem is the fact that they use Windows (but I guess
> Linux users have to deal with venvs, so we're even.

Linux users get to have standard packages for systemwide installs. You
only need virtual envs for custom setups.

Even nonstandard systemwide installs are nicely contained in /usr/local,
so they are easy to remove.

Subject: Re: Terminal Emulator
From: Peter J. Holzer
Newsgroups: comp.lang.python
Date: Sat, 18 May 2024 15:08 UTC
References: 1 2 3 4
Attachments: signature.asc (application/pgp-signature)
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: hjp-python@hjp.at (Peter J. Holzer)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Sat, 18 May 2024 17:08:43 +0200
Lines: 81
Message-ID: <mailman.15.1716045388.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
<4Vf6jx1MWJznVGB@mail.python.org>
<20240518150843.knm67o3uhpcdr4dz@hjp.at>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
protocol="application/pgp-signature"; boundary="jrt2la52cu3cb7wf"
X-Trace: news.uni-berlin.de NbbEot18ZERmjK/ckZlNww9T6DH7JdVaAoliQs3HSjxA==
Cancel-Lock: sha1:nMO/5MC3oZORAo7yU6AdKUHAnEQ= sha256:8rT5NAQUGhIQmmr/JixRHDWEo+uEW/S8x9CJ6QkpRfI=
Return-Path: <hjp-python@hjp.at>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.001
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'content-
type:multipart/signed': 0.05; 'fairly': 0.05; 'e.g.': 0.07;
'python.': 0.08; 'ansi': 0.09; 'content-type:application/pgp-
signature': 0.09; 'filename:fname piece:asc': 0.09;
'filename:fname piece:signature': 0.09;
'filename:fname:signature.asc': 0.09; 'terminal': 0.09; 'that.':
0.15; '"creative': 0.16; '__/': 0.16; 'challenge!"': 0.16;
'database.': 0.16; 'from:addr:hjp-python': 0.16;
'from:addr:hjp.at': 0.16; 'from:name:peter j. holzer': 0.16;
'gauld': 0.16; 'hjp@hjp.at': 0.16; 'holzer': 0.16; 'idea.': 0.16;
'reality.': 0.16; 'right.': 0.16; 'stross,': 0.16; 'subset': 0.16;
'terminals': 0.16; 'url-ip:212.17.106/24': 0.16; 'url-
ip:212.17/16': 0.16; 'url-ip:75/8': 0.16; 'url:hjp': 0.16;
'|_|_)': 0.16; 'wrote:': 0.16; 'python': 0.16; 'grant': 0.17;
'probably': 0.17; "aren't": 0.19; 'to:addr:python-list': 0.20;
"i'd": 0.24; 'idea': 0.24; 'anything': 0.25; 'expect': 0.28;
'sense': 0.28; 'putting': 0.31; 'python-list': 0.32; 'but': 0.32;
'there': 0.33; 'use,': 0.33; 'header:In-Reply-To:1': 0.34;
'display': 0.36; 'really': 0.37; 'could': 0.38; 'means': 0.38;
'quite': 0.39; 'text': 0.39; 'use': 0.39; 'break': 0.39; 'decide':
0.39; 'alan': 0.40; 'something': 0.40; 'want': 0.40; 'try': 0.40;
'sharing': 0.60; 'provide': 0.60; 'apps': 0.62; 'received:212':
0.62; 'true': 0.63; 'browser': 0.64; 'your': 0.64; 'url-ip:198/8':
0.65; 'well': 0.65; 'wish': 0.66; 'received:userid': 0.66; '[1]':
0.67; 'url:index': 0.68; 'url-ip:212/8': 0.69; 'ignore': 0.71;
"you'll": 0.73; 'life': 0.77; 'easier,': 0.84; 'received:at':
0.84; 'exists': 0.91
Mail-Followup-To: python-list@python.org
Content-Disposition: inline
In-Reply-To: <4Vf6jx1MWJznVGB@mail.python.org>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <20240518150843.knm67o3uhpcdr4dz@hjp.at>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<ed059dd7-6b3e-48c9-9a0d-89f15c5739a2@yahoo.co.uk>
<4Vf6jx1MWJznVGB@mail.python.org>
View all headers

On 2024-05-14 16:03:33 -0400, Grant Edwards via Python-list wrote:
> On 2024-05-14, Alan Gauld via Python-list <python-list@python.org> wrote:
> > On 14/05/2024 18:44, Gordinator via Python-list wrote:
> >
> >> I wish to write a terminal emulator in Python. I am a fairly
> >> competent Python user, and I wish to try a new project idea. What
> >> references can I use when writing my terminal emulator? I wish for
> >> it to be a true terminal emulator as well, not just a Tk text
> >> widget or something like that.
> >
> > The first thing is to decide which terminal.
>
> If you want to make life easier, make it a superset of a terminal that
> already exists in the terminfo database.
>
> Going with some sort of ANSI terminal will probably provide
> operability even with dumb apps which ignore $TERM and just spit out
> basic ANSI escape sequences.

And if you want to go for a superset, xterm might be one of the more
useful: https://www.xfree86.org/current/ctlseqs.html

> If you really want to break trail, you could invent your own control
> sequences, which means you'll have to write terminfo and/or termcap
> entries as well as the terminal emulator.

Right. A saner model than ANSI and its supersets might be a good idea
conceptionally. But I'd expect quite a few programs to break.

> > A VT100 is very different from a 3270. And even a VT330 is quite
> > different from a VT100 although sharing a common subset of control
> > codes. And if you start looking at graphical terminals things get
> > even more interesting!
>
> "Intersting" is putting it mildly...

Yup. Also there aren't many programs which use, e.g. xterm's
pixel-graphics capabilities.

OTOH, there is something like domterm[1], which can (theoretically)
display anything a browser can display.

hp

[1] https://domterm.org/index.html

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp@hjp.at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

Attachments: signature.asc (application/pgp-signature)
Subject: Re: Terminal Emulator
From: Peter J. Holzer
Newsgroups: comp.lang.python
Date: Sat, 18 May 2024 15:17 UTC
References: 1 2 3
Attachments: signature.asc (application/pgp-signature)
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: hjp-python@hjp.at (Peter J. Holzer)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Sat, 18 May 2024 17:17:18 +0200
Lines: 66
Message-ID: <mailman.16.1716045440.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<a5593057-8c23-44ca-a1b1-764016ac9f35@googlemail.com>
<20240518151718.ruuvvlaj3cqn7t2u@hjp.at>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
protocol="application/pgp-signature"; boundary="s4wtimvzro3m2ipr"
X-Trace: news.uni-berlin.de y6OGdd0NOMThn3TtDhwHDQE6pYiVtka4pDodauo19h+g==
Cancel-Lock: sha1:4b/vGhBc3JDOnuGPx0tpx2EBBbY= sha256:ihFwJI8DdaS64U40JJnDJbPPqiJjUJyDZRSm1E/l7Uc=
Return-Path: <hjp-python@hjp.at>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.000
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'content-
type:multipart/signed': 0.05; 'fairly': 0.05; 'gui': 0.05;
'python.': 0.08; 'byte': 0.09; 'content-type:application/pgp-
signature': 0.09; 'filename:fname piece:asc': 0.09;
'filename:fname piece:signature': 0.09;
'filename:fname:signature.asc': 0.09; 'linux': 0.09; 'rate,':
0.09; 'schrieb': 0.09; 'terminal': 0.09; 'that.': 0.15;
'"creative': 0.16; '(unless': 0.16; '+0200,': 0.16; '__/': 0.16;
'challenge!"': 0.16; 'connect,': 0.16; 'from:addr:hjp-python':
0.16; 'from:addr:hjp.at': 0.16; 'from:name:peter j. holzer': 0.16;
'hjp@hjp.at': 0.16; 'holzer': 0.16; 'idea.': 0.16; 'involved,':
0.16; 'reality.': 0.16; 'stross,': 0.16; 'terminals': 0.16; 'url-
ip:212.17.106/24': 0.16; 'url-ip:212.17/16': 0.16; 'url:hjp':
0.16; 'width,': 0.16; '|_|_)': 0.16; 'wrote:': 0.16; 'python':
0.16; 'to:addr:python-list': 0.20; 'basically': 0.22; "isn't":
0.27; 'sense': 0.28; 'program': 0.31; "doesn't": 0.32; 'question':
0.32; 'do.': 0.32; 'python-list': 0.32; 'there': 0.33; 'same':
0.34; 'mean': 0.34; 'header:In-Reply-To:1': 0.34; 'runs': 0.35;
"it's": 0.37; 'text': 0.39; 'use': 0.39; 'something': 0.40;
'want': 0.40; 'try': 0.40; 'received:212': 0.62; 'true': 0.63;
'with:': 0.64; 'wish': 0.66; 'let': 0.66; 'received:userid': 0.66;
'url-ip:212/8': 0.69; 'virtual': 0.71; 'relevant': 0.73; 'getty':
0.84; 'received:at': 0.84
Mail-Followup-To: python-list@python.org
Content-Disposition: inline
In-Reply-To: <a5593057-8c23-44ca-a1b1-764016ac9f35@googlemail.com>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <20240518151718.ruuvvlaj3cqn7t2u@hjp.at>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<a5593057-8c23-44ca-a1b1-764016ac9f35@googlemail.com>
View all headers

On 2024-05-14 22:37:17 +0200, Mirko via Python-list wrote:
> Am 14.05.24 um 19:44 schrieb Gordinator via Python-list:
> > I wish to write a terminal emulator in Python. I am a fairly competent
> > Python user, and I wish to try a new project idea. What references can I
> > use when writing my terminal emulator? I wish for it to be a true
> > terminal emulator as well, not just a Tk text widget or something like
> > that.
> >
> > If you have any advice, please do let me know!
>
>
> Not sure, what you mean with:
>
> > true terminal emulator as well, not just a Tk text widget or
> > something like that
> If you want to write a GUI terminal, than that *is* a terminal emulator and
> *has* a text widget as its visible core. If you want to write something like
> getty which runs on the virtual terminals (Ctrl+Alt+F*) than that is a
> terminal (not a terminal emulator).

Getty isn't a terminal (unless there is another program of the same
name). It's a small program to set up a serial communication line.
Basically it waits for the modem to connect, sets the relevant
parameters (bit rate, byte width, parity, ...) and then hands over to
login. Of course in the case of a linux console there is no modem and no
serial line involved, so it doesn't have much to do. (Of course this
raises the question whether the Linux console is a terminal or a
terminal emulator ...)

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp@hjp.at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

Attachments: signature.asc (application/pgp-signature)
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Peter J. Holzer
Newsgroups: comp.lang.python
Date: Sat, 18 May 2024 15:19 UTC
References: 1 2 3 4 5
Attachments: signature.asc (application/pgp-signature)
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: hjp-python@hjp.at (Peter J. Holzer)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sat, 18 May 2024 17:19:13 +0200
Lines: 44
Message-ID: <mailman.17.1716045555.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de>
<v23j1c$15nao$4@dont-email.me> <Pvs1O.8533$H1X8.1544@fx05.ams4>
<20240518151913.w5qqsw67gndy57ry@hjp.at>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
protocol="application/pgp-signature"; boundary="yfbpku6vrxn4lior"
X-Trace: news.uni-berlin.de hC6eYEZSx1ip6RHMQnDengo/BoIzEl2zpRBsEHNs/iKA==
Cancel-Lock: sha1:sNPLSaYZ/KbsholSIa3c8gYDGw0= sha256:7C+U5Rnh/V0heJFPF+jIQBcTPlsf4m5xQ9xNEdiFklg=
Return-Path: <hjp-python@hjp.at>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.001
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'content-
type:multipart/signed': 0.05; 'content-type:application/pgp-
signature': 0.09; 'fair,': 0.09; 'filename:fname piece:asc': 0.09;
'filename:fname piece:signature': 0.09;
'filename:fname:signature.asc': 0.09; 'linux': 0.09;
'subject:Python': 0.12; '"creative': 0.16; '__/': 0.16;
'challenge!"': 0.16; 'from:addr:hjp-python': 0.16;
'from:addr:hjp.at': 0.16; 'from:name:peter j. holzer': 0.16;
'hjp@hjp.at': 0.16; 'holzer': 0.16; 'packages.': 0.16; 'reality.':
0.16; 'stross,': 0.16; 'url-ip:212.17.106/24': 0.16; 'url-
ip:212.17/16': 0.16; 'url:hjp': 0.16; '|_|_)': 0.16; 'wrote:':
0.16; 'problem': 0.16; 'python': 0.16; 'to:addr:python-list':
0.20; 'maybe': 0.22; 'fact': 0.28; 'sense': 0.28; 'think': 0.32;
'guess': 0.32; 'python-list': 0.32; 'users.': 0.32; 'windows':
0.34; 'header:In-Reply-To:1': 0.34; "we're": 0.35; 'use': 0.39;
'received:212': 0.62; 'come': 0.62; 'less': 0.65;
'received:userid': 0.66; 'url-ip:212/8': 0.69; 'subject:List':
0.71; 'deal': 0.73; 'decent': 0.84; 'received:at': 0.84;
'subject:Posting': 0.84
Mail-Followup-To: python-list@python.org
Content-Disposition: inline
In-Reply-To: <Pvs1O.8533$H1X8.1544@fx05.ams4>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <20240518151913.w5qqsw67gndy57ry@hjp.at>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de>
<v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4>
View all headers

On 2024-05-16 19:46:07 +0100, Gordinator via Python-list wrote:
> To be fair, the problem is the fact that they use Windows (but I guess Linux
> users have to deal with venvs, so we're even.

I don't think Linux users have to deal with venvs any more than Windows
users. Maybe even less because many distributions come with a decent
set of Python packages.

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp@hjp.at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

Attachments: signature.asc (application/pgp-signature)
Subject: Re: Terminal Emulator
From: Piergiorgio Sartor
Newsgroups: comp.lang.python
Organization: A noiseless patient Spider
Date: Sat, 18 May 2024 15:31 UTC
References: 1
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: piergiorgio.sartor.this.should.not.be.used@nexgo.REMOVETHIS.de (Piergiorgio Sartor)
<piergiorgio.sartor.this.should.not.be.used@nexgo.REMOVETHIS.de>
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator
Date: Sat, 18 May 2024 17:31:02 +0200
Organization: A noiseless patient Spider
Lines: 21
Message-ID: <m6umhk-165.ln1@lazy.lzy>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 18 May 2024 17:34:46 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="5115afe4aa6fda2a92ba34edcd4f54c2";
logging-data="2999977"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX189f4eFUUcEg0XXG14HUrFc"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:LhMDobtwo7JtDvvhfgOnCYRy840=
Content-Language: it
In-Reply-To: <fqN0O.38287$ZZU.19060@fx07.ams4>
View all headers

On 14/05/2024 19.44, Gordinator wrote:
> I wish to write a terminal emulator in Python. I am a fairly competent
> Python user, and I wish to try a new project idea. What references can I
> use when writing my terminal emulator? I wish for it to be a true
> terminal emulator as well, not just a Tk text widget or something like
> that.
>
> If you have any advice, please do let me know!

I would start writing down what this
"terminal emulator" should do.

Then, collect information about what
module / library can support the features.

bye,

--

piergiorgio

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Grant Edwards
Newsgroups: comp.lang.python
Date: Sat, 18 May 2024 16:48 UTC
References: 1 2 3 4 5 6
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: grant.b.edwards@gmail.com (Grant Edwards)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sat, 18 May 2024 12:48:14 -0400 (EDT)
Lines: 17
Message-ID: <mailman.18.1716050895.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
X-Trace: news.uni-berlin.de SppxQrtqArvsumqdGn+FKQ8EJoX6fUTRw/cE4xja7BgA==
Cancel-Lock: sha1:mkIOoprM6jpqx0DL798w5PGJVpI= sha256:74KEWz+CfDX6GR9SgsNv2ahli6mPXmh5PDzKkNIKrh8=
Return-Path: <grant.b.edwards@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.043
X-Spam-Evidence: '*H*': 0.92; '*S*': 0.00; 'fair,': 0.09; 'linux':
0.09; 'subject:Python': 0.12; 'from:addr:grant.b.edwards': 0.16;
'from:name:grant edwards': 0.16; 'holzer': 0.16; 'packages.':
0.16; 'wrote:': 0.16; 'problem': 0.16; 'python': 0.16; 'grant':
0.17; 'to:addr:python-list': 0.20; "i've": 0.22; 'maybe': 0.22;
'fact': 0.28; 'header:User-Agent:1': 0.30; 'think': 0.32; 'guess':
0.32; 'python-list': 0.32; 'users.': 0.32; 'windows': 0.34;
'from:addr:gmail.com': 0.35; "we're": 0.35; 'using': 0.37; 'use':
0.39; 'come': 0.62; 'daily': 0.65; 'less': 0.65; 'message-
id:invalid': 0.68; 'subject:List': 0.71; 'deal': 0.73; 'decent':
0.84; 'subject:Posting': 0.84
User-Agent: slrn/1.0.3 (Linux)
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <4VhVBk0sy7znVGB@mail.python.org>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
View all headers

On 2024-05-18, Peter J. Holzer via Python-list <python-list@python.org> wrote:
> On 2024-05-16 19:46:07 +0100, Gordinator via Python-list wrote:
>
>> To be fair, the problem is the fact that they use Windows (but I
>> guess Linux users have to deal with venvs, so we're even.
>
> I don't think Linux users have to deal with venvs any more than
> Windows users. Maybe even less because many distributions come with
> a decent set of Python packages.

I've been using Python on Linux almost daily for 25 years, and I've
yet to use a venv...

--
Grant

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Mats Wichmann
Newsgroups: comp.lang.python
Date: Sat, 18 May 2024 18:04 UTC
References: 1 2 3 4 5 6 7
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: mats@wichmann.us (Mats Wichmann)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sat, 18 May 2024 12:04:07 -0600
Lines: 35
Message-ID: <mailman.19.1716055464.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de 2j2alKMKXaVin5nRqY/raQBVj54TDWB6BRSero9s0LKg==
Cancel-Lock: sha1:mDFMuYlpfzWrOmlPtOCTbKtuFEk= sha256:mjsYMYcLN9lawMKFTGPuSMx8PewQV7ITqTmcH5tHYXM=
Return-Path: <mats@wichmann.us>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
reason="1024-bit key; unprotected key"
header.d=pobox.com header.i=@pobox.com header.b=tsa6rvT8;
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.007
X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'pip': 0.04; 'bunch': 0.05;
'python.': 0.08; 'fair,': 0.09; 'fedora': 0.09; 'linux': 0.09;
'occasionally': 0.09; 'versions,': 0.09; 'subject:Python': 0.12;
'received:173': 0.13; 'supported': 0.15; 'holzer': 0.16;
'packages,': 0.16; 'packages.': 0.16; 'sanity-check': 0.16;
'wrote:': 0.16; 'problem': 0.16; 'python': 0.16; 'grant': 0.17;
'to:addr:python-list': 0.20; 'machine': 0.22; "i've": 0.22;
'maybe': 0.22; 'version': 0.23; 'install': 0.23; 'weeks': 0.23;
'past': 0.25; 'python,': 0.25; '>>>': 0.28; 'fact': 0.28;
'mostly': 0.28; 'example,': 0.28; 'header:User-Agent:1': 0.30;
'whole': 0.30; 'think': 0.32; 'guess': 0.32; 'here,': 0.32;
'python-list': 0.32; 'users.': 0.32; 'but': 0.32; 'particular':
0.33; 'windows': 0.34; 'same': 0.34; 'package': 0.34; 'header:In-
Reply-To:1': 0.34; 'running': 0.34; 'yes,': 0.35; "we're": 0.35;
'those': 0.36; 'couple': 0.37; 'really': 0.37; 'using': 0.37;
'received:192.168': 0.37; 'could': 0.38; 'enough': 0.39; 'use':
0.39; 'come': 0.62; 'down': 0.64; 'full': 0.64; 'your': 0.64;
'daily': 0.65; 'well': 0.65; 'less': 0.65; 'offer': 0.71;
'subject:List': 0.71; 'suite': 0.71; 'future': 0.72; 'deal': 0.73;
'decent': 0.84; 'subject:Posting': 0.84; 'turned': 0.95
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=pobox.com; h=message-id
:date:mime-version:subject:to:references:from:in-reply-to
:content-type:content-transfer-encoding; s=sasl; bh=4rnuD4mM4uCA
Surhfnh87Z3WOV29XXjCmsI/rKCsskU=; b=tsa6rvT8vJ6AUiPl6hjl+2mI92z7
fCBqrI/ampWOFVP61fLJDl2YrgxnStfLs6HBIA2dQB54SLivYiIrJW6QxozMCCGc
vh1P5/ONqDCp3NglIcHzW7pRLU340im2RiHSwKwPlJCgerGn5Tqa6qeiMHPUyLwO
pHpQPLe3p7LzhcQ=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=wichmann.us;
h=message-id:date:mime-version:subject:to:references:from:in-reply-to:content-type:content-transfer-encoding;
s=2018-07.pbsmtp; bh=4rnuD4mM4uCASurhfnh87Z3WOV29XXjCmsI/rKCsskU=;
b=WmRi7cksNKRkQ9gaYXqUXTk/ekOPnT0LXu7GYS2fKkTcEzSMH/avAOSyqMA4I3EqUZ3fc58K85c52nKY+qUS3iweDr5m+BPdsGrXR6NL09zKWUKNimOL3ZGU6pqTiULQ3fIY5G5vj8CFktNELAxSLhiACG9M5oeoBcyGlHlhhc0=
User-Agent: Mozilla Thunderbird
Content-Language: en-US
Autocrypt: addr=mats@wichmann.us; keydata=
xsDiBD9xp6oRBAC1vd3YI8Gcr1CxpV1gldNQu0uQsNaICDk+Ai3+R163s/P83JOYG+SBEA3P
v7iZx70qpQ3RzP7KrjF1Nm6j0em9ccUX2fPQUCAxXw5Hiq7CSMiwQQZRI6shcnyMh9XTKViT
WK5MrKDyvjDEn7epjKzKwPS5SG039l6XaOKU0A4uGwCgsNqUQqC0gMMcbKlJV8ql58iKmbMD
/ii8FPQrXmyS/FnsPs7UddV5qMHKm7NUH5oiKuMVyakInRyq9iIxuu3D4Ec6mWRKcGsjmIkW
HXCSz0aefs6dsqNqpU54cYioJ3wP5LzHK7oclgJPryVt5Qezbdutf8SQf8gVkaNIlkxwGUzi
bKTZ6CHzwlz9nNgeel0XPUcZzFxGA/4paeCg2rMSVuAhUQbsLYHu4XzTs9P16zaXkrtxc4m5
b+BF5xsLgTpyO5l859XudS2Gp+7/Y37dAU4QlyGGOboWmF1y9U5DnzBwG8ghsnym+ga58MJh
LdRdQQ6xQolCpEXOuzm40f2r5uMxF3KOJ7WpIPuGAkeCPru9BmlATH+zOs0gTWF0cyBXaWNo
bWFubiA8bWF0c0B3aWNobWFubi51cz7CYQQTEQIAIQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIX
gAUCT0VyZwIZAQAKCRDAMaCQc9hUxiZBAJ9cWziGp7hVfsu5T+cQptc3rLNndQCgrZh8u5LW
BfJ5e/Y+3PwZ8UEm+ELOwE0EP5is8BAEAMtwzcA8TYf5UTjDMgwcSNoErTc9ag+IX05QFgL8
aF8sfJRv5atcitqQy0gSIsOzI+L/AFdPN/+QQI3dL1tCq14t32KPDtigDhzm6jVPXX5z+V9u
xnD8XTp+ZvNcWoHXjViM8aXeLLEiCpiVCho307h3XShvqoKINWRQWeAsKKDDAAMFA/48zaey
wiiEyvI0meJ1KkNHxdLP0yLODr1WV6j9xkPkLWOaIDw7dlwEOlF1N1YtZ2wa0p1wsttdIbIx
ffgwXmcH4zrdxUIMz3U0BqYzk5H+5cYFXECXTFVOmweS+JECYMj80PjRoKCO1eVO1N30zksB
36NnhZWPRWIhjK3ZarIYH8JGBBgRAgAGBQI/mKzwAAoJEMAxoJBz2FTG6VEAoKDYHfDp5Q3q
PuPvPahCE9HsXMgAAJ9INTqcLSJrOfyJ8q95nBO1T26H2Q==
In-Reply-To: <4VhVBk0sy7znVGB@mail.python.org>
X-Pobox-Relay-ID: 064D4E12-1541-11EF-BAF1-F515D2CDFF5E-81526775!pb-smtp20.pobox.com
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
View all headers

On 5/18/24 10:48, Grant Edwards via Python-list wrote:
> On 2024-05-18, Peter J. Holzer via Python-list <python-list@python.org> wrote:
>> On 2024-05-16 19:46:07 +0100, Gordinator via Python-list wrote:
>>
>>> To be fair, the problem is the fact that they use Windows (but I
>>> guess Linux users have to deal with venvs, so we're even.
>>
>> I don't think Linux users have to deal with venvs any more than
>> Windows users. Maybe even less because many distributions come with
>> a decent set of Python packages.
>
> I've been using Python on Linux almost daily for 25 years,

same here, but:

and I've
> yet to use a venv...

Distros have do offer a good selection of packaged Python bits, yes, but
only for the version of Python that's "native" to that distro release.
If you need to test other versions of Python, you're mostly on your own.
Just as an example, for a particular project I had one test machine
running Fedora 38 until just a couple weeks ago, with Python 3.11 as
"native" with a full suite of packages, but I needed to test 3.12 and
then the 3.13 pre-releases, as well as occasionally sanity-check the
"oldest supported Python for this project", which turned out to be 3.6.
I could build all those Pythons myself and install them to a location I
can "python3.xx -m pip install" to, but Fedora is nice enough to package
up a whole bunch of past and future Python versions, so why? And Fedora
really discourages doing installs via pip to a system-packaged Python.
So venvs make managing all that pretty convenient. Dunno why everybody's
so down on venvs...

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Piergiorgio Sartor
Newsgroups: comp.lang.python
Organization: A noiseless patient Spider
Date: Sat, 18 May 2024 18:12 UTC
References: 1 2 3 4 5 6 7 8
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: piergiorgio.sartor.this.should.not.be.used@nexgo.REMOVETHIS.de (Piergiorgio Sartor)
<piergiorgio.sartor.this.should.not.be.used@nexgo.REMOVETHIS.de>
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sat, 18 May 2024 20:12:33 +0200
Organization: A noiseless patient Spider
Lines: 21
Message-ID: <hl7nhk-165.ln1@lazy.lzy>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 18 May 2024 20:16:00 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="5115afe4aa6fda2a92ba34edcd4f54c2";
logging-data="3060249"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+NRfTJTTFanpVHghwEULa+"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:t3gglBYjmU31NqwdzHgXTAijChY=
In-Reply-To: <mailman.19.1716055464.2909.python-list@python.org>
Content-Language: it
View all headers

On 18/05/2024 20.04, Mats Wichmann wrote:
[...]
> So venvs make managing all that pretty convenient. Dunno why everybody's
> so down on venvs...

Only people which are *not* using python... :-)

In my experience, venvs is the only possible
way to use python properly.

The dependency nightmare created by python, pip
and all the rest cannot be resolved otherwise.

It seems backward compatibility is a taboo...

bye,

--

piergiorgio

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Grant Edwards
Newsgroups: comp.lang.python
Date: Sat, 18 May 2024 18:41 UTC
References: 1 2 3 4 5 6 7 8
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: grant.b.edwards@gmail.com (Grant Edwards)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sat, 18 May 2024 14:41:45 -0400 (EDT)
Lines: 23
Message-ID: <mailman.22.1716057707.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<4VhXjj4ZS6znVGL@mail.python.org>
X-Trace: news.uni-berlin.de iX0Fxqms2NvXnP8NLXDJSAS1cY8i/UTXRbsLEc3I1tSA==
Cancel-Lock: sha1:q7LyuEdn7YO7TIhq61tYr5l3QSc= sha256:zADZjPPbsmk3nUADxbfOLETUd3WMocyFTZ+jsm+g1hQ=
Return-Path: <grant.b.edwards@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.031
X-Spam-Evidence: '*H*': 0.94; '*S*': 0.00; 'knows': 0.04;
'apparently': 0.09; 'subject:Python': 0.12; 'supported': 0.15;
'3.x': 0.16; 'database,': 0.16; 'from:addr:grant.b.edwards': 0.16;
'from:name:grant edwards': 0.16; 'mats': 0.16; 'wichmann': 0.16;
'wrote:': 0.16; 'python': 0.16; "can't": 0.17; 'to:addr:python-
list': 0.20; "i've": 0.22; 'version': 0.23; 'install': 0.23;
'installed': 0.23; 'python,': 0.25; "isn't": 0.27; 'mostly': 0.28;
'header:User-Agent:1': 0.30; 'think': 0.32; "doesn't": 0.32;
'marked': 0.32; 'python-list': 0.32; 'said,': 0.32; 'unless':
0.32; 'but': 0.32; 'there': 0.33; 'package': 0.34; 'fine': 0.35;
'yes,': 0.35; 'from:addr:gmail.com': 0.35; 'currently': 0.37;
'others': 0.37; 'both': 0.40; 'something': 0.40; 'your': 0.64;
'years': 0.65; 'message-id:invalid': 0.68; 'manager': 0.68;
'offer': 0.71; 'subject:List': 0.71; 'handled': 0.84; 'minor':
0.84; 'subject:Posting': 0.84; 'stable': 0.93
User-Agent: slrn/1.0.3 (Linux)
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <4VhXjj4ZS6znVGL@mail.python.org>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
View all headers

On 2024-05-18, Mats Wichmann via Python-list <python-list@python.org> wrote:

> Distros have do offer a good selection of packaged Python bits, yes, but
> only for the version of Python that's "native" to that distro release.
> If you need to test other versions of Python, you're mostly on your own.

For a few years I needed both 2.x and 3.x installed, but my distro
(Gentoo) handled that fine (I think most others do also). Gentoo also
allows multiple minor versions to be installed (currently I have 3.11
and 3.12 on this machine).

But, since Gentoo is a source-based meta-distro, when I install a
Python package, the package manager knows how to install it for all
installed Python versions that are supported by the package.

I can't think of why I would need a venv unless I needed to test
something with a Python version that isn't available for Gentoo. That
said, there are currently 7 versions available (2.7.18, 3.8.19,
3.9.19, 3.10.14, 3.11.9, 3.12.3, 3.13.0).

3.13 isn't marked stable yet in the Gentoo package database, and I
apparently have some Python app/package installed that doesn't yet
support 3.12, so I've currently got both 3.12 and 3.11.

Subject: venvs vs. package management (was: Terminal Emulator (Posting On Python-List Prohibited))
From: Peter J. Holzer
Newsgroups: comp.lang.python
Date: Sun, 19 May 2024 06:49 UTC
References: 1 2 3 4 5 6 7 8 9 10
Attachments: signature.asc (application/pgp-signature)
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: hjp-python@hjp.at (Peter J. Holzer)
Newsgroups: comp.lang.python
Subject: venvs vs. package management (was: Terminal Emulator (Posting On
Python-List Prohibited))
Date: Sun, 19 May 2024 08:49:06 +0200
Lines: 75
Message-ID: <mailman.24.1716101350.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de>
<v23j1c$15nao$4@dont-email.me> <Pvs1O.8533$H1X8.1544@fx05.ams4>
<20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org>
<hl7nhk-165.ln1@lazy.lzy> <20240519064906.iiwcjlvdt4ripfpy@hjp.at>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
protocol="application/pgp-signature"; boundary="wokd43qjdegm327m"
X-Trace: news.uni-berlin.de p59h8ACaIEeh+YTQtnI0bgb1AOWwdNl0EtkfxboJQhgQ==
Cancel-Lock: sha1:v9D+J/SLSY7Y7OS3fkjnsGj8vRs= sha256:ST3uwXPB+/Tg1HPHkE5zO90Ch14OskYbf+184KNnZhg=
Return-Path: <hjp-python@hjp.at>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.000
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'project,': 0.03; 'pip':
0.04; '(e.g.': 0.05; 'content-type:multipart/signed': 0.05;
'ticket': 0.07; 'updates.': 0.07; '*not*': 0.09; ':-)': 0.09;
'content-type:application/pgp-signature': 0.09; 'fails': 0.09;
'filename:fname piece:asc': 0.09; 'filename:fname
piece:signature': 0.09; 'filename:fname:signature.asc': 0.09;
'linux': 0.09; 'resolved': 0.09; 'subject:Python': 0.12;
'"creative': 0.16; '+0200,': 0.16; '__/': 0.16; 'backward': 0.16;
'challenge!"': 0.16; 'constraints.': 0.16; 'for.': 0.16;
'from:addr:hjp-python': 0.16; 'from:addr:hjp.at': 0.16;
'from:name:peter j. holzer': 0.16; 'hjp@hjp.at': 0.16; 'holzer':
0.16; 'mats': 0.16; 'oh,': 0.16; 'personally,': 0.16; 'properly.':
0.16; 'reality.': 0.16; 'staging': 0.16; 'stross,': 0.16;
'subject:package': 0.16; 'url-ip:212.17.106/24': 0.16; 'url-
ip:212.17/16': 0.16; 'url:hjp': 0.16; 'wichmann': 0.16; '|_|_)':
0.16; 'wrote:': 0.16; 'python': 0.16; 'server.': 0.19; 'to:addr
:python-list': 0.20; 'all,': 0.20; 'written': 0.22; 'basically':
0.22; 'creates': 0.22; 'maybe': 0.22; 'version': 0.23; '(and':
0.25; 'anything': 0.25; 'python,': 0.25; 'depends': 0.25;
'cannot': 0.25; 'seems': 0.26; 'sense': 0.28; 'recently': 0.29;
'packages': 0.31; 'looked': 0.31; 'checks': 0.32; 'python-list':
0.32; 'but': 0.32; 'there': 0.33; 'script': 0.33; 'server': 0.33;
'same': 0.34; 'mean': 0.34; 'package': 0.34; 'header:In-Reply-
To:1': 0.34; 'runs': 0.35; 'work,': 0.36; 'people': 0.36; 'using':
0.37; 'way': 0.38; 'could': 0.38; 'means': 0.38; 'necessary':
0.39; 'developers': 0.39; 'use': 0.39; 'rest': 0.39; 'situation':
0.40; 'team': 0.60; 'received:212': 0.62; 'our': 0.64; 'down':
0.64; 'required': 0.65; 'less': 0.65; 'received:userid': 0.66;
'numbers': 0.67; 'technical': 0.67; 'management': 0.68; 'url-
ip:212/8': 0.69; 'production': 0.71; 'care': 0.71; 'subject:List':
0.71; 'subject:. ': 0.73; 'culture': 0.76; 'reasons': 0.84;
'lot.': 0.84; 'newest': 0.84; 'nightmare': 0.84; 'received:at':
0.84; 'relied': 0.84; 'subject: \n ': 0.84; 'subject:Posting':
0.84; 'fresh': 0.91; 'dependent': 0.93
Mail-Followup-To: python-list@python.org
Content-Disposition: inline
In-Reply-To: <hl7nhk-165.ln1@lazy.lzy>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <20240519064906.iiwcjlvdt4ripfpy@hjp.at>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de>
<v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4>
<20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org>
<hl7nhk-165.ln1@lazy.lzy>
View all headers

On 2024-05-18 20:12:33 +0200, Piergiorgio Sartor via Python-list wrote:
> On 18/05/2024 20.04, Mats Wichmann wrote:
> > So venvs make managing all that pretty convenient. Dunno why everybody's
> > so down on venvs...
>
> Only people which are *not* using python... :-)
>
> In my experience, venvs is the only possible
> way to use python properly.

That's very much depends on what you mean by properly.

Personally, I use venvs a lot. But most of the reasons have more to do
with team culture than technical constraints. In a different situation
(e.g. if all our developers used Linux and preferrably the same version)
I could see myself using venvs much less or maybe not at all.

> The dependency nightmare created by python, pip and all the rest
> cannot be resolved otherwise.

That's what package management on Linux is for. Sure, it means that you
won't have the newest version of anything and some packages not at all,
but you don't have to care about dependencies. Or updates.

(Missing packages can be a problem: Is there a script to automatically
generate .deb packages from PyPI? I haven't looked recently ...)

> It seems backward compatibility is a taboo...

I have recently written a script which checks out the newest version of
the project, creates a fresh venv using a requirements.txt without
version numbers and runs the test suite. If there is any action required
(either because a test fails or because there is a newer version of any
dependent package) it will create a ticket in redmine. Oh, and this
script runs on a staging server which has the same Linux distribution
(and hence the same Python version) as the production server.
Seems to work, but that is only necessary because we are using venvs. If
we relied on the distro's package management that would basically be a
non-issue.

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp@hjp.at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

Attachments: signature.asc (application/pgp-signature)
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Alan Gauld
Newsgroups: comp.lang.python
Date: Sun, 19 May 2024 07:32 UTC
References: 1 2 3 4 5 6 7 8 9 10
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: learn2program@gmail.com (Alan Gauld)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sun, 19 May 2024 08:32:46 +0100
Lines: 39
Message-ID: <mailman.25.1716103970.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org> <hl7nhk-165.ln1@lazy.lzy>
<a0b970e1-6c17-444d-a720-756fc9700a81@yahoo.co.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de vG1khjJiPxXW8R2jR5tIvAHVKL4SjQOda0max32UXUiw==
Cancel-Lock: sha1:l2Kp/ZcGaBiBhWGFufpOwJsPLMA= sha256:DQizRE2PFeF/4CtMdpfpQaabpT8Gn/pEccAaK/NgzR4=
Return-Path: <learn2program@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
reason="2048-bit key; unprotected key"
header.d=gmail.com header.i=@gmail.com header.b=LL+TOHwe;
dkim-adsp=pass; dkim-atps=neutral
X-Spam-Status: OK 0.002
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'pfxlen:0': 0.03; 'pip':
0.04; 'linux,': 0.07; '*not*': 0.09; '1998': 0.09; ':-)': 0.09;
'macos': 0.09; 'resolved': 0.09; 'subject:Python': 0.12; 'flickr':
0.16; 'from:name:alan gauld': 0.16; 'message-id:@yahoo.co.uk':
0.16; 'photo-blog': 0.16; 'properly.': 0.16; 'received:mail-
wm1-x32b.google.com': 0.16; 'sole': 0.16; 'url-
ip:79.170.44.132/32': 0.16; 'url-ip:79.170.44/24': 0.16; 'url-
ip:79.170/16': 0.16; 'url-ip:79/8': 0.16; 'url:alan-g': 0.16;
'url:alan_gauld': 0.16; 'url:alangauldphotos': 0.16; 'wrote:':
0.16; 'python': 0.16; 'url:amazon': 0.19; 'to:addr:python-list':
0.20; "i've": 0.22; 'install': 0.23; 'to:name:python-
list@python.org': 0.24; 'python,': 0.25; 'stuff': 0.25; 'cannot':
0.25; 'mostly': 0.28; 'header:User-Agent:1': 0.30; 'program':
0.31; 'python-list': 0.32; 'received:192.168.1': 0.32; 'but':
0.32; "i'm": 0.33; 'windows': 0.34; 'header:In-Reply-To:1': 0.34;
'received:google.com': 0.34; 'fine': 0.35; 'from:addr:gmail.com':
0.35; 'people': 0.36; 'using': 0.37; 'author': 0.37;
'received:192.168': 0.37; 'way': 0.38; 'use': 0.39; 'rest': 0.39;
'alan': 0.40; 'learn': 0.40; 'experienced': 0.61; 'follow': 0.62;
'down': 0.64; 'came': 0.65; 'url:author': 0.69; 'site': 0.70;
'them,': 0.70; 'subject:List': 0.71; 'handles': 0.76; 'extra':
0.84; 'honestly': 0.84; 'nightmare': 0.84; 'subject:Posting': 0.84
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1716103968; x=1716708768; darn=python.org;
h=content-transfer-encoding:in-reply-to:references:to
:content-language:subject:user-agent:mime-version:date:message-id
:from:from:to:cc:subject:date:message-id:reply-to;
bh=m4MItkp/kAJDHeVPVoqJmoJXoxju7PUkYXRFd1lADh4=;
b=LL+TOHwe0hditmTea7mbjNyGAWHsytLXK2U/RiKzrKrdl6jJ/Iwh2erTezOHhM/JSe
0GryoKEM2A7WPReLnkax9QrcD6d27VuZ7tTUhXWiXgLMvQAPqod9K9jK194jMJSVHS82
v1jaAsDtfw/1Fd8Qb4FdhT2sNdx8I/AT25OJoKy3nEJBSpCZERvQqipOWwbzkhCYSt2R
yjG4HztzoEyGbSaLDriB5UoC2x8fc1cWdgayCpNdsUfZ4tePry24YwxpkHIVHzYK1ugY
VmfuI+8fp+pcEJTtoo/5MF55TqktcgG6kcwl3m1lmeRvpGA5u3DeeJNuh/D7vYDLHXN2
7W8Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1716103968; x=1716708768;
h=content-transfer-encoding:in-reply-to:references:to
:content-language:subject:user-agent:mime-version:date:message-id
:from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=m4MItkp/kAJDHeVPVoqJmoJXoxju7PUkYXRFd1lADh4=;
b=jTBoYpNF6GUslcyhjS5rQdePHpcUgsphCE+Au04l6AqTv7H0YGOWVhYP2HZ6BcuMbj
RxJn4/v6WxlyoQk4v0C8cahY2VP4qZpL9e8WGmdWewkFBV4K0Tyc49A50c5QBPTA7P77
TjU18ZO4DJC6X1LM3xVoypO8G0CV62kI63CYyS2cZIl/8h1fb4pIMDaJyWgi2A0C0Sl5
MiCzQmRCL/yl9HUv0I2CaPmpnbZe/tVXVFw17q7S9+JqnLlIm9yC1AdZbju1V29BVvdG
MGW5g53dsApxLiFpwUMHbvlHm+AvdXTl1Fahu/OVy3fLGxm+eScq6ebb7CXtvI3VSB+M
nGZg==
X-Forwarded-Encrypted: i=1;
AJvYcCXCpdRiGK+glW+OOgGp4J3NY2Jemf7Mif6qiQW8sopvzLiK3aXG+UxlYZML462PBbuZUkHJCCVuhvIU9pL1MbEEx2rNgnpc
X-Gm-Message-State: AOJu0YwqR15iTHW7ZFuCcKKNUOgsAtYBD39FzaO56/qxpj/eBnOuSvjf
asbmY/+Mc/Kd7xc2fhsBRArOikVDCBYjDoXUQ5S0/jFOvt1eharV
X-Google-Smtp-Source: AGHT+IF0riY1vu+fs2+KJw8YIy7zmCdnVbKPARVXxqGgliduHIX2KdYVJTA8oyXB7jUfOifjF0HjAQ==
X-Received: by 2002:a05:600c:1d21:b0:41a:c592:64ff with SMTP id
5b1f17b1804b1-41fead61bfbmr204438065e9.35.1716103968136;
Sun, 19 May 2024 00:32:48 -0700 (PDT)
X-Google-Original-From: Alan Gauld <alan.gauld@yahoo.co.uk>
User-Agent: Mozilla Thunderbird
Content-Language: en-GB
In-Reply-To: <hl7nhk-165.ln1@lazy.lzy>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <a0b970e1-6c17-444d-a720-756fc9700a81@yahoo.co.uk>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org> <hl7nhk-165.ln1@lazy.lzy>
View all headers

On 18/05/2024 19:12, Piergiorgio Sartor via Python-list wrote:

>> So venvs make managing all that pretty convenient. Dunno why everybody's
>> so down on venvs...

Not so much down on them, they are just one extra step that's
mostly not needed(in my use case)

> Only people which are *not* using python... :-)
>
> In my experience, venvs is the only possible
> way to use python properly.

Well, I've been using Python since 1998 on Linux, Windows
and MacOS and have yet to find a use for a venv. I've
played with them when they first came out but haven't
actually found a scenario where I've thought "I need
a venv for that!"

But then I'm a sole user, I have 3 or 4 projects going
but only me working on them. I only have 2 Python versions
at any time and the OS handles that just fine without
any venvs.

> The dependency nightmare created by python, pip
> and all the rest cannot be resolved otherwise.

I've honestly never experienced this "nightmare".
I install stuff and it just works.

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos

Subject: Re: venvs vs. package management
From: Piergiorgio Sartor
Newsgroups: comp.lang.python
Organization: A noiseless patient Spider
Date: Sun, 19 May 2024 13:44 UTC
References: 1 2 3 4 5 6 7 8 9 10 11
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: piergiorgio.sartor.this.should.not.be.used@nexgo.REMOVETHIS.de (Piergiorgio Sartor)
<piergiorgio.sartor.this.should.not.be.used@nexgo.REMOVETHIS.de>
Newsgroups: comp.lang.python
Subject: Re: venvs vs. package management
Date: Sun, 19 May 2024 15:44:57 +0200
Organization: A noiseless patient Spider
Lines: 45
Message-ID: <pbcphk-ib6.ln1@lazy.lzy>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org> <hl7nhk-165.ln1@lazy.lzy>
<20240519064906.iiwcjlvdt4ripfpy@hjp.at>
<mailman.24.1716101350.2909.python-list@python.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 19 May 2024 15:49:10 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="9d26e3116e59fafd49a8dbb9b4672ff4";
logging-data="3587998"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+m64/FyVoILJB7n3efTujp"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:WzHgsKS1ZdoOQW5DWkntIqZlPb8=
Content-Language: it, en-GB
In-Reply-To: <mailman.24.1716101350.2909.python-list@python.org>
View all headers

On 19/05/2024 08.49, Peter J. Holzer wrote:
[...]
> That's what package management on Linux is for. Sure, it means that you
> won't have the newest version of anything and some packages not at all,
> but you don't have to care about dependencies. Or updates.

Well, that doesn't work as well.
Distributions do not pack everything, this
also depending on licenses.

Sometimes, or often, you need to use the
*latest* version of something, due to some
bugfix or similar.

The distribution does not always keep up
to date everything, so you're stuck.

The only solution is a venv, with all
needed packages for the given task.

Typical problem with PyTorch / TensorFlow.

In case of trouble, the first answer is:
"Check with the latest (nightly) release".

Which means installing something *outside*
the Linux distribution support.
And this impossible, because this will pull
in dependencies like crazy, which are not
(yet) in the Linux distribution path.

Saying it differently, the latest greatest
update is not a wish, it's a must...

So, long story short, the only solution I
know are venvs...

Of course, other solutions are welcome!

bye,

--

piergiorgio

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Grant Edwards
Newsgroups: comp.lang.python
Date: Sun, 19 May 2024 14:09 UTC
References: 1 2 3 4 5 6 7 8 9 10 11
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: grant.b.edwards@gmail.com (Grant Edwards)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sun, 19 May 2024 10:09:07 -0400 (EDT)
Lines: 18
Message-ID: <mailman.26.1716127749.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org>
<hl7nhk-165.ln1@lazy.lzy>
<a0b970e1-6c17-444d-a720-756fc9700a81@yahoo.co.uk>
<4Vj2cg5KqnznVFv@mail.python.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de QRqj3mnY/yoCM13coNGpTgPeHkDdG3QOUqi9Pw2hIw3g==
Cancel-Lock: sha1:3wOClDVdMDZ7DeHfFMuND19Dojo= sha256:AARjJ0tYnHHF0lqxE5JvwrFVg6b+IibQHtSyzAbyG4U=
Return-Path: <grant.b.edwards@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.025
X-Spam-Evidence: '*H*': 0.95; '*S*': 0.00; 'pip': 0.04; 'myself.':
0.09; 'occasionally': 0.09; 'resolved': 0.09; 'subject:Python':
0.12; 'from:addr:grant.b.edwards': 0.16; 'from:name:grant
edwards': 0.16; 'gauld': 0.16; 'wrote:': 0.16; 'grant': 0.17;
'to:addr:python-list': 0.20; "i've": 0.22; '\xe2\x80\x94': 0.22;
'install': 0.23; 'python,': 0.25; 'stuff': 0.25; 'cannot': 0.25;
"isn't": 0.27; 'header:User-Agent:1': 0.30; 'seem': 0.31;
"doesn't": 0.32; 'python-list': 0.32; 'but': 0.32; 'same': 0.34;
'package': 0.34; 'from:addr:gmail.com': 0.35; 'use': 0.39; 'rest':
0.39; 'alan': 0.40; 'something': 0.40; 'experienced': 0.61;
'here.': 0.61; 'let': 0.66; 'message-id:invalid': 0.68;
'subject:List': 0.71; 'honestly': 0.84; 'nightmare': 0.84;
'subject:Posting': 0.84
User-Agent: slrn/1.0.3 (Linux)
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <4Vj2cg5KqnznVFv@mail.python.org>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org>
<hl7nhk-165.ln1@lazy.lzy>
<a0b970e1-6c17-444d-a720-756fc9700a81@yahoo.co.uk>
View all headers

On 2024-05-19, Alan Gauld via Python-list <python-list@python.org> wrote:

>> The dependency nightmare created by python, pip
>> and all the rest cannot be resolved otherwise.
>
> I've honestly never experienced this "nightmare".
> I install stuff and it just works.

Same here. I occasonlly use pip to install something that isn't
packaged for Gentoo, but it doesn't seem to cause problems — let alone
nightmares. I also occasionally package something myself.

--
Grant

Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
From: Thomas Passin
Newsgroups: comp.lang.python
Date: Sun, 19 May 2024 11:51 UTC
References: 1 2 3 4 5 6 7 8 9 10 11
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!not-for-mail
From: list1@tompassin.net (Thomas Passin)
Newsgroups: comp.lang.python
Subject: Re: Terminal Emulator (Posting On Python-List Prohibited)
Date: Sun, 19 May 2024 07:51:46 -0400
Lines: 27
Message-ID: <mailman.27.1716127991.2909.python-list@python.org>
References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org> <hl7nhk-165.ln1@lazy.lzy>
<a0b970e1-6c17-444d-a720-756fc9700a81@yahoo.co.uk>
<42fbdfc4-a023-4f28-8d1e-43458c6fad0b@tompassin.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de g+fK1txkvwpSLME/ywfnowij8ZOQQ+XygsQYokaydsaw==
Cancel-Lock: sha1:1xbYKJo8YQzdAErSmPNE7Ox7YNQ= sha256:+t9LAzg6Cey4sOa9fOguDNxzUWjY+vWHrmHBv0ZZ1t4=
Return-Path: <list1@tompassin.net>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
reason="2048-bit key; unprotected key"
header.d=tompassin.net header.i=@tompassin.net header.b=BSUi6h3W;
dkim-adsp=pass; dkim-atps=neutral
X-Spam-Status: OK 0.026
X-Spam-Evidence: '*H*': 0.95; '*S*': 0.00; 'pip': 0.04;
'environments': 0.09; 'resolved': 0.09; 'subject:Python': 0.12;
'bite': 0.16; 'gauld': 0.16; 'received:10.0.0': 0.16;
'received:64.90': 0.16; 'received:64.90.62': 0.16;
'received:64.90.62.162': 0.16; 'received:dreamhost.com': 0.16;
'wrote:': 0.16; 'to:addr:python-list': 0.20; "i've": 0.22;
'version': 0.23; 'install': 0.23; 'installed': 0.23; 'python,':
0.25; 'stuff': 0.25; 'cannot': 0.25; 'library': 0.26; 'header
:User-Agent:1': 0.30; 'packages': 0.31; 'am,': 0.31; 'program':
0.31; "doesn't": 0.32; 'python-list': 0.32; 'realize': 0.32;
'received:10.0': 0.32; 'received:mailchannels.net': 0.32;
'received:relay.mailchannels.net': 0.32; 'but': 0.32; 'same':
0.34; "didn't": 0.34; 'requires': 0.34; 'header:In-Reply-To:1':
0.34; 'fine': 0.35; 'way': 0.38; 'rest': 0.39; 'alan': 0.40;
'both': 0.40; 'should': 0.40; 'higher': 0.60; 'experienced': 0.61;
'your': 0.64; 'header:Received:6': 0.67; 'received:64': 0.67;
'claim': 0.71; 'subject:List': 0.71; 'honestly': 0.84;
'nightmare': 0.84; 'subject:Posting': 0.84
X-Sender-Id: dreamhost|x-authsender|tpassin@tompassin.net
ARC-Seal: i=1; s=arc-2022; d=mailchannels.net; t=1716119507; a=rsa-sha256;
cv=none;
b=lu06ZwypbzQywpZVPndjFaUFN9UwobYd7nrFRRgTF3x6N4/nOHTDGY+d2xyCARyeTo2QEG
dfZyTHz08dyU6r00sCnFCiH5gJ2Gs3SnFr9PV0DObx0qiX5RJ32mC4uiWzbpFjlJqdvSvg
Ht893Bmit7ogf/1X4EoUOw3lqvxehR+O2AsjwWqp71/mOnn6IhySsjgU2t26NHEHXer2U1
cmBPsB6LJJDha4S1pItiKItWIyJTPzr+bt44eLvB9PU+R438lZKp9YXFt+ZTHBP6wJUo6A
dFrtWOBpd+tywLmjOy266gLFvHU2D/0qw2AbU4VAWoR4R50MP9bNX/bpR+X6UQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed;
d=mailchannels.net; s=arc-2022; t=1716119507;
h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
to:to:cc:mime-version:mime-version:content-type:content-type:
content-transfer-encoding:content-transfer-encoding:
in-reply-to:in-reply-to:references:references:dkim-signature;
bh=B7gcHvybGWyjIeGa+I0AZm9h4a0WQu7GrvqkYS2ZUrc=;
b=lCcM1TqYqr7fhVgn2a/cljjE3Ciq2MOJh/iWIb+fCS2sq3LdBY3Gk46cEUqggKPnF+F7bC
78N5WGiYi4OEQHtmZ38kSQsSUAwFHmQMmXWeYEjgJbhxy9l0lOz3WPE5BvcsHg1xNEcTFA
QVVC5vDT48lD5vEi/4BO7VUruPodZft/oDpUJf9rp0mIhHLdDZtoWiVEv0q53BaIQBycyq
NPdnnU0RhuQIdWK4QJeF9sKDVd9seUtTV846oKFxQZg9qyKhX0ByyhuSqGjrHcslUmdOMQ
c5u0Nldaal0mz07Q8xuBdguQ9qIbopgLdZQkWFoyxzUExeMq0NvQ6QXcB4Vd4Q==
ARC-Authentication-Results: i=1; rspamd-68bbddc7f5-2sxfq;
auth=pass smtp.auth=dreamhost smtp.mailfrom=list1@tompassin.net
X-Sender-Id: dreamhost|x-authsender|tpassin@tompassin.net
X-MC-Relay: Neutral
X-MailChannels-SenderId: dreamhost|x-authsender|tpassin@tompassin.net
X-MailChannels-Auth-Id: dreamhost
X-Harmony-Reaction: 68a9a5b04ecdbfb5_1716119507525_4000640974
X-MC-Loop-Signature: 1716119507525:1888096497
X-MC-Ingress-Time: 1716119507525
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tompassin.net;
s=dreamhost; t=1716119507;
bh=B7gcHvybGWyjIeGa+I0AZm9h4a0WQu7GrvqkYS2ZUrc=;
h=Date:Subject:To:From:Content-Type:Content-Transfer-Encoding;
b=BSUi6h3WNhjOnQ4lwlrh42Znb/9IfW3tS5oe4YSMnVWaHa3kylNTOMFaXrEQJOUd3
LmUyIQGzBIkjGjlOTCXVlmrDAtFizQe3KdXmweIDAdLiO4iWtX1okiTQBGzoPaojuQ
akYDs3pKH61jnWeKb4YMTn3mr3rsggR1HXr9rqY1FQQtYN0nIDCOiZKn5VAwXZ7riB
nplMXeo19eCakSkGZP3USdKsrBUwZDt1XYcxEJ3C9wSskpPtdZ8BKainwVoziQcyfh
4tk3+So93bUJNjjcBgj3ChYCtaCsSkOY58xBlj075bpBAuT6wgus7IPi8ebRidRqwt
pKFT3w+qsVqbw==
User-Agent: Mozilla Thunderbird
Content-Language: en-US
In-Reply-To: <a0b970e1-6c17-444d-a720-756fc9700a81@yahoo.co.uk>
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <42fbdfc4-a023-4f28-8d1e-43458c6fad0b@tompassin.net>
X-Mailman-Original-References: <fqN0O.38287$ZZU.19060@fx07.ams4>
<TUI-20240515112645@ram.dialup.fu-berlin.de> <v23j1c$15nao$4@dont-email.me>
<Pvs1O.8533$H1X8.1544@fx05.ams4> <20240518151913.w5qqsw67gndy57ry@hjp.at>
<4VhVBk0sy7znVGB@mail.python.org>
<dc837fb2-fee3-4d7c-81b1-fa70cacdc3bf@wichmann.us>
<mailman.19.1716055464.2909.python-list@python.org> <hl7nhk-165.ln1@lazy.lzy>
<a0b970e1-6c17-444d-a720-756fc9700a81@yahoo.co.uk>
View all headers

On 5/19/2024 3:32 AM, Alan Gauld via Python-list wrote:
> On 18/05/2024 19:12, Piergiorgio Sartor via Python-list wrote:

>>[snip]

>> The dependency nightmare created by python, pip
>> and all the rest cannot be resolved otherwise.
>
> I've honestly never experienced this "nightmare".
> I install stuff and it just works.

One way it can bite even you is if you have a program installed whose
requirements claim it needs a certain library of version no higher than
X, and you already already have a later version of that library
installed since one of your other programs requires it. Pip won't
install the new program because of this conflict.

In reality, you may know the the new program would work fine with the
version of the library you installed, but the packagers of the new
program didn't realize they should have updated their requirements.

With venvs, you can have separate environments for each. Of course this
doesn't help if you need both packages in the same environment...

Pages:12

rocksolid light 0.9.8
clearnet tor