Starý WORD, ten ťa už unavil nakoniec #3

22.02 | 13:54 | Richard | Richard

Ešte si o trochu vylepšíme našu náhradu textového procesora. O side-by-side vizualizáciu.

 

1. Obsah druhej časti

V druhej časti sme si pomocou Makefile generovali PDF súbor, za využitia pandoc a Libre(Open)Office + jeho šablóny.
Niežeby to bolo zlé, ale prečo to nevylepšiť?


Vylepšíme to tak, že:

1.1. Písanie bez rušenia

Písanie v jednoduchom textovom dokumente bez efektného formátovania pomáha sústrediť sa na samotný text a nerozptyľovať sa vizuálnymi prvkami.
Absencia formátovania umožňuje sústrediť sa výlučne na obsah a myšlienky, ktoré chceme vyjadriť, bez starania sa o estetiku. To vedie k efektívnejšiemu procesu písania.


Preto samotný náhľad nepovažujem za veľmi dobré riešenie.
Avšak mnohé editory - najmä LaTex-u to tak majú. Tam to nedáva zmysel, pretože vizuálne dôležité veci, ako napr. matematické vzorce, môže predsa renderovať aj samotný textový editor.
Teda - taký lepší editor ☺.


Ale nejako vznikol návyk na instatný náhľad stránky, tak si to takto spravíme aj my. Ostatne, nemusí "strašiť" na obrazovke stále, postačí, ak je to buffer "jedno stlačenie klávesy ďaleko".

2. Samotná funkcia

…vyzerá takto:

(defun make-pdf-from-org-via-odt (&optional arg)
"Make PDF and display it via ODT/LO template"
(interactive)
(defun get-odt-styles-file ()
  (save-excursion
    (goto-char (point-min))
    (search-forward "#+ODT_STYLES_FILE: ")
    (let ((beginning (point))
          (end (search-forward ".ott" nil t)))
      (buffer-substring beginning end))))

(setq odt-styles-file (get-odt-styles-file))

(save-buffer)

(shell-command (concat "pandoc -f org -t odt --verbose --reference-doc="
                       (format "%s" odt-styles-file)  " -o out.odt "
                       (format "%s" (buffer-name))))  

(shell-command (concat "soffice --headless --convert-to pdf out.odt --outdir ./"))

(kill-buffer "*Shell Command Output*")
(switch-to-buffer "out.pdf")
(revert-buffer t t)
(previous-buffer)
)


Stručne si ju opíšeme:

. A tento reťazec je náš súbor s Libre(Open)Office štýlom s príponou .ott.


Funkcii make-pdf-from-org-via-odt môžeme priradiť klávesovú skratku, napr. (local-set-key (kbd "<f9>") 'make-pdf-from-org-via-odt).

Reťazec #+ODT_STYLES_FILE: môže byť v tele súboru hocikde, ale rozumné je ho mať, s inými nastaveniami, v hlavičke súboru, ktorá navyše sa dá skrývať (je to tzv. drawer).

A takto to vyzerá:

Obr. 1: Side-by-side náhľad editovaného dokumentu
Obr. 2: … a jeho aktualizácia po zmene a stlačení <F9>


GNU Emacs dokáže renderovať PDF súbory vo svojom okne pomocou nástrojov, ako sú pdf-tools alebo režim DocView. Tieto balíky umožňujú zobrazovať a prechádzať PDF súbory priamo v rozhraní Emacsu, vyhľadávať ich a editovať ich zdrojový text - čo ale treba brať s rezervou, nejedná sa o editáciu textu ako v nejakom Foxit Reader a pod.

3. Záver

Hádam je toto už posledná časť 😉.
V budúcnosti ale plánujem niečo v zmysle: "Starý Excel, ten ťa…".

    • RE: Starý WORD, ten ťa už unavil nakoniec #3 23.02 | 09:08
      Avatar Richard Antix  Používateľ

      Mimochodom, aký je tag pre zvýraznenie syntaxe pre Lisp? Opravil by som to v tom zápise…

      • RE: Starý WORD, ten ťa už unavil nakoniec #3 27.02 | 21:19
        Avatar Miroslav Bendík Gentoo  Administrátor
        (shell-command (concat "soffice --headless --convert-to pdf out.odt --outdir ./"))
        
        (kill-buffer "*Shell Command Output*")
        (switch-to-buffer "out.pdf")
        

        Je to code-lisp (povolené sú všetky jazyky podporované knižnicou pygments).

        Btw pozerám správne, že sme obaja z okresu Poprad?

        • RE: Starý WORD, ten ťa už unavil nakoniec #3 28.02 | 08:58
          Avatar Richard Antix  Používateľ

          OK, dík, dokonca je tam i podpora eLisp.

          Áno, som z PP.

          To by bola paráda, mať nejakú PPLUG. :)

          Kedysi boli *LUG v každom štáte. Ktovie, ako sa im darí dnes.

          • RE: Starý WORD, ten ťa už unavil nakoniec #3 28.02 | 13:13
            Avatar Miroslav Bendík Gentoo  Administrátor

            *LUG sú aspoň u nás mŕtve, ale nejaké stretnutie by bolo fajn, akurát v podstate tu z okolia okrem seba nikoho nepoznám. V podstate už to, že menujem seba je tak trochu zúfalý čin ;)

            • RE: Starý WORD, ten ťa už unavil nakoniec #3 29.02 | 13:30
              Avatar Richard Antix  Používateľ

              Stretnutie by ozaj bolo fajn a urobili by sme severo-východnú konkurenciu "nitránskej" úderke. ☺

              Kľudne niečo dohodnime, napr. cez fórum, alebo v profile mám hobby mail.

              Som pomerne flexibilný, pivu veľmi neublížim, ale čaje a pod. veci, to môžem.

              • RE: Starý WORD, ten ťa už unavil nakoniec #3 29.02 | 13:54
                Avatar Miroslav Bendík Gentoo  Administrátor

                Za mňa takmer kedykoľvek, kdekoľvek, nemám pevnú pracovnú dobu. K pivu mám vzťah asi taký, že som východniar, ale podľa možnosti alkohol nepijem.

                Otázka vedeli by sme zohnať ešte niekoho?

                • RE: Starý WORD, ten ťa už unavil nakoniec #3 01.03 | 07:11
                  Avatar Richard Antix  Používateľ
                  Otázka vedeli by sme zohnať ešte niekoho?

                  Hm, v mojej malej sociálnej bubline nie.

                  Jedine takto verejne vyzvať všetkých Tatrancov, Liptákov, Spišiakov a (Za)Magurovanov, a samozrejme aj širšie okolie, ktorí sa chcú pohádať o linux vs. GNU/linux, nech sa pridajú 😃

                  • RE: Starý WORD, ten ťa už unavil nakoniec #3 01.03 | 10:20
                    Avatar Miroslav Bendík Gentoo  Administrátor

                    Ok, tak teda takto verejne vyzývam. Skúsim niekde vo svojej bubline zaloviť, ale mám taký pocit, že sa mi všetko rozutekalo do zahraničia.

                    Ozaj kde by to mohlo byť? Ja nie som priamo z PP, takže nemám až taký prehľad.

                    • RE: Starý WORD, ten ťa už unavil nakoniec #3 03.03 | 10:21
                      Avatar Richard Antix  Používateľ
                      > že sa mi všetko rozutekalo do zahraničia.

                      Presne, ja mám tú istú skúsenosť. Väčšina ľudí je mimo PP. Aspoň, že sa nám podarí raz ročne (25. alebo 26. 12.) stretnúť, aj v pomerne veľkom počte.

                      • RE: Starý WORD, ten ťa už unavil nakoniec #3 03.03 | 17:56
                        Avatar Miroslav Bendík Gentoo  Administrátor

                        Otázka kde zostáva. Nejaká cukráreň? Kaviareň? Mačacia kaviareň?

                        • RE: Starý WORD, ten ťa už unavil nakoniec #3 04.03 | 09:42
                          Avatar Richard Antix  Používateľ

                          No, ak by to záležalo odo mňa, tak zvyknem chodiť do týchto podnikov:

                          - Minipivovar Tatras (https://minipivovartatras.sk/)

                          ☺ vzorkovník pív, dobré jedlo

                          ☹ obmedzený výber nápojov, ak človek nechce pivo

                          - S manželkou prevažne cukráreň Sladký sen (https://map.visitpoprad.sk/gastronomy/5d65b393-ac7b-41a6-aef0-03a3ff56b659?lang=sk)

                          ☺ zákusky

                          ☹ cukráreň

                          - Cat Café (https://www.catcafeclub.sk/o_nas.php)

                          ☺ mačky, káva

                          ☹ neviem, ako zvládli Covid, ale web majú stále

                          - Café Razy (https://www.caferazy.sk/)

                          ☺ pizza, výber nápojov

                          ☹ väčší hluk

                          • RE: Starý WORD, ten ťa už unavil nakoniec #3 08.03 | 06:30
                            Avatar Miroslav Bendík Gentoo  Administrátor

                            Ja by som zatiaľ zvolil minipivovar. Nikoho iného som zatiaľ nezohnal, vlastne som stihol maximálne dať AI navrhnúť logo, ale nedokopal som sa k tomu opraviť pár chýb a poslať pár ľuďom.

                            Otázka znie kedy? Inak budúci týždeň ešte neviem kedy, ale 1 deň medzi pondelkom a štvrtkom budem pracovne preč a v piatok - nedeľu som na PyCon SK v BA.

                            • RE: Starý WORD, ten ťa už unavil nakoniec #3 09.03 | 09:06
                              Avatar Richard Antix  Používateľ

                              Ech, napísal som odpoveď, ale po náhľade neodoslal ;)

                              V skratke - okrem piatku, kedy sa vrátim do PP až okolo 19-tej, ostatné dni nemám (zatiaľ) nič fixné, čo sa týka podvečeru(-ov).

                              Takže sa pružne prispôsobím tvojmu harmonogramu. Keď budeš mať jasnejšie čo a ako, tak napíš...

                              • RE: Starý WORD, ten ťa už unavil nakoniec #3 09.03 | 11:43
                                Avatar Miroslav Bendík Gentoo  Administrátor

                                Ok, predbežne budúci týždeň bude lietajúci ale po ňom asi v pohode. Časovo by som to dal na 16:00. Skúsil som v miestnej dedinskej fb skupine, či sa niekto neozve. Vidím, že obaja sme trochu aj hardvéristi, bolo by fajn keby sa nejaký bastlič hardvérista ešte našiel.

                                • RE: Starý WORD, ten ťa už unavil nakoniec #3 10.03 | 09:30
                                  Avatar Richard Antix  Používateľ

                                  O 16:00 mi to vyhovuje. Nie som nočný vták a radšej vstávam zavčasu ráno.

                                  Uvidíme, či sa niekto ešte nájde, aj keď veľkú nádej tomu nedávam. Nie som aktívny na soc. sieťach, takže ani neviem, či nejaká podobná skupina v našom okolí existuje.

                                  • RE: Starý WORD, ten ťa už unavil nakoniec #3 10.03 | 14:43
                                    Avatar Miroslav Bendík Gentoo  Administrátor

                                    No sova tiež zrovna nie som. Posielam graf času kedy pracujem ;) Dole je to rozsekané podľa dní ;)

                              • RE: Starý WORD, ten ťa už unavil nakoniec #3 09.03 | 17:51
                                Avatar Miroslav Bendík Gentoo  Administrátor

                                Pridávam ešte upravené logo (generované AI). Rozhodne dopadlo lepšie než keď som chcel propagačný obrázok linuxaka ;) Mačka v trúbo-krbe top ;)

                                • RE: Starý WORD, ten ťa už unavil nakoniec #3 10.03 | 09:31
                                  Avatar Richard Antix  Používateľ

                                  Logo je super. A aj tá mačka :) a celkový surrealistický nádych.

                                  • RE: Starý WORD, ten ťa už unavil nakoniec #3 13.03 | 09:11
                                    Avatar Miroslav Bendík Gentoo  Administrátor

                                    Ok, čo tak streda, 20.3.2024, 16:00, Minipivovar Tatras?

                                    • RE: Starý WORD, ten ťa už unavil nakoniec #3 13.03 | 12:59
                                      Avatar Richard Antix  Používateľ

                                      Súhlas, môže byť. Ak by sa niečo zmenilo, dáme si vedieť...