Запуск екрана GNU з 256 кольорами на OS X Lion


8

Terminal.app в Mac OS X Lion має функцію, яка потребувала тривалого часу, щоб реалізувати: 256 кольорову підтримку. Кольори добре працюють. Проблема у мене полягає в тому, що коли я запускаю екран GNU, я не маю доступу до 256 кольорів. На екрані $ TERM встановлено "екран".

Я читав різні речі в різних місцях і дуже розгублений. Деякі з них включають:

  • Екран GNU повинен бути складений з кольоровою підтримкою (Як я можу сказати, чи був створений екран OS X таким чином?)
  • Необхідно встановити спеціальний файл terminfo для екрану-256color. Чи має OS X це?
  • У .screenrc термін повинен бути встановлений як "screen-256color".
  • Для того, щоб Emacs був кольоровим, потрібно викликати певні функції в Emacs ( http://www.emacswiki.org/emacs/GnuScreen#toc6 )

Я спробував варіанти цих процедур і був невдалий і невідомий, чому я не вдався. Що для мене найбільш прямий спосіб включити 256 кольорів на екрані GNU?


1
@PaulR Ви маєте рацію, але все-таки це гарне питання.

Відповіді:


6

За замовчуванням screenне знає, що працює на 256 кольорах xterm. Щоб програми screenвизнали цю функцію, вам потрібно встановити пару речей у вашому ~/.screenrc:

term "screen-256color"
# terminfo and termcap for nice 256 color terminal
# allow bold colors - necessary for some reason
attrcolor b ".I" 
# tell screen how to set colors. AB = background, AF=foreground 
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' 
# erase background with current bg color 
defbce "on" 

Якщо це не працює для вас, ваша версія, screenймовірно, не була складена ./configure --enable-colors256. Ви можете перевірити це на екрані привітання під час запуску screen. Версія за замовчуванням, яка постачається з OS X, не підтримує 256 кольорів. Ви можете перевірити джерело і скласти свою власну версію, помістивши отриманий бінарний файл у свій $PATH(я помістив його, в ~/binякому я додав до свого $PATH):

git clone git://git.savannah.gnu.org/screen.git
cd screen/src
./autogen.sh
./configure --enable-colors256
make   # I got a lot of warnings here, but they don't seem to matter
sudo make install
cp screen ~/bin/screen

Джерела: 1 і 2


1
Дуже дякую. Це питання мене так довго дратувало. Хтось із Apple подумав, що було б гарною ідеєю доставити термінальний емулятор з 256 кольорами та термінальний мультиплексор з 8 га!
hekevintran

FWIW, я повідомив про це як помилку на bugreport.apple.com , тому, сподіваємось, це виправить у Mountain Lion.
Mathias Bynens

2
Користувачі доморощених : домашні кабани мають рецепт екрану, в тому числі --enable-colors256. $ brew tap homebrew / dupes # якщо ви ще не зробили $ brew screen install
chrisk

1

Додайте наступне до свого ~/.screenrc

term "screen-256color"

А потім спробуйте, це має спрацювати.


FWIW - це все, що мені було потрібно в 10.7.5 та 10.8.2.
Твон

@tvon Я не можу змусити його працювати на моєму OSX 10.7.5. Будь-яка ідея чому?
Фані
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.