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í
×
    včera 20:55 | Nová verze

    Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 15:55 | Pozvánky

    Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových

    … více »
    Zdenek H. | Komentářů: 1
    včera 15:44 | IT novinky Ladislav Hagara | Komentářů: 2
    včera 13:55 | Komunita

    Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.

    Ladislav Hagara | Komentářů: 9
    28.4. 23:33 | Nová verze

    Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    28.4. 17:22 | Zajímavý projekt

    TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.

    Ladislav Hagara | Komentářů: 0
    28.4. 17:00 | Nová verze

    Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.

    Ladislav Hagara | Komentářů: 5
    27.4. 21:33 | Nová verze Ladislav Hagara | Komentářů: 0
    26.4. 23:00 | Komunita

    V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (58%)
     (1%)
     (9%)
     (21%)
     (4%)
     (1%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 485 hlasů
     Komentářů: 18, poslední 17.4. 12:41
    Rozcestník

    Menu v icewm

    17.4.2007 13:21 | Přečteno: 1829× | 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.