W nawiązaniu do tekstu nt.
Emacsa,
kol. Wanted
podpowiedział, że
oprócz Bitstream Vera, który faktycznie nie ma
za dużo diakrytyków, jest klon tego fontu z dużą
liczbą znaków pn.
DejaVu
(DejaVu fonts).
Spróbowałem to zainstalować wpisując yum install dejavu-fonts
,
ale się nie udało:
Error: dejavu-fonts conflicts with fontconfig >= 2.3.0
Hmm, dziwne.
Żeby czegoś nie popsuć wolałem działać ostrożnie. Rozpakowałem
archiwum .rpm
:
rpm2cpio dejavu-fonts-2.18-1.rf.noarch.rpm | cpio -idv
W środku nie było nic nazwyczajnego. Pliki ttf + dokumentacja.
Pliki .ttf umieściłem ręcznie w /usr/share/fonts/dejavu/
.
Na wszelki wypadek uruchomiłem w tym katalogu mkfontdir
i mkfontscale
. Uruchomiłem Emacsa w następujący sposób:
/usr/local/emacs23/bin/emacs-23.0.0 --font "DejaVuSansMono-14" --multibyte
Wygląda, że działa. Przy okazji i zupełnie przypadkowo wygooglałem informację nt. projektu fontów STIX. Z tego co wyczytałem ma to być podobna do Times New Roman rodzina bogatych w diakrytyki fontów. Na dniach mają być gotowe i upublicznione. Zobaczymy, być może będzie to coś ciekawego.
Kierując się wskazówkami ze strony
www.emacswiki.org
skompilowałem Emacsa 23, wersja alfa. Ten Emacs umie wreszcie korzystać
z dobrej jakości fontów TrueType dzięki wsparciu Xft
. Zatem:
cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/emacs co -r emacs-unicode-2 emacs ./configure --with-gtk --enable-font-backend --with-xft --prefix=/usr/local/emacs23 make mkdir /usr/local/emacs23 chown tomek:tomek /usr/local/emacs23
Na wszelki wypadek dociągnąłem jeszcze yum install giflib-devel
, bo
./configure
zgłosił błąd (po co mi gify?). Oczywiście nie chcę
zmieniać starego emacsa na wersję alfa, stąd pomysł zainstalowania
wszystkiego w katalogu /usr/local/emacs23
. Będę miał dwa The one true editor
-- prawdziwie skumulowana potęga.
Teraz uruchamiam:
emacs --font "Bitstream Vera Sans Mono-10"
Krój Vera fajnie wygląda, ale polskich ogonków nie ma, i nawet nie jest to wina Emacsa tylko po prostu nie ma ich w foncie (Bitstream Vera Fonts).
Spróbowałem zatem z innym ustawieniem, i po dłuższym kombinowaniu czemu zamiast polskich znaków widzę coś zupełnie innego udało się:
## emacs-23 zdaje sie działać: /usr/local/emacs23/bin/emacs-23.0.0 --font "Monospace-13" --multibyte
Na etapie rozruchu dodałem jeszcze --debug-init
, dzięki
czemu szybko ustaliłem co się gryzie ze starego .emacs
i innych plików startowych z nowym Emacsem. Nie było tego dużo:
hscroll-global-mode
, pakiety session
,
tramp
i jde
. Zamiast session
w dystrybucji
Emacsa jest desktop.el
; tramp.el
też jest już w dystrybucji --
konflikt dotyczył starej wersji. Dodałem zatem kilka warunków w stylu:
(if (< emacs-major-version 22) (progn (require 'session) (add-hook 'after-init-hook 'session-initialize)) (progn (desktop-save-mode 1) ;; Customization follows below (setq history-length 250) (add-to-list 'desktop-globals-to-save 'file-name-history)) )
Emacs faktycznie używa fontu TrueType. Można to sprawdzić, np. za pomocą sposobu podanego w CSE HUJI Emacs Fonts HOWTO:
(frame-parameter nil 'font)
Wpisujemy powyższe do dowolnego bufora, ustawiamy kursor za zamykającym nawiasem
a następnie C-x C-e
. W minibuforze pojawi się:
"-b&h-luxi mono-medium-r-normal--15-*-*-*-*-*-fontset-startup"
Wygląda zatem, że to luxi mono Charlesa Bigelowa i Krisa Holmesa.
Jakość (czytelność) tekstu jest faktycznie znacząco lepsza, ale z wyświetlaniem poszczególnych znaków (na pierwszy rzut oka) jest różnie: niektóre znaczki jakby trochę są krzywe:-). Może to kwestia fontu? Sprawa wymaga dalszego zbadania. Poniżej dwa przykładowe ekrany (jak się kliknie to będą większe):