&Anders.Lund; &Anders.Lund.mail; &Dominik.Haumann; &Dominik.Haumann.mail; MarekLaane
bald@starman.ee
Tõlge eesti keelde
Täiustatud redigeerimisvahendid Kommentaari lisamine/eemaldamine Käsud 'Lisa kommentaar' ja 'Eemalda kommentaar', mida saab kasutada menüüst Tööriistad, võimaldavad lisada valitud tekstiosale või kui midagi ei ole valitud, siis parajasti aktiivsele reale kommentaarimärgid või need sealt eemaldada. Seda muidugi juhul, kui parajasti redigeeritava teksti vorming kommentaare üldse kasutada lubab. Reeglid, mil moel kommentaar välja näeb, on määratud süntaksi definitsioonis, nii et kui süntaksi esiletõstu ei kasutata, ei ole võimalik ka kommentaarimärke lisada või eemaldada. Mõned vormingud defineerivad ühe rea kommentaarimärgid, mõned lubavad kommenteerida mitut rida korraga ja mõned mõlemat. Kui mitme rea kommentaarimärke ei ole saadaval, siis ei ole võimalik kommenteerida valikut, mille viimane rida ei ole valitud tervikuna. Kui saadaval on ühe rea kommentaarimärgid, on võimaluse korral mõttekas kommenteerida üksikuid ridasid - nii saab ära hoida näiteks "kommentaari kommentaari sees". Kommentaarimärkide eemaldamisel ei tohi olla valitud kommenteerimata teksti. Valikult mitmerealise kommentaarimärgistuse eemaldamisel eiratakse iga tühikut väljaspool kommentaarimärgistust. kommentaar Kommentaarimärkide lisamiseks kasuta menüükäsku TööriistadKommentaar või vastavat kiirklahvikombinatsiooni, mis vaikimisi on &Ctrl;D. kommentaari eemaldamine Kommentaarimärkide eemaldamiseks kasuta menüükäsku TööriistadKommentaari eemaldamine või vastavat kiirklahvikombinatsiooni, mis vaikimisi on &Ctrl;&Shift;D. Redaktori käsureakomponent Kate redaktorikomponent kasutab seesmist käsurida, mis võimaldab minimaalse GUI-ga väga mitmesuguseid toiminguid ette võtta. Käsurida on terminal redaktori allosas, mille saab nähtavaks muuta menüükäsuga VaadeLülitu käsureale või kiirklahviga (vaikimisi F7). Redaktor pakub omalt poolt välja rea käske, mida tutvustatakse allpool, pluginad võivad neile veelgi lisa pakkuda. Käsu käivitamiseks vajuta klahvi Enter. Käsurida annab märku, kas täitmine õnnestus ning näitab vajaduse korral teadet. Kui avasid käsurea klahviga F7, peidetakse see automaatselt mõne sekundi pärast. Teate eemaldamiseks ja uue käsu sisestamiseks vajuta uuesti klahvi F7. Käsureal on omaenda abisüsteem, mille käivitamiseks anna käsk help. Kõigi võimalike käskude nägemiseks anna käsk help list, mõne konkreetse käsu abi nägemiseks käsk help käsk. Käsureal on ka omaenda mälu ehk ajalugu, mis võimaldab uuesti kasutada juba varem antud käske. Ajaloos saab liikuda klahvidega Nool üles ja Nool alla. Varasemate käskude näitamisel valitakse selle argument, mis võimaldab neid kergesti asendada. Standardsed käsureakäsud Redaktori seadistamise käsud Neid käske võimaldab kasutada redaktorikomponent ja need on mõeldud ainult aktiivse dokumendi ja vaate seadistamiseks. See on mugav juhul, kui sa ei soovi mingil põhjusel kasutada vaikeseadistusi (näiteks soovid teistmoodi treppida). Argumenditüübid TÕEVÄÄRTUS Seda kasutatakse käskude puhul, millega saab midagi sisse või välja lülitada. Väärtusteks võivad olla on ('sees'), off ('väljas'), true ('tõene'), false ('väär'), 1 või 0. TÄISARV Täisarv SÕNE String set-tab-widthTÄISARV laius Määrab tabelduskoha laiuseks arvu laius set-indent-widthTÄISARV laius Määrab taande laiuseks arvu laius. Ainult sel juhul, kui trepitakse tühikutega. set-word-wrap-columnTÄISARV laius Määrab sõnamurdmise korral rea laiuseks arvu laius. Ainult siis, kui teksti automaatne murdmine on sisse lülitatud. set-icon-borderTÕEVÄÄRTUS enable Ikoonipiirde näitamine. set-folding-markersTÕEVÄÄRTUS enable Voltimismärkide paneeli näitamine. set-line-numbersTÕEVÄÄRTUS enable Reanumbrite paneeli näitamine. set-replace-tabsTÕEVÄÄRTUS enable Sisselülitamisel asendatakse tabeldusmärgid kirjutamise ajal tühimärkidega. set-remove-trailing-spaceTÕEVÄÄRTUS enable Sisselülitamisel eemaldatakse rea lõpus seisvad tühimärgid kohe pärast seda, kui kursor lahkub realt. set-show-tabsTÕEVÄÄRTUS enable Sisselülitamisel näidatakse tabeldusmärke ja rea lõpus seisvaid tühimärke väikeste punktidena. set-indent-spacesTÕEVÄÄRTUS enable Sisselülitamisel trepib redaktor igal treppimistasemel 'iga määratud tühikutega, mitte aga tabeldusmärgiga. set-mixed-indentTÕEVÄÄRTUS enable Sisselülitamisel kasutab Kate treppimisel tabeldus- ja tühimärkide segu. Iga treppimistase on laiusega ning täiendavaid treppimistasemeid optimeeritakse nii paljude tabeldusmärkide kasutamisega kui võimalik. Käivitamisel rakendab see käsk ka treppimise tühikumärkidega ning kui taande laius ei ole määratud, määratakse see täitmise ajal kogu dokumendile poole väärtusele. set-word-wrapTÕEVÄÄRTUS enable Dünaamilise reamurdmise sisselülitamine vastavalt enable väärtusele. set-replace-tabs-saveTÕEVÄÄRTUS enable Sisselülitamisel asendatakse tabeldusmärgid dokumendi salvestamisel tühimärkidega. set-remove-trailing-space-saveTÕEVÄÄRTUS enable Sisselülitamisel eemaldatakse dokumendi salvestamisel ridade lõpust tühikud. set-indent-modenimi Määrab automaatse treppimise režiimiks väärtuse nimi. Kui nimi pole tuntud, on režiimiks 'none' ehk 'puudub'. Sobivad režiimid on 'cstyle', 'csands', 'xml', 'python', 'varindent' ja 'none'. set-highlightesiletõst Määrab dokumendi süntaksi esiletõstmise süsteemi. Argument peab olema kehtiv esiletõstu nimi, nagu seda näeb näiteks menüüs TööriistadEsiletõstmine. Käsk võimaldab argumendi lisamisel kasutada automaatset lõpetamist. Redigeerimiskäsud Nende käskudega saab muuta aktiivset dokumenti. indent Trepib valitud read või aktiivse rea. unindent Eemaldab valitud ridade või aktiivse rea treppimise. cleanindent Puhastab valitud ridade või aktiivse rea treppimise vastavalt dokumendi treppimisseadistustele. comment Lisab kommentaarimärgid, millega muuta valik või valitud read või aktiivne rida kommentaariks vastavalt tekstivormindusele, mille määrab dokumendi süntaksi esiletõstu definitsioon. uncomment Eemaldab kommentaarimärgid valikult või valitud ridadelt või aktiivselt realt vastavalt tekstivormindusele, mille määrab dokumendi süntaksi esiletõstu definitsioon. kill-line Kustutab aktiivse rea. replacemusterasendus Asendab teksti, mille määrab muster, tekstiga, mille määrab asendus. Kui soovid, et muster sisaldaks tühimärki, tuleb nii muster kui ka asendus muuta ühe- või kahekordsete jutumärkidega tsitaadiks. Kui argumendid pole tsiteeritud, arvab käsk, et esimene sõna on muster ja ülejäänud asendus. Kui asendus andmata jätta, eemaldatakse kogu tekst, kus esineb muster. Otsingule võib lisada lippe, milleks kirjuta koolon ja selle järele vajalik täht või tähed, nii et käsk võtab kuju replace:võtmed muster asendus. Kasutada saab järgmisi võtmeid: b Otsing tagasisuunas c Otsing alates kursori asukohast. e Otsing ainult valikus. r Regulaaravaldise otsing. Selle korral võid anda \N, kus N on arv, mis tähistab asendusstringi hõivet. s Tõstutundlik otsing. p Loa küsimine iga asenduse korral. w Ainult täissõnade sobivus. datevorming Kuupäeva/kellaajastring lisamine kujul, nagu selle määrab vorming või kui seda pole antud, siis kujul yyyy-MM-dd hh:mm:ss. Argument vorming võib esineda järgmisel kujul: dPäev arvuna ilma alustava nullita (1-31). ddPäev arvuna alustava nulliga (01-31). dddLühendatud ja lokaliseeritud päevanimi (nt. 'Esm', 'Püh'). ddddPikk ja lokaliseeritud päevanimi (nt. 'Esmaspäev', 'Pühapäev'). MKuu arvuna ilma alustava nullita (1-12). MMKuu arvuna alustava nulliga (01-12). MMMLühendatud ja lokaliseeritud kuunimi (nt. 'Jaan', 'Dets'). yyAasta kahekohalise arvuna (00-99). yyyyAasta neljakohalise arvuna (1752-8000). hTunnid ilma alustava nullita (0-23 või 1-12, kui näidatakse AM/PM). hhTunnid alustava nulliga (00-23 või 01-12, kui näidatakse AM/PM). mMinutid ilma alustava nullita (0-59). mmMinutid alustava nulliga (00-59). sSekundid ilma alustava nullita (0-59). ssSekundid alustava nulliga (00-59). zMillisekundid ilma alustava nullita (0-999). zzzMillisekundid alustava nulliga (000-999). APAM/PM kasutamine. AP asemele pannakse kas "AM" või "PM". apam/pm kasutamine. ap asemele pannakse kas "am" või "pm". charidentifikaator See võimaldab sisestada tähemärke nende numbrilise koodi kaudu kümnend-, kaheksand- või kuueteistkümnendvormis. Selle kasutamiseks käivita redigeerimiskäsu dialoog, kirjuta sisendikasti char: [number] ja klõpsa nupule OK. <command>char</command> näited Sisend: char:234 Väljund: ê Sisend: char:0x1234 Väljund: Asendamine sed-stiilis Otsimine sed-stiilis s///[ig] %s///[ig] See käsk käivitab sedi-sarnase otsi/asenda-operatsiooni aktiivsel real või kogu failis (%s///). Nii otsitakse tekst läbi, et leida sobivused otsingumustriga, st esimese ja teise kaldkriipsu vahele jääva regulaaravaldisega. Kui sobivus leitakse, asendatakse sobiv tekstiosa avaldisega stringi keskmise ja viimase kaldkriipsu vahel. Sulud otsingumustris tekitavad tagasiviidad, see tähendab, et käsk peab meeles, milline osa sobivusest vastas sulgudes olnule; neid stringe saab otsingumustris uuesti kasutada, viidates neile esimese sulukombinatsiooni puhul kui \1, teise puhul kui \2 jne. Otsimaks märki ( või ), tuleb need varjestada längkriipsu kasutades: \(\) Kui kirjutada avaldise lõppu i, ei arvestata sobivuse juures tõstu ehk tähesuurust. Kui kirjutada lõppu g, asendatakse kõik mustri sobivused, muidu asendatakse ainult esimene sobivus. Teksti asendamine aktiivses reas Armas arvuti katkestas just äsja töö ja teatas, et lähtefaili real 3902 mainitud klass myClass ei ole defineeritud. "Neetud!" mõtled sina: aga muidugi peab see olema MyClass. Lähed siis reale 3092 ja selle asemel, et püüda tekstist sõnakest üles leida, käivitad redigeerimiskäsu dialoogi, sisestad seal s/myclass/MyClass, vajutad nupule OK, salvestad faili ja kompileerid selle – edukalt ja ilma vigadeta. Teksti asendamine kogu failis Kujuta ette, et sul on fail, kus esineb mitu korda preili Maasikas, ja siis tuleb keegi, kes ütleb, et too neiu äsja abiellus ja kannab nüüd nime proua Vaarikas. On päris mõistetav, et sind tabab võitmatu iha kirjutada kõikjal tekstis preili Maasikas asemele proua Vaarikas. Selleks käivita käsurida, anna käsk %s/preili Maasikas/proua Vaarikas/, vajuta klahvi Enter - ja asendused ongi tehtud. Nõudlikum näide See näide selgitab tagasiviidete ja märgiklasside kasutamist (kui sa ei tea, mis need on, vaata selgitusi edaspidi viidatud dokumentides). Oletame, et sul on selline rida: void MyClass::DoStringOps( String &foo, String &bar String *p, int &a, int &b ) Äkki taipad, et see pole mitte kõige kaunim kood, ja otsustad kasutada võtit const kõigi aadressiargumentide puhul (need on need, mille puhul argumendi ees seisab operaator &). Ühtlasi tahad ühtlustada tühikute kasutamist, nii et iga sõna vahel oleks vaid üks tühik. Käivita redigeerimiskäsu dialoog ja sisesta sinna: s/\s+(\w+)\s+(&)/ const \1 \2/g ning vajuta nuppu OK. Avaldise lõpus paiknev g annab regulaaravaldisele korralduse rekompileerida iga sobivus tagasiviidete säilitamiseks. Väljund: void MyClass::DoStringOps( const String &foo, const String &bar String *p, const int &a, const int &b ) Ja ongi valmis! Mis siis tegelikult juhtus? Juhtus see, et me otsisime tühikut (\s+), millele järgneks üks või enam tähte (\w+), millele omakorda järgneks tühik (\s+) ja sellele omakorda ja-märk. Otsingu käigus salvestasime tähekombinatsioonid ja ja-märgid edasiseks kasutamiseks asendusoperatsioonis. Seejärel asendasime sobinud kohad tühikuga, millele järgneb const, millele järgneb tühik, millele järgneb meelde jäetud tähekombinatsioon (\1, millele järgneb tühik, millele järgneb meelde jäetud ja-märk (\2). Lihtne, eks ju? Pane tähele, et mõnel juhul oli täheühendiks String, mõnel juhul aga int, nii et märgiklassi \w ja kvantori + kasutamine oli väga mõistlik tegu. Liikumiskäsud gotoTÄISARV rida Selle käsuga saab liikuda määratud reale. findmuster Selle käsuga saab liikuda sinna, kus esimest korda esineb muster. Selle järgmisi esinemisi saab leida menüükäsuga RedigeerimineOtsi järgmine (vaikimisi kiirklahv F3). Otsimiskäsku saab täiendavalt seadistada, kui lisada koolon ja selle järele mõni võti, nii et käsk võtab kuju find:võtmed muster. Kasutada saab järgmisi võtmeid: b Otsing tagasisuunas c Otsing alates kursori asukohast. e Otsing ainult valikus. r Regulaaravaldise otsing. Selle korral võid anda \N, kus N on arv, mis tähistab asendusstringi hõivet. s Tõstutundlik otsing. w Ainult täissõnade sobivus. ifindmuster See käsk võimaldab otsimist lennult, see tähendab, otse kirjutamise ajal. Selle käitumist või otsingut saab seadistada käsule koolonit ja selle järele mõnda võtit lisades, nii et käsk võtaks kuju ifind:võtmed muster. Kasutada saab järgmisi võtmeid b Otsing tagasisuunas r Regulaaravaldise otsing. s Tõstutundlik otsing. c Otsing alates kursori asukohast. Koodi voltimise kasutamine Koodi voltimine võimaldab peita redaktoris dokumendi osi, muutes nii eriti suured dokumendid lihtsamini jälgitavaks. &kate; arvutab voltimispiirkondi välja süntaksi esiletõstu definitsioonides antud reeglite põhjal, mistõttu see on kasutatav ainult teatud vormingutes - tavaliselt lähtekoodis, XML-märkekeeles ja muude selliste failide korral. Enamik koodivoltimist toetavaid esiletõstu definitsioone lubab ka kasutajal endal määrata voltimispiirkondi, mida tavaliselt tähistavad võtmesõnad BEGIN ja END. Koodivoltimise kasutamiseks lülita sisse voltimismärgid käsuga VaadeVoltimismärkide näitamine. Voltimismärkide paneel vasakus servas näitab graafiliselt voltimispiirkondi, märgid +/- osutavad antud piirkonnas võimalikele toimingutele: - tähendab, et piirkond on avatud ning märgil - klõpsamine suleb piirkonna, kusjuures - asendub märgiga +. Voltimispiirkondades saab kasutada nelja käsku, mida tutvustab lähemalt menüükäskude ülevaade. Kui sa ei soovi koodivoltimist kasutada, võid eemaldada märke valiku Voltimismärkide näitamine (kui võimalik) eest redaktori seadistuste välimuse leheküljel. Skriptid redaktoris ja JavaScript Sissejuhatus Alates versioonist 2.5 toetab &kate; redaktorikomponent skripte, täpsemalt ECMA skriptikeelt, mida tuntakse ka JavaScripti nime all. Skripte saab kasutada ainult sisseehitatud käsurea vahendusel. Eelduseks on see, et skript asuks kataloogis, kust &kate; oskab selle üles leida, samuti võiks selle juurde kuuluda .desktop-fail, mis defineerib skripti omadused. Sobiv kataloog on &kate; andmekataloogide hulka kuuluv katepart/scripts. Andmekataloogid leiab käsuga tde-config data. Tavaliselt on vähemalt süsteemi ja personaalne andmekataloog. Süsteemi andmekataloogi skriptid on mõistagi kättesaadavad kõigile süsteemi kasutajatele, personaalses kataloogis asuvad skriptid aga ainult vastavale kasutajale. See võimalus on eksperimentaalne ja võib tulevikus üle elada mitmesuguseid muudatusi. Me teame, et paljud pettuvad, kuna ei saa lisada oma skripte menüüsse ega omistada neile kiirklahve. Me vabandame ja loodame, et see saab kunagi võimalikuks. Praegu ei ole ka võimalik edastada skriptidele mingeid argumente. Ole kannatlik ja ühel ilusal päeval saab ka see võimalikuks. Kate JavaScripti API Me toome siin ära kõik funktsioonid ja omadused, mis on saadaval objektidele document ja view. Lisaks saab kasutada mõistagi kõiki standardseid objekte nagu Math, String, Regex ja nii edasi. Skripti käivitamisel on document objekt aktiivne dokument ja view objekt akiivne vaade. Argumentide tüübid ei ole loomulikult praegu JavaSrciptis kasutusel, need osutavad ainult sellele, millist laadi väärtust funktsioonid ootavad. Globaalsed funktsioonid debug( string) [function] Parameetrid string string väljundile Saadab stringi standardveaväljundisse STDERR kdDebug() vahendusel. Väljundiks kasutatakse spetsiaalset väljundipiirkonda, mille prefiks on Kate (KJS Scripts): <classname>document</classname> API document.attribute( rida , veerg ); [function] Parameetrid uint rida rida, millele atribuut leitakse. uint veerg veerg, millele atribuut leitakse. Tagastab atribuudi arvulise ID dokumendi asukohas [rida,veerg]. Atribuut tähistab visuaalset välimust või teksti stiili, seda kasutatakse ka teksti spetsiifilise osa süntaksi esiletõstu arvutamisel sellistes segavormingutes nagu HTML või PHP. document.canBreakAt( Char c, uint atribuut ); [function] Parameetrid c testitav märk atribuut atribuut c asukohas Tagastab, kas rida on lubatud murda märgi c juures atribuudiga atribuut. Tulemus saadakse esiletõstu uurides, millele kuulub atribuut, ja selgitades, milliste märkide korral on reamurdmine lubatud. document.canComment( uint algus_atribuut, uint lõpp_atribuut ); [function] Parameetrid algus_atribuut atribuut kommentaariks muudetava vahemiku alguses. lõpp_atribuut atribuut kommentaariks muudetava vahemiku lõpus. Tagastab, kas algus_atribuut ja lõpp_atribuut kuuluvad samasse süntaksi esiletõstu süsteemi. Kui kuuluvad, on kõik korras. canComment kasutamine if ( document.canComment( document.attribute(1,0), document.attribute(5,0) ) ) { // 1,0 ja 5,0 kuuluvad samasse süntaksi esiletõstu süsteemi } document.clear(); [function] Puhastab dokumendi. document.commentStart( uint atribuut ); [function] Parameetrid atribuut teksti atribuut, millele hangitakse commentStart string. Tagastab stringi, mis on nõutav mitmerealise kommentaari alustamiseks antud atribuudiga tekstile või tühja stringi, kui antud teksti korral ei ole mitmerealised kommentaarid toetatud. document.commentMarker( uint atribuut ); [function] Parameetrid atribuut teksti atribuut, millele hangitakse commentMarker string. Tagastab stringi, mida kasutatakse ülejäänud rea märkimiseks kommentaarina antud atribuudiga tekstis või tühja stringi, kui antud teksti korral ei ole üherealised kommentaarid toetatud. document.commentEnd( uint atribuut ); [function] Parameetrid atribuut eksti atribuut, millele hangitakse commentEnd string. Tagastab stringi, mis on nõutav mitmerealise kommentaari lõpetamiseks antud atribuudiga tekstile või tühja stringi, kui antud teksti korral ei ole mitmerealised kommentaarid toetatud. document.editBegin(); [function] Redigeerimisgrupi algus. Kõik toimingud, mis tehakse kuni väljakutseni editEnd(), rühmitatakse ühe tagasivõtmistoimingu alla. document.editEnd(); [function] Redigeerimisgrupi lõpp. document.highlightMode; [property:read only] Dokumendi esiletõstu režiimi nimi, näiteks JavaScript või C++. Kui dokumendile pole süntaksi esiletõstu määratud, väärtus puudub (None). Pane tähele, et sul tuleb kasutada ingliskeelset nime juhul, kui see erineb tõlgitud nimest. document.indentMode; [property:read only] Dokumendi treppimise režiim, näiteks normal või cstyle. Pane tähele, et kui treppimise režiimi pole määratud, väärtus puudub (none). document.indentWidth; [property:read only] Dokumendi taande laius. Seda kasutatakse siis, kui sisse on lülitatud treppimine tühikutega. document.insertLine( uint rida, string tekst ); [function] Parameetrid rida dokumendi reanumber tekst lisatav tekst Lisab uue rea tekstiga tekst reale rida. document.insertText( uint rida, uint veerg, string tekst ); [function] Parameetrid rida reanumber veerg veerg tekst lisatav tekst Lisab teksti tekst reale rida ja veergu veerg. document.length(); [function] Tagastab dokumendi suuruse baitides. document.lines(); [function] Tagastab dokumendi ridade arvu. document.mixedIndent; [property:read only] Tõeväärtus, mis teatab, kas dokumendis on lubatud segastiilis treppimine. Kui on, siis on treppimine optimeeritud, et võimaldada tabeldusmärkide ja tühikute kasutamist segiläbi, nagu näiteks redaktor Emacs. document.removeLine( uint rida ); [function] Parameetrid rida reanumber Kustutab dokumendis rea rida. document.removeText( uint algusRida, uint algusVeerg, uint lõppRida, uint lõppVeerg ); [function] Parameetrid algusRida määrab algusrea algusVeerg määrab algusveeru lõppRida määrab lõpprea lõppVeerg määrab lõppveeru Eemaldab teksti alates reast algusRida ja veerust algusVeerg kuni reani lõppRida jaa veeruni lõppVeerg. document.setText( string tekst ); [function] Parameetrid tekst dokumendi tekst Määrab kogu dokumendi sisuks teksti tekst. document.spaceIndent; [property:read only] Tõeväärtus, mis teatab, kas dokumendis on lubatud treppimine tühikutega. Kui on, trepitakse dokumendis indentWidth arvu tühikutega taseme kohta, vastasel juhul ühe tabeldusmärgiga taseme kohta. document.textFull(); [function] Tagastab dokumendi kogu teksti. Kui see on mitmel real, eristab ridu reavahetusmärk \n. document.textLine( uint rida ); [function] Parameetrid rida reanumber Tagastab teksti real rida. document.textRange( uint algusRida, uint algusVeerg, uint lõppRida, uint lõppVeerg ); [function] Parameetrid algusRida määrab algusrea algusVeerg määrab algusveeru lõppRida määrab lõpprea lõppVeerg määrab lõppveeru Tagastab teksti määratud vahemikus. Kui see on mitmel real, eristab ridu reavahetusmärk \n. <classname>view</classname> API view.clearSelection(); [function] Tühistab kogu teksti valimise. view.cursorColumn(); [function] Tagastab kursori asukohaveeru (tabeldusmärgid laiendatakse). view.cursorColumnReal(); [function] Tagastab reaalse kursori asukohaveeru (tabeldusmärgid lähevad ühe ette). view.cursorLine(); [function] Tagastab kursori asukoharea. view.hasSelection(); [function] Tagastab true (tõene), kui vaade sisaldab valitud teksti, vastasel juhul false (väär). view.removeSelectedText(); [function] Eemaldab valitud teksti, kui vaates on tekst valitud. view.selectAll(); [function] Valib kogu teksti. view.selection(); [function] Tagastab valitud teksti. Kui see on mitmel real, eristab ridu reavahetusmärk \n. view.selectionEndColumn; [property:read only] Tagastab valiku lõppveeru. view.selectionEndLine; [property:read only] Tagastab valiku lõpprea. view.selectionStartColumn; [property:read only] Tagastab valiku algusveeru. view.selectionStartLine; [property:read only] Tagastab valiku algusrea. view.setCursorPosition( uint rida, uint veerg ); [function] Parameetrid rida määrab kursori rea. veerg määrab kursori veeru. Seab kursori vaates asukohta [rida, veerg]. See määrab kursori asukoha visuaalselt, mis tähendab, et tabeldusmärki arvestatakse vastavalt TAB laiusele sõltuvalt positsioonist reas. Kursori asukoht tuuakse nähtavale. Nii rida kui veergu hakatakse lugema nullist. view.setCursorPositionReal( uint rida, uint veerg ); [function] Parameetrid rida määrab kursori rea. veerg määrab kursori veeru. Seab kursori asukohta [rida, veerg]. See määrab kursori asukoha stringis, mis tähendab, et tabeldusmärki arvestatakse ühe ette. Kursori asukoht tuuakse nähtavale. Nii rida kui veergu hakatakse lugema nullist. view.setSelection( uint algusRida, uint algusVeerg, uint lõppRida, uint lõppVeerg ); [function] Parameetrid algusRida määrab algusrea algusVeerg määrab algusveeru lõppRida määrab lõpprea lõppVeerg määrab lõppveeru Määrab valiku alates reast algusRida ja veerust algusVeerg kuni reani lõppRida ja veeruni lõppVeerg. Näidisskript Me loome näidisena väikese skripti, mis muudab valiku suurtäheliseks. On selge, et kõigepealt tuleb kontrollida, kas valik on olemas. Kui on, hangime teksti, muudame selle tõstu ja asendame siis uuega. Teostus näeb välja selline: if ( view.hasSelection() ) { // uppercase selection column = view.selectionStartColumn; line = view.selectionStartLine; selection = view.selection().toUpperCase(); document.editBegin(); view.removeSelectedText(); document.insertText( line, column, selection ); document.editEnd(); } Selle toimingu grupeerimiseks, et neid saaks tagasi võtta üheainsa käsuga Võta tagasi, tuleb kapseldada read view.removeSelectedText() ja document.insertText() järgmiste ridade vahele: document.editBegin() ja document.editEnd(). <filename>.desktop</filename>-faili näidis Toome siin eeltoodud skriptiga kaasneva .desktop-faili näidise. # Example of a .desktop file [Desktop Entry] Encoding=UTF-8 Name=Kate Part JavaScript Uppercase Comment=Script to uppercase the selection X-Kate-Command=uppercase-selection X-Kate-Help=<p>Usage: <code>uppercase-selection</code></p> Nagu näed, saad määrata kodeeringu, nime, kommentaari, abiteksti (X-Kate-Help) ning käsureanime (X-Kate-Command). Kirjed Name, Comment ja X-Kate-Help tõlgitakse automaatselt teistesse keeltesse, kui failid on KDE SVN-hoidlas, kus tõlkemeeskonnad saavad neile tõlked luua. Kokkuvõte &kate; otsib skriptikataloogidest (vaata eespool) *.js-faile. Iga faili korral kontrollitakse, kas sellega kaasneb .desktop-fail: näiteks uppercase.js korral otsitakse faili uppercase.desktop. Kui .desktop-faili ei leita, registreerib Kate komponendi käsurida skripti failinimega ilma laiendita .js, mis meie näite korral oleks lihtsalt uppercase. Kui selline nimi sobib ning sul pole vaja lisavõimalusi, mida pakub .desktop-fail, siis ei ole ka vajadust .desktop-faili luua. Kui .desktop-fail on olemas, loeb Kate komponent nime, mille all skript registreerida .desktop-kirjest X-Kate-Command (meie näites X-Kate-Command=uppercase-selection).