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 00:33 | Nová verze

    Firma Proxmox vydala novou serverovou distribuci Datacenter Manager ve verzi 1.0 (poznámky k vydání). Podobně jako Virtual Environment, Mail Gateway či Backup Server je založená na Debianu, k němuž přidává integraci ZFS, webové administrační rozhraní a další. Datacenter Manager je určený ke správě instalací právě ostatních distribucí Proxmox.

    |🇵🇸 | Komentářů: 0
    včera 23:44 | Nová verze

    Byla vydána nová verze 2.4.66 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 5 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | IT novinky

    Programovací jazyk JavaScript (Wikipedie) dnes slaví 30 let od svého oficiálního představení 4. prosince 1995.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.

    Ladislav Hagara | Komentářů: 2
    včera 02:44 | Komunita

    Bylo rozhodnuto, že nejnovější Linux 6.18 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2027. LTS jader je aktuálně šest: 5.10, 5.15, 6.1, 6.6, 6.12 a 6.18.

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

    Byla vydána nová stabilní verze 3.23.0, tj. první z nové řady 3.23, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    3.12. 18:11 | Nová verze

    Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    3.12. 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 16
    3.12. 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    3.12. 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

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

    Dotaz: Automaticka generace popisek vytazenych ze souboru

    14.1.2005 10:57 Miroslav Andrle | skóre: 18
    Automaticka generace popisek vytazenych ze souboru
    Přečteno: 260×
    Jiz nekolik hodin se trapin nad pomerne jednoduchou veci. Mam vetsi mnozstvi souboru s nasledujici syntaxi:

    Toto je zacatek souboru ukazka.m.
    function D=ukazka(parametry);
    % UKAZKA toto je kratka popiska teto funkce
    % tato kratka popiska muze mit nekolik radku
    %
    % Zde nasleduje podrobnejsi popis
    
    Chtel bych udelat webovskou stranku, kdy by byly tyto funkce popsany. Tzn. zpracovat kazddy tento soubor na
  • ukazka.m toto je kratka popiska teto funkce tato kratka popiska muze mit nekolik radku
  • PS: zde jsem se snazil napsat kus html kodu s tagem li

    Prakticky vzdy to znamena nacist soubor od druhe radky, ignoravat prvni slovo napsane velkymi pismeny. Nekam nacist vse dokud nenarazim na prazdny radek, ktery obsahuje pouze %.

    No a pak zaridit pozadovany vypis.

    Snazim se naky zpusobem vyuzit sed, ale zatim mi to stale nejde.

    Chtel jsem to napsat v BASHi, no pokud se mi to nepovede napisi si v to C.

    Odpovědi

    14.1.2005 12:40 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    C a bash? To sis tedy vybral blbé nástroje. V sedu by to s jistým sebezapřením šlo, ale bude to asi humus nebo několik sedů zřetězených | (1d;/^[^%]/,$d;s/^% *// vybereš jen popisek, etc.).

    Předně bych se podíval, zda pro ten jazyk (to je Matlab?) neexistuje nějaký doxygen, gtk-doc, ..., a použil jej (to sice znamená nutnost úpravy formátu těch komentářů, ale ve výsledku by se to vyplatilo).

    Jinak to napiš v perlu, pythonu, ruby, awk, ..., zkrátka něčem, co je k transformaci textu vhodné.
    Stanislav Brabec avatar 14.1.2005 12:49 Stanislav Brabec | skóre: 45 | Praha
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    Takový jednoduchý úkol by měl jít i v čistém bashi bez sedu.
    export LC_ALL=C
    shopt -s extglob
    exec 3<file
    while read -u3 ; do
    ...
    if test "$REPLY" = "" ; then
    ...
    else
    ...
    echo "${REPLY#% *([A-Z]) }"
    ...
    fi
    ...
    done
    exec 3<&-
    
    Více viz man bash(1). Výrazy, které umí bash v extglob režimu, by na to měly stačit.

    Uvedený výraz ale požere slovo napsané velkými písmeny vždy.
    14.1.2005 13:09 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    Pak musíš odstranit %, dopsat jméno funkce/souboru, HTML značky, nahradit <, >, & entitami, ... Samozřejmě, že to jde, stejně jako bys to mohl napsat v postscriptu, assembleru nebo brainfucku. Ale proč?
    Stanislav Brabec avatar 14.1.2005 13:37 Stanislav Brabec | skóre: 45 | Praha
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    Zaprvé to autor chtěl (asi je mu Bash sympatický), zadruhé tento problém jde v bashi řešit celkem snadno a bez oklik. Odstranění % dělá už výše uvedený výraz.

    Nahrazení entit:
    STRING="${STRING//&/&amp;}"
    STRING="${STRING//</&lt;}"
    STRING="${STRING//>/&gt;}"
    
    Na druhou stranu, ve vyšším jazyce na to bude knihovna. Dělám v Bashi celkem velký projekt, a pokud se vyvarujete nečitelných výrazů (nebo alespoň z výrazů typu tag=${vtag//\'\''\'\'''\''/\'\''\'\'''\''\\\'\''\'\'''\''\'\''\'\'''\''} uděláte alias, lze v bashi psát celkem čitelně. Na druhou stranu je bash celkem neodladěný a při použití neobvyklých konstrukcí padá.
    14.1.2005 13:47 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    Ne, odstraňuje % jen z prvního řádku s UKAZKA, v ostatních ho nechává. Ale to je celkem jedno, je jasné, že ho odstranit lze.

    Na druhou stranu je bash celkem neodladěný a při použití neobvyklých konstrukcí padá.

    Sním o jazyku, který by takový nebyl...
    14.1.2005 13:01 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    a aj v pythone :) :

    from os import listdir
    from os.path import join
    from string import replace, split

    def popisky(cesta):
    for i in listdir(cesta):
    try:
    file_obj = open(join(cesta, i), "r")
    except IOError, error:
    print error
    return 0
    lines = file_obj.readlines()
    file_obj.close()
    popis = ""
    for i in lines[1:]:
    if i[0] != "%":
    break
    popis = str(popis) + str(i[2:])
    popis = replace(popis, "\n", "")
    popis = replace(popis, "\r", "")
    popis = popis[len(split(popis)[0])+1:]
    print popis
    return 1

    14.1.2005 13:03 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    a aj v pythone :) :

    from os import listdir
    from os.path import join
    from string import replace, split

    def popisky(cesta):
      for i in listdir(cesta):
      try:  
          file_obj = open(join(cesta, i), "r")
        except IOError, error:
          print error
          return 0
        lines = file_obj.readlines()
        file_obj.close()
        popis = ""
        for i in lines[1:]:
          if i[0] != "%":
            break
          popis = str(popis) + str(i[2:])
        popis = replace(popis, "\n", "")
        popis = replace(popis, "\r", "")
        popis = popis[len(split(popis)[0])+1:]
        print popis
      return 1
    14.1.2005 18:43 Miroslav Andrle | skóre: 18
    Rozbalit Rozbalit vše Re: Automaticka generace popisek vytazenych ze souboru
    Dekuji vsem za pomoc, nakonec jsem si stahl perlovy script m2tex.pl, ktery prevadi dokumentaci ze souboru MATLABu do TeXu a upravil ho k obrazu svemu.

    Založit nové vláknoNahoru

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

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