Programátorské editory (X)WPE a (X)FTE
                   -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

          A novice programmer was once assigned to code a simple financial
      package.
          The novice  worked  furiously for many days, but when his master
      reviewed  his  program,  he  discovered  that it  contained a screen
      editor, a set  of  generalized  graphics  routines,  and  artificial
      intelligence  interface, but not the  slightest  mention of anything
      financial.  When the  master  asked  about  this, the novice  became
      indignant.
          "Don't be so impatient," he said,  "I'll put the financial stuff
      in eventually."
                  -- Geoffrey James, "The Tao of Programming"

                        Miroslav Janiš, 9. června 1998

                                   Abstract

          Editory wpe a fte budou  patrně  bližší  těm,  kteří  přecházejí
      na  Linux z DOu a UNIXové  editory  typu  vi nebo  emacs  jsou  pro
      ně záhadou. Oba  popisované  editory se více či méně  úspěšně  snaží
      napodobit  "standardní"  Borlandí  ovládání (které podle mne nepatří
      mezi  nejhorší).  Hned  na  začátku  bych  však  zmínil  i  nevýhody
      těchto  editorů - fte  nemá  verzi  pro  terminál a u wpe  se  mi ji
      vůbec nepodařilo  rozchodit. Takže jejich  použitelnost je zúžena na
      X-Window System a u fte ještě lze použít verzi pro textovou konzoli.
      (BTW:  pokud  používáte KDE, tak vás možná potěší  verze pro tento X
      desktop (není ale součástí standardní distribuce fte).)

                                  Editor XWPE

          Téměř dokonalá kopie  Borlandího  rozhraní;  umožňuje vše (velmi
      nadneseně řečeno), co si zmlsaný programátor může přát.

          Stvořil ho pan Fred  Kruse a ve verzi  1.4.2  existuje bez změny
      již od roku  1993.  Teprve v nedávné  době  byly  zdrojáky  oprášeny
      a byl zahájen  projekt "za lepší WPE" (just  kidding).  Podívejte se
      na adresu XWPE http://www.rpi.edu/  payned/xwpe/.  Další text se bez
      výjimek bude vztahovat ke staré verzi 1.4.2.

                                     Xwpe

          Podobnou  simulací  Borlandů je program  RHIDE, který byl napsán
      pro djgpp, což je dosový port  překladače GNU C (produkuje tak dobrý
      kód, že byl použit  IDSoftwarem k překladu  QUAKEa  místo Watcom C).
      RHIDE  existuje  jak pod DO, tak pro Linux.  Linuxovou  verzi  jsem
      však  nezkoušel a o té dosové si pamatuji jen to, že když  jsem hned
      na začátek  zdrojáku  napsal komentář, tak při listování  spolehlivě
      zatuhl :-) Takže toto rozhraní rád přenechám povolanějším...


                         Stručný výčet schopností WPE

      - vytváření projektů s definicí parametrů pro překladač i linker

      - definice breakpointů a krokování přímo ve zdrojovém kódu, klasické
        výpisy obsahu proměnných (Watch) a zásobníku programu (Stack)

      - odskakování   na   chyby  a  "warningy"    objevené    překladačem
        a zpřístupněné pomocí okénka Messages

      - možnost  nakonfigurovat a využít  různé  překladače - kromě  C(++)
        třeba  Fortran,  Pascal  či  LaTeX  (hmm\ldots{}  tady  je  trochu
        problém, protože xwpe "cpe" zcela svévolně  libovolnému překladači
        spuštěnému z menu příkazem Run/Compile parametr -c, takže je třeba
        spouštět  skript,  který  ignoruje  první  parametr (-c) a spouští
        latex až s tím druhým (filename))

      - zobrazování  manových  stránek i GNU info ---  umožňuje  pohodlnou
        navigaci  dokumentem, leč tu a tam špatně interpretuje odkaz (spíš
        ignoruje)...

      - "obarvování"  syntaxe  (snaha o český překlad  (spíš přepis) slova
        highlight) a konfigurace barev editoru a syntaxe

      - konfigurace chování editoru (tabelátory, autoindent, autosave...),
        ale jinak je konfigurace možností editace dost omezená.

      - a nakonec umí také  zcela  nečekaně v ten  nejnevhodnější  okamžik
        spolehlivě  chcípnout (hlavně při prohlížení manových stránek) ;-)
        (ale většinou se mu podaří rozdělanou práci uložit...)

                                  Zhodnocení

          Obecně   lze   říci,  že  k  programování   (spíše  ke  zkoušení
      programovat)  je  tento  editor  celkem  použitelný - napíšete  kód,
      rovnou ho  přeložíte,  opravíte  syntaktické a jiné  chyby  odhalené
      překladačem a můžete  ho  vesele  krokovat  a provádět  s ním  různé
      jiné  kejkle  bez nutnosti  vytvářet  Makefile a spouštět  debugger.
      Ovšem k většímu  projektu je  Makefile  stejně  nutno  vytvořit  (co
      s nepřenositelným  "projektfajlem"?  (Nějakým  kouzlem  (skriptíkem)
      by z něho ten Makefile  vytvořit  možná šlo...)) a chyby je v zásadě
      lépe vůbec nedělat --- ušetří to spoustu  práce s následným  honěním
      nějakého stupidního bugu ;-).

          Jinak se mi zdá  tento  editor  dost  omezený - barevná  syntaxe
      funguje  jen  pro pár  vyvolených  (C(++),  Pascal,  Fortran(?)...),
      indent  je  dost  hloupý,  a  editor  vůbec  neumí  kompletaci  slov
      (doplňování   slov   podle   předchozího   kontextu).  O  definování
      klávesových  zkratek pro vkládání  často  používaných  výrazů si při
      používání  tohoto  editoru  můžete  nechat  jen  zdát. A právě  tyto
      vlastnosti má editor fte.

                                  Editor XFTE

          Editor fte si neklade za cíl  kopírovat  IDE. Je to jen  editor.
      Ovšem editor vhodný pro programátory zvyklé Borlandímu ovládání. Zdá
      se, že byl původně  stvořen pod OS/2 a teprve postupem času portován
      na  ostatní  systémy  i "systémy"  ---  DOS,  Linux,  Win32.  Napsal
      (a naprogramoval  :-) ) ho pan  Mirko  Macek a je možné ho získat na
      (http://ixtas.fri.uni-lj.si/ markom/fte).

          Zde   existuje  ve  verzi  pro  X-Window  a  linuxovou   konzoli
      (hovoříme-li o možnostech  týkajících  se  Linuxu).  Někde na adrese
      http://www.kde.org  lze též najít  port  pro  KDE od jiného  autora.
      Tato  verze  má tu výhodu,  že  pokud  máte  správně  nainstalovanou
      českou  klávesnici  pod X-Window  (čili  chodí-li  vám třeba pod KDE
      aplikacemi), tak vám zde bude chodit též.

                       Méně stručný výčet schopností FTE

      - Konfigurovatelné   zvýraznění  syntaxe   (highlighting)  -  můžete
        přidávat  vlastní definice různých formátů  souborů.  Nadefinovány
        jsou  tyto  jazyky/formáty:   C(++),  Java,  REXX,  Perl,  Pascal,
        Ada, UNIX shell  skripty,  tcl, HTML,  La\TeX,  E-mailové  zprávy,
        DIFF a další.  Ne  všude  funguje  hilite  tak,  jak by si  člověk
        představoval - u HTML nejsou  nadefinována  některá  klíčová slova
        a JavaScript to vůbec  nerozezná  :-) V shellovských  skriptech je
        zase jako příkaz  zvýrazněno jen první slovo, takže  pokud  voláte
        nějaký  program celou  cestou, tak je zvýrazněn jen první  adresář
        (kromě lenosti však nic nebrání odstranění těchto nedostatků přímo
        v konfiguračních souborech).

      - Speciální  indent pro  C(++),  Perl,  Javu,  REXX,  přičemž  pro C
        existují  tři  módy  ---  standardní,  GNU a  Linux  kernel  styl.
        Céčkovský indent mne opravdu nadchl --- na patřičné místo na řádku
        kursor  odskakuje hned po stisknutí  klávesy  Enter a inteligentně
        rozpoznává  složené  závorky. To  znamená, že zdroják  píšete  bez
        jakýchkoli  starostí  o  formátování  textu  ---  vše  se  provádí
        automaticky.  Další  pomůcka  usnadňující  orientaci  v textu  je,
        že při najetí kursorem na závorku (jakoukoli --- [, ], {, }, ( a )
        ) se zvýrazní odpovídající závorka.

      - Schopnost  kompletování  slov  na  základě  předchozího   kontextu
        -  pokud  se  v  předchozím   textu  již  dané  slovo   vyskytuje,
        stačí napsat  několik  prvních písmen a stiskem kláves Ctrl+Tab se
        slovo  automaticky  dopíše  (pro lenochy  jako jsem já je to přímo
        terno\ldots).  Bohužel to již nefunguje,  když něco  dopisujete na
        začátku  zdrojáku a slovo,  které  byste  chtěli  doplnit, se sice
        v textu již vyskytuje, ale nachází se za inkriminovaným místem :-(

      - Folds  (čti  faldy  ;-) ) - ačkoli je pro ně  vytvořeno  speciální
        menu, teprve  nedávno (cca půl hodiny) jsem pochopil, k čemu tohle
        zvíře vlastně je, neboť jsem měl čas, chuť a hlavně  důvod  (psaní
        tohoto  článku) se tím  zabývat.  Zdá se, že je to velmi  užitečná
        schopnost zpřehlednit vytvářený text --- např. v C zdrojáku můžete
        pomocí  menu  Fold/Create  folds  at  routines  vytvořit  "faldík"
        pro každou  funkci. Potom stiskem  kláves Alt+Gray / všechny foldy
        zavřete. Text se poté jeví jako  seznam  funkcí - zobrazí se totiž
        pouze  první  řádek ve foldu. Na libovolný fold lze najet kursorem
        a kombinací  kláves  Ctrl+Gray + a Ctrl+Gray - je lze  otvírat  či
        zavírat. Foldy lze vytvářet i pomocí  regexpu či jak se vám zachce
        - viz menu  Fold.  Není  však  vše  zlato, co se třpytí... U foldů
        lze definovat pouze začátek.  Ukončení zařídí buď definice dalšího
        foldu nebo konec souboru. To vede např. při "ofoldování"  zdrojáku
        podle funkcí (viz výše) k tomu, že se komentáře před funkcí, které
        se jí většinou také týkají,  dostanou na konec foldu, ve kterém je
        předcházející  funkce. Je zde však stále možnost použít regexp ---
        takže  pokud  píšete  komentáře k funkcím ve stylu /* Fce: ... */,
        můžete vytvořit foldy přes regexp pomocí výrazu { \/\* Fce:}.

      - Chování  editoru lze  ovlivňovat na poměrně  nízké  úrovni  (víte,
        jak to myslím - assembler je také programovací jazyk nízké úrovně,
        ale  lze v  něm  udělat  všechno).  Pro  každý  typ  dokumentu  je
        vytvořen  zvláštní  konfigurační  soubor, ve kterém je nadefinován
        způsob obarvování syntaxe,  speciální klávesové  zkratky, přídavná
        menu  (viz  HTML),  formátování  textu,  okraje a spousta  dalších
        vlastností. Vše lze libovolně  měnit a upravovat  podle  vlastních
        představ. Je však  pravda, že je v těch  konfiguračních  souborech
        trochu  chaos, ale když začnete  souborem  main.fte, tak se snadno
        zorientujete. A editor fte má pro tyto konfiguráky  zvláštní mód s
        barvičkami :-). Po editaci  konfiguračních  souborů je třeba ještě
        vytvořit  "překlad"  pomocí  prográmku  cfte a překopírovat  ho do
        souboru HOME/.fterc. Potom znovu spustíte fte a je to.

      - překlad  a  opravy   zdrojových   textů - fte  umožňuje   spouštět
        překladač  na  pozadí  (implicitně  spouští  make,  takže je třeba
        vytvořit i Makefile  (pro který je též zvláštní  mód)) a odchytává
        si jeho chybové  hlášky.  Potom lze pomocí  okna Messages  skákati
        po chybách a opravovati. Žádné debugovací schopnosti (krokování či
        breakpointy) to však  nemá - je ovšem  otázka,  zda je to bug nebo
        feature (fprintf(stderr, "Err: blah\n"); také není k zahození).

                                  Zhodnocení

          Ačkoli ladící schopnosti  editoru fte jsou zredukovány na okénko
      s chybovými  hláškami, přesto si tento editor snadno získal mé srdce
      - jeho implicitní nastavení mi totiž maximálně vyhovuje, a tak změny
      v konfiguraci  nebyly  nějak  dalekosáhlé.  Přidal jsem si pouze mód
      pro českou klávesnici, zkratku pro   v HTML módu (Ctrl+Space) a
      ještě pár maličkostí jako používání českého fontu nebo předefinování
      zkratky  Ctrl+Tab  na Shift+Tab  kvůli  KDE.  Samozřejmě, že i tento
      editor  jako  většina  jiných má své  nedostatky, o kterých  jsem se
      zmiňoval výše, ale tyto nedostatky  bohatě vyvažují  možnosti, které
      tento editor poskytuje.

                                     Grasp

                           Karel Žák, 9. června 1998

          A toto je můj favorit - GRASP neboli  Graphical  Representations
      of  Algorithms,  Structures  and  Processes.  Nejedná  se o  žádného
      vývojářského obra, ale naopak o docela  úhledný  editor,  který svou
      funkci  pro programování  projektů o několika  souborech a pár stech
      řádcích  plní  na  výbornou.  Osobně  ho  používám  asi 1 rok a jsem
      nadšen.

          Současná  verze je 6.2.7 pro Unix  (29. dubna  1998) a 6.2.8 pro
      Win95/NT (25. března 1998).

          Program  je  napsán  pro  X  Window  za  použití   Motif  1.1.2.
      Pochopitelně autoři nezapomínají ani na ty co nemají Motif a program
      lze stáhnout na adrese:
        http://www.eng.auburn.edu/department/cse/research/grasp/
          jako staticky slinkované binárky.

          GRASP je připraven pro jazyky Ada 95, C, C++, Java a VHDL. GRASP
      je integrován  do GNU  rodiny  kompilátorů  pro  Adu, C a Sunovského
      javac pro Javu (dle informací na Webu).

          Jako  první  se při  spuštění  objeví  okno  obsahující  soubory
      projektu,  pokud  žádný  projekt  nemáte tak logo  programu.  Zde se
      lze rozhodnout  jestli si založíte  nový projekt  nebo si prostě jen
      tak zeditujete  nějaký ten soubor. Tato možnost mi tak trochu  chybí
      u Source  Navigátoru,  který předpokládá, že pokud  někdo něco chce,
      musí si nejdříve  vytvořit  projekt.  Pro své  interní  informace si
      GRASP  vytváří  soubor v adresáři, ve kterém se nacházejí  editované
      soubory.

          Pak už stačí jen vybrat  jazyk, ve kterém  bude  vámi  editovaný
      soubor, nebo přímo vybrat soubor v souborech zařazených do projektu,
      a objeví se vlastní editor.

          Editor  podporuje   všechny   obvyklé  funkce  (tedy  obarvování
      klíčových slov,  zarovnávání,  spouštění  make, run programu  atd.),
      ale hlavně CSD. A to je ten důvod proč o GRASPu píši.

          CSD - Control  Structure  Diagram je nádherná věc, kterou můžete
      vidět  na  přiloženém  obrázku.  Ano, to jsou ty "čáry",  které  nám
      krásně  zpřehledňují  zdrojový kód. Na první  pohled je ihned patrné
      kdy a kam se  vracíte,  kde je  jaký  cyklus, if nebo  něco  jiného.
      Součástí značení textu může též být možnost číslování řádků.

          Co se mi také líbí je, že pokud uděláte chybu (např.  zapomenete
      středník),  tak  vás  program  taktně  upozorní, že s takovým  kódem
      CSD  prostě  neudělá  (máte-li  tedy CSD v celém  souboru v pořádku,
      je pravděpodobné,  že i základní  syntaxe  kódu je OK). O případných
      chybách GRASP informuje programátora v okně vzkazů.

          Další zajímavou  vlastností GRASPu je expanze maker. To znamená,
      že editor  makra  ukrytá v souborech  includovaných  do  editovaného
      souboru pro vlastní kontrolu expanduje (ale na obrazovce a v souboru
      vám  pochopitelně  zůstane to co  jste  napsali).  Tak  např.  pokud
      bude  soubor.h a v něm makro AHOJ a my toto  makro  budeme  používat
      v souborech  .c, bude  GRASP  kontrolovat  jak toto  makro  "zapadá"
      do souborů .c. Pokud tedy bude v makru  AHOJ  chyba,  budeme na tuto
      skutečnost upozorněni. GRASP tedy použité AHOJ nebere jen jako text,
      ale jako opravdové  makro. Lze nastavit, z jakých  #include  souborů
      bude expanze probíhat (lze zahrnout i /usr/include).

          V GRASPu si můžete  také  definovat  vlastní  šablony.  Já  jsem
      to například  používal  při psaní  programů  používajících  knihovnu
      mSQL,  kdy se  mi  nechtělo  psát  pořád  ty  šílené  názvy  funkcí.
      Jen  stačilo  nadefinovat  funkce  nebo i cykly (a ostatně  cokoliv)
      do souboru se šablonami, a v menu editoru se vše objevilo. Pak pokud
      chcete  něco z toho co jste  nadefinovali, jen  zamyšujete do tohoto
      menu a text ukrytý pod touto  položkou je GRASPem  napsán. Na dalším
      obrázku je toto  menu  se  šablonami  dodanými s programem  to  celé
      světle modré okénko.

          Mezi další  příjemnosti  patří  barevný tisk do PostScriptu, kdy
      na výtisku je pochopitelně možné mít i CSD (to by mohlo být užitečné
      pro  všechny  tvůrce  literatury o programovaní  (už vidím ty krásné
      a přehledné  příručky a ne ten šedý chaos, na kterém oči umdlévají -
      ale vraťme se z obláčku na zem...).

          Nově je v GRASPu  interface  pro  grep,  ale to si už asi  každý
      představí sám. A dobrá zpráva na konec, v další verzi má být podpora
      Tcl a Perlu, a tak si přijdou na své i nekompilovanci...


                               Source Navigator

                           Karel Žák, 9. června 1998

          Pokud se u GRASPu  zmiňuji o tom, že se hodí i pro psaní  malých
      prográmků, tak Source  Navigator (SN) bych zařadil do přesně  opačné
      kategorie  IDE  programů.  Pochopitelně i SN  lze  použít  na  psaní
      několika  málo řádek, ale pravděpodobně při něm nevyužijete  všechny
      jeho  možnosti a jak  dále  uvidíme,  bylo  by  to tak  trochu  jako
      používat "dělo na komáry".

          Verze  kterou  já  používám  je  tzv.  \uv{lite  version},  tuto
      lze získat na http://www.cygnus.com.  Její  omezení  (na které  jsem
      narazil) je neochota  pracovat s projekty o více než 50 000 řádkách.
      Zájemcům o plnou  verzi  sám SN napoví  hned  při  spuštění,  kam se
      obrátit a pro koho si dolárky připravit (ano, ano, žádné GNU).

          SN je kompletním  prostředím pro vývoj jedním  vývojářem  (např.
      program  C-Forge to umí i pro tým  vývojářů  rozesetých po síti, ale
      o tom až někdy příště). Součástí balíku je manažer projektů, manažer
      souborů a funkcí, interface pro debugger a make a hlavně editor. Vše
      je velice snadno a různorodě konfigurovatelné.

          SN umí  aplikovat  všechny své možnosti na Tcl,  Javu,  Fortran,
      Cobol,  C/C++,  asm.  Ke všem  jazykům je  možno  nastavit i externí
      editor a specifikovat koncovky souborů. Bohužel k C++ a C přistupuje
      stejně. Možná by nebylo od věci, pokud je editován soubor.c, nenutit
      programátorovi na pracovní  plochu  nástroje na práci s objekty, ale
      uvidíme, vše se vyvíjí.

          Jak je  dobrým  zvykem,  přistupuje i SN k psaní  programů  jako
      k tvorbě  projektů.  Projekt  je  možné  vytvořit  i z  existujících
      souborů. K tomu  slouží  něco  co  lze  nazvat  manažerem  projektů.
      Zde je možné  přidávat a ubírat  adresáře,  soubory do projektu, ale
      i spojovat  projekty atd. Při vytvoření  projektu udělá SN v určeném
      adresáři  jeden  soubor a adresář,  ve kterých  si udržuje  databáze
      o zdrojovém kódu. Pro každý projekt lze vytvořit specielní nastavení
      všeho nastavitelného. Tedy krátce:

      - barvy a fonty pro asi 40 druhů textů (např. komentáře,  deklarace,
        ...), oken a menu
      - tisk
      - HTML viewer
      - bug report
      - debugger
      - make
      - version control system (výběr s RCS, CVS, SCCS).
      - tvorba záloh (.bak)
      - automatické zarovnávání
      - převod tabulátorů na mezery
      - nastavení cache
      - a ještě moc a moc věciček\dots{}

          Po vytvoření  projektu  se objeví  něco  jako  manažer  souborů.
      Ten je schopen  zobrazovat  buď seznam  souborů  nebo  velice  pěkný
      seznam  funkcí (na obrázku).  Právě  schopnost  zacházet s projektem
      z hlediska funkcí a ne jen souborů je velice efektivní.  Programátor
      pak už nemusí přemýšlet, kde v jakém souboru je jaká funkce, ale jen
      v seznamu  funkcí, který lze třídit dle nastavitelného filtru, najít
      tu pravou a editovat.

          Editor v sobě sdružuje hned několik  hezkých  nástrojů  (některé
      lze  volat i z manažera  souborů).  Editor  je  schopen  zarovnávat,
      zvýrazňovat  klíčová  slova,  kopírovat,  zacházet  s bloky a hlavně
      umožňuje   hledat  a hledat  (v   aktuálním   souboru   nebo v celém
      projektu).

          Pokud kliknete pravým  tlačítkem myši na jakoukoliv  funkci nebo
      proměnnou,  editor  vám  nabídne  menu,  pomocí  něhož se přemístíte
      na implementace nebo deklarace dané funkce nebo proměnné.  Nevíte-li
      tedy, co to je např. za  položku  blabla ve  struktuře  něco,  stačí
      kliknout  na něco->blabla a podívat  se,  kde a co a jak je ve vašem
      projektu  spojeno s touto  položkou. V horní  části  editoru je opět
      přístupný  seznam se všemi  objekty,  proměnnými,  makry a funkcemi.
      Dále pak  seznam  toho, co bylo  naposledy  hledané.  Aby se vývojář
      při práci neztratil, jsou dostupná i tlačítka  (šipky) back/forward,
      které vás vrátí na vaši předchozí/následující pozici v projektu.

          Editor umožňuje i jiná zobrazení než jen klasické (záložka Edit)
      zobrazení  (textu)  kódu. Na ostatních  záložkách je možné  zacházet
      s Class,  Retriever,  Hierarchy  (bohužel  pro svou  nedotčenost C++
      tuto  část  jaksi  taktně  vynechám, ale z hlediska  koncepce SN lze
      předpokládat, že i tato  oblast je zde  velice  dobře  propracovaná)
      a pak (a to se mi moc líbí) záložky Xref a Include.

          V  Xref  je  možné  nechat  si  dle  nastavené  hloubky  vnoření
      doslova  nakreslit  jaké  funkce a  proměnné  jsou  volány a použity
      v dané funkci. Tak např. na dalším  obrázku je znázorněno, že funkce
      init_tree volá funkci  rec_tree a u obou funkcí i použité  proměnné.
      Prakticky tak lze udělat mapu vzájemných provázaností funkcí v celém
      programu, pokud jako začátek  nastavíte  main() a levels  dostatečně
      velký (a procesor  máte dostatečně  výkonný).  Pochopitelně je možné
      se kliknutím  přemístit do dané  funkce.  Include  umožňuje to samé,
      ale u souborů. Použití záložky Grep je myslím jasné.

          SN, jak už zaznělo, má i interface pro debugování. Jako debugger
      používá  defaultně  gdb. Aktuálně  prováděný kód zobrazuje SN v okně
      editoru,  debugovat  lze  prakticky bez psaní  příkazů na příkazovou
      řádku  gdb - stačí  jen  klikat.  V tomto  mne  SN  nějak  neoslovil
      a kvalitou ho pravděpodobně  předčí DDD. Já osobně  raději  používám
      samotné gdb.

          Převratné  není  ani  rozhraní  pro  make.  Obsahuje  vše co lze
      standardně  očekávat  (ukazování na chyby  odhalené  při  kompilaci,
      nastavení parametrů pro make atd.).

          Co mi u SN chybí - a je např. u Emacsu - je  skrývání  podmíněně
      kompilovaných částí kódu dle direktiv  #ifdef  (bylo v emacsu  pěkně
      předvedeno  na  Cikháji).  Další  trochu  nepříjemnou  věcí  je doba
      ukládání  souborů - SN si totiž  znova  vytváří  databáze  informací
      o zdrojovém kódu a to trochu trvá.

          To je velice  zhruba  vše.  Pravděpodobně  jsem  vynechal  mnoho
      detailů,  které SN umožňuje, ale to není  náplní  Linuxových  novin,
      to se musí  zažít  při  práci s SN. Na závěr  lze  říci, že se jedná
      o velice  dobrý IDE  software i pro opravdu  velké  projekty,  který
      by bylo  zajímavé  vidět v plné  verzi (na domovské  stránce ho mají
      vyfocený v úhledné, ale bohužel  typicky komerční  krabici) a vnutit
      mu např. celý  kernel  Linuxu - a já myslím, že i s takovým  balíkem
      zdrojáků by bez větších problémů pracoval pro zdar svého majitele.


            výheň