Fehlerhafte Darstellung von mc
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Fehlerhafte Darstellung von mc
Der mc wird bei mir im Terminal falsch dargestellt.
in der rcS wird als std Terminal "linux" gesetz. mit "xterm" würde es aber passen.
Spricht was dagegen es global auf xterm umzustellen in den Buildsystemen ?
Martin
in der rcS wird als std Terminal "linux" gesetz. mit "xterm" würde es aber passen.
Spricht was dagegen es global auf xterm umzustellen in den Buildsystemen ?
Martin
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Fehlerhafte Darstellung von mc
Ja. Weil nicht jeder ein xterm benutzt. Logge dich doch mal von der textconsole aus auf die box ein, dann passt es nämlich
Alternativ logge dich über SSH ein, dann wird die TERM-Variable automatisch richtig gesetzt.
Alternativ logge dich über SSH ein, dann wird die TERM-Variable automatisch richtig gesetzt.
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Fehlerhafte Darstellung von mc
Das habe ich doch gemacht .
Ich habe unter Linux in meiner bash mich mit telnet ip auf der box eingelogt und dann kommt halt nur gaga raus.
der TERM auf dem PC steht auch auf linux . das TERM auf der box steht auch auf linux . Anzeig sieht dann bescheiden aus. Wenn ich das TERM auf der Box in xterm ändere dann sieht es vernüftig aus.
linux ist halt nich gleich linux da es ja bei Dir zu funktionieren scheint
Martin
Ich habe unter Linux in meiner bash mich mit telnet ip auf der box eingelogt und dann kommt halt nur gaga raus.
der TERM auf dem PC steht auch auf linux . das TERM auf der box steht auch auf linux . Anzeig sieht dann bescheiden aus. Wenn ich das TERM auf der Box in xterm ändere dann sieht es vernüftig aus.
linux ist halt nich gleich linux da es ja bei Dir zu funktionieren scheint
Martin
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Fehlerhafte Darstellung von mc
Auf der Textkonsole? Kein X?
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Fehlerhafte Darstellung von mc
Nun warum das in der Textkonsole geht und in einem Konsole unter X nicht verwundert etwas
Anscheinend ist $TERM in der Textkonsole anderst als unter X
Martin
Anscheinend ist $TERM in der Textkonsole anderst als unter X
Martin
-
- Contributor
- Beiträge: 1623
- Registriert: Donnerstag 10. Januar 2002, 20:03
Re: Fehlerhafte Darstellung von mc
Teste es doch einfach.
Bei mir ist es logischer Weise so.
Ich habe aber auch keine Probleme mit dem mc.
Bei mir ist es logischer Weise so.
Code: Alles auswählen
$ echo $TERM
xterm # unter Gnome/KDE
Code: Alles auswählen
$ echo $TERM
linux # unter tty2
Na schönen Dank Herr Schwanke!
Ein toller Sommer!
Ein toller Sommer!
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Fehlerhafte Darstellung von mc
Dann vielleicht nochmal anderst
egal was ich bisher in der X-Konsole einegstellt habe mit "export TERM=blabla" es geht nicht so das etwas korekt dargestellt wird nur wenn ich auf der TD in der Konssole der TD dort das Terminal auf xterm stelle
Martin
egal was ich bisher in der X-Konsole einegstellt habe mit "export TERM=blabla" es geht nicht so das etwas korekt dargestellt wird nur wenn ich auf der TD in der Konssole der TD dort das Terminal auf xterm stelle
Martin
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Fehlerhafte Darstellung von mc
Natürlich. Die TERM variable auf der Tripledragon muss mit dem Terminal das du zum anzeigen benutzt übereinstimmen. Was du da lokal einstellt interessiert niemanden.
Wenn du lokal eine Linux-Konsole einsetzt, dann ist TERM=linux richtig. Wenn du ein xterm (oder gnome-terminal oder was "kompatibles") benutzt, dann ist TERM=xterm richtig. Das kann aber keiner wissen und schon gar nicht für alle Fälle richtig vorhersehen.
Darum der Vorschlag, dich per ssh einzuloggen, weil da deine Lokale TERM variable an die remote-Shell übertragen wird.
Wenn du lokal eine Linux-Konsole einsetzt, dann ist TERM=linux richtig. Wenn du ein xterm (oder gnome-terminal oder was "kompatibles") benutzt, dann ist TERM=xterm richtig. Das kann aber keiner wissen und schon gar nicht für alle Fälle richtig vorhersehen.
Darum der Vorschlag, dich per ssh einzuloggen, weil da deine Lokale TERM variable an die remote-Shell übertragen wird.
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Fehlerhafte Darstellung von mc
Das hört sich irgendwie wiedersprüchlich an für mich. Auf der einen Seite sagst Du :Seife hat geschrieben:Die TERM variable auf der Tripledragon muss mit dem Terminal das du zum anzeigen benutzt übereinstimmen. Was du da lokal einstellt interessiert niemanden
Die TERM variable auf der Tripledragon muss mit dem Terminal das du zum anzeigen benutzt übereinstimmen.
auf der anderen Seite
Was du da lokal einstellt interessiert niemanden
Wenn ich also auf der TD TERM=linux ist und ich lokal hier auch TERM=linux ist sollte die Anzeige Okay sein. Und das ist es nicht.
In der Textkonsole ist standardmässig TERM=linux in unter X ist es standardmässig xterm. Wenn ich dann in der session das von xterm auf linux änder geht es auch nicht. Wenn ich in meiner in meiner .bashrc das ändere das die std mässig in der Konsole TERM=linux ist klappt es auch nicht.
Das ist der Grund warum manche bei Linux irgendwann mal den Löffel wegwerfen weil es ohne tieferes wissen unlogisch scheint. Ich habe ja nun zwei Möglichkeiten wie es sauber geht .
Martin
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Fehlerhafte Darstellung von mc
wenn du lokal "TERM=linux" *in deinem XTerm* machst, dann ist das so, als ob du auf deinen Passat einen Stern schraubst. Es wird kein Mercedes draus.
Oder anders: wenn du die *Anleitung* eines Mercedes in den Passat legst, dann passt die nicht zum Auto und du wirst in der vermutlich nicht rausfinden, wie du die Motorhaube öffnest.
Oder anders: wenn du die *Anleitung* eines Mercedes in den Passat legst, dann passt die nicht zum Auto und du wirst in der vermutlich nicht rausfinden, wie du die Motorhaube öffnest.
-
- Erleuchteter
- Beiträge: 450
- Registriert: Sonntag 28. Juli 2002, 01:18
Re: Fehlerhafte Darstellung von mc
@MPC823: Wie sieht denn die falsche Darstellung aus?
Vielleicht hast du ja auch dieses "Problem" http://www.andremiller.net/content/gett ... work-putty
Ich hatte da mal Probleme mit den kleinen Seagate-Boxen, lag auch am Code.
Vielleicht hast du ja auch dieses "Problem" http://www.andremiller.net/content/gett ... work-putty
Ich hatte da mal Probleme mit den kleinen Seagate-Boxen, lag auch am Code.
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Fehlerhafte Darstellung von mc
Wie im Bild anbei also total unbrauchbar.
Martin
Martin
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Fehlerhafte Darstellung von mc
Ja, du benutzt ein XTerm(-kompatibles) Terminal, also musst du auf der TD TERM=xterm setzen, sonst sieht das so aus.
-
- Erleuchteter
- Beiträge: 450
- Registriert: Sonntag 28. Juli 2002, 01:18
Re: Fehlerhafte Darstellung von mc
wie sieht denn mc -a aus?
UTF-8 Umstellung
UTF-8 Umstellung
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Fehlerhafte Darstellung von mc
Auch wenn ich das Gnome-Terminal nehme indem std mässig die var TERM=linux gesetzt ist sieht es bescheiden aus.
ja klar mit mc -a geht es auch. Aber das ist ja mittlerweile nicht mehr das ansinnen, sondern warum geht es nicht .
Normal sollte auch xterm Terminal gehn mit richtig gesetzter variable.
Martin
#################ORBIT_SOCKETDIR=/tmp/orbit-martin
SSH_AGENT_PID=2719
MM_CHARSET=ISO-8859-15
TERM=linux
SHELL=/bin/bash
XDG_SESSION_COOKIE=b806b9fd8215d05b7d563dd90000000a-1343713539.753329-791632772
GTK_RC_FILES=/etc/gtk/gtkrc:/home/martin/.gtkrc-1.2-gnome2
WINDOWID=56706389
GNOME_KEYRING_CONTROL=/tmp/keyring-SvmvrS
GTK_MODULES=canberra-gtk-module
USER=martin
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:
SSH_AUTH_SOCK=/tmp/keyring-SvmvrS/ssh
SESSION_MANAGER=local/HP625:@/tmp/.ICE-unix/2670,unix/HP625:/tmp/.ICE-unix/2670
USERNAME=martin
DESKTOP_SESSION=default
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
PWD=/home/martin
GDM_KEYBOARD_LAYOUT=de
LANG=de_DE@euro
GNOME_KEYRING_PID=2651
GDM_LANG=de_DE.utf8
GDMSESSION=default
HOME=/home/martin
SHLVL=1
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
LOGNAME=martin
XDG_DATA_DIRS=/usr/share/gdm/:/usr/local/share/:/usr/share/
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-qieTLWbKuY,guid=a9c8873f2345c8879e10314c0000002c
WINDOWPATH=7
DISPLAY=:0.0
XAUTHORITY=/var/run/gdm3/auth-for-martin-HYB4bB/database
COLORTERM=gnome-terminal
_=/usr/bin/env
ja klar mit mc -a geht es auch. Aber das ist ja mittlerweile nicht mehr das ansinnen, sondern warum geht es nicht .
Normal sollte auch xterm Terminal gehn mit richtig gesetzter variable.
Martin
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Fehlerhafte Darstellung von mc
NEIN! Im gnome-terminal ist eben nicht TERM=linux sondern TERM=xterm, denn fast alle Terminalprogramme für X sind xterm-"kompatibel". Zumindest ist das auf allen mir hier verfügbaren Systemen so und funktioniert auch.
Also musst du auf deiner TD auch TERM=xterm setzen, damit der mc weiss auf welchem Terminal er angezeigt wird.
Nur weil du lokal TERM=linux setzt, wird aus deinem gnome-terminal nicht magischerweise eine Linux-Konsole. Das gnome-terminal bekommt das gar nicht mit, was du da setzt.
Also musst du auf deiner TD auch TERM=xterm setzen, damit der mc weiss auf welchem Terminal er angezeigt wird.
Nur weil du lokal TERM=linux setzt, wird aus deinem gnome-terminal nicht magischerweise eine Linux-Konsole. Das gnome-terminal bekommt das gar nicht mit, was du da setzt.
-
- Einsteiger
- Beiträge: 352
- Registriert: Freitag 20. August 2004, 23:33
Re: Fehlerhafte Darstellung von mc
versuchen wir's mal so:
TERM ist eine Systemvariable. Sie sagt den Ausgaberoutinen in den div. libraries welche Steuercodes sie verwenden sollen um das als Console angehängte Gerät (oder Emulationssoftware == Terminalprogram, früher hing da an der ser. Schnittstelle eben eine "Eigabeeinheit" aka Terminal, Konsole = Bildschirm mit Tastatur) zur richtigen Darstellung zu bewegen. Die verschieden Hersteller (Wyse, DEC, IBM, ...) kochten meist ihr eigenes Süppchen: z.B. VT52, VT100 (VT == VideoTerminal) ggfs. als "erweiterte Funktionalität" zu ANSII Standards. Beim Start von mc wird diese Variable auf der TD ausgewertet. Damit die Ausgabe jetzt "richtig" ist, muß entweder - weil du dich immer mit dem selben Term-Programm verbindest - die Variable in deinem Profil gesetzt sein oder - weil du mal was anderes ausprobieren willst - setzt du sie über das andere Term-Program mittels export TERM="linux" auf der TD.
Natürlich gibt es Term-Programme die zu mehreren Systemen kompatibel sind. Das stellst du aber nicht über die TERM Systemvariable ein (alle Term-Programme unter X verwenden logischerweise X-Steuercodes um ihre Ausgabe auf der lokalen X-Oberfläche korrekt darzustellen) sondern bestenfalls über Konfigurations-Dialog oder -Datei. Im Prinzip könnte das Loginprogram das auch abfragen (^E), machen aber wohl die wenigsten weil da meist nichts sinnvolles zurück kam/kommt.
Also: in dem Moment wo du im Term-Programm soetwas wie TERM=xyz eingibst, gilt das für die Programme auf der Hardware mit der du über das Term-Programm verbunden bist. Und da sollte es tunlichst zum verwendeten Term-Programm passen, damit das auch anzeigt was die SW auf der anderen Seite darstellen will....
TERM ist eine Systemvariable. Sie sagt den Ausgaberoutinen in den div. libraries welche Steuercodes sie verwenden sollen um das als Console angehängte Gerät (oder Emulationssoftware == Terminalprogram, früher hing da an der ser. Schnittstelle eben eine "Eigabeeinheit" aka Terminal, Konsole = Bildschirm mit Tastatur) zur richtigen Darstellung zu bewegen. Die verschieden Hersteller (Wyse, DEC, IBM, ...) kochten meist ihr eigenes Süppchen: z.B. VT52, VT100 (VT == VideoTerminal) ggfs. als "erweiterte Funktionalität" zu ANSII Standards. Beim Start von mc wird diese Variable auf der TD ausgewertet. Damit die Ausgabe jetzt "richtig" ist, muß entweder - weil du dich immer mit dem selben Term-Programm verbindest - die Variable in deinem Profil gesetzt sein oder - weil du mal was anderes ausprobieren willst - setzt du sie über das andere Term-Program mittels export TERM="linux" auf der TD.
Natürlich gibt es Term-Programme die zu mehreren Systemen kompatibel sind. Das stellst du aber nicht über die TERM Systemvariable ein (alle Term-Programme unter X verwenden logischerweise X-Steuercodes um ihre Ausgabe auf der lokalen X-Oberfläche korrekt darzustellen) sondern bestenfalls über Konfigurations-Dialog oder -Datei. Im Prinzip könnte das Loginprogram das auch abfragen (^E), machen aber wohl die wenigsten weil da meist nichts sinnvolles zurück kam/kommt.
Also: in dem Moment wo du im Term-Programm soetwas wie TERM=xyz eingibst, gilt das für die Programme auf der Hardware mit der du über das Term-Programm verbunden bist. Und da sollte es tunlichst zum verwendeten Term-Programm passen, damit das auch anzeigt was die SW auf der anderen Seite darstellen will....
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Fehlerhafte Darstellung von mc
Aha
Dann ist es also so, daß die TERM variable nur lokal auf dem PC ausgewertet wird wenn ich bsp im Terminal lokal ein Programm laufen lasse. Sobald ich in einer Konsole unter X eine Telnetverbindung aufbaue wird die lokal gesetzte Term variable ignoriert und die X-Konsolen-Telnet Verbindung nimmt automatisch die Einstellung der remote Maschine.
Das ist dann auch der Grund das es dann geht wenn auf der Remote Maschine die Variable passend gesetzt ist.
Ich empfand es als merkwürdig das in der Textkonsole es geht und in der X-Konsole nicht obwohl die Variablen gleich war . Das was aber Schufti dann schrieb erklärt das Verhalten . Nur woher soll man das Wissen das die Variable Term in der X-Konsole für den ....... ist.
Nun ist mir das Verhalten klar und ich habe doch einiges dabei gelernt . Ich bedanke mich bei eiuch allen für eure ausdauernden Erklärungen
Gruss Martin
Dann ist es also so, daß die TERM variable nur lokal auf dem PC ausgewertet wird wenn ich bsp im Terminal lokal ein Programm laufen lasse. Sobald ich in einer Konsole unter X eine Telnetverbindung aufbaue wird die lokal gesetzte Term variable ignoriert und die X-Konsolen-Telnet Verbindung nimmt automatisch die Einstellung der remote Maschine.
Das ist dann auch der Grund das es dann geht wenn auf der Remote Maschine die Variable passend gesetzt ist.
Ich empfand es als merkwürdig das in der Textkonsole es geht und in der X-Konsole nicht obwohl die Variablen gleich war . Das was aber Schufti dann schrieb erklärt das Verhalten . Nur woher soll man das Wissen das die Variable Term in der X-Konsole für den ....... ist.
Nun ist mir das Verhalten klar und ich habe doch einiges dabei gelernt . Ich bedanke mich bei eiuch allen für eure ausdauernden Erklärungen
Gruss Martin