Teraz trochę o internecie. Czy każdy wie, jak to działa? No właśnie. Tak sobie robimy click i oglądamy, strony, obrazki, filmy. Słuchamy muzyki. Wszystko z magicznego pudełka.
Nie są to takie czary, co będę się starał wyjaśnić później. Ale najpierw powrót do rzeczy, którą już sygnalizowałem. Markdown.
Jakiś czas temu pisałem o markdownie i zastosowaniu do tworzenia prostych stron zarządzanych poprzez dropboxa. Jak się zacząłem wczytywać w temat, to okazało się, że markdown jako narzędzie do tworzenia dokumentów jest dosyć popularne. Niestety z trudem znaleźć można polskie źródła, stąd z konieczności muszę opierać się o dokumentację angielskojęzyczną.
Zauważmy najpierw, że poprzez wszystkie lata pliki tekstowe i ich format w zasadzie się nie zmieniły. Można powiedzieć, że txt jest wieczny. W prawdzie w każdym z systemów operacyjnych - unix, windows, mac - jest inna konwencja kończenia linii, ale nie zmienia to zawartości plików.
Dla przypomnienia. Markdown to zbiór predefiniowanych znaczników w tekście służących do jego formatowania. Mówi się, że jest to język, ale to tak trochę na wyrost. Takie rozwiązania są tak stare jak komputery. A może starsze. Przecież podobnego systemu używały (i używają nadal) drukarki. To co wysyłamy do drukowania jest drukowane z wyłączeniem pewnych sekwencji sterujących, powodujących zmianę trybu drukowania - drukowanie kursywą, pogrubieniem, większymi, mniejszymi znakami, innym zbiorem czcionek itp. Znacie, znamy.
Notując cokolwiek możemy wpisywać jakieś znaczniki, które w wersji do druku lub w podglądzie w przeglądarce mogą zmienić wygląd dokumentu. Wiadomo, są jakieś tytuły, nagłówki, listy, odwołania itp. Układ liniowy całego dokumentu. Znaczniki te nie zmieniają zawartości tekstu, ale wpływają na jego wygląd. Jeżeli tych znaczników jest relatywnie mało, to każdy szybko może się tego nauczyć.
Jak widać jest kilka zalet tej technologii
- po pierwsze, to łatwizna. składnia jest na tyle prosta, że szybko można się nauczyć,
- po wtóre, jest to szybkie w zastosowaniach. Generalnie operujemy dokumentem tekstowym. Łatwo jest zapoznać się z jego zawartością. znaczniki markdownowe nie utrudniają zrozumienia tekstu, w przeciwieństwie do znaczników htmlowych. Te ostatnie są bardziej rozbudowane,
- ponadto, nie popełniamy błędów. Nie musimy pamiętać o sekwencjach otwierających, zamykających, jak w htmlu lub xmlu, ale w konsekwencji, po konwersji, możemy dostać elegancki dokument,
- technologia ta jest niezależna od systemu operacyjnego. Dokument przygotowany w jednym systemie, bez trudu można odczytać w innym,
- technologia ta jest elastyczna, bo umożliwia konwersję do dowolnego formatu,
- i na koniec, pliki markdownowe mogą być użyte w dowolnym systemie przepływu dokumentów - workflow. Pliki są niewielkie i łatwe do obróbki.
Okazuje się też, że jest wiele edytorów markdownowych. Poniżej podam kilka przykładów, wskazując rozwiązania bezpłatne. Są oczywiście i płatne, ale każdy sam musi ocenić, na ile ewentualna dodatkowa funkcjonalność jest mu potrzebna. Niezależnie od systemu wyglądają podobnie. Mamy dwa okna, przy czym w lewym wpisujemy tekst uzupełniony o znaczniki. W prawym otrzymujemy efekt formatowania.
Najpierw rozwiązanie webowe. W dowolnej przeglądarce, strona http://hashify.me/. Edytor lewego okna pozwala na wstawianie odpowiednich znaczników nawet bez zbytniej znajomości markdownu.
W systemach windowsowych dostępny jest markdownpad. Wersja bezpłatna ma trochę ograniczeń, ale jest w pełni funkcjonalna. Do pobrania i zainstalowania ze wskazanej strony. Dostępna jest też wersja portable. Wymaga bibliotek .net, ale w trakcie instalacji są one uzupełniane (dlatego ja bardziej skłaniam się ku wersji webowej, zamiast instalowania kolejnych bibliotek). Jest też writemonkey. Działanie i wymagania podobne jak wyżej.
Jest też kilka edytorów macowych. Np. mou. Co ciekawe (aż dziwne) jest to aplikacja bezpłatna. W sieci można poszukać więcej tego typu programów. Jest nvALT, Drafts dla iOS, simplenote także dla androida.
Prosta kwerenda i wyszukiwarka powinna wskazać kilka następnych narzędzi.
Ok. Składnię znamy, narzędzia mamy i co? Ja używam markdowna do budowy prostych stron. Zachęcam do obejrzenia pancake.io. Może słowo "prostych" nie jest w pełni uprawnione, bo możliwości są dużo większe niż widać na pierwszy rzut oka. Markdown ma tę zaletę, że znaczniki można mieszać ze znacznikami htmlowymi. Ponadto, pancake umożliwia wykorzystanie własnych plików css (pliki stylów) oraz skryptów (javasript). I w zasadzie jesteśmy o krok od zrobienia ciekawej statycznej strony webowej.
Co więcej, jestem w fazie rozgryzania, znalazłem cmsa, czyli program do zarządzania kontentem, który wykorzystuje markdown. Nazywa się to pico. Trzeba przebrnąć przez dokumentację, poeksperymentować i wykorzystać do tworzenia stronek.
Markdown może być używany do tworzenia notatek. Chmura, w moim przypadku dropbox, pozwala na ich przechowywanie i synchronizację. Wydaje się, że rozwiązanie jest prostsze niż korzystanie z dedykowanych aplikacji (vide evernote), bezpieczne i elastyczne. Ale każdy sam musi dokonać wyboru.
Markdown jest wykorzystywany jest do opisów programów i prostych zagadnień technicznych. Wielokrotnie zamiast dokumentów readme.txt spotyka się analogiczne readme.md. Dokument jest w pełni czytelny, a ponadto może łatwo stać się dokumentem sformatowanym. Podobną składnię ma ReStructuredText (RST).
Pamiętajmy też, to czym zacząłem. txt jest wieczny. Czy za 10, 15 lat odczytamy notatki zrobione w dedykowanej aplikacji? Może mamy już podobne doświadczenia. Kiedyś word perfect był numerem jeden do tworzenia dokumentów. Teraz, ze względu na jego format, chyba nie moglibyśmy nic odczytać. Może warto spróbować tworzyć dokumenty markdownowe??