Я запускаю emacs (24.5.1) на Mac OSx і використовую соляризовану тему. Для версії gui тема добре працює. Якщо я запускаю програму із прапором -nw:
/Applications/Emacs.app/Contents/MacOS/Emacs -nw
кольори для теми отримують все виграшно. Я припускаю, що це тому, що:
TERM=xterm-256color
Що мені потрібно вкласти у своїх .emacs, щоб дати таку умовну поведінку:
if (gui)
theme=solarized
if (-nw)
theme=wheatgrass
??
Мені спокусилося сказати вам написати щось на кшталт: (if (window-system) ...) Тоді я прочитав документацію:> window-system - це змінна, визначена у "C вихідному коді". > Його значення дорівнює нулю. Це термінально-локальна змінна; глобальне значення - те саме. >> Документація: Назва віконної системи, через яку відображається обраний кадр>. Значення є символом:> - нуль для кадру termcap (a> термінал, що містить лише символи),> - 'x' для кадру Emacs, який насправді є X> вікном,> - 'w32' для кадру Emacs, який є вікно в MS-Windows> дисплей,> - 'ns' для кадру Emacs на GNUstep або Macintosh
—
Nsukami _
Якщо вам потрібно лише знати, як перевірити, чи працює emacs у gui або терміналі, я вважаю, що це дублікат або це: emacs.stackexchange.com/questions/7151/… Якщо вам також потрібно знати, як увімкнути теми з elisp, тоді я думаю, що це стоїть, як це власне питання. Якщо вам потрібно знати, як програмно включити теми з elisp, я б додав це конкретно до основи вашого питання.
—
Джордон Біондо
Існують теми, які добре виглядають як у графічному, так і не графічному середовищі. Альтернативним рішенням було б використання однієї такої теми.
—
Джордон Біондо