Hlavní navigace

Programy z dílny DanielSoftu

Daniel Novotný 19. 7. 2004

Napadlo mě, že bych se mohl se čtenáři Roota podělit s open source programy pro Linux, které jsem vyvinul. Jedná se spíše o takové experimentíky, snad budou někomu užitečné. Programy jsou napsány v Perlu či v kombinaci Perlu a shellu (výjimku tvoří program viewdoc, jehož jádro je v jazyce C), byly vyvinuty pod Linuxem, ale měly by chodit (netestováno) i pod jinými UNIXovými systémy.

viewdoc

Jak název napovídá, program slouží k prohlížení dokumentů typu .doc. Jedná se o dobře (špatně?) známý formát MS Office, program by měl pracovat s novým unicodovým i starším (Word 95) formátem. Vypisuje se pouze základní text, tabulky, efektní efekty ani podobné vymyšlenosti se nepodporují. Co se naopak podporuje, je čeština. Program slouží hlavně pro rychlé prohlížení českých .doc souborů.

cman

Program cman je front-end k prohlížeči manuálových stránek, programu man(1). Akceptuje naprosto stejné parametry, které předává pod sebou spuštěnému manu, a jeho vlastní činnost spočívá v obarvování výstupu, aby byl přehlednější. Vypadá to podobně, jako když na souboru typu man zmáčknete F3 v Midnight Commanderovi. Cman rozlišuje dvě úrovně obarvení a navíc detekuje přepínače podle znaku „-“ a zobrazuje je modře. Manuálové stránky jsou po obarvení přehlednější, barvičky fungují na konzoli i v xtermu.

kompiluj

Když jsem kdysi přecházel z Pascalu na C, divil jsem se jedné věci: u Pascalu stačilo napsat „uses modul“ a linker modul připojil, pokud však v Céčku napíšete například „#include <math.h>“, musíte ještě překladači sami říct, že má připojit knihovnu -lm. Tehdy jsem se divil, že překladač připojení knihovny sám nepozná a neudělá podle toho „#include“. Později mě napadlo, že pokud tuto funkcionalitu nenabízí samotný překladač, mohl by ji nabízet nějaký jeho front-end, a pokud takový front-end neexistuje, mohl bych jej napsat. Tak vznikl projekt „kompiluj“. Na příkazové řádce program očekává céčkové či pluskové soubory, pro něž zavolá gcc, případně g++, a přidá příkazy pro linkování knihoven, jejichž existenci odvodil z příkazů „#include“ uvnitř těchto souborů. Přepínače nechává na pokoji a rovněž předá. Konfigurace programu spočívá v jeho přímé editaci, v přidání asociací mezi „#include“ a přidávaný parametr. Asociativní pole %asoc zpočátku vypadá takto:

%asoc= ( "math.h"     => "-lm",
         "iostream.h" => "-liostream",
         "vga.h"      => "-lvgagl",
         "X11/Xlib.h" => "-L/usr/X11R6/lib -lX11"
         "curses.h"   => "-lcurses"
       );

Program se hodí k rychlé a pohodlné kompilaci nějakého programu/části programu, kde se musí na řádku přidávat nějaké knihovny, a vy teď honem přesně nevíte jaké.

Daniel's Menu System

Tento prográmek vám umožňuje vytvářet menu. K aktivaci položky menu stačí stisk klávesy (nemusí se potvrzovat ENTERem) a tvorba menu je taktéž velmi jednoduchá – prostě na každý řádek definičního souboru napište jeden příkaz, který se spustí po zvolení té které položky. Příkaz slouží zároveň i jako popisek položky menu – jak prosté. Pokud místo příkazu uvedete název souboru s příponou .dms, jedná se o submenu: program dms sám sebe rekurzivně spustí na daný soubor. To je k tomuto jednoduchému programu vše.

Nyní přejdeme od „užitkových“ programů k programům určeným spíše pro zábavu.

DaGGeR

Název je zkratka: „Danielsoft/Gnu Generátor Rýmů“. Je určen pro pomoc básníkům. Zadáte konec slova a program prohledá svou databázi slov a vypíše všechna slova s daným koncem – mezi nimi budou i všechna ta, která se rýmují s původně zamýšleným slovem, jehož konec jsme napsali. Databáze slov je textový soubor s velkým množstvím slov „vykuchaný“ z databáze programu ispell (pozn. red.: zdravíme Petra Koláře :) –Johanka).

V balíčku programu DaGGeR je ještě jeden program, zvaný PIND (Pind Is Not Dagger). Ten využívá stejné databáze slov a stejného „enginu“ ke generování náhodných rýmovaných básní, většinou pěkně surrealistických, například:

pomoci automobil
vnitřní kanárek
dialog automobil
porada pazourek

odevzdat kodrcavý
odkašlávání průměrování
odbíhat nechápavý
konzument zadumání

Abulafia

Tento program je pojmenován podle počítače z knížky Foucaultovo kyvadlo Umberta Ecca, kterou všem doporučuji k přečtení (počítač v knížce byl zase pojmenován podle starověkého židovského mystika). Stejně jako v knize slouží program Abulafia k věštění. Funguje to tak, že položíte otázku, spustíte program a on odpoví náhodným množstvím náhodných řádků ze svého souboru, které následně můžete analyzovat jako výsledek věštby. Na příkazovém řádku zadáváte buď interval <číslo>-<číslo> značící rozmezí počtu řádků v souboru, <číslo> značící přesný počet řádků, či (pokud je parametr jiného tvaru) jméno souboru s řádky. Implicitní soubor s řádky je totožný se souborem programu DaGGeR, ale můžete samozřejmě vytvořit i vlastní soubor, obsahující např. slova či věty z vámi dotazované problematiky.

Tak to je ode mne vše, doufám že vám alespoň jeden z prográmků k něčemu bude.

Našli jste v článku chybu?

17. 8. 2004 1:49

uživatel si přál zůstat v anonymitě

uz tady chybi jen standa novak a fanda bilek ...

24. 7. 2004 23:27

tobich (neregistrovaný)

Myslim, ze to byl Jacopo Belpo a Casaubone, ale to je jedno... No, ani ten opravdovej Abulafia nikdy nevestil, jenze lidi maj radi slovo "mystik", hm... Ten clanek byla ale fakt hovadina i bez toho.

Vitalia.cz: Chtějí si léčit kvasinky. Lék je jen v Německu

Chtějí si léčit kvasinky. Lék je jen v Německu

Vitalia.cz: Jak vybrat ořechy do cukroví a kde mají levné

Jak vybrat ořechy do cukroví a kde mají levné

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

120na80.cz: Rovnátka, která nejsou vidět

Rovnátka, která nejsou vidět

Podnikatel.cz: Babiše přesvědčila 89letá podnikatelka?!

Babiše přesvědčila 89letá podnikatelka?!

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

Root.cz: Certifikáty zadarmo jsou horší než za peníze?

Certifikáty zadarmo jsou horší než za peníze?

120na80.cz: Jak oddálit Alzheimera?

Jak oddálit Alzheimera?

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

DigiZone.cz: Rádio Šlágr má licenci pro digi vysílání

Rádio Šlágr má licenci pro digi vysílání

Vitalia.cz: To není kašel! Správná diagnóza zachrání život

To není kašel! Správná diagnóza zachrání život

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

DigiZone.cz: Flix TV má set-top box s HEVC

Flix TV má set-top box s HEVC

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0