Zvýraznění syntaxe

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

HTML syntaxe. Zvýraznění syntaxe je v informatice vlastnost některých textových editorů nebo integrovaných vývojových prostředí (IDE), která programátorům usnadňuje čtení zdrojového kódu tak, že zobrazuje jeho různé části v různé barvě, fontu nebo stylu. Další možná využitelnost zvýraznění syntaxe je na odhalování chyb v syntaxi. Na samotný kód programu nemá zvýrazňování syntaxe žádný vliv.

Některé známé programy podporující tuto vlastnost: editor Vim, PSPad, vývojové prostředí Eclipse, Dev-cpp, komponenta Scintilla, kterou využívají další editory (např. SciTE, Code::Blocks nebo Anjuta) a další.

...
...

Praktické možnosti

závorek Zvýrazňování syntaxe je jednou z možností, jak vylepšit čitelnost a podobu textu, obzvláště kódu, který se zobrazuje přes několik stránek. +more Čtenář má dle libosti jednoduše možnost ignorovat rozsáhlé sekce komentáře nebo kódu.

Zvýrazňování syntaxe také pomáhá programátorům nalézt chyby ve svém programu. Například většina editorů zvýrazňuje znakové řetězce v rozdílných barvách. +more Nalézt chybějící oddělovač je mnohem jednodušší díky odlišné barvě textu. Párování závorek je dalším důležitým prvkem mnoha oblíbených editorů. Tato možnost ulehčuje zjištění, zda byla závorka vynechána nebo nalézt druhou závorku z páru, pokud se kurzor nachází na jedné z nich a pár je zvýrazněn odlišnou barvou.

Některé editory také mohou exportovat barevné označení ve formátu, který uchovává zvýraznění syntaxe a je vhodný pro tisk nebo import do nějakého programu pro zpracování textu (HTML, LaTeXu, PostScriptu, RTF a podobně).

Třída dokumentu

Pro editory, které podporují více než jeden programovací jazyk, může uživatel jazyk specifikovat (jazyk C, LaTeX, HTML, …), nebo je jazyk textovým editorem automaticky rozpoznán na základě přípony souboru nebo skenováním obsahu souboru.

Jedním z přístupů k podpoře zvýrazňování syntaxe pro více jazyků je užívání „tříd dokumentů“. Každý jednotlivý jazyk představuje jinou třídu dokumentu. +more Každou třídu lze asociovat se specifickou sadou pravidel barvení syntaxe. Tento přístup umožňuje určitý stupeň flexibility pro vícejazyčné editory, ale jsou zde i potenciální omezení:.

* přiřazení jednoho souboru k více než jedné třídě dokumentů (např. při editování HTML souboru, který obsahuje kód Javascript) * editovat jazyk, který nepatří k žádné rozpoznané třídě (např. +more při editování zdrojového kódu neznámého nebo relativně nového programovacího jazyka).

Některé vícejazyčné editory, které užívají metodu tříd dokumentů, někdy poskytují dodatečné prvky, které tato omezení řeší.

Prvky syntaxe

Většina editorů při zvýrazňování syntaxe dovoluje, aby byly několika různým slovním dílčím prvkům syntaxe přiděleny různé barevné a textové styly. Ty obsahují klíčová slova, komentáře, řídící struktury, proměnné a další prvky. +more Programátoři si často přizpůsobují svá nastavení, přičemž se pokouší zobrazit co nejvíce užitečných informací, aniž by příliš zkomplikovali čtení kódu.

Příklad

Níže je uvedena ukázka C++ kódu se zvýrazněním syntaxe:

// Alokace všech oken for (int i = 0; i

V tomto příkladě rozpoznal editor klíčová slova for, int a new. Komentář na začátku je zvýrazněn zvláštním způsobem, aby byl odlišen od výkonného kódu.

Historie

Jedním z prvních editorů zdrojového kódu byl editor Emily vytvořený v roce 1969 Wilfredem Hansenem. Tento editor obsahoval funkce pro dokončování psaného kódu, a to společně se zvýrazněním syntaxe. +more Tyto doplňky vždy zajistily, aby jakýkoli napsaný kód neobsahoval syntaktické chyby.

V roce 1985 Ben Shneiderman navrhl metodu „barevné rozlišení textových řetězců naznačující jejich význam“, která je popsána například v knize Advances in human-computer interaction. První editor který využíval barevné zvýraznění syntaxe, byl The Live Parsing Editor (LEXX). +more Ten byl vytvořený v roce 1985 pro operační systém VM a používaný pro přepsání Oxford English Dictionary (česky Oxfordského slovníku angličtiny) do elektronické podoby. Jeho schopnost okamžitého „parsování“ (syntaktické analýzy) umožnila přidání uživatelských nástrojů pro analýzu textu, programů, datových souborů atd.

Dne 10. října 1985 byla implementována syntaktická struktura programovacího jazyka Pascal, díky které byl editor schopen automaticky zvýrazňovat syntaxi kódu již při jeho psaní a byla zde využita například změna fontu písma.

Existuje mnoho textových editorů a nástrojů na formátování zdrojových kódů využívajících různé metody pro vyhledávání textu ke zvýraznění. Většina upřednostňuje využití heuristického prohledávání definovaných vzorů (např. +more regulární výrazy), oproti využití analyzátoru („parseru“) určeného pro daný programovací jazyk. To může vést k nepřesnému zvýraznění a v některých případech i k pomalejšímu zpracování. Některé textové editory těmto problémům předcházejí tím, že zpracovávají jen aktuálně viditelnou část textu namísto celého souboru a části, které nejsou viditelné, používají pouze k „synchronizaci“.

Některá moderní vývojová prostředí (IDE) zaměřená na konkrétní programovací jazyk obsahují úplné specifikace daného jazyka, a tím zabezpečují bezchybné rozpoznání syntaxe. Díky tomu je výsledný kód přehlednější a srozumitelnější. +more V dalších letech se metody zvýrazňování syntaxe (např. lokálních proměnných) stávaly více populární a byly implementovány i do moderních vývojových prostředí jako je Microsoft Visual Studio, Xcode, a další.

Reference

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top