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.
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.
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!
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!
true terminal emulator as well, not just a Tk text widget or something like thatIf you want to write a GUI terminal, than that *is* a terminal
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 Ithat.
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
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.
I wish to write a terminal emulator in Python.
We need somethin like a portable curses module (plus colorama)
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.
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?
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.
On 2024-05-14, Alan Gauld via Python-list <[email protected]> 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.=20
If you want to make life easier, make it a superset of a terminal that already exists in the terminfo database.
=20
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=20
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...
Am 14.05.24 um 19:44 schrieb Gordinator via Python-list:nd
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=20
terminal emulator as well, not just a Tk text widget or something like that.
=20
If you have any advice, please do let me know!
=20
Not sure, what you mean with:
=20
true terminal emulator as well, not just a Tk text widget orIf you want to write a GUI terminal, than that *is* a terminal emulator a=
something like that
*has* a text widget as its visible core. If you want to write something l=ike
getty which runs on the virtual terminals (Ctrl+Alt+F*) than that is a terminal (not a terminal emulator).
To be fair, the problem is the fact that they use Windows (but I guess Li=nux
users have to deal with venvs, so we're even.
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!
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.
On 2024-05-18, Peter J. Holzer via Python-list <[email protected]> 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,
yet to use a venv...
So venvs make managing all that pretty convenient. Dunno why everybody's
so down on venvs...
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.
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.
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.
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.
I've honestly never experienced this "nightmare".
I install stuff and it just works.
Was there a reason they chose the name Pip?
On Sun, 19 May 2024 08:32:46 +0100, Alan Gauld wrote:
I've honestly never experienced this "nightmare".
I install stuff and it just works.
Hear! Hear! Me too! And all that.
I'm on Manjaro, which is a tad finicky about other people touching its
Python since it's used for lots of things. I install things for myself
only.
Was there a reason they chose the name Pip?
Was there a reason they chose the name Pip?
On 18 May 2024, at 16:27, Peter J. Holzer via Python-list <[email protected]> wrote:Modern debian (ubuntu) and fedora block users installing using pip.
I don't think Linux users have to deal with venvs
Which makes one wonder how one is supposed to package PythonOn 18 May 2024, at 16:27, Peter J. Holzer via Python-list <[email protected]> wrote:
I don't think Linux users have to deal with venvs
Modern debian (ubuntu) and fedora block users installing using pip.
You must use a venv to pip install packages from pypi now.
Modern debian (ubuntu) and fedora block users installing using pip.
Even if you're telling it to install in ~/.local? I could see not allowing
to run it as root.
$ pip install --user docopt
error: externally-managed-environment
× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.
If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv. Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.
If you wish to install a non-Debian packaged Python application, it may be easiest to use pipx install xyz, which will manage a
virtual environment for you. Make sure you have pipx installed.
See /usr/share/doc/python3.11/README.venv for more information.
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at
the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
On Sun, 19 May 2024 08:32:46 +0100, Alan Gauld wrote:
I've honestly never experienced this "nightmare".
I install stuff and it just works.
Hear! Hear! Me too! And all that.
I'm on Manjaro, which is a tad finicky about other people touching its Python since it's used for lots of things. I install things for myself
only.
Was there a reason they chose the name Pip?
On 18 May 2024, at 16:27, Peter J. Holzer via Python-list <[email protected]> wrote:
I don't think Linux users have to deal with venvs
Modern debian (ubuntu) and fedora block users installing using pip.
Modern debian (ubuntu) and fedora block users installing using pip.
Even if you're telling it to install in ~/.local? I could see not allowing
to run it as root.
I honestly haven't tried. Maybe I should... 🤔 I have an old laptop running XUbuntu 22.04 which I generally only use to compile the most recent
branches on GitHub (main, 3.12, & 3.13 at the moment).
On 2024-05-19, Barry via Python-list <[email protected]> wrote:
On 18 May 2024, at 16:27, Peter J. Holzer via Python-list <[email protected]> wrote:
I don't think Linux users have to deal with venvs
Modern debian (ubuntu) and fedora block users installing using pip.
You can't even use pip to do "user" installs?
Grant
Am Sun, May 19, 2024 at 10:45:09PM +0100 schrieb Barry via Python-list:
On 18 May 2024, at 16:27, Peter J. Holzer via Python-list <[email protected]> wrote:
I don't think Linux users have to deal with venvs
Modern debian (ubuntu) and fedora block users installing using pip.
You must use a venv to pip install packages from pypi now.
Which makes one wonder how one is supposed to package Python
applications requiring modules not yet packaged by Debian.
Skip Montanaro via Python-list schreef op 20/05/2024 om 0:08:ing
Modern debian (ubuntu) and fedora block users installing using pip.=20
Even if you're telling it to install in ~/.local? I could see not allow=
tallto run it as root.=20
I assumed pip install --user would work, but no. I tried it (on Debian 12 (bookworm)):
=20
$ pip install --user docopt
error: externally-managed-environment
=20
=C3=97 This environment is externally managed
=E2=95=B0=E2=94=80> To install Python packages system-wide, try apt ins=
to=C2=A0=C2=A0=C2=A0 python3-xyz, where xyz is the package you are trying=
package,=C2=A0=C2=A0=C2=A0 install.
=20
=C2=A0=C2=A0=C2=A0 If you wish to install a non-Debian-packaged Python =
ath/to/venv.=C2=A0=C2=A0=C2=A0 create a virtual environment using python3 -m venv p=
n/pip. Make=C2=A0=C2=A0=C2=A0 Then use path/to/venv/bin/python and path/to/venv/bi=
application,=C2=A0=C2=A0=C2=A0 sure you have python3-full installed.
=20
=C2=A0=C2=A0=C2=A0 If you wish to install a non-Debian packaged Python =
l manage a=C2=A0=C2=A0=C2=A0 it may be easiest to use pipx install xyz, which wil=
installed.=C2=A0=C2=A0=C2=A0 virtual environment for you. Make sure you have pipx=
nformation.=20
=C2=A0=C2=A0=C2=A0 See /usr/share/doc/python3.11/README.venv for more i=
=20=20
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
Exactly the same output for sudo pip install.
You can override this, at the risk of breaking your Python
installation or OS, by passing --break-system-packages.
On 2024-05-20 00:26:03 +0200, Roel Schroeven via Python-list wrote:
Skip Montanaro via Python-list schreef op 20/05/2024 om 0:08:
Modern debian (ubuntu) and fedora block users installing using pip.
Even if you're telling it to install in ~/.local? I could see not allowing >>> to run it as root.
I assumed pip install --user would work, but no. I tried it (on Debian 12
(bookworm)):
$ pip install --user docopt
error: externally-managed-environment
× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.
If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv. >>> Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.
If you wish to install a non-Debian packaged Python application, >>> it may be easiest to use pipx install xyz, which will manage a
virtual environment for you. Make sure you have pipx installed.
See /usr/share/doc/python3.11/README.venv for more information.
note: If you believe this is a mistake, please contact your Python
installation or OS distribution provider. You can override this, at the
risk of breaking your Python installation or OS, by passing
--break-system-packages.
hint: See PEP 668 for the detailed specification.
Exactly the same output for sudo pip install.
This message (quoted in all its glory) is too long to be useful. The important bit is at the end:
You can override this, at the risk of breaking your Python
installation or OS, by passing --break-system-packages.
(I admit I didn't see this the first time I got this message)
python3 -m pip install --user --break-system-packages <packagename>
does indeed install into ~/.local/lib/python3.XX/site-packages.
This inconvenient, but otoh I have accidentally installed packages into ~/.local in the past, so maybe it's good to make that more explicit.
hp
I'm on Manjaro
Sysop: | DaiTengu |
---|---|
Location: | Appleton, WI |
Users: | 934 |
Nodes: | 10 (0 / 10) |
Uptime: | 32:23:39 |
Calls: | 12,325 |
Calls today: | 2 |
Files: | 186,571 |
Messages: | 2,264,919 |