Ludzie czasami publikują zrzuty ekranu z modelinami o jednolitych kolorach i trójkątach:
Jak mogę powtórzyć ten efekt?
Ludzie czasami publikują zrzuty ekranu z modelinami o jednolitych kolorach i trójkątach:
Jak mogę powtórzyć ten efekt?
Odpowiedzi:
Można to osiągnąć za pomocą dwóch pakietów:
Ogólnie rzecz biorąc, linia trybu inteligentnego jest bardziej wydajna niż linia energetyczna (wybacz pun), w tym sensie, że oferuje więcej funkcji kontrolujących zachowanie linii trybu i większą możliwość dostosowania wyglądu. Readme ma świetną listę funkcji , ale w skrócie oferuje kontrolę szerokości, zastępowanie ciągów w ścieżce pliku, ukrywanie między innymi mniejszych trybów.
Ponieważ Powerline został bardzo dobrze wyjaśniony na innej odpowiedzi, skupię się na tym, jak możesz osiągnąć ten wygląd za pomocą linii trybu inteligentnego.
Możesz zainstalować tryb smart-mode-line z Melpy, Melpa-Stable lub pobrać go ręcznie. Zakładając, że zdecydujesz się użyć menedżera pakietów, po prostu zrób
M-x package-install RET smart-mode-line
Gdy go włączysz M-x sml/setup
, linia trybu powinna wyglądać podobnie do jednego z tych dwóch.
smart-mode-line ma kilka wbudowanych motywów, ten, który osiąga pożądany wygląd, jest dostarczany osobno w themes/
katalogu. Pamiętaj, że ten motyw jest wciąż w fazie beta, więc jego dostosowanie może jeszcze nie działać idealnie.
Zainstaluj motyw z Melpy
M-x package-install RET smart-mode-line-powerline-theme
Jeśli chcesz zainstalować go ręcznie, jest tutaj , ale musisz również zainstalować Powerline.
Wreszcie możesz włączyć motyw za pomocą M-x sml/apply-theme RET powerline
. Twój wiersz trybu powinien wyglądać następująco.
Jak widać, kolejność elementów nie jest taka sama, ale ogólny wygląd jest tam.
Aby używać tego motywu za każdym razem, dodaj następujące elementy do pliku init. Możesz także dostosować dowolne zmienne konfiguracyjne linii energetycznej i powinny one mieć ten sam efekt tutaj.
;; These two lines are just examples
(setq powerline-arrow-shape 'curve)
(setq powerline-default-separator-dir '(right . left))
;; These two lines you really need.
(setq sml/theme 'powerline)
(sml/setup)
:ED:
zamiast ~/.emacs.d/
i rich-minority
aby ukryć zapalniczki w trybie pomocniczym.
Można to osiągnąć za pomocą pakietu o nazwie „powerline”. Dostępnych jest kilka wariantów, w tym przynajmniej jeden, przez który można zainstalować package.el
.
Osobiście korzystam z tego . Oto zrzut ekranu z pliku README:
Możesz skonfigurować kolor, ustawiając powierzchnię linii trybu:
(set-face-attribute 'mode-line nil
:foreground "Black"
:background "DarkOrange"
:box nil)
Możesz również skonfigurować różne kształty, a nie tylko trójkąty:
(setq powerline-arrow-shape 'curve)
(setq powerline-default-separator 'utf-8)
który pozwala na użycie dowolnej z łatek Powerline tutaj .
(setq powerline-default-separator 'arrow)
. Instaluję Carbon Emacs z Homebrew z --srgb
flagą i (setq ns-use-srgb-colorspace t)
na .emacs.d.
curve
jest fajny, ale używam diagonal
teraz) i mój .emacs , który ma kilka różnych ustawień, które gdzieś mam. Jeśli masz takie skłonności, możesz stworzyć własną kopię powerline.el
i dodać własne kształty separatora za pomocą grafiki ASCII, aby uzyskać dokładnie taki efekt, jakiego potrzebujesz :).
Jak wspomnieli inni, powerline to pakiet, który w ten sposób formatuje modelinę. Jednak większość motywów emacsa nie definiuje kolorów dla powerline (co nie jest świetne). Jednym z motywów jest kolorowy (i wszechstronny) motyw moe . Ma nawet tryb, który zmienia kolor wieczorem, aby był łatwiejszy dla oczu. To wygląda tak:
Moje strzałki w linii energetycznej wyglądają dziwnie, ponieważ używam niepoprawnej wersji czcionki Luxi Mono.
Moje strzałki w linii energetycznej wyglądają dziwnie, ponieważ używam niepoprawnej wersji czcionki Luxi Mono.
William Roe , sądząc z twojego zrzutu ekranu, że jesteś na macOS. Jak stwierdzono w komentarzu do tego wydania , musisz go dodać
(setq powerline-image-apple-rgb t)
do twoich plików inicjujących. To powinno rozwiązać problem z kolorem za pomocą separatorów („strzałek”). Przynajmniej dla mnie pracował.