Hlavní navigace

Conky a Lua skript v1.0

18. 4. 2016 12:38 (aktualizováno) Vladislav Konopík

Nová verze Lua skriptu pro Conky.

Základ skriptu nyní obsahuje několik funkcí pro podporu současných i budoucích modulů. Celý skript včetně modulů byl zásadně přepracován s cílem, vše zjednodušit.

Momentálně jsou dostupné jen moduly systém, procesy, počasí, network a disky. Modul s televizním programem a modul pro informace o doručeném emailu ve skriptu nejsou zahrnuty, neboť vykazují neočekávané chování.

Archív se soubory je ke stažení na:

http://ulozto.cz/x81LmbQo/lua-script-for-conky-v1–0-tar-gz

Kontrola SHA1:  fa4800f4ab964083fbaf5d766­5d0ba9cd6419458

Archív obsahuje dva soubory. Soubor ‚conky_rc_v1.0‘ pro nastavení (obsahuje jen naprosté minimum) aplikace Conky a skript ‚lua_for_conky_v1.0.lua‘ starající se o vykreslování požadovaných informací.

Náročnost skriptu:

Modul system :

Zde se událo mnoho změn. Graf pro cpu nyní obstarává Lua místo conky_rc souboru. Sice není graf tak „jemný“, ale díky tomuto přesunutí došlo k zjednodušení souboru ‚conky_rc‘ a graf získal i nové možnosti.

Kliknutím na název cpu, lze skrýt nebo zobrazit grafy. Kliknutím na graf se změní styl grafu – graf na řádek / dva grafy vedle sebe.

Ve skriptu je momentálně podpora pro až 8 jader procesoru, ale jejich navýšení není složité (jde o změnu jednoho řádku).

Modul procesy :

Viditelné jsou pouze úpravy tlačítek pro výpis informací.

Modul počasí :

Zde jsem přidal tlačítka pro možnost zobrazovat předpověď i pro jednotlivé kraje. Kliknutelný text ‚Aktualizovat‘ se zobrazuje pouze, je-li předpověď starší alespoň jednoho dne a je-li dostupná brána do internetu.

Modul network :

Přidáno několik informací o síťovém zařízení.

Modul disky :

Bar vytížení oddílů nyní zobrazuje volné místo (výchozí stav) v jednotkách i procentech a po kliknutí na ‚blok‘ těchto barů se hodnoty změní na obsazené místo oddílu daného zařízení.

Barva barů je červená pro „systémové“ oddíly a modrá pro oddíly připojené do ‚/media/‘. Se změnou skriptu pro jiný adresář (Fedora atd.) případně poradím (změna jednoho řádku).

Nutné nastavení skriptu :

Pro uživatele jsem potřebná nastavení zkrátil na toto:

conky_rc

řádek 30 – změnit cestu k adresáři se soubory pro conky

skript Lua

řádek 26 – změnit cestu k adresáři se soubory pro conky

řádek 42 až 50 – zadat pořadí zobrazení modulů

Pro výchozí zobrazení slouží proměnná ‚local menu‘. Po vyhledání ‚local menu‘ změňte hodnotu na ‚0‘ – zavřené menu, nebo ‚1‘ – otevřené menu.

Pár řádků nad ‚local menu‘ je název modulu, tak by nemělo dojít k úpravě nepožadovaného modulu.

Sdílet

  • 18. 4. 2016 7:27

    kritik (neregistrovaný) 88.103.84.---

    Ha, nejste normální (nic ve zlým). Jen tak pro zábavu jsem porovnal první skript a dnes uvedenou verzi. To není jen několik změn. Přepsal jste skoro veškerou 'logiku'.
    Nevím jaké máte zkušenosti s programováním, ale jako senior programátor si dovolím pár vět.
    Určitě jde udělat některé věci lépe a šetrněji vůči systému. Na druhou stranu jsem byl po několika minutách schopen orientovat se v kódu.

    + modul system, cpu graf jste vyřešil opravdu hezky
    + modul počasí, blok pro rozdělení textu předpovědi
    + modul disky, přepracovaná logika je přehlednější než původní
    - modul disky, v mém systému se nepřipojují výměnné disky do "media" - upraveno během chvilky, ale přidání celého bloku kódu pro jiný adresář není nic nepřekonatelného
    - velmi stroze popisujete kód, někde nápověda schází

    Celkově se jedná z mého úhlu pohledu o dobře napsaný kus kódu (chybička se asi najde). V práci kontroluji horší výplody programátorů. Na závěr se zeptám na funkci reload. Uniká mi její smysl.

  • 18. 4. 2016 23:36

    bez přezdívky

    Děkoji za konstruktivní kritiku. Mé zkušennosti ohledně prograování jsou skoupé.
    Basic na 8bit arch, assembler a arex na Amize, C a C++ na Intelu. Funkce reload slouží jen ke správnému nastavení pozice kurzoru. U XFCE prostředí se mi stávalo, že po startu systému se text označoval ke kliknutí i když nebyl kurzor na textu. Reload skriptu napomůže ke správnému určení pozice vůči textu.