Vraag Hoe kan ik kleuren krijgen als TTY correct werkt?


Ik gebruik vaak vim en het komt mij voor dat ik meestal niet eens een GUI nodig heb, omdat ik mijn computer alleen zal gebruiken om aantekeningen te maken in VIM. Het probleem is echter dat de kleuren niet correct verschijnen op tty (dus wanneer ik druk Ctrl+alt+F1, F2, enz). Ik vond een plugin voor VIM die ervoor zorgt dat kleuren beter werken met terminals die meestal met GVIM werken, en dat heeft ervoor gezorgd dat ze werken in bijvoorbeeld gnome-terminal, maar niet in TTY.

Deze post lijkt te suggereren dat ik de hele kernel opnieuw moet compileren om dit te laten werken. Is er een gemakkelijkere manier? Kan het worden gedaan?


6
2017-08-14 19:33


oorsprong




antwoorden:


Vraag je je af hoe je 256 kleurenondersteuning kunt krijgen in Linux-console-tty's? Zoals het bericht dat je hebt gekoppeld, zegt, zou je je kernel moeten aanpassen om dat te doen (en de modificaties die je nodig hebt zijn niet geschreven: het is niet alleen een kwestie van het veranderen van de config). Zonder aanpassingen moet je het doen met de standaard 16 kleuren op de console.

Een alternatief zou zijn om over te schakelen naar een andere terminal-emulator. Een optie is fbterm, die onder dezelfde naam op Ubuntu is verpakt. Het is een terminalemulator die direct tegen het Linux-framebufferapparaat kan lopen.

Als u net achter een terminalemulator op het volledige scherm staat, kunt u ook gewoon de standaard GNOME-terminalemulator gebruiken en op de knop drukken F11.


2
2017-08-15 01:59



Ja, eigenlijk zou ik graag een manier vinden om 256 kleuren ondersteuning te krijgen zonder X te laden. Gewoon om te zien of ik het kan. Vergeef de beginnende vragen, maar wat is precies een framebuffer (wikipedia is deze keer weinig hulp)? Wanneer ik fbterm in gnome-terminal probeer uit te voeren, vertelt het me "stdin is geen interactieve tty!" en wanneer ik het in tty1 probeer, vertelt het me "kan framebufferapparaat niet openen!" Het is blijkbaar een heel uitroepteken. - Jon
Een framebuffer verwijst alleen naar een stukje geheugen dat aangeeft wat op het scherm wordt weergegeven. Linux biedt een "framebuffer-apparaat" -interface die kan worden gebruikt om de framebuffer te manipuleren. U kunt alleen programma's uitvoeren die de fbdev interface van de console (in tegenstelling tot X), en je moet jezelf ook toevoegen aan de video groep om toegang te krijgen. Zodra dat is gebeurd, zou fbterm goed moeten werken. Mogelijk moet u ook instellen TERM=fbterm zodat programma's die u uitvoert de mogelijkheden ervan herkennen. - James Henstridge