expertenaustausch > alt.* > alt.folklore.computer

Christian Corti (09.01.2019, 15:11)
Kennt sich jemand mit hpterm unter HP-UX aus? Mir will es nicht gelingen
herauszufinden, wie man Dinge wie Insert Line, Delete Line usw. macht.

Christian
Lothar Paltins (10.01.2019, 12:35)
Am 09.01.19 um 14:11 schrieb Christian Corti:
> Kennt sich jemand mit hpterm unter HP-UX aus? Mir will es nicht gelingen
> herauszufinden, wie man Dinge wie Insert Line, Delete Line usw. macht.


Was willst du denn erreichen? Willst du ein hpterm als Ausgabe für ein
Programm benutzen? Dann kannst du einfach die mit tput abrufbaren
Strings an das Terminal senden, siehe tput(1) und terminfo(4). Das
funktioniert sogar unabhängig vom Terminal z.B auch in einem dtterm.

Zum Test kannst du dies in einer Shell ausführen:

tput cup 10 0;tput il1;tput il1

Das setzt den Cursor auf Zeile 10 Spalte 0 und fügt 2 Zeilen ein.

Oder willst du irgendwas anderes machen?

Lothar
Christian Corti (10.01.2019, 17:19)
Lothar Paltins <lpnews10> wrote:
> Was willst du denn erreichen? Willst du ein hpterm als Ausgabe für ein
> Programm benutzen? Dann kannst du einfach die mit tput abrufbaren


Nein, ich will das hpterm als Terminalprogramm/-emulation nutzen, um mit
einem HP-System (im konkreten Fall RTE-6/VM) zu arbeiten. In EDIT z.B.
kann man neue Zeilen nicht durch Return erzeugen, sondern, da es sich um
einen Bildschirmeditor handelt, nur via Steuertasten wie Insert/Delete
Line, Insert/Delete Character usw.

> Oder willst du irgendwas anderes machen?


Ja, ich will eine Tastenkombination, die ein Insert Line ausführt, wie
die entsprechende Taste bei einem echten HP-Terminal oder z.B. Alt-I bei
Reflection oder dem Terminal-Programm von HP (jew. nur DOS-Anwendungen).

Noch ein Problem habe ich mit hpterm: copy/paste via Maus funktioniert
gar nicht, das Terminalfenster piepst nur, wenn ich (irgend-)eine
Maustaste drücke.

Christian
Lothar Paltins (10.01.2019, 23:38)
> Nein, ich will das hpterm als Terminalprogramm/-emulation nutzen, um mit
> einem HP-System (im konkreten Fall RTE-6/VM) zu arbeiten.


Auf welchem System läuft denn das hpterm und was für ein Keyboard ist da
angeschlossen?

> Ja, ich will eine Tastenkombination, die ein Insert Line ausführt, wie
> die entsprechende Taste bei einem echten HP-Terminal oder z.B. Alt-I bei
> Reflection oder dem Terminal-Programm von HP (jew. nur DOS-Anwendungen).


Wenn da ein PC-Keyboard und kein ITF Keyboard dran ist, dann hast du
wohl schlechte Karten. Laut 715er Service Handbook gibt es für Clear
Line, Clear Display, Insert Line, Delete Line, Print / Enter, (, number
pad) und (Tab number pad) "No Equivalent" auf dem PC-Keyboard.

> Noch ein Problem habe ich mit hpterm: copy/paste via Maus funktioniert
> gar nicht, das Terminalfenster piepst nur, wenn ich (irgend-)eine
> Maustaste drücke.


Unter HP-UX 8 bis 11 habe ich es gerade nochmal probiert. Da
funktioniert es eigentlich wie üblich. Mit der linken Maustaste kann man
Text selektieren und mit der mittleren im hpterm einfügen. Wenn ich mich
recht erinnere, war es bei älteren Systemen vor X11R5 anders. Da war
Paste irgendwas mit CTRL-RightKey oder sowas ähnliches. Außerdem benutzt
soviel ich weiß hpterm bei Copy/Paste nicht die Primary Selection,
sondern den X Cut-Buffer.

Aber für ein RTE-System ist ein Terminal Emulator sowieso völlig
stillos. Da gehört ein echtes Glas-Terminal dran, sowas wie ein HP2645! ;-)

Lothar
Christian Corti (11.01.2019, 12:04)
Lothar Paltins <lpnews10> wrote:
> Auf welchem System läuft denn das hpterm und was für ein Keyboard ist da
> angeschlossen?


HP-UX 11.00, remote per SSH von meiner Linux-Kiste.

> Wenn da ein PC-Keyboard und kein ITF Keyboard dran ist, dann hast du
> wohl schlechte Karten. Laut 715er Service Handbook gibt es für Clear
> Line, Clear Display, Insert Line, Delete Line, Print / Enter, (, number
> pad) und (Tab number pad) "No Equivalent" auf dem PC-Keyboard.


Schon klar, daher die Frage nach einer Tastenkombination.
Also dann per xmodmap entsprechende Tasten belegen... was unschön ist,
weil es sich auf den gesamten X-Server auswirkt.

> recht erinnere, war es bei älteren Systemen vor X11R5 anders. Da war
> Paste irgendwas mit CTRL-RightKey oder sowas ähnliches. Außerdem benutzt
> soviel ich weiß hpterm bei Copy/Paste nicht die Primary Selection,
> sondern den X Cut-Buffer.


Zitat aus der man-Page:
Hpterm allows you to cut and paste text within its own or other
windows. All cutting and pasting is done using the PRIMARY selection.

> Aber für ein RTE-System ist ein Terminal Emulator sowieso völlig
> stillos. Da gehört ein echtes Glas-Terminal dran, sowas wie ein HP2645! ;-)


Das ist natürlich da. Aber ich bereite einige Sachen in SIMH vor, und
dazu ist ein hpterm natürlich sehr angenehm, wenn man Text per
Copy&Paste einfügen /könnte/.

Aber das hpterm hier hat noch andere Macken: ich kann keine Zeichen
eingeben, die über AltGr eingegeben werden. Was macht hpterm da bloß mit
der Tastatur??? Mit xterm auf der gleichen HP-UX-Kiste (ebenfalls per
SSH) klappt alles problemlos.

Christian
Lothar Paltins (12.01.2019, 18:21)
> HP-UX 11.00, remote per SSH von meiner Linux-Kiste.

Dann würde ich dir auf jeden Fall empfehlen, auf 11.11 alias 11i
upzudaten. 11.0 hatte eine Menge Bugs. Ich hatte darauf mal eine Disk
mit mediainit initialisiert. Danach meldete sie als Größe 0 Byte und war
zunächst mal nur noch als Briefbeschwerer zu gebrauchen. Erst ein Low
Level Format Disk SCSI Kommando hat sie wieder gerettet.

> Also dann per xmodmap entsprechende Tasten belegen... was unschön ist,
> weil es sich auf den gesamten X-Server auswirkt.


Das hätte ich dir auch vorgeschlagen. Aber ich habe auch mal probiert,
die Tastencodes mit der X-Resource fnString auf die unbenutzten
Funktionstasten zu legen:

hpterm \
-xrm "*softkeyInitializeAll: TRUE" \
-xrm "*f9Attribute: 1" \
-xrm "*f10Attribute: 1" \
-xrm "*f9Label: INSERT LINE" \
-xrm "*f10Label: DELETE LINE" \
-xrm "*f9String: <esc>L" \
-xrm "*f10String: <esc>M"

Statt <esc> muss da natürlich ein Escape-Character (0x1b) stehen. Die
Werte für die Resource fnAttribute ist leider nicht dokumentiert, aber
mit 1 scheint es zu funktionieren. Beim Defaultwert 2 wird CR-LF an den
String angehängt. Damit das tut, musst du im hpterm die User-Keys mit
Shift-NumLock einschalten.

> Zitat aus der man-Page:
> Hpterm allows you to cut and paste text within its own or other
> windows. All cutting and pasting is done using the PRIMARY selection.


Der Text geht noch weiter:
"(To maintain compatability with previous versions of hpterm (and other
applications that use cut buffers), the cutting and pasting is also done
to/from the first global cut buffer...)"

Beim hpterm erinnere ich mich also offensichtlich nur an die uralten
Versionen, die nur den ersten Cut Buffer benutzt haben. Seit CDE habe
ich statt hpterm in der Regel dtterm verwendet.

> Aber das hpterm hier hat noch andere Macken: ich kann keine Zeichen
> eingeben, die über AltGr eingegeben werden. Was macht hpterm da bloß mit
> der Tastatur??? Mit xterm auf der gleichen HP-UX-Kiste (ebenfalls per
> SSH) klappt alles problemlos.


Das Problem sehe ich hier auch. Die Umsetzung des hpterm auf X11R5 und
Motif scheint nicht ganz konsequent erfolgt zu sein.

Viele Grüße
Lothar
Christian Corti (13.01.2019, 15:30)
Lothar Paltins <lpnews10> wrote:
> > HP-UX 11.00, remote per SSH von meiner Linux-Kiste.

> Dann würde ich dir auf jeden Fall empfehlen, auf 11.11 alias 11i


Ich muß mich korrigieren, es ist 11.11 :-)

> Das hätte ich dir auch vorgeschlagen. Aber ich habe auch mal probiert,
> die Tastencodes mit der X-Resource fnString auf die unbenutzten
> Funktionstasten zu legen:


Das ist eine gute Idee, das werde ich mal ausprobieren.

Christian
Lothar Paltins (13.01.2019, 17:02)
> Ich muß mich korrigieren, es ist 11.11 :-)

Dann wundert es mich aber, dass Copy/Paste mit der Maus nicht tut. Bei
mir funktioniert das problemlos.
Lothar Paltins (13.01.2019, 17:11)
Noch eine andere Idee: mit xdotool oder einem kleinen Programm mit
XSendEvent die Keycodes an das hpterm-Window senden. Dieser kleine Test
funktioniert und sendet ein "X" an das hpterm:

Auf der HP Kiste mit DISPLAY auf Linux-Screen:
hpterm -xrm '*allowSendEvents: TRUE'

In einer Shell auf der Linux-Kiste:
xdotool search --classname hpterm key X

Damit sollten sich auch Codes für Insert/Delete Line senden lassen.
Ähnliche Themen