Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Lout

Lout to oprogramowanie do zautomatyzowanego składu tekstu, a także język formatowania dokumentów, którego twórcą jest Jeffrey H. Kingston. Opis dokumentu przypomina stylem LaTeX-a, a efektem kompilacji jest plik PostScript lub PDF. Tworzenie tekstu opiera się na zasadzie WYSIWYM (What You See Is What You Mean).

Z systemu Lout korzysta m.in. Mark Summerfield - informatyk, programista specjalizujący się w C++, Pythonie, Qt i PyQt - wykorzystujący od ponad dekady język J.H. Kingstona do pisania książek o wyżej wymienionej tematyce.

Lout podobnie jak LaTeX "dziedziczy" pewne cechy systemu TeX, ale w odróżnieniu od LaTeX-a nie stanowi nadbudowy na TeX w postaci zestawu makr, a jest wysokiego poziomu językiem funkcyjnym zbliżonym do Haskell-a, dzięki temu jest prostszy w użyciu. Jego podstawową obsługę można opanować w ciągu kilku godzin.

Cechą odróżniającą go od LaTeX-a jest też rozmiar. Podczas gdy typowa instalacja LaTeX-a zajmuje od 50-300 MB (kompletna dystrybucja ProTeXt pod Windows "waży" 954 MB), rozmiar systemu Lout to 1.6 MB. Przy tak małym rozmiarze możliwości są imponujące, o czym przekonać się można zaglądając do dokumentacji.

Od czego zacząć?

Aby zapoznać się z systemem Lout należy pobrać plik zip (1.6 MB), rozpakować go w wybranej lokalizacji np. D:\lout\, a następnie dodać do zmiennej systemowej Path ścieżkę do katalogu bin, np. D:\lout\bin; oraz utworzyć nową zmienną o nazwie LOUTLIB zawierającą ścieżkę do katalogu lout.lib, np. D:\lout\lout.lib.

Następnie uruchamiamy ulubiony edytor tekstu (najlepiej gVim, który radzi sobie świetnie z kolorowaniem i formatowaniem tekstu zapisanego w tym języku), kopiujemy przykład z Wikipedii lub posługując się dokumentacją tworzymy własny dokument, który zapisujemy w pliku o rozszerzeniu .lou (plik nie musi posiadać rozszerzenia, jednak przy takim rozszerzeniu gVim pokoloruje tekst i sformatuje składnię).

Następnie uruchamiamy wiersz polecenia, przechodzimy do katalogu, w którym znajduje się zapisany plik .lou i wydajemy polecenie

lout -S example.lou > example.ps

lub

lout -S -PDF example.lou > example.pdf

jeśli chcemy, aby w wyniku kompilacji powstał plik PDF.

Aby móc korzystać z polskich znaków powinniśmy początek dokumentu zmodyfikować w następujący sposób*:

@SysInclude { latin2 } @SysInclude { doc } @Document @InitialLanguage { Polish } @InitialFont { TimesCE Base 12p } //

gdzie latin2 oznacza kodowanie środkowoeuropejskie ISO 8859-2, a TimesCE czcionkę Times Central European.

*) Niestety... W moim przypadku ten sposób nie zadziałał prawidłowo. W wynikowym pliku nie wszystkie polskie znaki wyświetlane są poprawnie. Jeśli komuś udałoby się znaleźć rozwiązanie, proszę o informację w komentarzu.
 

Komentarze

0 nowych
przemo_li   11 #1 26.09.2010 20:54

Dobry wpis.
Jeszcze gdyby obsługiwał utf8...

  #2 27.09.2010 09:22

I'm not very good from english language, but on Wiki Lout site is write:
"Lout is multilingual, supporting (with hyphenation) Czech, Danish, Dutch, English, Finnish, French, German, Norwegian, Russia, Slovenian, Spanish and Swedish. Some of these languages are available as separate packages because they need more than the 13 standard Adobe fonts. Further languages can be added easily."

I using Notepad++ text editor, but not supporting colourized Lout :(

iluzion   5 #3 27.09.2010 11:33

@apocalyPS3

"languages can be added easily"

... czyli jak? ;)

"Czech, Polish, and Slovenian use the Latin2 character set, and users of these languages have to place

@SysInclude { latin2 }

at the start of their documents in order to get access to the Latin2 versions of the fonts. These have family names such as TimesCE, CourierCE, HelveticaCE, and so on (CE standing for Central European), to distinguish them from the same fonts encoded in Latin1."

Orlando   3 #4 27.09.2010 11:41

A na czym polega przewaga nad LaTeXem? Objętość dystrybucji LaTeXa wynika po części z jego gigantycznych możliwości. Odchudzenie go jest zupełnie możliwe i bezpieczne. Nie ma też problemu z pisaniem po polsku i to w domyślnych systemach.

iluzion   5 #5 27.09.2010 12:03

@Orlando

... ponadto LaTeX jest już "zakorzeniony". Jest dobrze udokumentowany, mnóstwo informacji na jego temat można znaleźć w internecie, czego nie można powiedzieć o systemie Lout. Na polskich stronach internetowych praktycznie nie istnieje. Z drugiej strony Lout został zaprojektowany od zera i jak sugeruje jedna z wypowiedzi w tym temacie

http://superuser.com/questions/38071/typesetting-documents-programmatically-opti...

nie zawiera pewnych "dziwactw" będących wynikiem tego, że bazuje na systemie wcześniejszym - TeX. Jest też prawdopodobnie łatwiejszy do opanowania i szybszy. Sama składnia języka wydaje się być też bardziej zwięzła.

Orlando   3 #6 27.09.2010 12:36

Moje pytania nie są bez powodu. Właśnie szukam ciekawych alternatyw dla wizualnych edytorów, głównie rozwiązań konwertujących pliki tekstowe na bardziej zaawansowane. Wypróbowałem Pandoc i polecam, a także Docutils, chociaż z nimi mam pewne problemy. Jakoś konwerter RST2ODP nie chce mi się zainstalować... LaTeXa też znam i dosyć lubię, chociaż faktycznie ma swoje wady. Dlatego pytam o przewagę opisywanego systemu nad innymi.

iluzion   5 #7 27.09.2010 13:47

@Orlando

Gdy zacząłem czytać Twój komentarz to pomyślałem o reStructuredText, ale w następnym zdaniu wspomniałeś o Docutils, czyli to rozwiązanie jest Ci znane. Wydaje mi się, że to chyba najlepsza opcja. Wynikowym plikiem musi być ODF? RST można również konwertować na kilka innych formatów, np. html czy PDF. Jest nawet ciekawy edytor z możliwością podglądu efektu na bieżąco:

http://blog.enthought.com/enthought-tool-suite/a-renewed-restructured-text-editor/

rst2pdf w wersji exe można pobrać stąd:

http://code.google.com/p/pythonxy/downloads/list

Zamierzałem nawet w wolnej chwili poczytać nieco więcej na ten temat i napisać o tym na blogu. Zobaczymy co z tego wyjdzie.

Orlando   3 #8 27.09.2010 20:26

Szukam narzędzia, które pozwoliłoby mi przygotowywać w ten sposób prezentacje. Pandoc pozwala przetwarzać do S5, ale wolałbym Impressa lub Powerpointa i jakoś nie umiem znaleźć. To znaczy znalazłem w Sandboksie Docutils, ale - jak wcześniej wspomniałem - nie umiem tego zainstalować.

Pigmej   5 #9 28.09.2010 14:28

Emacs + OrgMode + Beamer :)

Albo czysty beamer ;-)

Orlando   3 #10 28.09.2010 16:51

Z Beamera korzystałem (jeżeli mówimy o tym LaTeXowym) i mam do niego pewne zastrzeżenia, które wolałbym przemilczeć. Moim marzeniem jest narzędzie, które z tekstu o lekkich znacznikach (RST, Markdown, Textile) zrobi mi na życzenie prezentację lub dokument edytora tekstowego. Docutils z Sandboxem jest tym, czego szukałem, tylko te kłopoty z instalacją. Dzisiaj siadam i postaram się uporać z problemem.

Orlando   3 #11 06.10.2010 16:06

No i nie poradziłem sobie... Docutils działa, a narzędzia RST2ODP z sandboxa nie udało mi się zainstalować. Jednak jestem cienki.

iluzion   5 #12 07.10.2010 01:40

@Orlando

Z tego co widzę w pliku README to Docutils instaluje się poprzez uruchomienie pliku install.py. W pliku README z paczki rst2odp-0.2.3 jest już nieco więcej informacji.

Converts rst to OpenOffice impress (rst2odp). Also includes a python library (``odplib/preso.py``) for creating impress files

Requires docutils, pygments, PIL

Usually it is run like so

rst2odp path/to/rstfile.rst output.odp

(use --traceback -r 3 for debug)

Styling is supported with the ``--template-file`` switch, just pass it an .otp file

Wnioskuję stąd, że do uruchomienia rst2odp wymagane są poza docutils biblioteki pygments oraz PIL. Na temat PIL pisałem w ostatnio.

Orlando   3 #13 07.10.2010 10:21

Ja mam inny problem. Podczas instalacji pojawia mi się komunikat "Import Error: no module named setuptools". Skoro podstawowy zestaw docutils się instaluje, to chyba mam SetupTools... Dla jasności: system to Windows XP.

iluzion   5 #14 07.10.2010 10:54

@Orlando

Wygląda na to, że nie masz setuptools, który instaluje się oddzielnie. Przeglądając wczoraj zawartość paczki rst2odp w pliku INSTALL przeczytałem tylko, żeby do instalacji wykorzystać preferowany mechanizm. Mechanizmem tym może być easy_install. W tym celu należy pobrać setuptools stąd

http://pypi.python.org/pypi/setuptools

Po zainstalowaniu setuptools w wierszu pleceń wpisać

easy_install http://pypi.python.org/packages/source/r/rst2odp/rst2odp-0.2.3.tar.gz

Tak przypuszczam, bo nigdy nie korzystałem z easy_install. Możliwe, że konieczne będzie przejście do katalogu, w którym znajduje się easy_install lub podanie ścieżki do niego. Autor rst2odp nie zapewnił wygodnego instalatora exe pod Windows niestety, dlatego trzeba korzystać z tych metod. W każdym razie jesteśmy coraz bliżej;)

Orlando   3 #15 07.10.2010 12:48

Faktycznie - poszło do przodu, ale nie doszło do końca. Pomysł z easy_install jest świetny i zainstalowałem RST2ODP, Pygments i PIL. Kłopot w tym, że RST2ODP twierdzi uparcie, że PILa nie ma. Jako ciekawostka - Windowsowy instalator Setuptools nie zadziałał i zrobiłem instalację ręczną. Nie znalazł w rejestrze informacji o Pythonie! Masz jeszcze pomysł, co może być przyczyną ślepoty RST2ODP?

iluzion   5 #16 07.10.2010 13:46

@Orlando

Właśnie się z tym zmagam. Niby wszystko działa, ale rst2odp wyświetla błąd przy konwersji. Działa za to świetnie rst2html, rst2odt, rst2pdf (jedyny problem to brak polskiej czcionki), rst2beamer.

Napiszę dziś wpis na blogu na temat reStructuredText.