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 12:50 | Komunita

Mozilla.cz informuje, že dosud experimentální funkce Page Shot z programu Firefox Test Pilot (zprávička) se stane součástí Firefoxu. Page Shot je nástroj pro vytváření snímků webových stránek. Umí výběr oblasti, prvku stránky (např. odstavce), nebo uložení snímku celé stránky. Snímky lze ukládat na disk nebo nahrávat na server Mozilly. Nedávno bylo oznámeno, že se součástí Firefoxu stane Activity Stream.

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

Po 10 týdnech vývoje od vydání Linuxu 4.9 (zprávička) oznámil Linus Torvalds, mj. již 20 let žijící v USA, vydání Linuxu 4.10 (LKML). Přehled nových vlastností a vylepšení například na Kernel Newbies a v Jaderných novinách (1, 2 a 3). Kódové jméno Linuxu 4.10 je Fearless Coyote.

Ladislav Hagara | Komentářů: 1
včera 15:55 | Zajímavý projekt

Vyzkoušet si příkazy a vyřešit několik úkolů lze na stránkách Commandline Challenge (CMD Challenge). Úkoly lze řešit různými způsoby, důležitý je výsledek. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

Ladislav Hagara | Komentářů: 13
18.2. 17:35 | Bezpečnostní upozornění

Německá Bundesnetzagentur (obdoba českého ČTU) zakázala na německém území prodej panenky Cayla kvůli „špionáži“ dětí. Tato elektronická hračka obsahuje mikrofon, reproduktor a kameru a bezdrátové komunikační rozhraní, pomocí kterého se hračka připojuje na servery výrobce. Takovýmto způsobem může hračka pomocí umělé inteligence „odpovídat“ na dotazy dítěte. Hlavní problém bude ale asi někde jinde, podle prvotních zpráv může

… více »
Petr Tomášek | Komentářů: 27
17.2. 15:30 | Bezpečnostní upozornění

CSIRT.CZ upozorňuje, že bezpečnostní experti objevili nový typ malwaru, jenž cílí na open source e-commerce platformu Magento. Malware je zajímavý tím, že se jedná o první svého druhu, jehož kód zůstává skrytý v SQL databázi zasaženého e-shopu. Škodlivý kód je volán pomocí tzv. SQL trigerru, který je spouštěn při každém vytvoření objednávky v systému.

Ladislav Hagara | Komentářů: 2
17.2. 09:00 | Nová verze

Bylo vydáno Ubuntu 16.04.2 LTS, tj. druhé opravné vydání Ubuntu 16.04 LTS s kódovým názvem Xenial Xerus. Přehled novinek v poznámkách k vydání a v přehledu změn.

Ladislav Hagara | Komentářů: 55
17.2. 06:00 | Zajímavý článek

Pavel Tišnovský se v dvoudílném článku na MojeFedora.cz věnuje tvorbě pluginů (modulů) pro bitmapový grafický editor GIMP. Pomocí pluginů lze GIMP rozšiřovat o další funkce. Implementovat lze například nové filtry nebo pomocné utility pro tvorbu animací či poloautomatickou retuš snímků.

Ladislav Hagara | Komentářů: 6
16.2. 23:32 | Komunita

Do 30. března se lze přihlásit do dalšího kola programu Outreachy, jehož cílem je přitáhnout do světa svobodného a otevřeného softwaru lidi ze skupin, jež jsou ve světě svobodného a otevřeného softwaru málo zastoupeny. Za 3 měsíce práce, od 30. května do 30. srpna 2017, v participujících organizacích lze vydělat 5 500 USD. Jedná se již o 14. kolo tohoto programu.

Ladislav Hagara | Komentářů: 11
16.2. 23:13 | Nová verze

Byla vydána verze 0.92.1 svobodného multiplatformního vektorového grafického editoru Inkscape. Přehled novinek v poznámkách k vydání. Řešen je mimo jiné problém s verzí 0.92, jež rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Více v příspěvku na blogu Davida Revoye, autora open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu.

Ladislav Hagara | Komentářů: 0
16.2. 16:26 | Bezpečnostní upozornění

Byla vydána verze 1.1.0e kryptografické knihovny OpenSSL. Dle bezpečnostního upozornění 20170216 byla opravena závažná bezpečnostní chyba CVE-2017-3733.

Ladislav Hagara | Komentářů: 1
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 665 hlasů
 Komentářů: 52, poslední 13.2. 12:45
Rozcestník
Reklama

Dotaz: Inteligentní listing programů

4.5.2009 17:26 Kychot
Inteligentní listing programů
Přečteno: 2097×

Co používáte na tisk programů?

Celkem obvyklá situace - mám nějaké adresáře se zdrojáky nějakého projektu, hlavičkové soubory, části programů v různých jazycích atd - a potřebuji si to vytisknout, bez nutnosti nějakého klikání sem a tam.

Tj. představuji si nějakou utilitu, která mi proleze celý ten adresářový strom, podle přípon pozná, co je to zač, prožene to nějakým filtrem, který ty zdrojáky nějak inteligentně zformátuje  (např. zvýraznění syntaxe dle pravidel daného jazyka, obsloužení dlouhých řádků, aby nenarušily identaci, obsloužení vdov a sirotků, aby se mi netiskla třeba jedna závorka z podporogramu na začátek nové stránky atd., tj. například začátek definice funkce na novou stránku), doplní záhlaví stránek  (např. název modulu a číslo stránky), doplní k tomu všemu obsah a výsledek bude nějaká kniha nejlépe v PDF, nebo v TeXu, nebo v LaTeXu, aby se v tom dalo dobře číst, snadno orientovat, lehce studovat, zkrátka aby byla radost na takový program pohledět.

Myslím si, že tisk programů je celkem obvyklá činnost, která by se dala nějak takhle zautomatizovat, ale zatím se mi na toto téma nepodařilo nic najít.

Odpovědi

5.5.2009 07:29 l4m4
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Nic, šetříme stromy. Tisknout má smysl nanejvýš schémata či datové struktury, ne kód.
5.5.2009 21:22 Kychot
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Vzhledem k tomu, že mám také kus lesa, tak mě vždycky ta odpověď o šetření lesů trochu nadzvedne. Co se dá prodat, to je kulatina, maximálně agregáty, a co je spička pod 12 cm, to je vláknina a z toho jde leda tak celulóza na papír. Když není odbyt na vlákninu, jako že už skoro není, tak se to nevyplatí ani stahovat, válí se to po lese, lezou do toho brouci a ti škodí stromům. Proto, chcete-li šetřit stromy, používejte, prosím, co nejvíc papír!
5.5.2009 22:02 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Nebo nevysazujte smrkový monokultury.
5.5.2009 22:19 Kychot
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Já je nevysazuju, já jsem je zdědil. A když jsem mezi ně začal dosazovat listnáče, tak se bývalí komunisti mohli zbláznit, že porušuji zákon a svévolně si měním hospodářské osnovy, které tam nic jiného než monokultury nepřipouští.
5.5.2009 10:02 Tom.š Ze.le.in | skóre: 21 | blog: tz
Rozbalit Rozbalit vše Re: Inteligentní listing programů

Jaký je cíl tisku programu? Hledat vlastní chyby a možná zlepšení? Pak by to mělo stačit postupně po jednotlivých zdrojácích, protože po pár opravách bude "kniha" zastaralá. Studium programu? To je lepší elektronicky (možnost skoků na reference, atp.). Dokumentace vlastního programu pro někoho jiného? To je asi jediné co mne napadá jako rozumné, ale poměr zajímavé/administrativní balast bývá dost vysoký, a nějaký úvod a rozumné uspořádání dílů je téměr nezbytné.

Jediné kdy jsem to viděl fungovat bylo pokud na to myslel autor od začátku - například různé literal programmingy (např. Knuthův web/cweb, viz třeba TeX the program, nebo i na jazyku nezávislý noweb). Jinak (ale často i tak) se radost pohledět bude konat dost těžko.

Možná i proto není moc nástrojů pro ex post. Většinou je dostatečně komplikované zajistit aby vypadala rozumně (ani ne hezky) automaticky generovaná dokumentace API, natož samotného kódu.

5.5.2009 22:16 Kychot
Rozbalit Rozbalit vše Re: Inteligentní listing programů
V konkrétním případě studium programu. Potřebuji pochopit, jak funguje celý projekt, konkrétně The BioSig Project, abych na tom mohl nějak participovat. Jedna část jsou mraky různých knihoven v různých jazycích, velká část je SigViewer, což je aplikace vesměs v C++, asi tak 100 souborů. Se mnou je asi trochu problém:
  • Zátěž minulostí: Začínal jsem programovat na laboratorním minipočítači se 6 kB ferritové paměti (z toho 1.5 kB byl OS) někdy začátkem 70-tých let minulého století na stroji ze 60-tých let, kdy ještě neexistovaly ani integrované obvody a kdy processor neměl ani stack ani jiné registry, tím pádem už i návrat z podprogramu byl trochu problém - někam si uložit návratovou adresu, na kterou pak skočit, natož předávání parametrů, ty jsem si musel nastrkat předem na správná místa podprogramu. Jedinými registry byl jeden akumulátor, jeden program counter a jeden memory pointer. Grafický výstup byla kulatá obrazovka osciloskopu o průměru asi 12 cm, na které se dal rozsvítit 1 bod na 1 ms. Ladilo se pomocí blikajících telefonních žárovek a hodnota akumulátoru se dala měnit nastavením páčkových přepínačů po bitech (tak se i bootovalo).
    Nic jiného než stroják nebo takový hodně primitivní assembler nebyl k disposici a člověk využíval paměť do posledního bitu, a tak se používala taková zvěrstva, jako třeba přepisování strojového kódu sebou samým atd. A to jediná možnost, jak se vyznat ve vlastním kódu, bylo pořídit si listing pomocí dálnopisu, připojeného přes reléový registr, a do něj si tužkou domalovávat všelijaké šipky a čáry a skoky a zacyklení, protože strukturované programování ještě nikdo nevymyslel a kdyby vymyslel, bylo by v té době k ničemu. Strojový čas byl drahý, člověk si nejdříve namaloval flowcharty do sešitu, pak si do linkovaného sešitu začal psát tužkou program, gumoval, vylepšoval a směstnával a vedle každé instukce si napsal délku jejího trvání v milisekundách. Pak to posčítal, aby se zjistilo, zda se to vůbec stihne spočítat. (Jednalo se o nelineární analýzu EEG a evokovaných potenciálů v reálném čase).
    Když to vypadalo, že by to mohlo být spustitelné, tak to přeťukat přes dálnopis a hned si udělat listing a uvolnit stroj dalšímu a jít domů nebo na kafe do hospody, čmárat si znovu do listingu a znovu se snažit zjistit, jestli to vůbec může fungovat, a po několika takových cyklech postupných oprav a listingů teprve se mohlo začít ladit na stroji, protože do té doby by to byla jen ztráta cenného strojového času. A co se v mládí naučíš ... toho se pak ve stáří těžko zbavuješ :-(
  • Dlouho dlouho jsem pak nechápal, k čemu takové věci, jako vyšší programovcí jazyky, když vše jde napsat nejlépe ve strojáku nebo assembleru. Pak jsem se naučil K&R C, které jsem mixoval s assemblerem a zase měl celý svůj projekt vylistovaný hezky v "knize" o nějakých tisíci stránkách.
  • No a pak jsem 20 let neprogramoval vůbec
  • No a pak jsem si tu a tam naspal nějaký skriptík v perlu, to už jsem si listovat nemusel.
  • No a teď po mnoha letech se snažím znova proniknout do toho C++ a koukám na to jak tele na nová vrata, vůbec nevím, která bije, doba mezi tím je docela jinde, než byla tenkrát, no a tak se jako tonoucí stébla chytám starých osvědčených praktik, prostě pořádný listing, svázat do knihy a tu pak tahat s sebou všude, do tramvaje, do vlaku, do parku, do kina, čmárat si do ní šipky, čáry, poznámky, zvýrazňovače a nevím co všechno, až člověku začne svítat, o čem to vlastně všechno je.
Sám ani nevím, jak tisknout jeden textový soubor. Obyčejně to otevřu v OpenOffice, doplním si do hlavičky jméno souboru a čísla stránek, aby se mi nepomíchaly, a tisknu. Ale dělat to pro 100 souborů se mi moc nechce, nerad klikám, proto jsem si říkal, že přeci na to musí něco inteligentního existovat.
6.5.2009 04:48 joe
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Při studování programu nejedete od začátku do konce, ale skáčete tam a zpátky po jednotlivých definicích. To se ulistujete k smrti :-)
6.5.2009 08:42 Tom.š Ze.le.in | skóre: 21 | blog: tz
Rozbalit Rozbalit vše Re: Inteligentní listing programů

No, hodně štěstí. Možná by byly zajímavé odpovědi při znovupoložení otázku jako "Jak se zorientovat ve velkém projektu".

Pokud to opravdu chcete:

  • Tisk souboru - mně pořád funguje lpr pro tisk dokumentu.
  • nl, pr nebo fold může pomoci - viz info textutils.
  • co se týče pokročilejšího formátování, tak třeba vim má příkaz :hardcopy, při kterém tiskne "hezky".
  • find nalezne soubory daného typu.
  • dalších možností bude mraky, PDFko lze udělat třeba TeXováním vytvořeného pomocného souboru v eplain TeX-u, který bude obsahovat v podstatě jen samý \listing{filename}, a bude doplňovat automaticky názvy/hlavičky souboru a psát čísla řádků souborů. Předpokládám, že třeba LaTeX umí totéž, a udělat takový soubor poloautomaticky není problém.

 

5.5.2009 11:00 petris_ | skóre: 12
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Podivejte se na doxygen. Pouzivam ho na generovani html dokumentace, ale vim, ze umi i LaTeX, z ktereho by pak slo udelat treba pdf a to vytisknout.
5.5.2009 22:28 Kychot
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Jak jsem pochopil, tak doxygen generuje dokumentaci z programů, pokud v nich ta dokumetace pro doxygen je. To ale není zrovna ten uvedený případ sigviewer-0.2.4-src.
5.5.2009 22:34 Kychot
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Tady v tom případě jde o to, že k tomuhle projektu chybí prakticky jakákoliv dokumentace. Vypadá to, že si to dělá víceméně pro sebe pár let parta nějakých lidí v Grazu, kteří se znají a kteří necítí velkou potřebu něco dokumentovat. A tak jsem se rozhodl postupovat dle známého rčení, že Nejlepší dokumentace je zdroják. Abych vůbec pochopil, co to má dělat a k čemu je to všechno vůbec dobrý.
6.5.2009 00:52 petris_ | skóre: 12
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Da se tam nastavit, ze se do dokumentace maji zahrnout i soubory se zdrojovymi kody (myslim, ze to je volba SOURCE_BROWSER) a ze se tam maji dat i nezdokumentovane entity (nepamatuji si volbu). Prohlednete si vychozi okomentovany konfiguracni soubor a nebo zkuste klikatko doxywizard.
5.5.2009 23:21 Robbie | skóre: 21 | Praha
Rozbalit Rozbalit vše Re: Inteligentní listing programů
Co zkusit:
nenscript

Pak napriklad tisk zdrojaku z nejake slozky je mozny:

Do souboru: nenscript *.c -p doposcriptsouboru.ps -E --color 
Na tiskarnu: nenscript *.c -E --color 
A pak muzou byt pro Vas zajimave parametry: --highlight , --help-highlight
A jinak prostudovat nenscript --help

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.