abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    dnes 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 0
    dnes 12:33 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Nová verze

    Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 3
    dnes 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    dnes 00:33 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 16:00 | Komunita

    Fedora zve na dvoudenní testování (2. a 3. prosince), během kterého si můžete vyzkoušet nové webové uživatelské rozhraní (WebUI) projektu FreeIPA. Pomozte vychytat veškeré chyby a vylepšit uživatelskou zkušenost ještě předtím, než se tato verze dostane k uživatelům Fedory a celého linuxového ekosystému.

    Ladislav Hagara | Komentářů: 4
    včera 13:22 | IT novinky

    Eben Upton oznámil zdražení počítačů Raspberry Pi, kvůli růstu cen pamětí, a představil 1GB verzi Raspberry Pi 5 za 45 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Humor

    Linus Torvalds na YouTube kanálu Linus Tech Tips staví dokonalý linuxový počítač.

    Ladislav Hagara | Komentářů: 6
    včera 04:11 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (16%)
     (24%)
     (16%)
     (18%)
    Celkem 423 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Menu v icewm

    17.4.2007 13:21 | Přečteno: 1888× | blog | Výběrový blog

    Jak jsem slíbil (http://www.abclinuxu.cz/forum/show/168981), tak činím. Zkusil jsem popsat možnosti menu v IceWM.

    Po letech mnoha letech používání počítače jsem získal některé návyky. Jedním z nich je používání kvalitního menu ve window manageru. Nejprve jsem používal zejména WindowMaker, tam je velmi dobré menu, ale já jsem jej tak nějak pomíjel a používal převážně dock. Pak přišlo období s IceWM, kdy jsem měl k dispozici ikony na liště a pak také ikony na ploše zajištěné aplikací Rox. Jenže plocha je sice dobrá úvodní spuštění hlavní aplikace, ale pak je neustále zakryta nějakými okny a tudíž je víceméně nepřístupná a na liště je omezené místo. Vím o tom, že jsou klávesové zkratky které ji dokáží vytáhnout do popředí, ale to mi připadalo nepohodlné, když jsem si chtěl jen spustit další okno s dalšími potřebnými daty a ono najednou všechno zmizelo. Nevím zda jsem začal používat počítač intenzivněji nebo prostě jen jiným způsobem, takže jsem objevil kouzlo menu.

    Postupně jsem začínal více a více používat menu až nakonec jsem odboural ostatní způsoby spouštění aplikací a používám už téměř výhradně menu. (A samozřejmě klávesové zkratky.)

    Nedávno jsem narazil na text ukazující, že někteří lidé považují IceWM za window manager druhé kategorie, který se nedá pořádně nastavit a nemá pořádné menu. Myslím že to není pravda, IceWM podle mého názoru má možnosti menu velmi dobré a pokusím se je popsat.

    Statické menu

    Základní statická forma menu vypadá takto:

      prog "Terminál rxvt" "xterm" rxvt
      prog "Gvim" "vim" gvim
      menu "test" "folder" {
         prog "OpenOffice" "ooo_gulls" openoffice
         prog "Lyx" "emacs" lyx
      }
      prog "ROOT terminál" "control-center" rxvt -bg darkred -e su -
    

    Na prvním místě je klíčové slovo prog nebo menu které říká, že se jedná o spuštění programu, nebo submenu, které uvozuje vnořené submenu. Pak následuje nadpis položky, pokud obsahuje mezeru nebo jiné "speciální" znaky, musí být v uvozovkách, jinak uvozovky nejsou povinné. Následuje ikona.

    Ikona může být název ikony dle konvence IceWM (viz. manuál) nebo to může být i obecně jakýkoliv grafický soubor ve formátu xpm s plnou cestou nebo bez cesty pokud se nachází v IconPath. Pokud je IceWM kompilováno s podporou Imlib jsou podporovány další grafické formáty - bmp, jpeg, ppm, tiff, gif, png, ps, xpm. Pokud se uživatel nechce ikonou zabývat, napíše jako název ukony pomlčku a žádná ikona není zobrazena. Zajímavou sbírku ikon lze najít na http://bbs.cvut.cz/~covex/icewm/iceicons/.

    Pak následují složené závorky v případě submenu nebo příkaz pro provedení.

    Speciální položky

    Součástí menu mohou být některé speciální položky.

    separator slouží k vytvoření oddělovací čáry v menu.

    runonce slouží ke zvláštnímu způsobu spouštění položek. Ono once napovídá, že se IceWM podívá, zda již neexistuje okno zadané třídy a pokud ano, nespouští další program, ale jen okno vytáhne do popředí.

      runonce "title" icon_name "res_name.res_class" program_executable options
      runonce "title" icon_name "res_name" program_executable options
      runonce "title" icon_name ".res_class" program_executable options
    

    restart slouží k přechodu do jiného wm. IceWM se ukončí a je nahrazen zadaným wm.

      restart "title" icon_name program_executable options
    

    Vložené soubory

    A nyní se dostáváme k zajímavějším možnostem menu. Bohužel dále uvedené možnosti mají jedno nepříjemné omezení - nejdou použít jako seznam položek v exitující větvi (sub)menu, ale jen jako samostatná submenu. Takže nelze napsat část větve staticky, pak zařadit např. dynamické položky a pokračovat zase statickými položkami na stejné úrovni.

    Vložení dalšího souboru snad není třeba nijak upřesňovat funkce je zřejmá.

      menufile Programs folder programs
    

    Bude vytvořeno subnemu "Programs" s ikonou "folder" a jako položky se natáhne obsah souboru programs. Pozor na jednu vlastnost - obsah souboru programs se natáhne jen při vytváření menu - typicky při prvním zobrazení, další změny změny v souboru programs se pak již nepromítnou do dalšího znovuvytvoření menu. Kdy to bude závisí na nastavení IceWM - u mne při každé změně hlavního souboru. Restart IceWM, samozřejmě, nové natažení menu vynutí kdykoliv.

    Takto je třeba možno vkládat do menu součásti společné více uživatelům.

    Generované menu

    Menu lze i generovat programem. Položky se čtou ze standardního výstupu.

      menuprog Gnome folder icewm-menu-gnome1 --list 
    

    Místo programu icewm-menu-gnome1 --list, lze dosadit jakýkoliv vlastní generátor menu. menuprog se spouští též jen jednou při vytváření menu stejně jako v předchozím případě při vkládání souboru. Takže tato varianta není tak úplně dynamická.

    Dynamické generované menu

    A nyní se konečně dostáváme ke skutečně dynamicky generovanému menu.

    Syntaxe je následující:

      menuprogreload title icon timeout command
    

    Timeout je zadáván v sekundách a určuje dobu platnosti položek získaných z výstupu příkazu. Pokud je timeout 0, pak se příkaz spouští při každém zobrazení podmenu.

    Něco málo mnou používaných příkazů jako ilustrační příklad (exec v druhém řádku není příkaz, ale název ikony - obrázku ozubeného kola ;-) ):

      menuprogreload "Procházet..." folder 0 dirBrowserMenu.sh /home/martin roxopen.sh
      menuprogreload "Procesy" exec 0 process.sh 
    

    První položka umožňuje rekurzívní procházení adresářů, druhá je jednoduchý správce procesů.

    Pokud někoho zajímá jak takový script vypadá, tady je dirBrowserMenu.sh:

      #!/bin/bash
      # Popis:
      #       $1 - adresář k prozkoumání
      #       $2 - příkzaz pro otevírání souborů
      
      echo prog \"Otevřít...\" "folder" $2 $1
      echo separator 
      
      find $1 -maxdepth 1 -mindepth 1 -type d -not -name '.*' \
        -printf "menuprogreload \"%f\" folder 0 $0 \"%p\" $2\n"
      
      echo separator 
      
      find $1 -maxdepth 1 -mindepth 1 -not -type d -not -name '.*' -not -name '*.clean' \
        -printf "prog \"%f\" file $2 \"%p\"\n"
    

    a tady je process.sh:

      #!/bin/bash
      top -U`whoami` -b -n1 | tail +8 | sed '/^[^[:space:]]*$/d' | \
      awk '{print $1 " \"" $12 " (" $9 "; " $8 "; " $6 "; " $4 ")\"" }' | \
      while read PID CAPTION; do
        echo menu $CAPTION \"-\" {
        echo   prog '"renice +5" "-" renice +5' $PID
        echo   prog '"kill" "-" kill' $PID
        echo   prog '"kill -9" "-" kill -9' $PID
        echo }
      done
    

    Nedělám si žádné nároky na úplnost a neprůstřelnost, ale u mne to funguje v dostatečné míře.

    Jak vidno je menu v IceWM je jednoduché a přitom má dostatečné možnosti. Takže si každý snadno může menu vyrobit podle svých potřeb.

           

    Hodnocení: 91 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    David Ježek avatar 17.4.2007 20:28 David Ježek | skóre: 83 | blog: Mostly_IMDB
    Rozbalit Rozbalit vše Re: Menu v icewm
    no koukám že se k tomu nikdo nemá, tak to řeknu já: díky moc, icewm plánuju na jednu šunku a tohle se mi bude hodně hodit.
    Josef Kufner avatar 17.4.2007 20:30 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Menu v icewm
    Jojo, IceWm má výborné menu. Ještě dolním, že v názvu položky lze použít podtržítko a tím nastavit klávesu na kterou bude položka reagovat (podtržené písmenko).

    A taky si přihřeju polívčičku: Pokud chcete pohodlně vybírat kam se připojit po ssh nebo zapínat/vypínat síťovky v Debianu (i s profilama), tak mám pár věcí na svém webu.
    Hello world ! Segmentation fault (core dumped)
    18.4.2007 13:57 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Menu v icewm
    Dekuji pekne za vysvelteni ;)

    Nevyjadril jste se, zda vam ten gnome2icewm script funguje. Takze kdyby nekomu ne, tak muze pouzit primitivni skript, ktery jsem narychlo spichnul, abych nemusel psat menu rucne.
    18.4.2007 14:11 Martin Lebeda | skóre: 22 | blog: Martinuv_blog | Plzeň
    Rozbalit Rozbalit vše Re: Menu v icewm
    Nemám gnome a tudíš nepoužívám gnome2icewm. Ani to nikde netvrdím - používám výhradně vlastní scripty.
    22.10.2007 15:32 ahlstrom | skóre: 2
    Rozbalit Rozbalit vše Re: Menu v icewm
    Ja icewm nepouzivam na sunce ale na svem pocitaci na kterem delam denne, musim rict ze lepsi window manager jsem nevidel. Musim rict, ze jak vidim nektere ty windowsaky jak si zapnou ve skole notebook a jak jim najede graficke prostredi, tak musi jeste dalsi 3 minuty cekat nez se jim zastavi disk. S linuxem, a zvlaste s IceWM mohu pracovat ihned po najeti Xwindow

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.