Czcionki dla programistów: aby kod był czytelniejszy
(51 komentarzy)W kategoriach: Dopalacze , Narzędzia , Techblog / 28 kwietnia 2007 [12:44:45]
Tagi technorati: fonts legibility programming
Jeśli dziwi Cię, koderze, ten temat i uznajesz, że nie są Ci potrzebne odpowiednie czcionki - przeczytaj tego posta i zmień zdanie.
Jaki powinien być font dla programisty?
Fikuśność jest tutaj sprawą zupełnie nieistotną. Estetyka schodzi na drugi plan, czytelność to za mało powiedziane. Font kodera musi spełnić dość długą listę wymagań:
- jest nieproporcjonalny (ang: monospaced) - każdy znak ma tę samą szerokość
- znaki Il1 są łatwo rozróżnialne
- podobnie z O i 0; zero powinno być specjalnie oznaczone
- czytelne whitespace'y
- czytelne znaki interpunkcyjne
- rozróżnialne znaki cudzysłowia
- ergonomia - programista nie może czuć się zmęczony kodem po paru godzinach pracy
- obsługa znaków diaktrycznych różnych języków
- czytelność również w zwykłym tekście (komentarze!)
- estetyka - programista musi lubić swoją czcionkę ;-)
Przyjrzyjmy się bliżej fontom, które zwróciły moją szczególną uwagę podczas poszukiwań.
Courier New
Wszystkim (szczególnie użytkownikom systemu Windows) doskonale znany Courier ma już swoje lata, a nadal wielu programistów używa go domyślnie. Okazuje się, że nieprawdą jest stwierdzenie, że sprawdzone = dobre. Courier New nie powala ergonomią (potrafi zmęczyć już po paru godzinach siedzenia nad kodem), a duże "i" jest niemal nierozróżnialne od małego "L" czy jedynki. Microsoft to zauważył i wraz z Vistą wprowadza serię nowych fontów, wśród których jest...
Consolas
Font ten został od razu polubiony przez sporą grupę programistów. Microsoft pokazał, że wie czego potrzebują koderzy i spełnił dokładnie wszystkie ich oczekiwania.
Użytkownicy systemu Windows Vista mają Consolas od początku, programiści korzystający z MS Visual Studio mogą go pobrać ze strony Microsoftu, my natomiast możemy z bardziej tajnych źródeł ;-).
Monaco
Mój faworyt. Jak na produkt związany z Apple'm przystało, font jest równie czytelny co estetyczny: miażdżąco. Jeśli Tobie również się podoba - pobierz.
Anonymous
Zaprojektowany jako bardziej czytelna alternatywa dla Monaco. Uwielbiany przez wielu koderów, posiada jednak przeciwników, zarzucających mu artystyczne zbędniki. Font na pewno śliczny i na pewno spełnia wszystkie stawiane mu wymagania. Nie wiem jak inni - ale ja polecam.
Więcej info na oficjalnej stronie Anonymousa.
Dina
Bazuje na Proggy. Autor dołożył wszelkich starań, by jego dzieło pozwoliło pomieścić w szerokości więcej kodu, zachowując jednocześnie czytelność. Dodatkowym atutem jest poprawna obsługa wytłuszczonych i pochylonych elementów składni (linie kodu się nie rozjeżdzają), czym spora część fontów nie może się, niestety, pochwalić.
Więcej info na stronie twórcy.
Programmer's font
Nazwa mówi sama za siebie: ta czcionka jest dla programistów - łączy w sobie czytelność i spryt. Przeznaczona dla koderów, którzy nie mają czasu na sporty ekstremalne. Podobno font dobrze się spisuje w wysokich rozdzielczościach.
Na stronie projektu znajdziesz więcej informacji na jej temat. Ja polecam. Tyle, że jeszcze nie wiem do czego... ;-).
Podsumowanie
Użytkownicy systemów innych niż Windows mogli mieć sprawę ułatwioną - tam bardzo często domyślnym fontem edytorów kodu jest dużo zdrowsza propozycja. Jeśli jednak nadal męczysz się z Courierem - nie sądzisz, że czas zrewidować swoje poglądy?
aevin
28 kwietnia 2007, 12:55:53Bardzo dobry artykuł, dzięki :)
Michał Górny
28 kwietnia 2007, 12:56:07Dla mnie nieużywalna jest każda inna czcionka niż LatArCyrHeb, alternatywnie standardowa FreeDOS-owa też jest niczego sobie.
Ktos
28 kwietnia 2007, 13:08:50Ja ze swojej strony bardzo lubię Lucidę Console, standardowo w Windows XP, aczkolwiek widzę, że Consolas jest całkiem przyjemna. Może się przesiądę.
Marcin Sochacki (Wanted)
28 kwietnia 2007, 13:34:53Dobry jest jeszcze font Terminus, dostępny np. w wielu dystrybucjach Linuksa.
Poza tym lubię też klony oryginalnego fonta DOS-owego.
weronika
28 kwietnia 2007, 13:59:39Monaco wygląda dla mnie bardzo zacnie. Nie wiem, czy słusznie, ale przypomina mi ulubionego Comica.
teodor
28 kwietnia 2007, 14:06:51Ja używam od jakiegoś czasu DejaVu Sans Mono Book, choć jak patrze na Monaco to chyba sobie wymienie, wygląda bardzo ładnie.
cimlik
28 kwietnia 2007, 14:45:22Ciekawy temat. Chyba przerzucę się na Monaco, bo różnica jest znaczna.
Gracek
28 kwietnia 2007, 14:48:02Faktycznie, Monaco zamiata. ;]
Dzięki za wpis, wykopię. :)
sprae
28 kwietnia 2007, 14:50:09Wypróbowałem programmers, monaco i wróciłem do monospace
http://satfilm.pl/~saper/fonts.png
1-10 programmers
11-20 monaco
21 – 30 oryginalne monospace
Widać, że w textmake fonty wyglądaja atrakcyjniej niż w gedit :)
RazorJack
28 kwietnia 2007, 14:54:08Oryginalne monospace faktycznie ładne. :)
Tym nie mniej – screenshoty zrobione są na Windowsie XP, w RadRails [EDIT: W zasadzie to w Aptanie - ale na jedno wychodzi :)]. Chciałbym mieć TextMate’a :).
sprae
28 kwietnia 2007, 15:10:42Aha to niezłe pudło :). Człowiek uczy się całe życie
soomal
28 kwietnia 2007, 15:38:38Consolas? Przecież to w rozmiarach 8-12 wyglada… w ogóle nie wygląda, a chyba takich rozmiarów używa programista?
noizz
28 kwietnia 2007, 15:39:07Jakiś czas temu zrobiłem małą modyfikację Proggy (Dina) – poprawiłem pod siebie niektóre glify, dorobiłem pliterki, bolda i takie tam. Jak ktoś ma ochotę się pobawić, to zapraszam:
Podgląd | Ściągnij
Niestety tylko jeden rozmiar 12pt, brakuje niektórych rozszerzonych znaczków i pewnie trochę błędów jest… ale u mnie działa :)
pixel
28 kwietnia 2007, 15:58:11Pamietajcie tylko, ze fontow dotycza prawa autorskie tak samo jak np. utworow muzycznych, wiec rozpowszechnianie ich i sciaganie bez nabywania licencji na korzystanie z nich jest lamaniem prawa…
Piotr Konieczny
28 kwietnia 2007, 16:10:43Nigdznie nie widzę Fixedsys :-(
tamok
28 kwietnia 2007, 16:36:52Na twoim przykladzie nie ma kropek i przecinkow – a jest to bardzo wazne – moj poprzedni faworyt Andale Mono – mimo ze wyglada bardzo przejrzyscie ma bardzo poodbne kropke i przecinek. Consolas jest pod tym wzgledem wspanialy
Siergiej
28 kwietnia 2007, 16:41:20Ostatnio szukałem sobie jakiejś dobrej czcionki dla mojego terminala i edytora kodu. Schumacher Clean, którego do niedawna używałem był bardzo mało ergonomiczny, szczególnie doskwierał mi brak antialiasingu. W poszukiwaniach dotarłem do Consolas, od tej pory nawet w swoich cssach
font-family: Consolas, "Schumacher Clean", monospace;;)acid
28 kwietnia 2007, 19:17:40Wie ktoś czy ta czcionka Dina obsługuje kodowanie cp1250? Nie mogłem znaleźć takiej informacji na stronie autora.
W systemach GNU/Linux mi najbardziej pasuje czcionka Terminus.
Michał Górny
28 kwietnia 2007, 19:24:36Właśnie, soomal dobrze mówi. W kryteriach zapomniałeś o tym, że wszystkie one powinny być spełnione przy możliwie małej wielkości znaków…
bmalkow
28 kwietnia 2007, 19:54:42pozwoliłem sobie zrobić ankietę. Może wybierzemy najlepszy font :-)
http://webankieta.pl/ankieta/w37xtix4g48
Modrzew
28 kwietnia 2007, 20:28:18Mój typ: Consolas. Pozostałe, które mi się podobają (Monaco, Anonymous) w moim ukochanym PsPadzie wyglądają co najmniej dziwnie ;)
wariat
28 kwietnia 2007, 21:08:02To ważny io faktycznie często niedoceniany problem. A z fontem nie jest łatwo, bo … no właśnie, nie dość, że musi być to musi zawierać polskjie diakrytyki które wyprodukował ktoś kto wiedział jak to się robi, i tu okazuje się, że podlinkowane wyżej mimo, że ładne nie dają rady. A monospace tak ;-)
Czterysta Czwarty
28 kwietnia 2007, 21:28:50Sprawdziłem wszystkie i po zastanowieniu spróbuję zaprzyjaźnić się z Proggy przerobioną przez noizz’a. Dino jakie ściągnąłem było prawie idealne, ale nie wyświetlało mi polskich znaków, a reszta jakoś nie podeszła.
Pixel, a jak wygląda sprawa użytkowania nielegalnie przerobionej czcionki:P Rozpatrując czysto teoretycznie: nie złamałem prawa, bo nie przerobiłem jej, a użytkując nie łamię praw osoby przerabiającej.
Henry
28 kwietnia 2007, 23:08:20Super przydatny tekst
Pozdrowionka Henry
cli3nt
29 kwietnia 2007, 09:03:22IMHO najlepszym wyborem jest Proggy/Dina tym bardziej, ze nie lubię AA w czcionkach, bardzo nie lubię nie mniej jednak faktem pozostaje to iż nie font jest ważny, a chęci bo jak będziesz chciał coś napisać to i tak to napiszesz nie zwracając uwagi na czcionkę.
psw
29 kwietnia 2007, 10:52:44Od lipca 2006 jadę na Proggy Clean. Czcionka dosyć mała, ale ostra, wyraźna i bardzo wygodna w pracy.
Swoją drogą polecam wyłączyć wygładzanie w edytorze i korzystać z czcionek bardziej wyrazistych niz Monaco i Consolas (nie powiem, ładne). Po paru godzinach gapienia się w rozmazane fonty oczy mi zaiwaniały że brak słów.
Bahor
29 kwietnia 2007, 11:04:17CONSOLAS można używać nie łamiąc lincji M$. Wystarczy zainstalować PowerPoint Viewer 2007
noizz
29 kwietnia 2007, 11:51:30Zgadzam się, do tego w PowerPoint Viewer 2007 jest nowszy o rok zestaw czcionek (inne daty,w ieksze rozmiary). Na wykopie byl tez art o tym swego czasu.
bayger
29 kwietnia 2007, 16:46:41Dodam jeszcze jednen font. Mowa o Inconsolata. Używam go pod Windowsem w Visual Studio 2005 w rozmiarze 13. Wygląda rewelacyjnie. Tutaj przykład jego użycia.
mls
29 kwietnia 2007, 20:35:29Na maku Monaco i od kilku dni Panic Sans („przyszła” z edytorkiem Coda firmy Panic). Pod windowsem – tylko i wyłącznie Consolas. W obu przypadkach z AA, nie lubię „ostrych” literek :)
GiM
30 kwietnia 2007, 15:18:57taa, ja od kilku miesięcy mam Consolas w gvimie i muszę powiedzieć, że czcionka uprzyjemnia pracę programisty.
dunDer
01 maja 2007, 12:04:57A ja uzywam Andale Mono i tez jest ok, poza tym ma polskie litery w przeciwienstwie do wiekszosci czcionek tutaj opisywanych ;)
Elwis
01 maja 2007, 14:04:09Przed migracją na GNU/Linux używałem tylko i wyłącznie Courier (New), może za wyjątkiem pisania pism. Teraz używam czcionek z rodziny courier, które są jakby ulepszoną wersją ;)
JOUKI
01 maja 2007, 17:46:07[...] a u mnie wszędzie Verdana i nie potrafię tego wytłumaczyć
dunDer
01 maja 2007, 19:30:27@jouki: nawet w terminalu? :o
JOUKI
01 maja 2007, 19:35:13ech… windziarz… klikacz w myszę :)
kFYatek
01 maja 2007, 20:09:23Monospace, czy – jak kto woli – DejaVu LGC Sans Mono. Z antialiasem, bo „ostre” fonty wydają mi się jakieś takie… staromodne.
Green
04 maja 2007, 16:41:15Monaco – jest ładny ale jak dla mnie odpada. A to z tego powodu, że jeśli wyświetlany jest pochyły (italic) czyli np. (w zależności od konfiguracji IDE) np. w komentarzach, ciągach znakowych itp. to nie widać poprawnie ostatniej litery w linii. I tak np. małe d wygląda wtedy dokładne jak małe a
bmalkow
06 maja 2007, 07:43:30Wyniki ankiety: http://bmalkow.malkowscy.net/2007/05/06/czcionki-dla-programisty/
zgoda
22 maja 2007, 15:14:14Bigelow & Holmes Lucida Sans Typewriter. Rozprowadzana z JRE Suna.
Rox
26 maja 2007, 16:15:37Fajne :-) Anonymous przypadł mi do gustu. Ja używam windowsa i np. w notepad++ monaco wygląda fatalnie…
No a co z polskimi znakami? :-o
Komor
04 czerwca 2007, 01:20:38Monaco używałem od lat na maku, jeszcze pod systemami klasycznymi, ale od niedawna używam właśnie DejaVuSansMono, o którym nie wspomina Razor. Jest nowocześniejszy i chyba lepiej spełnia kryteria wymienione w artykule niż Monaco.
bigos
17 lipca 2007, 12:37:20a co z niesmiertelnym fixedsys’em ? IMO best ever :)
Anonim
14 sierpnia 2007, 00:33:12Ble, ble… i do tego nieskalowalny. Na 21 cali jak znalazł :>
Musk
21 sierpnia 2007, 16:31:16noizz – dzięki :). Czcionka przypadła mi do gustu, tylko za małe mam odstępy między wierszami ;]
off
17 października 2007, 23:57:02Czy czarne tło jest lepsze do programowania? I jaki rozmiar ma consolas na obrazku? Prosiłbym o odpowiedź :D
RazorJack
18 października 2007, 00:13:11O ile dobrze pamiętam, Consolas ma rozmiar 11px. Jeśli chodzi o czarne tło (nie jest to #000, tylko coś między #333 a #444 – to ważne!), to moim zdaniem jest to dużo bardziej ergonomiczna opcja, jeśli mamy perspektywy siedzieć nad kodem przez wiele godzin. Nie ma białego tła, które niemiłosiernie wypala oczy programiście ;). Oczywiście jeśli mamy ciemne tło, to elementy GUI od IDE i systemu operacyjnego nie mogą być jaskrawe, bo jeśli nie dopadnie nas oczopląs, to na pewno trafi szlag.
Ale to kwestia gustu, kombinuj z kolorami i szukaj perfekcyjnych kombinacji. Kto wie, może będzie ona nawet z jasnym tłem ;).
Cardil
27 października 2007, 00:40:39Ja w pracy uzywam Consolas ale ostatnio znalazlem czcionke z Linuksa Deja vu:
http://dejavu.sourceforge.net/wiki/index.php/Main_Page
fajna jest
Asmodeusz
17 stycznia 2008, 02:36:43Consolas okazuje się być jedyną czcionką czytelną w wielkości 8px na 1600×1200 na 17” – reszta się chowa. Do tego nie trzeba nic instalować (domyślnie z Vistą) i bardzo ładnie wygląda po włączeniu ClearType. Jak dla mnie ideał, szczególnie na białe tło :)
Sklep Komputerowy
07 lutego 2008, 18:29:25Diano jest the best. Piękna. Jedyna wada – brak polskich liter.
Bordeux
15 lipca 2008, 13:46:42Jeśli ktoś korzysta z Programmer’s font to naprawde to chyba tylko z przymusu.