So we are now starting a blog…

Debug Visualisation for Eclipse… Who knows what is it good for. Maybe a quick detection of some misplaced references. Maybe more.

The project started as a home assignment for an Eclipse course at the university, but we were interested in it, so we continued the development. Our goal was to support the debugging process by helping the detection (or exploration) of the state space of the program.

We are not calling our software a 1.0 release, as we don’t think it can help in a lot of cases. But we believe it is worth to invest time to increase its usefulness. Maybe in the end something good will come out from it.

This page is started for reporting our progress, share ideas. We would be glad to hear your opinions about the project. Your idea may help – we are not capable of solving the problem in general, we need potential use cases. We need testing.

So to help the communication a blog is born. Please if you test our project, give us feedback: what do you like, what are the worst points. Do you have an idea to share with us? We are glad to hear it. Maybe we will implement it, if we are interested enough. Or if you implement it, we are glad to include it. So let’s rock.

A 10+1 kedvenc OSX-es programom

Kérésre összeállítottam egy listát kedvenc Maces programjaimról, és ha már megtörtént, gondoltam, meg is osztom. A lista egyáltalán nem teljes, de úgy nagyjából a leghasznosabb(nak tűnő) dolgokat szedtem össze. Fontos: semmi olyan program nincs benne, amit az Apple a géphez adott volna, mindegyiket külön kellett beszerezni.

A lista kicsit csalóka – ugyanis nem 10+1 programot ajánlok, hanem 10+1 célra. De attól még remélem, hasznos.

1. MacFuse és MacFusion

Alapvetően a Findert használom fájlműveletekre. Ehhez nagy segítség, ha távoli, FTP vagy SSH szerver tartalmát is hasonlóan tudom megnyitni. A MacFuse éppen ezt kínálja: távoli fájlrendszereket képes mountolni, hasonlóan a külső merevlemezekhez. A MacFusion pedig egy ikont rak a menüsorba, hogy ne kelljen parancssorból felcsatolni ezeket a fájlrendszereket. Hasznos. Bónuszpont: az NTFS meghajtók írásához használható NTFS-3G program is igényli a MacFuse-t.

http://code.google.com/p/macfuse/
http://www.macfusionapp.org/

Kérésre összeállítottam egy listát kedvenc Maces programjaimról, és ha már megtörtént, gondoltam, meg is osztom. A lista egyáltalán nem teljes, de úgy nagyjából a leghasznosabb(nak tűnő) dolgokat szedtem össze. Fontos: semmi olyan program nincs benne, amit az Apple a géphez adott volna, mindegyiket külön kellett beszerezni.

A lista kicsit csalóka – ugyanis nem 10+1 programot ajánlok, hanem 10+1 célra. De attól még remélem, hasznos.

1. MacFuse és MacFusion

Alapvetően a Findert használom fájlműveletekre. Ehhez nagy segítség, ha távoli, FTP vagy SSH szerver tartalmát is hasonlóan tudom megnyitni. A MacFuse éppen ezt kínálja: távoli fájlrendszereket képes mountolni, hasonlóan a külső merevlemezekhez. A MacFusion pedig egy ikont rak a menüsorba, hogy ne kelljen parancssorból felcsatolni ezeket a fájlrendszereket. Hasznos. Bónuszpont: az NTFS meghajtók írásához használható NTFS-3G program is igényli a MacFuse-t.

http://code.google.com/p/macfuse/
http://www.macfusionapp.org/

2. QuickLook pluginek

Az egy gombos betekintő funkció nagyon hasznos a Finderben, de vannak gyenge pontjai. Tömörített fájlokra, mappákra, eps fájlokra nem működik, és egy a szövegnézőkéje sem tud szintaxiskiemelést. Ezen próbálnak segíteni különböző QuickLook pluginek.

Ha nincs telepítőjük, akkor a /Library/QuickLook vagy a ~/Library/QuickLook könyvtárba kell behúzni a .qlgeneratort, majd (ha szükséges), egy qlmanage -r paranccsal újrageneráltatjuk az elérhető pluginek listáját.

http://macitbetter.com/BetterZipQL-1.0 (a BetterZip fizetős szoftver, de a QuickLook plugin ingyenes)
http://code.google.com/p/qlcolorcode/ (szintaxiskiemelő különböző szöveges fájlokhoz)
http://homepage.mac.com/xdd/software/folder/ (mappabetekintés)
http://www.eternalstorms.at/utilities/epsqlplg (eps képnéző)

3. Smultron

Egy egyszerű, ingyenes kis programozói szerkesztőprogram a Smultron (Windowsra hasonló célra a PSPad-et szoktam használni). Vannak roppant ötletes dolgai. Funkciója az, hogy ami pure text file, de az Eclipse overkill lenne hozzá, azt ügyesen kezeli. Sokrétű a szintaxiskiemelése.

http://tuppis.com/smultron/

4. LaTeXiT

LaTeX képletek gyors renderelésére felhasználható kis program. Használata egyszerű: latex-kód beírása (a sallangok nélkül, azt jól kitalálja), klikk a LaTeX it! gombra, és az eredményként kapott képet már át is lehet húzni tetszőleges programba (pl. prezentációkészítéshez vagy a Finderbe – ekkor pdf formátumban kapjuk meg a képeket). Hasznos…

http://ktd.club.fr/programmation/latexit.php

5. Skim

Szép és jó a beépített Preview pdf olvasásra, de érdemes lecserélni a Skimre. Ugyanazt a motort használják, a Skim (ahogy észrevettem, ez nem 100%, hogy korrekt) két dologban tud többet: egyrészt ki van hegyezve a dokumentum annotálására, azaz különféle megjegyzések hozzáírására, ezen megjegyzések közötti keresésre, valamint LaTeX editorokkal nagyon szépen együttműködik (pdfsync v. synctex alapú szinkronizáció: bekezdés szinten lehet kapcsolatot teremteni az editor és a Skim között).

http://skim-app.sourceforge.net/

6. Forrásmenedzsment: Bibdesk vagy Zotero

Hivatkozások kezelésére használható a Bibdesk alkalmazás vagy a Zotero Firefox plugin. A Bibdesk gyakorlatilag egy grafikus editor BibTex fájlok kezelésére, míg a Zotero egy általánosabb segédlet próbál lenni. A Bibdesk Bibtex fájlokhoz jobban köthető, míg a Zotero killer feature-je, hogy képes a különféle oldalakról (pl. ACM, IEEE, stb.) automatikusan kinyerni a hivatkozási információkat. Más szóval, ahogy megtalálom a neten, már meg is van a hivatkozás. Viszont a bib-exporttal vannak apróbb bugok (gyorsan, akár search and replace-szel javíthatóak, de attól még lehet vele szórakozni).

http://zotero.org
http://bibdesk.sourceforge.net/

7. Site Specific Browser Mac módra: Fluid

Tetszőleges webes alkalmazás becsomagolása Maces alkalmazássá (hasonlóan, mint amit a Google Chrome vagy a Mozilla Prism végez), de van benne néhány Mac-specifikus feature, pl. lehet benne menüsorba csatlakozó alkalmazást csinálni. Másik hasznos feature, hogy lehet hozzá Greasemonkey scripteket telepíteni. Képes a külső url-eket (nem alkalmazáshoz tartozó) tetszőleges programhoz továbbítani. A flickr egyik csoportja nagyfelbontású ikonokat is készít ilyen SSB-khez: http://www.flickr.com/groups/fluid_icons/

http://fluidapp.com/

8. Videolejátszás: Perian, Flip4Mac, VLC

Ha az ember alapvetően szereti a Quicktime-ot (főleg, amióta nincs letiltva benne a full screen playback :D), jó dolog kiegészíteni a tudását. A Perian és a Flip4Mac kodekeket telepít hozzá, amivel a leggyakoribb formátumokat képes lesz lejátszani. További bónuszpont, hogy ezek a kodeket iTunes és Front Row alatt is működnek. Ha ezek a pluginek mégsem megfelelőek, akkor jöhet az igazi svájcibicska, a VLC. Nem láttam még olyan videofájlt, amit nem tudna az lejátszani, és van néhány érdekes, extra szolgáltatása a programnak, mint a felvétel vagy a streamelési lehetőségek. De kicsit kényelmetlen használni, ezért nem ez lesz az elsődleges médialejátszóm.

http://perian.org
http://www.telestream.net/flip4mac-wmv/overview.htm
http://videolan.org

9. Szótár widgetek

Készültek widgetek a sztaki többnyelvű szótáraihoz. Egy-egy kereséshez gyorsabb lehet, mint az oldalukat direktben használni.

http://www.macmini.hu/html/dashboard.html

10. Caffeine

Láttam már előadás közben beindulni a képernyőkímélőt. Más esetet is el tudok képzelni, amikor hasznos a különféle energiagazdálkodási funkciók ideiglenes kikapcsolása – de ugyanakkor nem szeretném a beállításaimat túl mélyrehatóan módosítani. Pontosan erre a célra használható fel a Caffeine. Egy egyszerű ikon a menüsorban az óra mellett, egy kattintással aktiválható/deaktiválható. Az egyetlen problémám vele, hogy bekapcsolt állapotában az Adium nem veszi észre az inaktivitást (feltehetőleg más programot is érint).

http://lightheadsw.com/caffeine/

+1. Kedvenceim: QuickSilver vagy Google Quick Search Box

Nehéz körülírni, hogy pontosan mit is csinálnak ezek. Ami magától értetődő, az az, hogy programok gyorsindítására felhasználhatóak (bár erre a Leopardban már a Spotlight is megfelelő – Tigerben még lassú volt ehhez). De ezen felül további parancsokat is ki lehet adni a segítségükkel: pl. fájlkeresés, átnevezés, emailhez csatolás, twitter üzenet küldése vagy éppen új feladat felvétele a naptárba.

A programok közti választás nehézkes: a Quicksilver határozottan többet tud, többen írnak hozzá plugineket, viszont a fejlesztése, sorsa kérdéses, ráadásul megosztott a fejlesztő csapat. A Quick Search két-három hónapos lehet, sokkal egyszerűbb a rendszer, de valahogy megbízhatóbbnak érzem ezt a kevesebb szolgáltatást. Figyelem mindkettőt, kérdés, kinek melyik a nyerő.

http://code.google.com/p/qsb-mac/ (Quick Search Box)
http://blacktree.com/?quicksilver
—————————————-

Ha a lista nem elég, akkor hasznos lehet az http://osx.iusethis.com vagy a http://wakoopa.com böngészése további találatokért. Szociális hálóban gyűjtik, ki milyen alkalmazásokat ismer/használ.

Apropó, nektek van olyan programotok, ami szerintetek fontos, és itt nem szerepel? Kíváncsi vagyok.

Új TeXlipse – új lehetőségek

Még októberben írtam arról, mire való a [[LaTeX szerkesztés OSX-en|synctex]], és ezt hogyan lehet felhasználni a Skim és a Texlipse környezet összekötésére. Illetve arról is, hogy helyenként problémás.

Most, hogy megjelent egy újabb Texlipse változat (1.3), és újabb, rövid határidejű LaTeX dokumentumokat kell előállítanom, ezért megnéztem, hogy mi a helyzet most.

Még októberben írtam arról, mire való a synctex, és ezt hogyan lehet felhasználni a Skim és a Texlipse környezet összekötésére. Illetve arról is, hogy helyenként problémás.

Most, hogy megjelent egy újabb Texlipse változat (1.3), és újabb, rövid határidejű LaTeX dokumentumokat kell előállítanom, ezért megnéztem, hogy mi a helyzet most.

Természetesen a helyzet rossz és reménytelen :D, de kicsit konkrétabban (és kevésbé pesszimistán szemlélve rá lehet jönni), hogy egészen pontosan mi/hogyan változott, és ezt hogyan lehet exploitolni.

A Texlipse 1.3-as változatának számomra legfontosabb újdonsága, hogy együtt működik a Skim auto reload funkciójával, azaz nem kell kézzel frissítgetnem a pdf kimenetet.

Ugyanakkor a synctex (vagy a hasonló célú pdfsync) továbbra sem az igazi. A pdfsync segítségével gyorsan tudok lépdelni a pdf illetve a tex-fájl egyes helyei között, ami roppant hasznos dolog, ha pl. aki proofreadel, az oldalszámmal tudja jelölni a hibát, amit kicsit nehézkes visszakonvertálni latex source-ra.

De ahhoz, hogy ez működjön, fontos, hogy a generált synctex.gz (pdfsync esetén most nem mondom meg a generált kiterjesztést) ugyanabban a könyvtárban legyen, mint a tex fájl, ugyanis a LaTeX környezet ebben a mappában keresi; ugyanakkor az is fontos, hogy ugyanabban a mappában legyen, mint a pdf fájl, mert a pdf néző meg ott keresi… Szóval a kiforrott, több-könyvtáros megközelítések problémásak tudnak lenni. De legalább így működik.

És még egy fontos dolog: amit a múltkor mutattam scriptet a Texlipse megszólítására, frissíteni kell, ugyanis direkt meg lett szólítva a texlipse.jar fájl, és a frissítés után az elérhetősége ennek megváltozott. Eltartott egy darabig, amíg erre a gondra rájöttem, ugyanis semmilyen hibaüzenetet nem kaptam a visszafele kereséskor. De azért csak meglett.

Az új, módosított scriptem:

java -classpath "/Applications/eclipse/dropins/texlipse/plugins/net.sourceforge.texlipse_1.3.0/texlipse.jar" net.sourceforge.texlipse.viewer.util.FileLocationClient -p 55000 -f $2 -l $1

És most a végére néhány apróság, amire érdemes lehet odafigyelni:

  • Ha még nem frissítettél az 1.3.0-s változatra, akkor várj pár napot, ugyanis felbukkant egy elég idegesítő bibtex parsing hiba. A hétvégére ígértek új kiadást.
  • Amikor frissíteni próbáltam, akkor a P2 valami miatt nem akarta letölteni a cuccot, de a dropins mappába könnyen tudtam telepíteni. Emiatt is változott az elérési útja a texlipse.jar-nak. Nem tudom, mi volt az oka, de majd egyszer esetleg ezzel is elszórakozom.

Alapvetően azért szeretem az új kiadást, de vannak gyenge pontok. Mindenesetre a váltást nem bántam meg, de jöhetne már az 1.3.1.:D

Spotlight és Fuse = Kernel Panic?

Volt szerencsém egy-két kernel pánikhoz OSX-en. Szépen néz ki, ahogy elszürkül a háttér, és közli, hogy gáz van, indítsam újra a gépet, de viccesnek nem vicces. Viszont újraindítás után lehetőséget ad, hogy elküldjem a crash reportot, és nem mellesleg megnézzem az utolsó logokat.

Volt szerencsém egy-két kernel pánikhoz OSX-en. Szépen néz ki, ahogy elszürkül a háttér, és közli, hogy gáz van, indítsam újra a gépet, de viccesnek nem vicces. Viszont újraindítás után lehetőséget ad, hogy elküldjem a crash reportot, és nem mellesleg megnézzem az utolsó logokat.

Az első alkalommal nem sokat foglalkoztam vele, de amikor legközelebb előjött, akkor rájöttem, hogy akkor történt, amikor a külső merevlemezem csatlakoztatva van. A log tanulmányozása, illetve némi előismeret segítségével egy gyors googlizás kihozta, hogy nem én vagyok az egyetlen, aki a problémával szembesült, és volt rögtön workaround is.

A külső merevlemez NTFS-ként volt megformázva, amit a MacFuse és az NTFS-3G kombinálásával csatoltam fel. Ez a kernel panicot különösen súlyossá tette, mert az NTFS-3G nagyon érzékeny az érvénytelen adatokra – pl. abban az esetben, ha nem volt rendesen leválasztva Windows-os gépeken, akkor egyszerűen nem csatolja fel, stb. Szóval a kernel panicot követő meghibásodás után lehetett szórakozni vele, hogy újra csatolni lehessen. Szerencsére a VMware sokat segít azzal, hogy a külső USB portot átadhatom egy virtuális gépnek, így relatíve kis szívással átcsatoltam Windowsra.

Visszatérve az eredeti problémára a log alapján a bug akkor lép elő, ha a Spotlight próbálja indexelni a felcsatolt lemezt. A megoldás egyszerűen az volt, hogy ki kell kapcsolni az indexelést a Fuse-os lemezekre. A beállítás megtehető: System Preferences/Spotlight/Privacy

Természetesen ez bug, később még javíthatják. Ha ez megtörténik, akkor jelezni fogom.

További információ található a következő levelezőlista threadben: http://groups.google.com/group/macfuse/browse_thread/thread/cd7df99cb5d9cd7f/40bbbd3d13ece42c#40bbbd3d13ece42c

Margók a LaTeXben – grafikusan

A LaTeX egyik legbonyolultabb része a margók kezelése. Pláne, hogy a beállításait relatív módon kell megadni.

Ahhoz, hogy ezt kényelmesebben lehessen csinálni, hasznos tudni, hogy mik az aktuális beállítások. Ebben próbálok segíteni azzal, hogy röviden leírom a [[http://www.mackichan.com/index.html?techtalk/501.htm~mainFrame|MacKichan Software Inc.]] honlapján látható gondolatot röviden összegzem itt is.

A LaTeX egyik legbonyolultabb része a margók kezelése. Pláne, hogy a beállításait relatív módon kell megadni.

Ahhoz, hogy ezt kényelmesebben lehessen csinálni, hasznos tudni, hogy mik az aktuális beállítások. Ebben próbálok segíteni azzal, hogy röviden leírom a MacKichan Software Inc. honlapján látható gondolatot röviden összegzem itt is.

Nehéz pontosan meghatározni, hogy mekkora méreteket használ a LaTeX a kimenet generálásához, ugyanis az függ a dokumentum típusától, a lapmérettől, attól, hogy egy- vagy kétoldalas és még ki tudja, mi mindentől.

Éppen emiatt a bonyolult függések miatt egy táblázatba összeszedni sem feltétlen használható megoldás.

Viszont erre is van automatikus megoldás, ami a fordítótól kérdezi meg. Egészen pontosan ez a [cci_latex]layout[/cci_latex] csomag. A működés egyszerű: felvesszük a csomagot a [cci_latex]\usepackage{layout}[/cci_latex] preambulumba felvételével, majd a szövegbe beírjuk a [cci_latex]\layout[/cci_latex] parancsot.

Ennek hatására a LaTeX legenerál egy oldalt, amin felsorolja a paraméterek aktuális értékeit, valamint egy ábrát, hogy könnyebben át lehessen látni, hogy pontosan mi mit jelent. Egyszerű, nagyszerű.

Azért a végleges dokumentumból szedjük ki.:D