Portál AbcLinuxu, 5. května 2025 02:55
< contexts > <context name="phpsource" attribute="PHP Text" lineEndContext="#stay">jsem přidal pravidlo
<Detect2Chars attribute="Special comment" context="onelinehicomment" char="#" char1="#" /> před <DetectChar attribute="Comment" context="onelinecomment" char="#" />a přidal kontext onelinehicomment
<context name="onelinecomment" attribute="Comment" lineEndContext="#pop"> <StringDetect attribute="Keyword" context="#pop" lookAhead="true" String="?>" /> <IncludeRules context="##Alerts" /> </context> <context name="onelinehicomment" attribute="Special comment" lineEndContext="#pop"> <StringDetect attribute="Keyword" context="#pop" lookAhead="true" String="?>" /> <IncludeRules context="##Alerts" /> </context>a data pro "Special comment"
<itemDatas> <itemData name="Comment" defStyleNum="dsComment" /> <itemData name="Special comment" defStyleNum="dsComment" backgroundColor="#D8FFD9" />V podstatě jsem to okopčil ze stávajícího popisu jen jsem přidal jedno pravidlo atd ... Dostal jsem se k tomu, že pokud zdroják prohlížím (z Krusaderu F3 ), tak se komentáře začínající dvěmi křížky ## obarvují. Pravidlo je v "nastavení editoru vidět v PHP/PHP jako Special comment atd ... tedy - nějak to funguje. Kate ale Special comment nezobrazí ( v nastavení -> nastavení Kate -> Komponenta editoru ->Písma a barvy -> Zvýrazněné styly textu -> vybrat z selectu "Skripty PHP/PHP" ( tedy na stejném místě, kde "holý" prohlížeč ten styl Special comment vidí), řádky s novým stylem ani neobarví, prostě v Kate to nefunguje Kate, přes všechny nedostatky je mým oblíbeným editorem, zkoušel jsem i jiné editory Kdevelop, netBeans, které umějí užitečné věci jako subverze, opravdový projekt a podobně, ale zvyk je železná košile. Vyzná se někdo z vás v tom guláši a je schopen mi poradit, jak docílit požadované chování? Předem děkuji Milan
Řešení dotazu:
/** … */
. Tak třeba to druhé funguje.
/usr/share/kde4/apps/katepart/syntax/php.xmlani
/home/.kde4/share/apps/katepart/syntax/php.xmlale
/home/local/share/katepart5/syntax/php.xmlKdyž jsem na toto místo překopíroval můj dřívější výtvor, kate ho nenačetl. Hlavičky byly trochu rozdílné, tak jsem nakonec pro jistotu lehce upravil ten nový soubor. Nejprve jsem "styl" " Special Comment" bez závislých definic. Kate ho viděl. Pokrok. Změnil jsem tomu barvu pozadí. Přidal jsem definice pro Special Comment do contextu, ale mnou zamýšlený text ve zdrojáku to neovlivnilo (neobarvilo). Divné. změnil jsem Special Comment v itemdatas tak, že jsem mu nadefinoval i pozadí, a hle ! Text se vybarvil, přesně jak jsem zamýšlel. V nastavení editoru se ale nastavená barva pozadí u Special Comment v textu neprojeví. Nevím, co to zapříčiňuje, zda nějaká nekonzistence v kódu KTextHighlighteru a GUI ladítka nebo kde, ale čert to vem. Úkol, který jsem si dal je splněn, dávám si fajfku a vám to snad pomůže ve vlastním experimentování Milan
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.