Terminal - vim visar text felaktigt

Trädvy Permalänk
Medlem
Registrerad
Jul 2007

Terminal - vim visar text felaktigt

Jag går in via ssh på en server och editerar en fil med vim. Nu upptäcker jag några olika problem. Ex.vis så verkar inte markören stå där den ser ut att stå. Ex.vis; jag lägger till några tecken någonstans och det ser rätt ut. Om jag sparar och går in i filen igen så har dessa tecken lagts in t.ex. längre bak än vad som visades i terminalen.

Som exempel, jag ändrar texten "Hej jag heterKalle" till "Hej jag heter Kalle". Om jag sparar och öppnar filen på nytt igen så kan det nu stå t.ex.: "Hej jag heteK ralle".

Jag ser också att längst ut mot kanten av terminalfönstret där ett ord bryts och fortsätter på nästa rad, så visas ofta sista bokstaven dubbelt. tex:

"Hej jag heterr
Kalle"

...istället för:

"Hej jag heter
Kalle"

Detta uppkommer inte på min egen burk, endast om jag sshar in på en annan.

Jag googlade fram att man kan prova lägga in "export TERM=xterm-color" i .profile på den burk man sshar in på. Testade detta utan framgång.

Någon idé om hur man löser detta?

ASUS Z170 PRO GAMING | i7 6700K | Samsung 960 PRO 512GB | GTX 1080Ti FTW3 | Corsair 32GB (2x16GB) DDR4 3200MHz | EVGA Supernova G2 750W

Trädvy Permalänk
Medlem
Plats
Umeå
Registrerad
Nov 2004

Jag skulle tro att det handlar om $TERM och terminfo, att din klientdator har en terminal som skickar ecapesignaler o dyl. som servern inte förstår sig på. ...testa att ta bort det där export xterm, och ssh:a in i maskinen och kör `toe | grep -w ^$TERM`. Får du inte upp någonting så saknar servern helt enkelt relevant terminfo-fil (om du får upp nåt resultat så kan servern ha en gammal version som inte överensstämmer med hur terminalemulatorn faktiskt fungerar).
Om det är samma version av samma distribution på datorerna så är det kanske enklast att bara se till att terminalemulatorn är installerad på servern också. Men är du rädd för att t.ex. dra in en massa onödiga beroenden på X.org/Gnome/KDE, så går det bra att bara kopiera över terminfon.
Filen hittar du sannolikt som /usr/share/terminfo/?/$TERM på klientdatorn, kopiera den till ~/.terminfo/<första bokstaven i $TERM>/$TERM på servern, och håll tummarna..