100% found this document useful (1 vote)
159 views69 pages

GeanyManual PDF

Geany is a small and lightweight GTK+ integrated development environment (IDE). It was developed to provide a small and fast IDE with only a few dependencies on other packages. Some basic features of Geany include syntax highlighting, code folding, symbol name autocompletion, construct completion/snippets, auto-closing of XML and HTML tags, call tips, and support for filetypes including C, Java, PHP, XML, Python, Perl, Pascal and others. Geany is distributed under the GNU General Public License and can be obtained from their website or from some distributions.

Uploaded by

Camilo Cáceres
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
159 views69 pages

GeanyManual PDF

Geany is a small and lightweight GTK+ integrated development environment (IDE). It was developed to provide a small and fast IDE with only a few dependencies on other packages. Some basic features of Geany include syntax highlighting, code folding, symbol name autocompletion, construct completion/snippets, auto-closing of XML and HTML tags, call tips, and support for filetypes including C, Java, PHP, XML, Python, Perl, Pascal and others. Geany is distributed under the GNU General Public License and can be obtained from their website or from some distributions.

Uploaded by

Camilo Cáceres
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 69

G e a n y E d i t o r

G e a n y E d i t o r

P D F M A N U A L
Geany is a fast, light, GTK+ IDE
Authors Enrico Trger
Nick Treleaven
Frank Lanitz
Manual Date
PDF Manual !reation Date
2009-08-16
2010-01-21
"ersion 0.18
PDF Manual !reation Chema artin
Co!"right # 200$-2009
Thi% &oc'ment i% &i%tri('te& 'n&er the term% o) the *N+ *eneral ,'(lic Licen%e a% !'(li%he& (" the Free -o)t.are Fo'n&ation/ either ver%ion
2 o) the Licen%e0 or 1at "o'r o!tion2 an" later ver%ion. 3 co!" o) thi% licen%e can (e )o'n& in the )ile C4,56N* incl'&e& .ith the %o'rce co&e o)
thi% !rogram0 an& al%o in the cha!ter *N+ *eneral ,'(lic Licen%e.
1
1
Introdu#tion
A$out Geany
*ean" i% a %mall an& light.eight 6ntegrate& 7evelo!ment Environment. 6t .a% &evelo!e& to !rovi&e a %mall an&
)a%t 67E0 .hich ha% onl" a )e. &e!en&encie% )rom other !ackage%. 3nother goal .a% to (e a% in&e!en&ent a%
!o%%i(le )rom a %!ecial 7e%kto! Environment like 87E or *N4E - *ean" onl" re9'ire% the *T82 r'ntime
li(rarie%.
-ome (a%ic )eat're% o) *ean":
-"nta; highlighting
Co&e )ol&ing
-"m(ol name a'tocom!letion
Con%tr'ct com!letion<%ni!!et%
3'to-clo%ing o) =L an& >TL tag%
Call ti!%
an" %'!!orte& )ilet"!e% incl'&ing C0 ?ava0 ,>,0 >TL0 ,"thon0 ,erl0 ,a%cal0 an& other%
-"m(ol li%t%
Co&e navigation
@'il& %"%tem to com!ile an& e;ec'te "o'r co&e
-im!le !roAect management
,l'gin inter)ace
%here to get it
5o' can o(tain *ean" )rom htt!:<<....gean".org< or !erha!% al%o )rom "o'r &i%tri('tor. For a li%t o) availa(le
!ackage%0 !lea%e %ee htt!:<<....gean".org<7o.nloa&<Thir&,art",ackage%.
Li#ense
*ean" i% &i%tri('te& 'n&er the term% o) the *N+ *eneral ,'(lic Licen%e a% !'(li%he& (" the Free -o)t.are
Fo'n&ation/ either ver%ion 2 o) the Licen%e0 or 1at "o'r o!tion2 an" later ver%ion. 3 co!" o) thi% licen%e can (e
)o'n& in the )ile C4,56N* incl'&e& .ith the %o'rce co&e o) thi% !rogram an& in the cha!ter0 *N+ *eneral ,'(lic
Licen%e.
The incl'&e& -cintilla li(rar" 1)o'n& in the %'(&irector" %cintilla<2 ha% it% o.n licen%e0 .hich can (e )o'n& in the
cha!ter0 Licen%e )or -cintilla an& -ciTE.
A$out this do#u&ent
Thi% &oc'mentation i% availa(le in >TL an& te;t )ormat%. The late%t ver%ion can al.a"% (e )o'n& at
htt!:<<....gean".org<.
6) "o' .ant to contri('te to it0 %ee Contri('ting to thi% &oc'ment.
Installation
'e(uire&ents
5o' .ill nee& the *T8 1BC 2.8.02 li(rarie% an& their &e!en&encie% 1,ango0 *Li( an& 3T82. 5o'r &i%tro %ho'l&
!rovi&e !ackage% )or the%e0 '%'all" in%talle& (" &e)a'lt. For Din&o.%0 "o' can &o.nloa& an in%taller .hich
('n&le% the%e li(rarie% )rom the .e(%ite.
)inary *a#+ages
There are man" (inar" !ackage% availa(le. For an '!-to-&ate ('t ma"(e incom!lete li%t %ee
htt!:<<....gean".org<7o.nloa&<Thir&,art",ackage%.
,our#e #o&*ilation
Com!iling *ean" i% 9'ite ea%". To &o %o0 "o' nee& the *T8 1BC 2.8.02 li(rarie% an& hea&er )ile%. 5o' al%o nee& the
,ango0 *Li( an& 3T8 li(rarie% an& hea&er )ile%. 3ll the%e )ile% are availa(le at htt!:<<....gtk.org0 ('t ver" o)ten
"o'r &i%tro .ill !rovi&e &evelo!ment !ackage% to %ave the tro'(le o) ('il&ing the%e "o'r%el).
F'rthermore "o' nee&0 o) co'r%e0 a C an& CEE com!iler. The *N+ ver%ion% o) the%e tool% are recommen&e&.
Autotools $ased $uild syste&
The 3'totool% (a%e& ('il& %"%tem i% ver" mat're an& ha% (een .ell te%te&. To '%e it0 "o' A'%t nee& the ake tool0
!re)era(l" *N+ ake.
Then r'n the )ollo.ing comman&%:
$ ./configure
$ ma'e
Then a% root:
% ma'e insa11
%af $ased $uild syste&
The Da) ('il& %"%tem i% %till 9'ite "o'ng an& 'n&er heav" &evelo!ment ('t alrea&" in an '%a(le %tate. 6n contrar"
to the 3'totool%0 Da) nee&% ,"thon. -o (e)ore '%ing Da)0 "o' nee& to in%tall ,"thon on "o'r %"%tem. The
a&vantage o) the Da) ('il& %"%tem over the 3'totool% (a%e& ('il& %"%tem i% that the .hole ('il& !roce%% might
(e a (it )a%ter. E%!eciall" .hen "o' '%e the Da) cache )eat're re!etitive ('il&% 1e.g. .hen changing onl" a )e.
%o'rce )ile% to te%t %omething2 .ill (ecome m'ch )a%ter %ince Da) .ill cache an& re-'%e the 'nchange& ('ilt )ile%
an& onl" com!ile the change& co&e again. -ee Da) Cache )or &etail%. To ('il& *ean" .ith Da) a% '%'al r'n:
$ ./waf configure
$ ./waf bui1d
Then a% root:
% ./waf insa11
%af !a#he
The Da) ('il& %"%tem ha% a nice an& intere%ting )eat're .hich can hel! a lot to avoi& 'nnece%%ar" re('il&ing o)
'nchange& co&e. Thi% o)ten ha!!en% .hen &evelo!ing ne. )eat're% or tr"ing to &e('g %omething. Da) i% a(le to
%tore an& retrieve the o(Aect )ile% )rom a cache. Thi% cache i% &eclare& '%ing the environment varia(le
D3FC3C>E. 3 !o%%i(le location o) the cache &irector" co'l& (e F<.cache<.a). 6n or&er to make '%e o) thi%0 "o'
)ir%t nee& to create thi% &irector":
$ m'dir -p ~/.cache/waf
then a&& the environment varia(le to "o'r %hell con)ig'ration 1the )ollo.ing e;am!le i% )or @a%h an& %ho'l& (e
a&A'%te& to "o'r '%e& %hell2:
expor WAECACHE=/home/username/.cache/waf
Gemem(er to re!lace '%ername .ith "o'r act'al '%ername.
ore in)ormation a(o't the Da) cache )eat're are availa(le at
htt!:<<co&e.google.com<!<.a)<.iki<Cache4(AectFile%.
!leaning the !a#he
5o' %ho'l& take care a(o't the %ize o) the cache &irector" a% it ma" gro. ra!i&l" (" time. Da) &oe%nHt &o an"
cleaning or other ho'%e-kee!ing o) the cache "et %o "o' nee& to kee! it clean (" "o'r%el). 3n ea%" .a" to kee! it
clean i% to r'n the )ollo.ing comman& reg'larl" to remove ol& cache& )ile%:
$ find /home/username/.cache/waf -mime +14 -exec rm {} \,
Thi% .ill &elete all )ile% in the cache &irector" .hich are ol&er than 1I &a"%.
For &etail% a(o't the )in& comman& an& it% o!tion%0 check it% man'al !age.
!usto& installation
The con)ig're %cri!t %'!!ort% %everal common o!tion%0 )or a &etaile& li%t0 t"!e:
$ ./configure --he1p
or:

$ ./waf --he1p
1&e!en&ing on .hich ('il& %"%tem "o' '%e2.
5o' ma" al%o .ant to rea& the 6N-T3LL )ile )or a&vance& in%tallation o!tion%.
-ee al%o Com!ile-time o!tion%.
Dyna&i# lin+ing loader su**ort
6n the ca%e that "o'r %"%tem lack% &"namic linking loa&er %'!!ort0 "o' !ro(a(l" .ant to !a%% the o!tion
--&i%a(le-vte to the con)ig're %cri!t. Thi% !revent% com!iling *ean" .ith &"namic linking loa&er %'!!ort to
a'tomaticall" loa& li(vte.%o.I i) availa(le.
)uild *ro$le&s
6) there are an" error% &'ring com!ilation0 check "o'r ('il& environment an& tr" to )in& the error0 other.i%e
contact the mailing li%t or one the a'thor%. -ometime% "o' might nee& to a%k )or %!eci)ic hel! )rom "o'r &i%tro.
Installation *refi-
6) "o' .ant to e&it an" o) *ean"H% %"%tem con)ig'ration )ile% a)ter in%tallation "o' .ill nee& to kno. the
in%tallation !re)i;. +%'all" thi% i% not nece%%ar" a% "o' can A'%t '%e '%er con)ig'ration )ile%.
+%e the --!rint-!re)i; o!tion to check - %ee Comman& line o!tion%. The )ir%t !ath i% the !re)i;.
Thi% i% commonl" <'%r i) "o' in%talle& )rom a (inar" !ackage0 or <'%r<local i) "o' ('il& )rom %o'rce.
Usage
Getting started
5o' can %tart *ean" in the )ollo.ing .a"%:
From the 7e%kto! Environment men':
Choo%e in "o'r a!!lication men' o) "o'r '%e& 7e%kto! Environment: 7evelo!ment --B *ean".
From the comman& line:
To %tart *ean" )rom a comman& line0 t"!e the )ollo.ing an& !re%% Get'rn:
J gean"
!o&&and line o*tions
,hort o*tion Long o*tion Fun#tion
none En'm(er -et initial line n'm(er )or the )ir%t o!ene& )ile 1%ame a% --line0 &o not !'t a
%!ace (et.een the E %ign an& the n'm(er2. E.g. Kgean" EL )oo.(arK .ill
o!en the )ile )oo.(ar an& !lace the c'r%or in line L.
none --col'mn -et initial col'mn n'm(er )or the )ir%t o!ene& )ile.
-c &irMname --
con)igC&irector"Mn
ame
+%e an alternate con)ig'ration &irector". 7e)a'lt con)ig'ration &irector" i%
F<.con)ig<gean"< an& there re%i&e% gean".con) an& other con)ig'ration
)ile%.
none --)t-name% ,rint a li%t o) *ean"H% internal )ilet"!e name% 1'%e)'l )or %ni!!et%
con)ig'ration2.
-g --generate-tag% *enerate a glo(al tag% )ile 1%ee *enerating a glo(al tag% )ile2.
,hort o*tion Long o*tion Fun#tion
-, --no-
!re!roce%%ing
7onHt !re!roce%% C<CEE )ile% .hen generating tag%.
-i --ne.-in%tance 7o not o!en )ile% in a r'nning in%tance0 )orce o!ening a ne. in%tance.
4nl" availa(le i) *ean" .a% com!ile& .ith %'!!ort )or -ocket%.
-l --line -et initial line n'm(er )or the )ir%t o!ene& )ile.
-m --no-m%g.in 7o not %ho. the me%%age .in&o.. +%e thi% o!tion i) "o' &o not nee&
com!iler me%%age% or NTE %'!!ort.
-n --no-ctag% 7o not loa& %"m(ol com!letion an& call ti! &ata. +%e thi% o!tion i) "o' &o
not .ant to '%e them.
-! --no-!l'gin% 7o not loa& !l'gin% or !l'gin %'!!ort.
none --!rint-!re)i; ,rint in%tallation !re)i;0 the &ata &irector"0 the li( &irector" an& the locale
&irector" 1in thi% or&er2 to %t&o't0 each !er line. Thi% i% mainl" inten&e& )or
!l'gin a'thor% to &etect in%tallation !ath%.
-% --no-%e%%ion 7o not loa& the !revio'% %e%%ionH% )ile%.
-t --no-terminal 7o not loa& terminal %'!!ort. +%e thi% o!tion i) "o' &o not .ant to loa&
the virt'al terminal em'lator .i&get at %tart'!. 6) "o' &o not have
li(vte.%o.I in%talle&0 then terminal-%'!!ort i% a'tomaticall" &i%a(le&. 4nl"
availa(le i) *ean" .a% com!ile& .ith %'!!ort )or NTE.
none --vte-li( -!eci)" e;!licitl" the !ath incl'&ing )ilename or onl" the )ilename to the
NTE li(rar"0 e.g. <'%r<li(<li(vte.%o or li(vte.%o. Thi% o!tion i% onl" nee&e&
.hen the a'to-&etection &oe% not .ork. 4nl" availa(le i) *ean" .a%
com!ile& .ith %'!!ort )or NTE.
-v --ver(o%e @e ver(o%e 1!rint '%e)'l %tat'% me%%age%2.
-N --ver%ion -ho. ver%ion in)ormation an& e;it.
-O --hel! -ho. hel! in)ormation an& e;it.
none P)ile% ...Q 4!en all given )ile% at %tart'!. Thi% o!tion ca'%e% *ean" to ignore loa&ing
%tore& )ile% )rom the la%t %e%%ion 1i) ena(le&2. *ean" al%o recognize% line
an& col'mn in)ormation .hen a!!en&e& to the )ilename .ith colon%0 e.g.
Kgean" )oo.(ar:10:$K .ill o!en the )ile )oo.(ar an& !lace the c'r%or in line
10 at col'mn $.
,roAect% can al%o (e o!ene& ('t a !roAect )ile 1R.gean"2 m'%t (e the )ir%t
non-o!tion arg'ment. 3ll a&&itionall" given )ile% are ignore&.
5o' can al%o !a%% line n'm(er an& col'mn n'm(er in)ormation0 e.g.:
geany some_fi1e.foo:55:4
*ean" %'!!ort% all generic *T8 o!tion%0 a li%t i% availa(le on the hel! %creen.
General
,tartu*
3t %tart'!0 *ean" loa&% all )ile% )rom the la%t time *ean" .a% la'nche&. 5o' can &i%a(le thi% )eat're in the
!re)erence% &ialog 1%ee *eneral -tart'! ta( in !re)erence% &ialog2. 6) "o' %!eci)" %ome )ile% on the comman& line0
onl" the%e )ile% .ill (e o!ene&0 ('t "o' can )in& the )ile% )rom the la%t %e%%ion in the )ile men' 'n&er the KGecent
)ile%K item. @" &e)a'lt thi% contain% the la%t 10 recentl" o!ene& )ile%. 5o' can change the amo'nt o) recentl"
o!ene& )ile% in the !re)erence% &ialog.
5o' can %tart %everal in%tance% o) *ean"0 ('t onl" the )ir%t .ill loa& )ile% )rom the la%t %e%%ion. To r'n a %econ&
in%tance o) *ean"0 &o not %!eci)" an" )ilename% on the comman&-line0 or &i%a(le o!ening )ile% in a r'nning
in%tance '%ing the a!!ro!riate comman& line o!tion.
.*ening files fro& the #o&&and/line in a running instan#e
*ean" &etect% an alrea&" r'nning in%tance o) it%el) an& o!en% )ile% )rom the comman&-line in the alrea&" r'nning
in%tance. -o0 *ean" can (e '%e& to vie. an& e&it )ile% (" o!ening them )rom other !rogram% %'ch a% a )ile
manager.
5o' can al%o !a%% line n'm(er an& col'mn n'm(er in)ormation0 e.g.:
geany some_fi1e.foo:55:4
Thi% .o'l& o!en the )ile %omeM)ile.)oo .ith the c'r%or on line $$0 col'mn I.
6) "o' &o not like thi% )or %ome rea%on0 "o' can &i%a(le '%ing the )ir%t in%tance (" '%ing the a!!ro!riate
comman& line o!tion -- %ee the %ection calle& Comman& line o!tion%.
"irtual ter&inal e&ulator 0idget 1"TE2
6) "o' have in%talle& li(vte.%o in "o'r %"%tem0 it i% loa&e& a'tomaticall" (" *ean"0 an& "o' .ill have a terminal
.i&get in the note(ook at the (ottom.
6) *ean" cannot )in& an" li(vte.%o at %tart'!0 the terminal .i&get .ill not (e loa&e&. -o there i% no nee& to in%tall
the !ackage containing thi% )ile in or&er to r'n *ean". 3&&itionall"0 "o' can &i%a(le the '%e o) the terminal .i&get
(" comman& line o!tion0 )or more in)ormation %ee the %ection calle& Comman& line o!tion%.
5o' can '%e thi% terminal 1)rom no. on calle& NTE2 nearl" a% an '%'al terminal !rogram like ;term. There i% (a%ic
cli!(oar& %'!!ort. 5o' can !a%te the content% o) the cli!(oar& (" !re%%ing the right mo'%e ('tton to o!en the
!o!'! men' an& choo%ing ,a%te. To co!" te;t )rom the NTE0 A'%t %elect the &e%ire& te;t an& then !re%% the right
mo'%e ('tton an& choo%e Co!" )rom the !o!'! men'. 4n %"%tem% r'nning the = Din&o. -"%tem "o' can !a%te
the la%t %electe& te;t (" !re%%ing the mi&&le mo'%e ('tton in the NTE 1on 2-('tton mice0 the mi&&le ('tton can
o)ten (e %im'late& (" !re%%ing (oth mo'%e ('tton% together2.
6n the !re)erence% &ialog "o' can %!eci)" a %hell .hich %ho'l& (e %tarte& in the NTE. To make the %!eci)ie& %hell a
login %hell A'%t '%e the a!!ro!riate comman& line o!tion% )or the %hell. The%e o!tion% %ho'l& (e )o'n& in the
man'al !age o) the %hell. For z%h an& (a%h "o' can '%e the arg'ment --login.
Note
*ean" trie% to loa& li(vte.%o. 6) thi% )ail%0 it trie% to loa& %ome other )ilename%. 6) thi% )ail% too0 "o' %ho'l& check
.hether "o' in%talle& li(vte correctl". 3gain0 *ean" al%o r'n% .itho't thi% li(rar".
6t co'l& (e0 that the li(rar" i% calle& %omething el%e than li(vte.%o 1e.g. on Free@-7 6.0 it i% calle& li(vte.%o.82. -o
!lea%e %et a link to the correct )ile 1a% root2:
# 1n -s /usr/1ib/1ibve.so.X /usr/1ib/1ibve.so
4(vio'%l"0 "o' have to a&A'%t the !ath% an& %et = to the n'm(er o) "o'r li(vte.%o.
5o' can al%o %!eci)" the )ilename o) the NTE li(rar" to '%e on the comman& line 1%ee the %ection calle& Comman&
line o!tion%2 or at com!ile time (" %!eci)"ing the comman& line o!tion --.ith-vte-mo&'le-!ath to .<con)ig're.
Defining o0n 0idget styles using 3gt+r#/435
5o' can &e)ine "o'r .i&get %t"le )or man" o) *ean"H% *+6 !art%. To &o thi%0 A'%t e&it "o'r .gtkrc-2.0 1'%'all" )o'n&
in "o'r home &irector" on +N6=-like %"%tem% an& in the etc %'(&irector" o) "o'r *ean" in%tallation on Din&o.%2.
To get a &e)ine& %t"le get notice& (" *ean" "o' m'%t it a%%ign to one o) *ean"H% .i&get%. To &o %o0 '%e the
)ollo.ing line:
widge "Geany*" sy1e "geanySy1e"
Thi% .o'l& a%%ign "o'r alrea&" &e)ine& %t"le Kgean"M%t"leK to all *ean" .i&get%. 5o' can al%o a%%ign %t"le% onl" to
%!eci)ic .i&get%. 3t the moment "o' can '%e the )ollo.ing .i&get%:
*ean"ainDin&o.
*ean"E&iten'
*ean"Tool(aren'
*ean"7ialog
*ean"7ialog,re)%
*ean"7ialog,roAect
*ean"7ialog-earch
*ean"en'(ar
*ean"Tool(ar
E;am!le o) a %im!le .gtkrc-2.0:
sy1e "geanySy1e"
{
fon_name="Sans 12"
}
widge "GeanyMainWindow" sy1e "geanySy1e"
sy1e "geanySy1e"
{
fon_name="Sans 10"
}
widge "GeanyRrefsia1og" sy1e "geanySy1e"
Do#u&ents
,0it#hing $et0een do#u&ents
The &oc'ment% li%t an& the e&itor ta(% are t.o &i))erent .a"% to %.itch (et.een &oc'ment% '%ing the mo'%e.
Dhen "o' hit the ke" com(ination to move (et.een ta(%0 the or&er i% &etermine& (" the ta( or&er0 not
al!ha(etical a% %ho.n in the &oc'ment% li%t 1regar&le%% o) .hether or not e&itor ta(% are vi%i(le2.
-ee the Note(ook ta(% gro'! in the 8e"(in&ing% %ection )or '%e)'l %hortc't% incl'&ing )or o%t-Gecentl"-+%e&
&oc'ment %.itching.
!hara#ter sets and Uni#ode )yte/.rder/Mar+ 1).M2
Using #hara#ter sets
*ean" !rovi&e% %'!!ort )or &etecting an& converting character %et%. -o "o' can o!en an& %ave )ile% in &i))erent
character %et% an& even can convert a )ile )rom a character %et to another one. To &o thi%0 *ean" '%e% the
character conver%ion ca!a(ilitie% o) the *Li(.
4nl" te;t )ile% are %'!!orte&0 i.e. o!ening )ile% .hich contain N+LL-("te% ma" )ail. *ean" .ill tr" to o!en the )ile
an".a" ('t it i% likel" that the )ile .ill (e tr'ncate& (eca'%e it can onl" o!ene& '! to the )ir%t occ'rrence o) a
N+LL-("te. 3ll character% a)ter thi% !o%ition are lo%t an& are not .ritten .hen "o' %ave the )ile.
*ean" trie% to &etect the enco&ing o) a )ile .hile o!ening it. 6t might (e that the enco&ing o) a )ile cannot (e
&etecte& correctl" %o "o' have to %et man'all" the enco&ing o) the )ile in or&er to &i%!la" it correctl". 5o' can thi%
in the )ile o!en &ialog (" %electing an enco&ing in the &ro! &o.n (o; or (" reloa&ing the )ile .ith the )ile men'
item KGeloa& a%K. The a'to-&etection .ork% .ell )or mo%t enco&ing% ('t there are al%o %ome enco&ing% kno.n
.here a'to-&etection ha% it% !ro(lem%. 3'to-&etecting the enco&ing o) a )ile i% not ea%" an& %ometime% an
enco&ing might (e &etecte& not correctl".
There are &i))erent .a"% to '%e &i))erent enco&ing% in *ean":
+%ing the )ile o!en &ialog
Thi% o!en% the )ile .ith the enco&ing %!eci)ie& in the enco&ing &ro! &o.n (o;. 6) the enco&ing i% %et to
K7etect )rom )ileK a'to-&etection .ill (e '%e&. 6) the enco&ing i% %et to KDitho't enco&ing 1None2K the )ile
.ill (e o!ene& .itho't an" character conver%ion an& *ean" .ill not tr" to a'to-&etect the enco&ing 1%ee
(elo. )or more in)ormation2.
+%ing the KGeloa& a%K men' item
Thi% item reloa&% the c'rrent )ile .ith the %!eci)ie& enco&ing. 6t can hel! i) "o' o!ene& a )ile an& )o'n&
o't that a .rong enco&ing .a% '%e&.
+%ing the K-et enco&ingK men' item
6n contrar" to the a(ove t.o o!tion%0 thi% .ill not change or reloa& the c'rrent )ile 'nle%% "o' %ave it. 6t i%
'%e)'l .hen "o' .ant to change the enco&ing o) the )ile.
-!eci)"ing the enco&ing in the )ile it%el)
3% mentione& a(ove0 a'to-&etecting the enco&ing o) a )ile ma" )ail on %ome enco&ing%. 6) "o' kno. that
*ean" &oe%nHt o!en a certain )ile0 "o' can a&& a %!ecial line to the (eginning o) the )ile to )orce an
enco&ing .hen o!ening the )ile 1)or &etail% %ee (elo.2.
In/file en#oding s*e#ifi#ation
*ean" &etect% meta tag% o) >TL )ile% .hich contain char%et in)ormation like:
<mea hp-equiv="conen-ype" conen="ex/hm1, charse=ISO-8859-15" />
an& the )o'n& char%et i% '%e& .hen o!ening the )ile. Thi% i% '%e)'l i) the enco&ing o) the )ile cannot (e &etecte&
!ro!erl". For non->TL )ile% "o' can al%o &e)ine a line like:
/* geany_encoding=ISO-8859-15 */
or:
# geany_encoding=ISO-8859-15 #
to )orce an enco&ing to (e '%e&. The '%e& S0 <R an& R< are onl" e;am!le% )or )ilet"!e-%!eci)ic comment
character%. 6t &oe%nHt matter .hich character% are aro'n& the %tring K gean"Menco&ingC6-4-88$9-1$ K a% long a%
there i% at lea%t one .hite%!ace character (e)ore an& a)ter thi% %tring. Dhite%!ace character% are in thi% ca%e a
%!ace or ta( character. 3n e;am!le to '%e thi% co'l& (e "o' have a )ile .ith 6-4-88$9-1$ enco&ing ('t *ean"
con%tantl" &etect% the )ile enco&ing a% 6-4-88$9-1. Then "o' %im!l" a&& %'ch a line to the )ile an& *ean" .ill
o!en it correctl" the ne;t time.
-ince *ean" 0.1$ "o' can al%o '%e line% like:
# encoding = ISO-8859-15
or:
# coding: ISO-8859-15
The '%e& reg'lar e;!re%%ion to )in& the enco&ing %tring i%: co&ingPTt QRP:CQPTt QR1Pa-z0-9-QE2PTt QR
Note
The%e %!eci)ication% m'%t (e in the )ir%t $12 ("te% o) the )ile. 3n"thing a)ter the )ir%t $12 ("te% .ill not (e
recognize&.
,*e#ial en#oding 6None6
There i% a %!ecial enco&ing KNoneK .hich i% act'all" no real enco&ing. 6t i% '%e)'l .hen "o' kno. that *ean"
cannot a'to-&etect the enco&ing o) a )ile an& it i% not &i%!la"e& correctl". E%!eciall" .hen the )ile contain% N+LL-
("te% thi% can (e '%e)'l to %ki! a'to &etection an& o!en the )ile !ro!erl" at lea%t 'ntil the occ'rrence o) the )ir%t
N+LL-("te. +%ing thi% enco&ing o!en% the )ile a% it i% .itho't an" character conver%ion.
Uni#ode )yte/.rder/Mar+ 1).M2
F'rthermore0 *ean" &etect% an +nico&e @"te 4r&er ark 1%ee htt!:<<en..iki!e&ia.org<.iki<@"teM4r&erMark )or
&etail%2. 4) co'r%e0 thi% )eat're i% onl" availa(le i) the o!ene& )ile i% in an +nico&e enco&ing. The @"te 4r&er ark
hel!% to &etect the enco&ing o) a )ile0 e.g. .hether it i% +TF-16LE or +TF-16@E an& %o on. 4n +ni;-like %"%tem%
'%ing a @"te 4r&er ark co'l& ca'%e %ome !ro(lem%0 e.g. the gcc %to!% .ith %tra" error%0 ,>, &oe% not !ar%e a
%cri!t containing a @4 an& %cri!t )ile% %tarting .ith a %he-(ang ma"(e cannot (e %tarte&. 6n the %tat'% (ar "o'
can ea%il" %ee .hether the )ile %tart% .ith a @4 or not. 6) "o' .ant to %et a @4 )or a )ile or i) "o' .ant to
remove it )rom a )ile0 A'%t '%e the &oc'ment men' an& toggle the check(o;.
Note
6) "o' are 'n%'re .hat a @4 i% or i) "o' &o not 'n&er%tan& .here to '%e it0 then it i% !ro(a(l" not im!ortant )or
"o' an& "o' can %a)el" ignore it.
Editing
Folding
*ean" !rovi&e% (a%ic co&e )ol&ing %'!!ort. Fol&ing mean% the a(ilit" to %ho. an& hi&e !art% o) the te;t in the
c'rrent )ile. 5o' can hi&e 'nim!ortant co&e %ection% an& concentrate on the !art% "o' are .orking on an& later
"o' can %ho. the%e %ection% again. 6n the e&itor .in&o. there i% a %mall gre" margin on the le)t %i&e .ith %ome
PEQ an& P-Q %"m(ol%. @" clicking on the%e icon% "o' can %im!l" %ho. an& hi&e %ection% .hich are marke& ("
vertical line% .ithin thi% margin. For man" )ilet"!e% ne%te& )ol&ing i% %'!!orte&0 %o there ma" (e %everal )ol&
!oint% .ithin other )ol& !oint%.
6) "o' &onHt like it or &onHt nee& it at all0 "o' can %im!l" &i%a(le )ol&ing %'!!ort com!letel" in the !re)erence%
&ialog.
The )ol&ing (ehavio'r can (e change& .ith the KFol&<+n)ol& all chil&ren o) a )ol& !ointK o!tion in the !re)erence
&ialog. 6) activate&0 *ean" .ill 'n)ol& all ne%te& )ol& !oint% (elo. the c'rrent one i) the" are alrea&" )ol&e& 1.hen
clicking on a PEQ %"m(ol2. Dhen clicking on a P-Q %"m(ol0 *ean" .ill )ol& all ne%te& )ol& !oint% (elo. the c'rrent
one i) the" are 'n)ol&e&.
The '%age o) thi% o!tion can (e in%tantl" inverte& (" !re%%ing the -hi)t ke" .hile clicking on a )ol& %"m(ol. That
mean%0 i) the KFol&<+n)ol& all chil&ren o) a )ol& !ointK o!tion i% ena(le&0 !re%%ing -hi)t .ill &i%a(le it )or thi% click
an& vice ver%a.
!olu&n &ode editing 1re#tangular sele#tions2
There i% (a%ic %'!!ort )or col'mn mo&e e&iting. To '%e it0 create a rectang'lar %election (" hol&ing &o.n the
Control an& -hi)t ke"% 1or Control an& 3lt i) it &oe%nHt .ork2 .hile %electing %ome te;t. 6t i% al%o !o%%i(le to create
a zero-col'mn %election ('t (e care)'l (eca'%e there i% no vi%'al in&ication o) thi% %election. 4nce a rectang'lar
%election e;i%t% "o' can %tart e&iting the te;t .ithin thi% %election an& the mo&i)ication% .ill (e &one )or ever"
line in the %election.
Drag and dro* of te-t
6) "o' &rag %electe& te;t in the e&itor .i&get o) *ean" the te;t i% move& to the !o%ition .here the mo'%e !ointer
i% .hen relea%ing the mo'%e ('tton. >ol&ing Control .hen relea%ing the mo'%e ('tton .ill co!" the te;t in%tea&.
Thi% (ehavio'r .a% change& in *ean" 0.11 - (e)ore the %electe& te;t .a% co!ie& to the ne. !o%ition.
Indentation
*ean" allo.% each &oc'ment to in&ent either .ith a ta( character or m'lti!le %!ace%. The &e)a'lt in&ent mo&e i%
%et in the E&itor Feat're% ta( in !re)erence% &ialog 1%ee the link )or more in)ormation2. @'t thi% can (e overri&&en
'%ing either the 7oc'ment-B6n&ent T"!e men'0 or (" '%ing the 7etect )rom )ile in&entation !re)erence. Dhen
ena(le&0 thi% %can% each )ile that i% o!ene& an& %et% the in&ent mo&e (a%e& on ho. man" line% %tart .ith a ta(
v%. 2 or more %!ace%.
The in&ent mo&e )or the c'rrent &oc'ment i% %ho.n on the %tat'% (ar a% )ollo.%:
T3@
6n&ent .ith Ta( character%.
-,
6n&ent .ith %!ace%.
T<-
6n&ent .ith ta(% an& %!ace%0 &e!en&ing on ho. m'ch in&entation i% on a line.
Auto/indentation
Dhen ena(le&0 a'to-in&entation ha!!en% .hen !re%%ing Enter in the E&itor. 6t a&&% a certain amo'nt o)
in&entation to the ne. line %o the '%er &oe%nHt al.a"% have to in&ent each line man'all".
*ean" kno.% )o'r t"!e% o) a'to-in&entation:
None
7i%a(le% a'to-in&entation com!letel".
@a%ic
3&&% the %ame amo'nt o) .hite%!ace on a ne. line a% on the la%t line.
C'rrent char%
7oe% the %ame a% @a%ic ('t al%o in&ent% a ne. line a)ter an o!ening (race HUH0 an& &e-in&ent% .hen t"!ing a
clo%ing (race HVH. For ,"thon0 a ne. line .ill (e in&ente& a)ter t"!ing H:H at the en& o) the !revio'% line.
atch (race%
-imilar to C'rrent char% ('t the clo%ing (race .ill (e aligne& to match the in&entation o) the line .ith the
o!ening (race.
)oo+&ar+s
*ean" !rovi&e% a han&" (ookmarking )eat're that let% "o' mark one or more line% in a &oc'ment0 an& ret'rn the
c'r%or to them '%ing a ke" com(ination.
To !lace a mark on a line0 either le)t-mo'%e-click in the le)t margin o) the e&itor .in&o.0 or el%e '%e Ctrl-m. Either
.a"0 thi% .ill !ro&'ce a %mall green !l'% %"m(ol in the margin. 5o' can have a% man" mark% in a &oc'ment a%
"o' like. Click again 1or '%e Ctrl-m again2 to remove the (ookmark. To remove all the mark% in a given &oc'ment0
'%e KGemove arker%K in the 7oc'ment men'.
To navigate &o.n "o'r &oc'ment0 A'm!ing )rom one mark to the ne;t0 '%e Ctrl-. 1control !erio&2. To go in the
o!!o%ite &irection on the !age0 '%e Ctrl-0 1control comma2. +%ing the (ookmarking )eat're together .ith the
comman&% to %.itch )rom one e&itor ta( to another 1Ctrl-,g+!<,g7n an& Ctrl-Ta(2 !rovi&e% a !artic'larl" )a%t
.a" to navigate aro'n& m'lti!le )ile%.
!ode Na7igation 8istory
To ea%e navigation in %o'rce )ile% an& e%!eciall" (et.een &i))erent )ile%0 *ean" let% "o' A'm! (et.een &i))erent
navigation !oint%. C'rrentl"0 thi% .ork% )or the )ollo.ing:
*o to tag &eclaration
*o to tag &e)inition
-"m(ol li%t item%
@'il& error%
e%%age item%
Dhen '%ing one o) the%e action%0 *ean" remem(er% "o'r c'rrent !o%ition an& A'm!% to the ne. one. 6) "o'
&eci&e to go (ack to "o'r !revio'% !o%ition in the )ile0 A'%t '%e KNavigate (ack a locationK. To get (ack to the ne.
!o%ition again0 A'%t '%e KNavigate )or.ar& a locationK. Thi% make% it ea%ier to navigate in e.g. )oreign co&e an&
(et.een &i))erent )ile%.
,end te-t through defina$le #o&&ands
5o' can &e)ine %everal c'%tom comman&% in *ean" an& %en& the c'rrent %election to one o) the%e comman&%.
The o't!'t o) the comman& .ill (e '%e& to re!lace the c'rrent %election. -o0 it i% !o%%i(le to '%e te;t )ormatting
tool% .ith *ean" in a general .a". The %electe& te;t .ill (e %ent to the %tan&ar& in!'t o) the e;ec'te& comman&0
%o the comman& %ho'l& (e a(le to rea& )rom it an& it %ho'l& !rint all re%'lt% to it% %tan&ar& o't!'t .hich .ill (e
rea& (" *ean". To hel! )in&ing error% in e;ec'ting the comman&0 the o't!'t o) the !rogramH% %tan&ar& error .ill
(e !rinte& on *ean"H% %tan&ar& o't!'t.
To a&& a c'%tom comman&0 A'%t go to the -et C'%tom Comman&% &ialog in the Format %'( men' o) the E&it an&
,o!'! men'. Then click on 3&& to get a ne. te;t entr" an& t"!e the comman&. 5o' can al%o %!eci)" %ome
comman& line o!tion%. To &elete a comman&0 A'%t clear the te;t entr" an& !re%% 48. 6t .ill (e &elete&
a'tomaticall".
!onte-t a#tions
5o' can e;ec'te a %!eci)ie& comman& on the c'rrent .or& near the c'r%or !o%ition or an availa(le %election an&
thi% .or& i% !a%%e& a% an arg'ment to thi% comman&. 6t can (e '%e& )or e;am!le to o!en %ome 3,6
&oc'mentation in a (ro.%er .in&o. or o!en an" other e;ternal !rogram. To &o thi%0 there i% an men' entr" in
the !o!'! men' o) the e&itor .i&get an& al%o a ke"(oar& %hortc't1%ee the %ection calle& 8e"(in&ing%2.
The comman& can (e %!eci)ie& in the !re)erence% &ialog an& a&&itionall" )or each )ilet"!e 1%ee
Kconte;tMactionMcm&K in the %ection calle& Format2. 3t e;ec'ting0 the )ilet"!e %!eci)ic comman& i% '%e& i)
availa(le other.i%e the comman& %!eci)ie& in the !re)erence% &ialog i% e;ec'te&.
The !a%%e& .or& can (e re)erre& .ith the .il&car& KJ%K ever".here in the comman&0 (e)ore e;ec'ting it .ill (e
re!lace& (" the c'rrent .or&. For e;am!le0 the comman& to o!en the ,>, 3,6 &oc'mentation .o'l& (e:
firefox "hp://www.php.ne/%s"
.hen e;ec'ting the comman&0 the J% i% %'(%tit'te& (" the .or& near the c'r%or !o%ition or (" the c'rrent
%election. 6) the c'r%or i% at the .or& KechoK0 a (ro.%er .in&o. .ill o!en1a%%'me& "o'r (ro.%er i% calle& )ire)o;2
an& it .ill o!en the a&&re%%: htt!:<<....!h!.net<echo.
Auto#o&*letion
*ean" can o))er a li%t o) !o%%i(le com!letion% )or %"m(ol% &e)ine& in the tag% an& )or all .or&% in a &oc'ment.
The a'tocom!letion li%t )or %"m(ol% i% !re%ente& .hen the )ir%t )e. character% o) the %"m(ol are t"!e&
1con)ig'ra(le0 %ee E&itor Com!letion% ta( in !re)erence% &ialog0 &e)a'lt I2 or .hen the Com!lete .or&
ke"(in&ing i% !re%%e& 1con)ig'ra(le0 %ee Con)ig'ra(le ke"(in&ing%0 &e)a'lt Ctrl--!ace2.
Dhen the &e)ine& ke"(in&ing i% t"!e& an& the 3'tocom!lete all .or&% in &oc'ment !re)erence 1in E&itor
Com!letion% ta( in !re)erence% &ialog2 i% %electe& then the a'tocom!letion li%t .ill %ho. all matching .or&% in
the &oc'ment0 i) there are no matching %"m(ol%.
6) "o' &onHt .ant to '%e a'tocom!letion it can (e &i%mi%%e& 'ntil the ne;t %"m(ol (" t"!ing E%ca!e. The
a'tocom!letion li%t i% '!&ate& a% more character% are t"!e& %o that it onl" %ho.% com!letion% that %tart .ith the
character% t"!e& %o )ar. 6) no %"m(ol% (egin .ith the %e9'ence0 the a'tocom!letion .in&o. i% clo%e&.
The '! an& &o.n arro.% .ill move the %electe& item. The highlighte& item on the a'tocom!letion li%t can (e
cho%en )rom the li%t (" Ta( or Enter<Get'rn. 5o' can al%o &o'(le-click to %elect an item. The %e9'ence .ill (e
com!lete& to match the cho%en item0 an& i) the 7ro! re%t o) .or& on com!letion !re)erence i% %et 1in E&itor
Com!letion% ta( in !re)erence% &ialog2 then an" character% a)ter the c'r%or that match a %"m(ol or .or& are
&elete&.
User/defina$le sni**ets
-ni!!et% are %mall %tring% or co&e con%tr'ct% .hich can (e re!lace& or com!lete& to a more com!le; %tring. -o
"o' can %ave a lot o) time (" not t"!ing o)ten '%e& %tring% an& letting *ean" &o the .ork )or "o'. To kno. .hat
to com!lete or re!lace *ean" rea&% a con)ig'ration )ile calle& %ni!!et%.con) at %tart'!.
The %"%tem-.i&e con)ig'ration )ile can (e )o'n& in W!re)i;<%hare<gean"0 .here W!re)i; i% the !ath .here *ean" i%
in%talle& 1%ee 6n%tallation !re)i;2. 6t i% not recommen&e& to e&it the %"%tem-.i&e )ile0 (eca'%e it .ill (e overri&&en
.hen *ean" i% '!&ate&.
To change the %etting%0 co!" the )ile )rom W!re)i;<%hare<gean" in "o'r con)ig'ration &irector" 1'%'all"
F<.con)ig<gean"<2.
For e;am!le:
% cp /usr/1oca1/share/geany/snippes.conf /home/username/.config/geany/
Then "o' can e&it the )ile an& the change% are al%o availa(le a)ter an '!&ate o) *ean" (eca'%e the )ile re%i&e% in
"o'r con)ig'ration &irector". 3lternativel"0 "o' can create a )ile F<.con)ig<gean"<%ni!!et%.con) an& a&& onl" the%e
%etting% "o' .ant to change. 3ll mi%%ing %etting% .ill (e rea& )rom the glo(al %ni!!et% )ile in W!re)i;<%hare<gean".
The )ile %ni!!et%.con) ma" contain %everal %ection% )or each )ilet"!e. 6t al%o contain% t.o a&&itional %ection%
K7e)a'ltK an& K-!ecialK. 7e)a'lt contain% all %ni!!et% .hich are availa(le )or ever" )ilet"!e. 5o' ma" &e)ine
another %ection )or a certain )ilet"!e1e.g. CEE2 containing the %ame %ni!!et%. Then .hen '%ing %'ch a %ni!!et in a
CEE )ile the %ni!!et &e)ine& in the CEE %ection .ill (e '%e&. 6n an" other )ile the %ni!!et &e)ine& in the 7e)a'lt
%ection .ill (e '%e& 'nle%% a %ection )or the c'rrent )ilet"!e e;i%t% an& the '%e& %ni!!et i% &e)ine& in thi% %ection.
The %ection K-!ecialK contain% %!ecial %ni!!et% .hich can onl" (e '%e& in other %ni!!et%. -o "o' can &e)ine o)ten
'%e& !art% o) %ni!!et% an& A'%t '%e the %!ecial %ni!!et a% a !lacehol&er 1%ee the %ni!!et%.con) )or &etail%2.
To &e)ine %ni!!et% "o' can '%e %everal %!ecial character% .hich .ill (e re!lace& .hen '%ing the %ni!!et:
%ild#ards for sni**ets
Tn or Jne.lineJ 6n%ert a ne. line 1it .ill (e re!lace& (" the '%e& E4L char1%2: LF0 CG<LF0 or CG2.
Tt or J.%J 6n%ert an in&entation %te!0 it .ill (e re!lace& accor&ing to the c'rrent &oc'mentH%
in&ent mo&e.
T% T% to )orce .hite%!ace at (eginning or en& o) a val'e 1Hke"C val'eH .onHt .ork0 '%e
Hke"CT%val'eH2
Jc'r%orJ ,lace the c'r%or at thi% !o%ition a)ter com!letion ha% (een &one. 5o' can &e)ine
m'lti!le Jc'r%orJ .il&car&% an& '%e the ke"(in&ing ove c'r%or in %ni!!et to
A'm! to the ne;t &e)ine& c'r%or !o%ition in the com!lete& %ni!!et.
J...J K...K mean% the name o) a ke" in the K-!ecialK %ection. 6) "o' have &e)ine& a ke"
K(raceMo!enK in the K-!ecialK %ection "o' can '%e J(raceMo!enK in an" other
%ni!!et.
-ni!!et name% m'%t not contain %!ace% other.i%e the" .onHt .ork correctl". @'t (e%i&e that "o' can &e)ine
almo%t an" %tring a% a %ni!!et an& '%e it later in *ean". 6t i% not limite& to e;i%ting contr'ct% o) certain
!rogramming lang'age%1like i)0 )or0 %.itch2. 7e)ine .hatever "o' nee&.
a"(e "o' nee& to o)ten t"!e "o'r name0 %o &e)ine a %ni!!et like thi%:
[efau1|
myname=Enrico Trger
Ever" time "o' .rite m"name XT3@B in *ean"0 it .ill re!lace Km"nameK .ith KEnrico TrgerK. The ke" to %tart
a'tocom!letion can (e change& in the !re)erence% &ialog0 (" &e)a'lt it i% T3@. The corre%!on&ing ke"(in&ing i%
calle& Com!lete %ni!!et.
-ince *ean" 0.1$ "o' can al%o '%e mo%t o) the availa(le tem!late% .il&car&% li%te& in Tem!late .il&car&%. 3ll
.il&car&% .hich are li%te& a% availa(le in %ni!!et% can (e '%e&. For in%tance to im!rove the a(ove e;am!le:
[efau1|
myname=My name is {deve1oper}
thi% .ill re!lace m"name .ith K" name i% K an& the val'e o) the tem!late !re)erence &evelo!er.
5o' ma" change the (ehavio'r *ean" recognize% the .or& to com!lete0 i.e. .here &e)ine the %tart an& en& o) a
.or&. The %ection K-!ecialK ma" contain a ke" K.or&char%K .hich li%t% all character% a %tring ma" contain to (e
recognize& a% a .or& )or com!letion. Leave it commente& to '%e &e)a'lt character% or &e)ine it to a&& or remove
character% to )it "o'r nee&%.
Inserting Uni#ode #hara#ters
Dith *T8 2.10 an& a(ove0 "o' can hit Ctrl--hi)t-'0 then %till hol&ing Ctrl--hi)t0 t"!e %ome he; &igit% re!re%enting
the co&e !oint )or the character "o' .ant0 then let go o) Ctrl--hi)t an& hit a ke" %'ch a% the right arro..
For thi% to .ork in *ean"0 "o'Hll nee& to )ir%t 'n(in& Ctrl--hi)t-' in the ke"(in&ing ta( in !re)erence% &ialog0 then
re%tart *ean". Note that it .ork% %lightl" &i))erentl" )rom other *T8 a!!lication%0 in that "o'Hll nee& to contin'e to
hol& &o.n the Ctrl an& -hi)t ke"% .hile t"!ing the co&e !oint he; &igit%.
For *T8 X 2.100 it i% al%o !o%%i(le0 ('t t"!ing the )ir%t Ctrl--hi)t-' i% not nece%%ar". 4ne !ro(lem i% that "o' ma"
)in& the al!ha(etic ke"% con)lict .ith other *ean" ke"(in&ing%.
,ear#h, re*la#e and go to
Thi% %ection &e%cri(e% %earch-relate& comman&% )rom the -earch men' an& the e&itor .in&o.H% !o!'! men':
Fin&
Fin& '%age R
Fin& in )ile%
Ge!lace
*o to tag &e)inition R
*o to tag &eclaration R
*o to line
R The%e item% are availa(le )rom the e&itor .in&o.H% !o!'! men'0 or (" '%ing a ke"(oar& %hortc't 1%ee the
%ection calle& 8e"(in&ing%2.
Find
The Fin& &ialog i% '%e& )or )in&ing te;t in one or more o!en &oc'ment%.
Mat#hing o*tions
The %"nta; )or the +%e reg'lar e;!re%%ion% o!tion i% %ho.n in Geg'lar e;!re%%ion%.
The +%e e%ca!e %e9'ence% o!tion .ill tran%)orm an" e%ca!e& character% into their +TF-8 e9'ivalent. For e;am!le0
Tt .ill (e tran%)orme& into a ta( character. 4ther recognize& %"m(ol% are: TT0 Tn0 Tr0 T'==== 1+nico&e character%2.
Find all
To )in& all matche%0 click on the Fin& 3ll e;!an&er. Thi% .ill reveal %everal o!tion%:
6n 7oc'ment
6n -e%%ion
ark
Fin& 3ll 6n 7oc'ment .ill %ho. a li%t o) matching line% in the c'rrent &oc'ment in the e%%age% ta( o) the
e%%age Din&o.. Fin& 3ll 6n -e%%ion &oe% the %ame )or all o!en &oc'ment%.
ark .ill highlight all matche% in the c'rrent &oc'ment .ith a colore& (o;. The%e marker% can (e remove& ("
%electing the Gemove arker% comman& )rom the 7oc'ment men'.
!hange font in sear#h dialog te-t fields
3ll %earch relate& &ialog% '%e a ono%!ace )or the te;t in!'t )iel&% to increa%e the rea&a(ilit" o) in!'t te;t. Thi% i%
'%e)'l .hen "o' are t"!ing e.g. reg'lar e;!re%%ion% .ith %!ace%0 !erio&% an& comma% .hich might it har& to rea&
.ith a !ro!ortional )ont.
6) "o' .ant to change the )ont )or %ome rea%on0 "o' can &o thi% ea%il" (" in%erting the )ollo.ing %t"le into "o'r
.gtkrc-2.0 1'%'all" )o'n& in "o'r home &irector" on +N6=-like %"%tem% an& in the etc %'(&irector" o) "o'r *ean"
in%tallation on Din&o.%2:
sy1e "search_sy1e"
{
fon_name="Monospace 8"
}
widge "Geanyia1ogSearch.*.G'Enry" sy1e:highes "search_sy1e"
,lea%e note the a&&ition K:highe%tK in the la%t line .hich %et% the !riorit" o) thi% %t"le to the highe%t availa(le.
4ther.i%e0 the %t"le i% ignore& )or the %earch &ialog%.
Find usage
Fin& '%age %earche% all o!en )ile%. 6t i% %imilar to the Fin& 3ll 6n -e%%ion Fin& &ialog comman&.
6) there i% a %election0 then it i% '%e& a% the %earch te;t/ other.i%e the c'rrent .or& i% '%e&. The c'rrent .or& i%
either taken )rom the .or& neare%t the e&it c'r%or0 or the .or& 'n&erneath the !o!'! men' click !o%ition .hen
the !o!'! men' i% '%e&. The %earch re%'lt% are %ho.n in the e%%age% ta( o) the e%%age Din&o..
Find in files
Fin& in )ile% i% a more !o.er)'l ver%ion o) Fin& '%age that %earche% all )ile% in a certain &irector" '%ing the *re!
tool. The *re! tool m'%t (e correctl" %et in ,re)erence% to the !ath o) the %"%temH% *re! 'tilit". *N+ *re! i%
recommen&e&.
The Enco&ing com(o (o; can (e '%e& to &e)ine the enco&ing o) the )ile% to (e %earche&. The cho%en enco&ing i%
'%e& to convert the entere& %earch te;t into an& to convert the %earch re%'lt% (ack to +TF-8. The E;tra o!tion%
)iel& i% '%e& to !a%% an" a&&itional arg'ment% to the gre! tool.
Filtering out 7ersion #ontrol files
Dhen '%ing the Gec'r%e in %'()ol&er% o!tion .ith a &irector" thatH% 'n&er ver%ion control0 "o' can %et the E;tra
o!tion% )iel& to '%e gre!H% --e;cl'&e )lag to )ilter o't )ilename%.
-NN E;am!le: --exc1ude=*.svn-base
The --e;cl'&e arg'ment onl" matche% the )ile name !art0 not the !ath. 6) "o' have *N+ *re! BC 2.$.2 "o' can '%e
the --e;cl'&e-&ir arg'ment to )ilter o't CN- an& hi&&en &irectorie% like .%vn.
E;am!le: --exc1ude-dir=.* --exc1ude-dir=CVS
'e*la#e
The Ge!lace &ialog i% '%e& )or re!lacing te;t in one or more o!en &oc'ment%.
The Ge!lace &ialog ha% the %ame o!tion% )or matching te;t a% the Fin& &ialog. -ee the %ection calle& atching
o!tion%.
The +%e reg'lar e;!re%%ion% o!tion a!!lie% (oth to the %earch %tring an& to the re!lacement te;t/ )or the latter
(ack re)erence% can (e '%e& -- %ee the entr" )or HTnH in Geg'lar e;!re%%ion%.
'e*la#e all
To re!lace %everal matche%0 click on the Ge!lace 3ll e;!an&er. Thi% .ill reveal %everal o!tion%:
6n 7oc'ment
6n -e%%ion
6n -election
Ge!lace 3ll 6n 7oc'ment .ill re!lace all matching te;t in the c'rrent &oc'ment. Ge!lace 3ll 6n -e%%ion &oe% the
%ame )or all o!en &oc'ment%. Ge!lace 3ll 6n -election .ill re!lace all matching te;t in the c'rrent %election o) the
c'rrent &oc'ment.
Go to tag definition
6) the c'rrent .or& i% the name o) a tag &e)inition 1like a )'nction (o&"2 an& the )ile containing the tag &e)inition
i% o!en0 thi% comman& .ill %.itch to that )ile an& go to the corre%!on&ing line n'm(er. The c'rrent .or& i% either
taken )rom the .or& neare%t the e&it c'r%or0 or the .or& 'n&erneath the !o!'! men' click !o%ition .hen the
!o!'! men' i% '%e&.
Go to tag de#laration
Like *o to tag &e)inition0 ('t )or a )or.ar& &eclaration %'ch a% a )'nction !rotot"!e or e;tern &eclaration in%tea&
o) a )'nction (o&".
Go to line
*o to a !artic'lar line n'm(er in the c'rrent )ile.
'egular e-*ressions
5o' can '%e reg'lar e;!re%%ion% in the Fin& an& Ge!lace &ialog% (" %electing the +%e reg'lar e;!re%%ion% check
(o;. The %"nta; i% ,4-6=-like0 a% &e%cri(e& in the ta(le (elo..
Note
1. -earching (ack.ar&% .ith reg'lar e;!re%%ion% i% not %'!!orte&.
2. Tr an& Tn are never matche& (eca'%e reg'lar e;!re%%ion %earche% are ma&e line !er line 1%tri!!e& o) en&-
o)-line char%2.
Y. The ,4-6= HOH reg'lar e;!re%%ion character )or o!tional matching i% not %'!!orte&.
In a regular e-*ression, the follo0ing #hara#ters are inter*reted
. atche% an" character.
1 Thi% mark% the %tart o) a region )or tagging a match.
2 Thi% mark% the en& o) a tagge& region.
Tn Dhere n i% 1 thro'gh 9 re)er% to the )ir%t thro'gh ninth tagge& region .hen re!lacing. For
e;am!le0 i) the %earch %tring .a% Fre&1P1-9Q2=== an& the re!lace %tring .a% -amT15550 .hen
a!!lie& to Fre&2=== thi% .o'l& generate -am2555.
TX Thi% matche% the %tart o) a .or&.
TB Thi% matche% the en& o) a .or&.
Tc 3 (ack%la%h )ollo.e& (" &0 70 %0 -0 . or D0 (ecome% a character cla%% 1(oth in%i&e an& o't%i&e
%et% PQ2.
&: &ecimal &igit%
7: an" char e;ce!t &ecimal &igit%
%: .hite%!ace 1%!ace0 Tt Tn Tr T) Tv2
-: an" char e;ce!t .hite%!ace 1%ee a(ove2
.: al!han'meric Z 'n&er%core 1change& (" '%er %etting2
D: an" char e;ce!t al!han'meric Z 'n&er%core 1%ee a(ove2
T; Thi% allo.% "o' to '%e a character ; that .o'l& other.i%e have a %!ecial meaning. For
e;am!le0 TP .o'l& (e inter!rete& a% P an& not a% the %tart o) a character %et. +%e TT )or a literal
(ack%la%h.
T;>> 3 (ack%la%h )ollo.e& (" ; an& t.o he;a &igit%0 (ecome% the character .ho%e 3%cii co&e i% e9'al
to the%e &igit%. 6) not )ollo.e& (" t.o &igit%0 it i% H;H char it%el).
P...Q atche% one o) the character% in the %et. 6) the )ir%t character in the %et i% [0 it matche% the
character% N4T in the %et0 i.e. com!lement% the %et. 3 %horthan& --E 1%tart &a%h en&2 i% '%e& to
%!eci)" a %et o) character% - '! to E0 incl'%ive. The %!ecial character% Q an& - have no %!ecial
meaning i) the" a!!ear a% the )ir%t char% in the %et. To incl'&e (oth0 !'t - )ir%t: P-Q3-\Q 1or A'%t
(ack%la%h them2.
E;am!le%:
P-Q]Q matche% the%e Y char%
PQ-]Q matche% )rom Q to ] char%
Pa-zQ an" lo.erca%e al!ha
P[-QQ an" char e;ce!t - an& Q
P[3-\Q an" char e;ce!t '!!erca%e al!ha
Pa-z3-\Q an" al!ha
[ Thi% matche% the %tart o) a line 1'nle%% '%e& in%i&e a %et0 %ee a(ove2.
W Thi% matche% the en& o) a line.
R Thi% matche% 0 or more time%. For e;am!le0 -aRm matche% -m0 -am0 -aam0 -aaam an& %o on.
E Thi% matche% 1 or more time%. For e;am!le0 -aEm matche% -am0 -aam0 -aaam an& %o on.
Note
Thi% ta(le i% a&a!te& )rom -cintilla an& -ciTE &oc'mentation0 &i%tri('te& 'n&er the Licen%e )or -cintilla an& -ciTE.
Tags
*ean" ha% ('ilt-in )'nctionalit" )or generating tag in)ormation 1aka K.ork%!ace tag%K2 )or %'!!orte& )ilet"!e%
.hen "o' o!en a )ile. 5o' can al%o have *ean" a'tomaticall" loa& e;ternal tag )ile% 1aka Kglo(al tag% )ile%K2 '!on
%tart'!0 or man'all" '%ing Tool% --B Loa& Tag%.
*ean" '%e% it% o.n tag )ile )ormat0 %imilar to .hat ctag% '%e% 1('t i% incom!ati(le .ith ctag%2. 5o' '%e *ean" to
generate glo(al tag% )ile%0 a% &e%cri(e& (elo..
%or+s*a#e tags
Tag% )or each &oc'ment are !ar%e& .henever a )ile i% loa&e& or %ave&. The%e are %ho.n in the -"m(ol li%t in the
-i&e(ar. The%e tag% are al%o '%e& )or a'tocom!letion o) %"m(ol% an& callti!% )or all &oc'ment% o!en in the
c'rrent %e%%ion that have the %ame )ilet"!e.
The *o to Tag comman&% can (e '%e& .ith all .ork%!ace tag%. -ee *o to tag &e)inition.
Glo$al tags
*lo(al tag% are '%e& to !rovi&e a'tocom!letion o) %"m(ol% an& callti!% .itho't having to o!en the
corre%!on&ing %o'rce )ile%. Thi% i% inten&e& )or li(rar" 3,6%0 a% the tag% )ile onl" ha% to (e '!&ate& .hen "o'
'!gra&e the li(rar".
5o' can loa& a c'%tom glo(al tag% )ile in t.o .a"%:
+%ing the Loa& Tag% comman& in the Tool% men'.
@" creating a &irector" F<.con)ig<gean"<tag%0 an& moving or %"mlinking the tag% )ile% there (e)ore %tarting
*ean".
@" creating a &irector" W!re)i;<%hare<gean"<tag%0 an& moving or %"mlinking the tag% )ile% there (e)ore
%tarting *ean". W!re)i; i% the in%tallation !re)i; 1%ee 6n%tallation !re)i;2.
5o' can either &o.nloa& the%e )ile% or generate "o'r o.n. The" have the )ormat:
name.1ang_ex.ags
langMe;t i% one o) the e;ten%ion% %et )or the )ilet"!e a%%ociate& .ith the tag%. -ee the %ection calle& Filet"!e
e;ten%ion% )or more in)ormation.
Default glo$al tags files
For %ome lang'age%0 a li%t o) glo(al tag% i% loa&e& .hen the corre%!on&ing )ilet"!e i% )ir%t '%e&. C'rrentl" the%e
are )or:
C -- *T8E an& *Li(
,a%cal
,>,
>TL -- Z%"m(ol/ com!letion0 e.g. )or am!er%an&0 co!"right0 etc.
LaTe=
,"thon
Glo$al tags file for&at
*lo(al tag% )ile% can have t.o &i))erent )ormat%:
Tagmanager )ormat
,i!e-%e!arate& )ormat
The )ir%t line o) glo(al tag% )ile% %ho'l& (e a comment0 intro&'ce& (" S )ollo.e& (" a %!ace an& a %tring like
)ormatC!i!e re%!ectivel" )ormatCtagmanager 1ca%e-%en%itive2. Thi% hel!% *ean" to rea& the )ile !ro!erl". 6) thi%
line i% mi%%ing0 *ean" trie% to a'to-&etect the '%e& )ormat ('t thi% might )ail.
The Tagmanager )ormat i% a (it more com!le; an& i% '%e& )or )ile% create& (" the gean" -g comman&. There i%
one tag !er line. 7i))erent tag attri('te% like the ret'rn val'e or the arg'ment li%t are %e!arate& .ith &i))erent
character% in&icating the t"!e o) the )ollo.ing arg'ment.
The ,i!e-%e!arate& )ormat i% ea%ier to rea& an& .rite. There i% one tag !er line an& &i))erent tag attri('te% are
%e!arate& (" the !i!e character 1]2. 3 line look% like:
basename|sring|(sring pah [, sring suffix|)|
The )ir%t )iel& i% the tag name 1'%'all" a )'nction name2.
The %econ& )iel& i% the t"!e o) the ret'rn val'e.
The thir& )iel& i% the arg'ment li%t )or thi% tag.
The )o'rth )iel& i% the &e%cri!tion )or thi% tag ('t c'rrentl" 'n'%e& an& %ho'l& (e le)t em!t".
E;ce!t )or the )ir%t )iel& 1tag name20 all other )iel& can (e le)t em!t" ('t the !i!e %e!arator m'%t a!!ear )or them.
5o' can ea%il" .rite "o'r o.n glo(al tag )ile% '%ing thi% )ormat. ?'%t %ave them in "o'r tag% &irector"0 a% &e%cri(e&
earlier in the %ection *lo(al tag%.
Generating a glo$al tags file
5o' can generate "o'r o.n glo(al tag% )ile% (" !ar%ing a li%t o) %o'rce )ile%. The comman& i%:
gean" -g P-,Q XTag FileB XFile li%tB
Tag File )ilename %ho'l& (e in the )ormat &e%cri(e& earlier -- %ee the %ection calle& *lo(al tag%.
File li%t i% a li%t o) )ilename%0 each .ith a )'ll !ath 1'nle%% "o' are generating C<CEE tag% an& have %et the
CFL3*- environment varia(le a!!ro!riatel"2.
-, or --no-!re!roce%%ing &i%a(le% '%ing the C !re-!roce%%or to !roce%% Sincl'&e &irective% )or C<CEE
%o'rce )ile%. +%e thi% o!tion i) "o' .ant to %!eci)" each %o'rce )ile on the comman&-line in%tea& o) '%ing
a Hma%terH hea&er )ile. 3l%o can (e '%e)'l i) "o' &onHt .ant to %!eci)" the CFL3*- environment varia(le.
E;am!le )or the .;7 li(rar" )or the 7 !rogramming lang'age:
geany -g wxd.d.ags /home/username/wxd/wx/*.d
*enerating C<CEE tag )ile%:
For C<CEE tag )ile%0 gcc an& gre! are re9'ire&0 %o that hea&er )ile% can (e !re!roce%%e& to incl'&e an" other
hea&er% the" &e!en& '!on.
For C<CEE )ile%0 the environment varia(le CFL3*- %ho'l& (e %et .ith a!!ro!riate -6<!ath incl'&e !ath%. The
)ollo.ing e;am!le .ork% .ith the (a%h %hell0 generating tag% )or the *nome+6 li(rar":
CELAGS=p'g-config --cf1ags 1ibgnomeui-2.0 geany -g gnomeui.c.ags \
/usr/inc1ude/1ibgnomeui-2.0/gnome.h
5o' can a&a!t thi% comman& to '%e CFL3*- an& hea&er )ile% a!!ro!riate )or .hichever li(rarie% "o' .ant.
Ge!lacing the &e)a'lt C<CEE tag% )ile:
*ean" c'rrentl" '%e% a &e)a'lt glo(al tag% )ile c99.tag% )or C an& CEE0 commonl" in%talle& in <'%r<%hare<gean".
Thi% )ile can (e re!lace& .ith one containing tag% !ar%e& )rom a &i))erent %et o) hea&er )ile%. Dhen *ean" i% ne;t
%tarte&0 "o'r c'%tom tag% )ile .ill (e loa&e& in%tea& o) the &e)a'lt c99.tag%. 5o' %ho'l& kee! a co!" o) the
generate& tag% )ile (eca'%e it .ill get over.ritten .hen '!gra&ing *ean".
Ignore tags
5o' can al%o ignore certain tag% i) the" .o'l& lea& to .rong !ar%ing o) the co&e. -im!l" create a )ile calle&
Kignore.tag%K in "o'r *ean" con)ig'ration &irector" 1'%'all" F<.con)ig<gean"<2. Then li%t all tag% "o' .ant to ignore
in thi% )ile0 %e!arate& (" %!ace% an&<or ne.line%.
ore &etaile& in)ormation a(o't the '%age )rom the E;'(erant Ctag% man'al !age:
-!eci)ie% a li%t o) i&enti)ier% .hich are to (e %!eciall" han&le&
.hile !ar%ing C an& CEE %o'rce )ile%. Thi% o!tion i% %!eci)icall"
!rovi&e& to han&le %!ecial ca%e% ari%ing thro'gh the '%e o)
!re-!roce%%or macro%. Dhen the i&enti)ier% li%te& are %im!le i&enti)ier%0
the%e i&enti)ier% .ill (e ignore& &'ring !ar%ing o) the %o'rce )ile%.
6) an i&enti)ier i% %'))i;e& .ith a HEH character0 ctag% .ill al%o
ignore an" !arenthe%i%-enclo%e& arg'ment li%t .hich ma" imme&iatel"
)ollo. the i&enti)ier in the %o'rce )ile%.
6) t.o i&enti)ier% are %e!arate& .ith the HCH character0 the )ir%t
i&enti)ier% i% re!lace& (" the %econ& i&enti)ier% )or !ar%ing !'r!o%e%.
For even more &etaile& in)ormation !lea%e rea& the man'al !age o) E;'(erant Ctag%.
Preferen#es
5o' ma" a&A'%t *ean"H% %etting% '%ing the E&it --B ,re)erence% &ialog. 3n" change% "o' make there can (e
a!!lie& (" hitting either the 3!!l" or the 48 ('tton. The%e %etting% .ill !er%i%t (et.een *ean" %e%%ion%. Note
that mo%t %etting% here have &e%cri!tive !o!'! ('((le hel! -- A'%t hover the mo'%e over the item in 9'e%tion to
get hel! on it.
5o' ma" al%o a&A'%t %ome Nie. %etting% 1'n&er the Nie. men'2 that !er%i%t (et.een *ean" %e%%ion%. The %etting%
'n&er the 7oc'ment men'0 ho.ever0 are onl" )or the c'rrent &oc'ment an& revert to &e)a'lt% .hen re%tarting
*ean".
There are al%o %ome rarer >i&&en !re)erence%.
Note
6n the !aragra!h% that )ollo.0 the te;t &e%cri(ing a &ialog ta( come% a)ter the %creen%hot o) that ta(.
General ,tartu* ta$ in *referen#es dialog
,tartu*
Loa& )ile% )rom the la%t %e%%ion
4n %tart'!0 loa& the %ame )ile% "o' ha& o!en the la%t time "o' '%e& *ean".
Loa& virt'al terminal %'!!ort
Loa& the li(rar" )or r'nning a terminal in the me%%age .in&o. area.
Ena(le !l'gin %'!!ort
3llo. !l'gin% to (e '%e& in *ean".
,hutdo0n
-ave .in&o. !o%ition an& geometr"
-ave the c'rrent !o%ition an& %ize o) the main .in&o. %o ne;t time "o' o!en *ean" itH% in the %ame
location.
Con)irm E;it
>ave a &ialog !o! '! to con)irm that "o' reall" .ant to 9'it *ean".
Paths
-tart'! !ath
,ath to %tart in .hen o!ening or %aving )ile%. 6t m'%t (e an a(%ol'te !ath. Leave it (lank to '%e the c'rrent
.orking &irector".
,roAect )ile%
,ath to %tart in .hen o!ening !roAect )ile%.
E;tra !l'gin !ath
*ean" look% (" &e)a'lt in the glo(al in%tallation !ath an& in the con)ig'ration &irector". The !ath entere&
here .ill (e %earche& a&&itionall" )or !l'gin%. +%'all" "o' &o not nee& to %et an a&&itional !ath to %earch
)or !l'gin%. 6t might (e '%e)'l .hen *ean" i% in%talle& on a m'lti-'%er machine an& a&&itional !l'gin%
%ho'l& (e availa(le in a c'%tom location )or all '%er%. Leave (lank to not %et an a&&itional look'! !ath.
General Mis#ellaneous ta$ in *referen#es dialog
Mis#ellaneous
@ee! on error% .hen com!ilation ha% )ini%he&
>ave the com!'ter make a (ee!ing %o'n& .hen com!ilation o) "o'r !rogram ha% com!lete& or an" error%
occ'rre&.
-.itch %tat'% me%%age li%t at ne. me%%age
-.itch to the %tat'% me%%age ta( 1in the note(ook .in&o. at the (ottom2 once a ne. %tat'% me%%age
arrive%.
-'!!re%% %tat'% me%%age% in the %tat'% (ar
Gemove all me%%age% )rom the %tat'% (ar. The me%%age% are %till &i%!la"e& in the %tat'% me%%age% .in&o..
3'to-)oc'% .i&get% 1)oc'% )ollo.% mo'%e2
*ive the )oc'% a'tomaticall" to .i&get% (elo. the mo'%e c'r%or. Thi% .ork% )or the main e&itor .i&get0 the
%cri((le0 the tool(ar %earch )iel& goto line )iel&% an& the NTE.
,ear#h
3l.a"% .ra! %earch an& hi&e the Fin& &ialog
3l.a"% .ra! %earch aro'n& the &oc'ment an& hi&e the Fin& &ialog a)ter clicking Fin& Ne;t<,revio'%.
+%e the c'rrent .or& 'n&er the c'r%or )or Fin& &ialog%
+%e c'rrent .or& 'n&er the c'r%or .hen o!ening the Fin&0 Fin& in File% or Ge!lace &ialog an& there i% no
%election. Dhen thi% o!tion i% &i%a(le&0 the %earch term o) the la%t '%e o) the a!!ro!riate Fin& &ialog i%
'%e&.
+%e the c'rrent )ileH% &irector" )or Fin& in File%
Dhen o!ening the Fin& in File% &ialog0 %et the &irector" to %earch to the &irector" o) the c'rrent active )ile.
Dhen thi% o!tion i% &i%a(le&0 the &irector" o) the la%t '%e o) the Fin& in File% &ialog i% '%e&.
Pro9e#ts
+%e !roAect-(a%e& %e%%ion )ile%
-ave "o'r c'rrent %e%%ion .hen clo%ing !roAect%. 5o' .ill (e a(le to re%'me &i))erent !roAect %e%%ion%0
a'tomaticall" o!ening the )ile% "o' ha& o!en !revio'%l".
-tore !roAect )ile in%i&e the !roAect (a%e &irector"
Dhen creating ne. !roAect%0 the &e)a'lt !ath )or the !roAect )ile contain% the !roAect (a%e !ath. Ditho't
thi% o!tion ena(le&0 the &e)a'lt !roAect )ile !ath i% one level a(ove the !roAect (a%e !ath. 6n an" ca%e0 "o'
can ea%il" %et the )inal !roAect )ile !ath in the Ne. ,roAect &ialog. Thi% o!tion i% A'%t )or "o'r convenience to
get a !ro!er &e)a'lt !ath.
Interfa#e ta$ in *referen#es dialog
,ide$ar
-ho. %"m(ol li%t
-ho. the li%t o) )'nction%0 varia(le%0 an& other in)ormation in the c'rrent &oc'ment "o' are e&iting.
-ho. &oc'ment% li%t
-ho. all the &oc'ment% "o' have o!en c'rrentl". Thi% can (e '%e& to change (et.een &oc'ment% 1%ee
-.itching (et.een &oc'ment%2 an& to !er)orm %ome common o!eration% %'ch a% %aving0 clo%ing an&
reloa&ing.
-ho. )'ll !ath name in &oc'ment% li%t
-ho. the )'ll &irector" !ath o) the )ile% "o' are e&iting in the 7oc'ment% li%t.
Fonts
E&itor
Change the )ont '%e& to &i%!la" &oc'ment%.
-"m(ol li%t
Change the )ont '%e& )or the -"m(ol% %i&e(ar ta(.
e%%age .in&o.
Change the )ont '%e& )or the me%%age .in&o. area.
Editor ta$s
-ho. e&itor ta(%
-ho. a note(ook ta( )or all &oc'ment% %o "o' can %.itch (et.een them '%ing the mo'%e 1in%tea& o) '%ing
the 7oc'ment% .in&o.2.
-ho. clo%e ('tton%
ake each ta( %ho. a clo%e ('tton %o "o' can ea%il" clo%e o!en &oc'ment%.
,lacement o) ne. )ile ta(%
Dhether to create a &oc'ment .ith it% note(ook ta( to the le)t or right o) all e;i%ting ta(%.
7o'(le-clicking hi&e% all a&&itional .i&get%
Dhether to call the Nie.-BToggle 3ll 3&&itional Di&get% comman& .hen &o'(le-clicking on a note(ook ta(.
Ta$ *ositions
E&itor
-et the !o%itioning o) the e&itorH% note(ook ta(% to the right0 le)t0 to!0 or (ottom o) the e&iting .in&o..
-i&e(ar
-et the !o%itioning o) the %i&e(arH% note(ook ta(% to the right0 le)t0 to!0 or (ottom o) the %i&e(ar .in&o..
e%%age .in&o.
-et the !o%itioning o) the me%%age .in&o.H% note(ook ta(% to the right0 le)t0 to!0 or (ottom o) the me%%age
.in&o..
Mis#ellaneous
-ho. %tat'% (ar
-ho. the %tat'% (ar at the (ottom o) the main .in&o.. 6t give% in)ormation a(o't the )ile "o' are e&iting
like the line an& col'mn "o' are on0 .hether an" mo&i)ication% .ere &one0 the )ile enco&ing0 the )ilet"!e
an& other in)ormation.
Tool$ar ta$ in *referen#es dialog
3))ect% the main tool(ar 'n&erneath the men' (ar.

Tool$ar
-ho. Tool(ar
Dhether to %ho. the tool(ar.
3!!en& Tool(ar to the en'
3llo.% to a!!en& the tool(ar to the main men' (ar in%tea& o) !lacing it (elo.. Thi% i% '%e)'l to %ave
vertical %!ace.
A**earan#e
6con -t"le
-elect the tool(ar icon %t"le to '%e - either icon% an& te;t0 A'%t icon% or A'%t te;t.
6con %ize
-elect the %ize o) the icon% "o' %ee 1large0 %mall or ver" %mall2.
Editor Features ta$ in *referen#es dialog
Features
Line .ra!!ing
-ho. long line% .ra!!e& aro'n& to ne. &i%!la" line%.
Ena(le K%martK home ke"
Dhether to move the c'r%or to the )ir%t non-.hite%!ace character on the line .hen "o' hit the home ke"
on "o'r ke"(oar&. ,re%%ing it again .ill go to the ver" %tart o) the line.
7i%a(le 7rag an& 7ro!
7o not allo. the &ragging an& &ro!!ing o) %electe& te;t in &oc'ment%.
Ena(le )ol&ing
3llo. gro'!% o) line% in a &oc'ment to (e colla!%e& )or ea%ier navigation<e&iting.
Fol&<+n)ol& all chil&ren o) a )ol& !oint
Dhether to )ol&<'n)ol& all chil& )ol& !oint% .hen a !arent line i% )ol&e&.
+%e in&icator% to %ho. com!ile error%
+n&erline line% .ith com!ile error% '%ing re& %9'iggle% to in&icate them in the e&itor area.
Ne.line %tri! trailing %!ace%
Gemove an" .hite %!ace at the en& o) the line .hen "o' hit the Enter<Get'rn ke".
Line (reaking col'mn
The e&itor col'mn n'm(er to in%ert a ne.line at .hen Line @reaking i% ena(le& )or the c'rrent &oc'ment.
Comment toggle marker
3 %tring .hich i% a&&e& .hen toggling a line comment in a %o'rce )ile. 6t i% '%e& to mark the comment a%
toggle&.
Editor Indentation ta$ in *referen#es dialog
Indentation grou*
-ee 6n&entation )or more in)ormation.
T"!e
Dhen *ean" in%ert% in&entation0 .hether to '%e:
?'%t Ta(%
?'%t -!ace%
Ta(% an& -!ace%0 &e!en&ing on ho. m'ch in&entation i% on a line
The Ta(% an& -!ace% in&ent t"!e i% al%o kno.n a% -o)t ta( %'!!ort in %ome other e&itor%.
Di&th
The .i&th o) a %ingle in&ent %ize in %!ace%. @" &e)a'lt the in&ent %ize i% e9'ivalent to I %!ace%.
>ar& ta( .i&th
Dhen the Ta(% an& -!ace% in&ent t"!e i% ena(le&0 thi% i% the &i%!la" %ize o) a ta(. 4ther.i%e thi% i% ignore&.
3ltho'gh con)ig'ra(le0 thi% %ho'l& '%'all" (e %et to 8.
7etect )rom )ile
Tr" to &etect an& %et the in&ent t"!e (a%e& on )ile content0 .hen a )ile i% o!ene&.
3'to-in&ent mo&e
The t"!e o) a'to-in&entation "o' .i%h to '%e a)ter !re%%ing Enter0 i) an".
@a%ic
?'%t a&& the in&entation o) the !revio'% line.
C'rrent char%
3&& in&entation (a%e& on the c'rrent )ilet"!e an& an" character% at the en& o) the line %'ch a% U0 V
)or C0 : )or ,"thon.
atch (race%
Like C'rrent char% ('t )or C-like lang'age%0 make a clo%ing V (race line '! .ith the matching o!ening
(race.
Ta( ke" in&ent%
6) %et0 !re%%ing ta( .ill in&ent the c'rrent line or %election0 an& 'nin&ent .hen !re%%ing -hi)t-ta(.
4ther.i%e0 the ta( ke" .ill in%ert a ta( character into the &oc'ment 1.hich can (e &i))erent )rom
in&entation0 &e!en&ing on the in&ent t"!e2.
Note
There are al%o %e!arate con)ig'ra(le ke"(in&ing% )or in&ent Z 'nin&ent0 ('t thi% !re) allo.% the ta( ke" to
have &i))erent meaning% in &i))erent conte;t% - e.g. )or %ni!!et com!letion.
Editor !o&*letions ta$ in *referen#es dialog
!o&*letions
-ni!!et Com!letion
Dhether to re!lace %!ecial ke".or&% a)ter t"!ing Ta( into a !re-&e)ine& te;t %ni!!et. -ee +%er-&e)ina(le
%ni!!et%.
=L tag a'tocom!letion
Dhen "o' o!en an =L tag a'tomaticall" generate it% com!letion tag.
3'tomatic contin'ation m'lti-line comment%
Contin'e a'tomaticall" m'lti-line comment% in lang'age% like C0 CEE an& ?ava .hen a ne. line i% entere&
in%i&e %'ch a comment. Dith thi% o!tion ena(le&0 *ean" .ill in%ert a R on ever" ne. line in%i&e a m'lti-line
comment0 )or e;am!le .hen "o' !re%% ret'rn in the )ollo.ing C co&e:
/*
* This is a C mu1i-1ine commen, press <Reurn>
then *ean" .o'l& in%ert:
*
on the ne;t line .ith the correct in&entation (a%e& on the !revio'% line0 a% long a% the m'lti-line i% not
clo%e& (" R<.
3'tocom!lete %"m(ol%
Dhen "o' %tart to t"!e a %"m(ol name0 look )or the )'ll %tring to allo. it to (e com!lete& )or "o'.
3'tocom!lete all .or&% in &oc'ment
Dhen "o' %tart to t"!e a .or&0 *ean" .ill %earch the .hole &oc'ment )or .or&% %tarting .ith the t"!e&
!art to com!lete it0 a%%'ming there are no tag name% to %ho..
7ro! re%t o) .or& on com!letion
Gemove an" .or& !art to the right o) the c'r%or .hen choo%ing a com!letion li%t item.
Character% to t"!e )or a'tocom!letion
N'm(er o) character% o) a .or& to t"!e (e)ore a'tocom!letion i% &i%!la"e&.
Com!letion li%t height
The n'm(er o) ro.% to &i%!la" )or the a'tocom!letion .in&o..
a;. %"m(ol name %'gge%tion%
The ma;im'm n'm(er o) item% in the a'tocom!letion li%t.
Auto/#lose (uotes and $ra#+ets
*ean" can a'tomaticall" in%ert a clo%ing (racket an& 9'ote character% .hen "o' o!en them. For in%tance0 "o'
t"!e a 1 an& *ean" .ill a'tomaticall" in%ert 2. Dith the )ollo.ing o!tion%0 "o' can &e)ine )or .hich character% thi%
%ho'l& .ork.
,arenthe%i% 1 2
3'to-clo%e !arenthe%i% .hen t"!ing an o!ening one
C'rl" (racket% U V
3'to-clo%e !arenthe%i% .hen t"!ing an o!ening one
-9'are (racket% P Q
3'to-clo%e !arenthe%i% .hen t"!ing an o!ening one
-ingle 9'ote% H H
3'to-clo%e !arenthe%i% .hen t"!ing an o!ening one
7o'(le 9'ote% K K
3'to-clo%e !arenthe%i% .hen t"!ing an o!ening one
Editor Dis*lay ta$ in *referen#es dialog
Thi% i% )or vi%'al element% &i%!la"e& in the e&itor .in&o..
Dis*lay
6nvert %"nta; highlighting color%
+%e .hite te;t on a (lack (ackgro'n& an& invert all color%. 6) the invertMall %etting in )ilet"!e%.common i%
%et0 thi% o!tion i% al.a"% ena(le&. -ee -!ecial )ile )ilet"!e%.common )or &etail%.
Thi% o!tion re9'ire% a re%tart o) *ean". The val'e o) thi% o!tion
-ho. in&en&ation g'i&e%
-ho. vertical line% to hel! %ho. ho. m'ch lea&ing in&entation there i% on each line.
-ho. .hite%!ace%
ark all ta(% .ith an arro. K--BK %"m(ol an& %!ace% .ith &ot% to %ho. .hich kin&% o) .hite%!ace are '%e&.
-ho. line en&ing%
7i%!la" a %"m(ol ever".here that a carriage ret'rn or line )ee& i% !re%ent.
-ho. line n'm(er%
-ho. or hi&e the Line N'm(er margin.
-ho. marker% margin
-ho. or hi&e the %mall margin right o) the line n'm(er%0 .hich i% '%e& to mark line%.
-to! %crolling at la%t line
Dhen ena(le& *ean" %to!% %crolling .hen at the la%t line o) the &oc'ment. 4ther.i%e "o' can %croll one
more !age even i) there are no real line%.
Long line &ar+er
The long line marker hel!% to in&icate overl"-long line%0 or a% a hint to the '%er )or .hen to (reak the line.
T"!e
Line
-ho. a thin vertical line in the e&itor .in&o. at the given col'mn !o%ition.
@ackgro'n&
Change the (ackgro'n& color o) character% a)ter the given col'mn !o%ition to the color %et (elo..
1Thi% i% recommen&e& over the Line %etting i) "o' '%e !ro!ortional )ont%2.
7i%a(le&
7onHt mark long line% at all.
Long line marker
-et thi% val'e to a val'e greater than zero to %!eci)" the col'mn .here it %ho'l& a!!ear.
Long line marker color
-et the color o) the long line marker.
Files ta$ in *referen#es dialog
Ne0 files
4!en ne. &oc'ment% )rom the comman&-line
Dhether to create ne. &oc'ment% .hen !a%%ing )ilename% that &onHt e;i%t )rom the comman&-line.
7e)a'lt enco&ing 1ne. )ile%2
The t"!e o) )ile enco&ing "o' .i%h to '%e .hen creating )ile%.
+%e& )i;e& enco&ing .hen o!ening )ile%
3%%'me all )ile% "o' are o!ening are '%ing the t"!e o) enco&ing %!eci)ie& (elo..
7e)a'lt enco&ing 1e;i%ting )ile%2
4!en% all )ile% .ith the %!eci)ie& enco&ing in%tea& o) a'to-&etecting it. +%e thi% o!tion .hen itH% not
!o%%i(le )or *ean" to &etect the e;act enco&ing.
7e)a'lt en& o) line character%
The en& o) line character% to .hich %ho'l& (e '%e& )or ne. )ile%. 4n Din&o.% %"%tem%0 "o' generall" .ant
to '%e CG<LF .hich are the common character% to mark line (reak%. 4n +ni;-like %"%tem%0 LF i% &e)a'lt an&
CG i% '%e& on 3C %"%tem%.
,a7ing files
,er)orm %!ecial )ormatting o!eration% .hen a &oc'ment i% %ave&. The%e can each (e 'n&one .ith the +n&o
comman& a% '%'al.
En%'re ne.line at )ile en&
3&& a ne.line at the en& o) the &oc'ment i) one i% mi%%ing.
-tri! trailing %!ace%
Gemove the trailing %!ace% on each line o) the &oc'ment.
Ge!lace ta(% (" %!ace
Ge!lace all ta(% in the &oc'ment .ith the e9'ivalent n'm(er o) %!ace%.
Note
6t i% (etter to '%e %!ace% to in&ent than '%e thi% !re)erence - %ee 6n&entation.
Mis#ellaneous
Gecent )ile% li%t length
The n'm(er o) )ile% to remem(er in the recentl" '%e& )ile% li%t.
7i%k check timeo't
The n'm(er o) %econ&% to !erio&icall" check the c'rrent &oc'mentH% )ile on &i%k in ca%e it ha% change&.
-etting it to 0 .ill &i%a(le thi% )eat're.
Note
The%e check% are onl" !er)orme& on local )ile%. Gemote )ile% are not checke& )or change% &'e to
!er)ormance i%%'e% 1remote )ile% are )ile% in F<.gv)%<2.
Tools ta$ in *referen#es dialog
Tool *aths
ake
The location o) the make e;ec'ta(le.
Terminal
The location o) "o'r terminal e;ec'ta(le.
@ro.%er
The location o) "o'r .e( (ro.%er e;ec'ta(le.
*re!
The location o) the gre! e;ec'ta(le.
Note
For Din&o.% '%er%: at the time o) .riting it i% recommen&e& to '%e the gre!.e;e )rom the +n;+til% !roAect
1htt!:<<%o'rce)orge.net<!roAect%<'n;'til%2. The gre!.e;e )rom the ing. !roAect )or in%tance might not .ork .ith
*ean" at the moment.
!o&&ands
Conte;t action
-et thi% to a comman& to e;ec'te on the c'rrent .or&. 5o' can '%e the KJ%K .il&car& to !a%% the c'rrent
.or& (elo. the c'r%or to the %!eci)ie& comman&.
Te&*late ta$ in *referen#es dialog
Thi% &ata i% '%e& a% meta &ata )or vario'% tem!late te;t to in%ert into a &oc'ment0 %'ch a% the )ile hea&er. 5o'
onl" nee& to %et )iel&% that "o' .ant to '%e in "o'r tem!late )ile%.
Note
For change% ma&e here to take e))ect a re%tart o) gean" i% re9'ire&.
Te&*late data
7evelo!er
The name o) the &evelo!er .ho .ill (e creating )ile%.
6nitial%
The initial% o) the &evelo!er.
ail a&&re%%
The email a&&re%% o) the &evelo!er.
Note
5o' ma" .i%h to a&& anti-%!am mark'!0 e.g. nameXatB%iteX&otBe;t.
Com!an"
The com!an" the &evelo!er i% .orking )or.
6nitial ver%ion
The initial ver%ion o) )ile% "o' .ill (e creating.
5ear
-!eci)" a )ormat )or the the U"earV .il&car&. 5o' can '%e an" conver%ion %!eci)ier% .hich can (e '%e& .ith
the 3N-6 C %tr)time )'nction. For &etail% !lea%e %ee htt!:<<man.c;<%tr)time.
7ate
-!eci)" a )ormat )or the the U&ateV .il&car&. 5o' can '%e an" conver%ion %!eci)ier% .hich can (e '%e& .ith
the 3N-6 C %tr)time )'nction. For &etail% !lea%e %ee htt!:<<man.c;<%tr)time.
7ate Z Time
-!eci)" a )ormat )or the the U&atetimeV .il&car&. 5o' can '%e an" conver%ion %!eci)ier% .hich can (e '%e&
.ith the 3N-6 C %tr)time )'nction. For &etail% !lea%e %ee htt!:<<man.c;<%tr)time.
Key$inding ta$ in *referen#es dialog
There are %ome han&" comman&% in here that are not0 (" &e)a'lt0 (o'n& to a ke" com(ination0 an& ma" not (e
availa(le a% a men' item.
Note
For more in)ormation %ee the %ection calle& 8e"(in&ing%.
Printing ta$ in *referen#es dialog
+%e e;ternal comman& )or !rinting
+%e a %"%tem comman& to !rint "o'r )ile o't.
+%e native *T8 !rinting
Let the *T8 *+6 toolkit han&le "o'r !rint re9'e%t.
,rint line n'm(er%
,rint the line n'm(er% on the le)t o) "o'r !a!er.
,rint !age n'm(er
,rint the !age n'm(er on the (ottom right o) "o'r !a!er.
,rint !age hea&er
,rint a hea&er on ever" !age that i% %ent to the !rinter.
+%e (a%e name o) the !rinte& )ile
7onHt '%e the entire !ath )or the hea&er0 onl" the )ilename.
7ate )ormat
>o. the &ate %ho'l& (e !rinte&. 5o' can '%e the %ame )ormat %!eci)ier% a% in the 3N-6 C )'nction
%tr)time12. For &etail% !lea%e %ee htt!:<<man.c;<%tr)time.
Ter&inal 1"TE2 ta$ in *referen#es dialog
-ee al%o: Nirt'al terminal em'lator .i&get 1NTE2.
Ter&inal 0idget
Terminal )ont
-elect the )ont that .ill (e '%e& in the terminal em'lation control.
Foregro'n& color
-elect the )ont color.
@ackgro'n& color
-elect the (ackgro'n& color o) the terminal.
-croll(ack line%
The n'm(er o) line% ('))ere& %o that "o' can %croll tho'gh the hi%tor".
-hell
The location o) the %hell on "o'r %"%tem.
-croll on ke"%troke
-croll the terminal to the !rom!t line .hen !re%%ing a ke".
-croll on o't!'t
-croll the o't!'t &o.n.
C'r%or (link%
Let the terminal c'r%or (link.
4verri&e *ean" ke"(in&ing%
3llo. the NTE to receive ke"(oar& %hortc't% 1a!art )rom )oc'% comman&%2.
7i%a(le men' %hortc't ke" 1F10 (" &e)a'lt2
7i%a(le the men' %hortc't .hen "o' are in the virt'al terminal.
Follo. !ath o) the c'rrent )ile
ake the !ath o) the terminal change accor&ing to the !ath o) the c'rrent )ile.
E;ec'te !rogram% in NTE
E;ec'te !rogram% in the virt'al terminal in%tea& o) '%ing the e;ternal terminal tool.
7onHt '%e r'n %cri!t
7onHt '%e the %im!le r'n %cri!t .hich i% '%'all" '%e& to &i%!la" the e;it %tat'% o) the e;ec'te& !rogram.
Thi% can (e '%e)'l i) "o' alrea&" have a !rogram r'nning in the NTE like a ,"thon con%ole 1e.g. i!"thon2.
+%e thi% .ith care.
Pro9e#t Manage&ent
,roAect anagement i% o!tional in *ean". C'rrentl" it can (e '%e& )or:
-toring an& o!ening %e%%ion )ile% on a !roAect (a%i%.
G'nning ake )rom the !roAectH% (a%e &irector".
-etting a c'%tom G'n comman& %!eci)ic to the !roAect.
3 li%t o) %e%%ion )ile% can (e %tore& an& o!ene& .ith the !roAect .hen the +%e !roAect-(a%e& %e%%ion )ile%
!re)erence i% ena(le&0 in the ,roAect gro'! o) the ,re)erence% &ialog.
3% long a% a !roAect i% o!en0 the ake an& G'n comman&% .ill '%e the !roAectH% %etting%0 in%tea& o) the &e)a'lt%.
The%e .ill (e '%e& .hichever &oc'ment i% c'rrentl" &i%!la"e&.
The c'rrent !roAectH% %etting% are %ave& .hen it i% clo%e&0 or .hen *ean" i% %h't&o.n. Dhen re%tarting *ean"0
the !revio'%l" o!ene& !roAect )ile that .a% in '%e at the en& o) the la%t %e%%ion .ill (e reo!ene&.
@elo. are the comman&% '%e& to create0 mo&i)"0 o!en an& clo%e !roAect%.
Ne0 Pro9e#t
To create a ne. !roAect0 )ill in the Name )iel&. @" &e)a'lt thi% .ill %et'! a ne. !roAect )ile F<!roAect%<name.gean".
+%'all" itH% (e%t to %tore all "o'r !roAect )ile% in the %ame &irector" 1the" are in&e!en&ent o) an" %o'rce &irector"
tree%2.
The @a%e !ath te;t )iel& i% %et'! to '%e F<!roAect%<name. Thi% can %a)el" (e %et to an" e;i%ting !ath -- it .ill not
to'ch the )ile %tr'ct're containe& in it.
Pro9e#t Pro*erties
5o' can %et an o!tional &e%cri!tion )or the !roAect0 ('t it i% not '%e& el%e.here (" *ean".
The @a%e !ath )iel& i% '%e& a% the &irector" to r'n the ake an& ake c'%tom comman&% in. 6t i% al%o '%e& a%
.orking &irector" )or the !roAect %!eci)ic G'n comman&. The %!eci)ie& !ath can (e an a(%ol'te !ath or relative to
the !roAectH% )ile name.
Ma+e in $ase *ath
Thi% %etting make% the @'il&-Bake comman& '%e the !roAectH% (a%e !ath. +ncheck thi% i) "o' .ant to '%e the
c'rrent )ileH% &irector" in%tea&.
'un #o&&and
The G'n comman& overri&e% the &e)a'lt r'n comman&. 5o' can %et thi% to the e;ec'ta(le or main %cri!t )ile )or
the !roAect0 an& a!!en& an" comman&-line arg'ment%.
The )ollo.ing varia(le% can (e '%e&:
J) -- com!lete )ilename .itho't !ath
Je -- )ilename .itho't !ath an& .itho't e;ten%ion
-ee P('il&M%etting%Q -ection )or &etail%.
.*en Pro9e#t
The 4!en comman& &i%!la"% a %tan&ar& )ile choo%er0 %tarting in F<!roAect%. Choo%e a !roAect )ile name& .ith the
.gean" e;ten%ion.
Dhen !roAect %e%%ion %'!!ort i% ena(le&0 *ean" .ill clo%e the c'rrentl" o!en )ile% an& o!en the %e%%ion )ile%
a%%ociate& .ith the !roAect.
!lose Pro9e#t
,roAect )ile %etting% are %ave& .hen the !roAect i% clo%e&.
Dhen !roAect %e%%ion %'!!ort i% ena(le&0 *ean" .ill clo%e the !roAect %e%%ion )ile% an& o!en an" !revio'%l"
clo%e& &e)a'lt %e%%ion )ile%.
)uild syste&
*ean" ha% an integrate& ('il& %"%tem. Fir%tl" thi% mean% that the c'rrent %o'rce )ile .ill (e %ave& (e)ore it i%
!roce%%e&. Thi% i% )or convenience %o that "o' &onHt nee& to kee! %aving %mall change% to the c'rrent )ile (e)ore
('il&ing.
-econ&l" the o't!'t )or Com!ile0 @'il& an& ake action% .ill (e ca!t're& in the Com!iler note(ook ta( o) the
me%%age% .in&o.. 6) there are an" .arning% or error% .ith line n'm(er% %ho.n in re& in the Com!iler o't!'t
ta(0 "o' can click on them an& *ean" .ill %.itch to the relevant %o'rce )ile 1or o!en it2 an& mark the line n'm(er
%o the !ro(lem can (e correcte&. *ean" .ill al%o %et in&icator% )or .arning% or error% .ith line n'm(er%.
Ti*
6) *ean"H% &e)a'lt error me%%age !ar%ing &oe% not !ar%e error% )or the tool "o'Hre '%ing0 "o' can %et a c'%tom
rege;. -ee Filet"!e &e)inition )ile% an& the P('il&M%etting%Q -ection.
7e!en&ing on the c'rrent )ileH% )ilet"!e0 the @'il& men' .ill contain the )ollo.ing item%:
Com!ile
@'il&
ake 3ll
ake C'%tom Target
ake 4(Aect
E;ec'te
-et 6ncl'&e% an& 3rg'ment%
!o&*ile
The Com!ile comman& ha% &i))erent '%e% )or &i))erent kin&% o) )ile%.
For com!ila(le lang'age% %'ch a% C an& CEE0 the Com!ile comman& i% %et'! to com!ile the c'rrent %o'rce )ile
into a (inar" o(Aect )ile.
?ava %o'rce )ile% .ill (e com!ile& to cla%% )ile ("teco&e. 6nter!rete& lang'age% %'ch a% ,erl0 ,"thon0 G'(" .ill
com!ile to ("teco&e i) the lang'age %'!!ort% it0 or .ill r'n a %"nta; check0 or )ailing that .ill r'n the )ile in it%
lang'age inter!reter.
)uild
For com!ila(le lang'age% %'ch a% C an& CEE0 the @'il& comman& .ill link the c'rrent %o'rce )ileH% e9'ivalent
o(Aect )ile into an e;ec'ta(le. 6) the o(Aect )ile &oe% not e;i%t0 the %o'rce .ill (e com!ile& an& linke& in one %te!0
!ro&'cing A'%t the e;ec'ta(le (inar".
6nter!rete& lang'age% &o not '%e the @'il& comman&.
Ma+e all
Thi% e))ectivel" r'n% Kmake allK in the %ame &irector" a% the c'rrent )ile.
Note
For each o) the ake comman&%0 The ake tool !ath m'%t (e correctl" %et in the Tool% ta( o) the ,re)erence%
&ialog.
Ma+e #usto& target
Thi% i% %imilar to r'nning Hake allH ('t "o' .ill (e !rom!te& )or the make target name to (e !a%%e& to the ake
tool. For e;am!le0 t"!ing HcleanH in the &ialog !rom!t .ill r'n Kmake cleanK.
Ma+e o$9e#t
ake o(Aect .ill r'n Kmake c'rrentM)ile.oK in the %ame &irector" a% the c'rrent )ile0 '%ing it% !re)i; )or
Hc'rrentM)ileH. 6t i% '%e)'l )or com!iling A'%t the c'rrent )ile .itho't ('il&ing the .hole !roAect.
E-e#ute
E;ec'te .ill r'n the corre%!on&ing e;ec'ta(le )ile0 %hell %cri!t or inter!rete& %cri!t in a terminal .in&o.. Note
that the Terminal tool !ath m'%t (e correctl" %et in the Tool% ta( o) the ,re)erence% &ialog - "o' can '%e an"
terminal !rogram that r'n% a @o'rne com!ati(le %hell an& acce!t the K-eK comman& line arg'ment to %tart a
comman&.
3)ter "o'r !rogram or %cri!t ha% )ini%he& e;ec'ting0 "o' .ill (e !rom!te& to !re%% the ret'rn ke". Thi% allo.% "o'
to revie. an" te;t o't!'t )rom the !rogram (e)ore the terminal .in&o. i% clo%e&.
,to**ing running *ro#esses
Dhen there i% a r'nning !rogram0 the G'n ('tton in the tool(ar (ecome% a %to! ('tton an& "o' can %to! the
c'rrent action. Thi% .ork% (" %en&ing a %ignal to the !roce%% 1an& it% chil& !roce%%1e%22 to %to! the !roce%%. The
'%e& %ignal i% -6*^+6T.
7e!en&ing on the !roce%% "o' %tarte& it might occ'r that the !roce%% cannot (e %to!!e&. Thi% can ha!!en .hen
the !roce%% create% more than one chil& !roce%%.
Ter&inal e&ulators
=term i% kno.n to .ork !ro!erl". 6) "o' are '%ing KTerminalK 1the terminal !rogram o) =)ce20 "o' %ho'l& a&& the
comman& line o!tion --&i%a(le-%erver other.i%e the %tarte& !roce%% cannot (e %to!!e&. ?'%t a&& thi% o!tion in
the !re)erence% &ialog on the Tool% ta( in the terminal )iel&.
,et In#ludes and Argu&ents
@" &e)a'lt the Com!ile an& @'il& comman&% invoke the com!iler an& linker .ith onl" the (a%ic arg'ment%
nee&e& (" all !rogram%. +%ing -et 6ncl'&e% an& 3rg'ment% "o' can a&& an" incl'&e !ath% an& com!ile )lag% )or
the com!iler0 an" li(rar" name% an& !ath% )or the linker0 an& an" arg'ment% "o' .ant to '%e .hen r'nning
E;ec'te.
Note
6) "o' nee& com!le; %etting% )or "o'r ('il& %"%tem0 or %everal &i))erent %etting%0 then .riting a ake)ile an& '%ing
the ake comman&% i% recommen&e&/ thi% .ill al%o make it ea%ier )or '%er% to ('il& "o'r %o)t.are.
The%e %etting% are %ave& a'tomaticall" .hen *ean" i% %h't &o.n.
The )ollo.ing varia(le% can (e '%e&:
J) -- com!lete )ilename .itho't !ath
Je -- )ilename .itho't !ath an& .itho't e;ten%ion
-ee P('il&M%etting%Q -ection )or &etail%.
.ne ste* #o&*ilation
6) "o' are '%ing the @'il& comman& to com!ile an& link in one %te!0 "o' .ill nee& to %et (oth the com!iler
arg'ment% an& the linker arg'ment% in the linker comman& %etting.
Indi#ators
6n&icator% are re& %9'iggl" 'n&erline% .hich are '%e& to highlight error% .hich occ'rre& .hile com!iling the
c'rrent )ile. -o "o' can ea%il" %ee .here "o'r co&e )aile& to com!ile. To remove the in&icator%0 A'%t click on
KGemove all in&icator%K in the &oc'ment )ile men'.
6) "o' &o not like thi% )eat're0 "o' can &i%a(le it in the !re)erence% &ialog.
Printing su**ort
-ince *ean" 0.1Y there i% )'ll !rinting %'!!ort '%ing *T8H% !rinting 3,6. The !rinte& !age1%2 .ill look nearl" the
%ame a% on "o'r %creen in *ean". 3&&itionall"0 there are %ome o!tion% to mo&i)" the !rinte& !age1%2. 5o' can
&e)ine .hether to !rint line n'm(er%0 !age n'm(er% at the (ottom o) each !age an& .hether to !rint a !age
hea&er on each !age. Thi% hea&er contain% the )ilename o) the !rinte& &oc'ment0 the c'rrent !age n'm(er an&
the &ate an& time o) !rinting. @" &e)a'lt0 the )ile name o) the &oc'ment i% a&&e& .ith )'ll !ath in)ormation to the
hea&er. 6) "o' !re)er to a&& onl" the (a%ename o) the )ile1.itho't an" !ath in)ormation2 "o' can %et it in the
!re)erence% &ialog. 5o' can al%o a&A'%t the )ormat o) the &ate an& time a&&e& to the !age hea&er. The availa(le
conver%ion %!eci)ier% are the %ame a% the one% .hich can (e '%e& .ith the 3N-6 C %tr)time )'nction. 3ll o) the%e
%etting% can al%o (e change& in the !rint &ialog A'%t (e)ore act'al !rinting i% &one. 4n +ni;-like %"%tem% the
!rovi&e& !rint &ialog o))er% a !rint !revie.. The !revie. )ile i% o!ene& .ith a ,7F vie.er an& (" &e)a'lt *T8 '%e%
evince )or !rint !revie.. 6) "o' &onHt have in%talle& evince or A'%t .ant to '%e another ,7F vie.er0 "o' can
change the !rogram to '%e in the )ile .gtkrc-2.0 1'%'all" )o'n& in "o'r home &irector"2. -im!l" a&& a line like:
g'-prin-preview-command = "epdfview %f"
at the en& o) the )ile. 4) co'r%e0 "o' can al%o '%e ;!&)0 k!&) or .hatever a% the !rint !revie. comman&.
+n)ort'natel"0 native *T8 !rinting %'!!ort i% onl" availa(le i) *ean" .a% ('ilt again%t *T8 2.10 1or a(ove2 and i%
r'nning .ith *T8 2.10 1or a(ove2. 6) not0 *ean" !rovi&e% (a%ic !rinting %'!!ort. Thi% mean% "o' can !rint a )ile ("
!a%%ing the )ilename o) the c'rrent )ile to a comman& .hich act'all" !rint% the )ile. >o.ever0 the !rinte&
&oc'ment contain% no %"nta; highlighting. 5o' can a&A'%t the comman& to .hich the )ilename i% !a%%e& in the
!re)erence% &ialog. The &e)a'lt comman& i%:
% 1pr %f
J) .ill (e %'(%tit'te& (" the )ilename o) the c'rrent )ile. *ean" .ill not %ho. error% )rom the comman& it%el)0 %o
"o' %ho'l& make %'re that it .ork% (e)ore1e.g. (" tr"ing to e;ec'te it )rom the comman& line2.
3 nicer e;am!le0 .hich 6 !re)er i%:
% a2ps -1 --medium=A4 -o - %f | xfprin4
@'t thi% &e!en&% on a2!% an& ;)!rintI. 3% a re!lacement )or ;)!rintI0 gtkl! or %imilar !rogram% can (e '%e&.
Plugins
,l'gin% are loa&e& at %tart'!0 i) the Ena(le !l'gin %'!!ort general !re)erence i% %et. There i% al%o a comman&-line
o!tion0 -!0 .hich !revent% !l'gin% (eing loa&e&. ,l'gin% are %canne& in the )ollo.ing &irectorie%:
$prefix/1ib/geany 1%ee 6n%tallation !re)i;2
~/.config/geany/p1ugins
o%t !l'gin% a&& men' item% to the Tool% men' .hen the" are loa&e&.
-ince *ean" 0.1Y0 there i% a ,l'gin anager to let "o' choo%e .hich !l'gin% %ho'l& (e loa&e& at %tart'!. 5o' can
al%o loa& an& 'nloa& !l'gin% on the )l" '%ing thi% &ialog. 4nce "o' click the check(o; )or a %!eci)ic !l'gin in the
&ialog0 it i% loa&e& or 'nloa&e& accor&ing to it% !revio'% %tate. @" &e)a'lt0 no !l'gin% are loa&e& at %tart'! 'ntil
"o' %elect %ome. 5o' can al%o con)ig're %ome !l'gin %!eci)ic o!tion% .hen the !l'gin !rovi&e% %ome.
-ee al%o ,l'gin &oc'mentation )or in)ormation a(o't %ingle !l'gin% .hich are incl'&e& in *ean".
Key$indings
*ean" %'!!ort% the &e)a'lt ke"(oar& %hortc't% )or the -cintilla e&iting .i&get. For a li%t o) the%e comman&%0 %ee
-cintilla ke"(oar& comman&%. The -cintilla ke"(oar& %hortc't% .ill (e overri&&en (" an" c'%tom ke"(in&ing% .ith
the %ame ke"(oar& %hortc't.
,0it#hing do#u&ents
There are a )e. non-con)ig'ra(le (in&ing% to %.itch (et.een &oc'ment%0 li%te& (elo.. The%e can al%o (e
overri&&en (" c'%tom ke"(in&ing%.
Key A#tion
3lt-P1-9Q -elect le)t-mo%t ta(0 )rom 1 to 9.
3lt-0 -elect right-mo%t ta(.
Ctrl--hi)t-,g+! -elect le)t-mo%t ta(.
Ctrl--hi)t-,g7n -elect right-mo%t ta(.
!onfigura$le +ey$indings
For all action% li%te& (elo. "o' can &e)ine "o'r o.n ke"(in&ing%. 4!en the ,re)erence% &ialog0 %elect the &e%ire&
action an& click on change. 6n the o!ening &ialog "o' can !re%% an" ke" com(ination "o' .ant an& it .ill (e
%ave& .hen "o' !re%% 48. 5o' can &e)ine onl" one ke" com(ination )or one action.
-ome o) the &e)a'lt ke" com(ination% cannot (e change&0 e.g. men'Mne. or men'Mo!en. The%e are %et (" *T8
an& %ho'l& (e ke!t0 ('t "o' can %till a&& other ke" com(ination% )or the%e action%. For e;am!le to e;ec'te
men'Mo!en (" &e)a'lt Ctrl-4 i% %et0 ('t "o' can al%o &e)ine 3lt-40 %o that the )ile o!en &ialog i% %ho.n ("
!re%%ing either Ctrl-4 or 3lt-4.
The )ollo.ing ta(le li%t% all c'%tomiza(le ke"(oar& %hortc't%.
A#tion
Default
short#ut Des#ri*tion
File
Ne. Ctrl-N Create% a ne. )ile.
4!en Ctrl-4 4!en% a )ile.
-ave Ctrl-- -ave% the c'rrent )ile.
-ave 3% -ave% the c'rrent )ile 'n&er a ne. name.
-ave all Ctrl--hi)t-- -ave% all o!en )ile%.
Clo%e all Ctrl--hi)t-D Clo%e% all o!en )ile%.
Clo%e Ctrl-D Clo%e% the c'rrent )ile.
Geloa& )ile Ctrl-G Geloa&% the c'rrent )ile. 3ll 'n%ave& change% .ill (e lo%t.
,rint Ctrl-, ,rint% the c'rrent )ile.
Editor
+n&o Ctrl-\ +n-&oe% the la%t action.
Ge&o Ctrl-5 Ge-&oe% the la%t action.
7elete c'rrent
line1%2
Ctrl-8 7elete% the c'rrent line 1an& an" line% .ith a %election2.
7elete to line
en&
Ctrl--hi)t-
7elete
7elete% )rom the c'rrent caret !o%ition to the en& o) the c'rrent line.
7'!licate line
or %election
Ctrl-7 7'!licate% the c'rrent line or %election.
Tran%!o%e
c'rrent line
Ctrl-T Tran%!o%e% the c'rrent line .ith the !revio'% one.
-croll to
c'rrent line
Ctrl--hi)t-L -croll% the c'rrent line into the centre o) the vie.. The c'r%or !o%ition
an& or an e;i%ting %election .ill not (e change&.
-croll '! ("
one line
3lt-+! -croll% the vie..
-croll &o.n ("
one line
3lt-7o.n -croll% the vie..
Com!lete .or& Ctrl--!ace -ho.% the a'tocom!letion li%t. 6) alrea&" %ho.ing tag com!letion0 it
%ho.% &oc'ment .or& com!letion in%tea&0 even i) it i% not ena(le& )or
A#tion
Default
short#ut Des#ri*tion
a'tomatic com!letion. Like.i%e i) no tag %'gge%tion% are availa(le0 it
%ho.% &oc'ment .or& com!letion.
-ho. callti! Ctrl--hi)t-
-!ace
-ho.% call ti!% )or the c'rrent )'nction or metho&.
-ho. macro
li%t
Ctrl-Get'rn -ho.% a li%t o) availa(le macro% an& varia(le% in the .ork%!ace.
Com!lete
%ni!!et
Ta( 6) "o' t"!e a con%tr'ct like i) or )or an& !re%% thi% ke"0 it .ill (e
com!lete& .ith a matching tem!late.
-'!!re%%
%ni!!et
com!letion
6) "o' t"!e a con%tr'ct like i) or )or an& !re%% thi% ke"0 it .ill not (e
com!lete&0 an& a %!ace or ta( .ill (e in%erte&0 &e!en&ing on .hat the
con%tr'ct com!letion ke"(in&ing i% %et to. For e;am!le0 i) "o' have %et
the con%tr'ct com!letion ke"(in&ing to %!ace0 then %etting thi% to
-hi)tE%!ace .ill !revent con%tr'ct com!letion an& in%ert a %!ace.
Conte;t 3ction E;ec'te% a comman& an& !a%%e% the c'rrent .or& 1near the c'r%or
!o%ition2 or %election a% an arg'ment. -ee the %ection calle& Conte;t
action%.
ove c'r%or in
%ni!!et
?'m!% to the ne;t &e)ine& c'r%or !o%ition% in a com!lete& %ni!!et% i)
m'lti!le c'r%or !o%ition% .here &e)ine&.
!li*$oard
C't Ctrl-= C't the c'rrent %election to the cli!(oar&.
Co!" Ctrl-C Co!" the c'rrent %election to the cli!(oar&.
,a%te Ctrl-N ,a%te the cli!(oar& te;t into the c'rrent &oc'ment.
C't c'rrent
line1%2
Ctrl--hi)t-= C't% the c'rrent line 1an& an" line% .ith a %election2 to the cli!(oar&.
Co!" c'rrent
line1%2
Ctrl--hi)t-C Co!ie% the c'rrent line 1an& an" line% .ith a %election2 to the cli!(oar&.
,ele#t
-elect all Ctrl-3 ake% a %election o) all te;t in the c'rrent &oc'ment.
-elect c'rrent
.or&
3lt--hi)t-D -elect% the c'rrent .or& 'n&er the c'r%or.
-elect c'rrent
!aragra!h
3lt--hi)t-, -elect% the c'rrent !aragra!h 'n&er the c'r%or .hich i% &e)ine& (" t.o
em!t" line% aro'n& it.
-elect c'rrent
line1%2
3lt--hi)t-L -elect% the c'rrent line 'n&er the c'r%or 1an& an" !artiall" %electe&
A#tion
Default
short#ut Des#ri*tion
line%2.
Insert
6n%ert &ate -hi)t-3lt-7 6n%ert% a c'%tomi%a(le &ate.
6n%ert
alternative
.hite%!ace
6n%ert% a ta( character .hen %!ace% %ho'l& (e '%e& )or in&entation an&
in%ert% %!ace character% o) the amo'nt o) a ta( .i&th .hen ta(% %ho'l&
(e '%e& )or in&entation.
For&at
Toggle ca%e o)
%election
Ctrl-3lt-+ Change% the ca%e o) the %election. 3 lo.erca%e %election .ill (e change&
into '!!erca%e an& vice ver%a. 6) the %election contain% lo.er- an&
'!!erca%e character%0 all .ill (e converte& to lo.erca%e.
Comment line Comment% c'rrent line or %election.
+ncomment
line
+ncomment% c'rrent line or %election.
Toggle line
commentation
Ctrl-E Comment% a line i) it i% not commente& or remove% a comment i) the line
i% commente&.
6ncrea%e in&ent Ctrl-6 6n&ent% the c'rrent line or %election (" one ta( or (" %!ace% in the
amo'nt o) the ta( .i&th %etting.
7ecrea%e
in&ent
Ctrl-+ Gemove% one ta( or the amo'nt o) %!ace% o) the ta( .i&th %etting )rom
the in&entation o) the c'rrent line or %election.
6ncrea%e in&ent
(" one %!ace
6n&ent% the c'rrent line or %election (" one %!ace.
7ecrea%e
in&ent (" one
%!ace
7ein&ent% the c'rrent line or %election (" one %!ace.
-mart line
in&ent
6n&ent% the c'rrent line or all %electe& line% .ith the %ame in&entation a%
the !revio'% line.
-en& to
C'%tom
Comman& 1
120Y2
Ctrl-1 120Y2 ,a%%e% the c'rrent %election to a con)ig're& e;ternal comman& 1availa(le
)or the )ir%t three con)ig're& comman&%0 %ee -en& te;t thro'gh &e)ina(le
comman&% )or &etail%2.
-en& -election
to Terminal
-en&% the c'rrent %election or the c'rrent line 1i) there i% no %election2 to
the em(e&&e& Terminal 1NTE2.
A#tion
Default
short#ut Des#ri*tion
Ge)lo.
line%<!aragra!
h
Ge)ormat %electe& line% or c'rrent !aragra!h0 (reaking line% at the long
line marker.
,ettings
,re)erence% Ctrl-3lt-, 4!en% !re)erence% &ialog.
,ear#h
Fin& Ctrl-F 4!en% the Fin& &ialog.
Fin& Ne;t Ctrl-* Fin&% ne;t re%'lt.
Fin& ,revio'% Ctrl--hi)t-* Fin&% !revio'% re%'lt.
Ge!lace Ctrl-> 4!en% the Ge!lace &ialog.
Fin& in )ile% Ctrl--hi)t-F 4!en% the Fin& in )ile% &ialog.
Ne;t me%%age ?'m!% to the line .ith the ne;t me%%age in the e%%age% .in&o..
,revio'%
me%%age
?'m!% to the line .ith the !revio'% me%%age in the e%%age% .in&o..
Fin& +%age Fin&% all occ'rrence% o) the c'rrent .or& 1near the ke"(oar& c'r%or2 or
%election in all o!en &oc'ment% an& &i%!la"% them in the me%%age%
.in&o..
Fin& 7oc'ment
+%age
Fin&% all occ'rrence% o) the c'rrent .or& 1near the ke"(oar& c'r%or2 or
%election in the c'rrent &oc'ment an& &i%!la"% them in the me%%age%
.in&o..
Go to
Navigate
)or.ar& a
location
-.itche% to the ne;t location in the navigation hi%tor". -ee the %ection
calle& Co&e Navigation >i%tor".
Navigate (ack
a location
-.itche% to the !revio'% location in the navigation hi%tor". -ee the
%ection calle& Co&e Navigation >i%tor".
*o to line Ctrl-L 4!en% the *o to line &ialog.
*oto matching
(race
Ctrl-@ 6) the c'r%or i% ahea& or (ehin& a (race0 then it i% move& to the (race
.hich (elong% to the c'rrent one. 6) thi% ke"(oar& %hortc't i% !re%%e&
again0 the c'r%or i% move& (ack to the )ir%t (race.
Toggle marker Ctrl- -et a marker on the c'rrent line0 or clear the marker i) there alrea&" i%
A#tion
Default
short#ut Des#ri*tion
one.
*oto ne;t
marker
Ctrl-. *oto the ne;t marker in the c'rrent &oc'ment.
*oto !revio'%
marker
Ctrl-0 *oto the !revio'% marker in the c'rrent &oc'ment.
*o to tag
&e)inition
?'m! to the &e)inition o) the c'rrent .or& 1near the ke"(oar& c'r%or2. 6)
the &e)inition cannot (e )o'n& 1e.g. the relevant )ile i% not o!en2 *ean"
.ill (ee! an& &o nothing. -ee the %ection calle& *o to tag &e)inition.
*o to tag
&eclaration
?'m! to the &eclaration o) the c'rrent .or& 1near the ke"(oar& c'r%or2.
6) the &eclaration cannot (e )o'n& 1e.g. the relevant )ile i% not o!en2
*ean" .ill (ee! an& &o nothing. -ee the %ection calle& *o to tag
&eclaration.
*o to -tart o)
Line
>ome ove the caret to the en& o) the line in&entation 'nle%% it i% alrea&"
there0 in .hich ca%e it move% it to the %tart o) the line.
*o to En& o)
Line
En& ove the caret to the en& o) the line.
*o to En& o)
7i%!la" Line
3lt-En& ove the caret to the en& o) the &i%!la" line. Thi% i% '%e)'l .hen "o' '%e
line .ra!!ing an& .ant to A'm! to the en& o) the .ra!!e&0 virt'al line0
not the real en& o) the .hole line. 6) the line i% not .ra!!e&0 it (ehave%
like *o to En& o) Line0 %ee a(ove.
*o to ,revio'%
Dor& ,art
Ctrl-< *oto the !revio'% !art o) the c'rrent .or&.
*o to Ne;t
Dor& ,art
Ctrl- *oto the ne;t !art o) the c'rrent .or&.
"ie0
F'll%creen F11 -.itche% to )'ll%creen mo&e.
Toggle
e%%age%
Din&o.
Toggle% the me%%age .in&o. 1%tat'% an& com!iler me%%age%2 on an& o)).
Toggle -i&e(ar -ho.% or hi&e% the %i&e(ar.
Toggle all
a&&itional
.i&get%
>i&e an& %ho. all a&&itional .i&get% like the note(ook ta(%0 the tool(ar0
the me%%age% .in&o. an& the %tat'%(ar.
\oom 6n Ctrl-E \oom% in the te;t
A#tion
Default
short#ut Des#ri*tion
\oom 4't Ctrl-- \oom% o't the te;t
Fo#us
-.itch to
E&itor
F2 -.itche% to e&itor .i&get.
-.itch to
-cri((le
F6 -.itche% to %cri((le .i&get.
-.itch to NTE FI -.itche% to NTE .i&get.
-.itch to
-earch @ar
FL -.itche% to the %earch (ar in the tool(ar 1i) vi%i(le2.
-.itch to
-i&e(ar
Foc'% the -i&e(ar.
-.itch to
Com!iler
Foc'% the Com!iler me%%age .in&o. ta(.
Note$oo+
ta$s

-.itch to le)t
&oc'ment
Ctrl-,age+! -.itche% to the !revio'% o!en &oc'ment.
-.itch to right
&oc'ment
Ctrl-
,age7o.n
-.itche% to the ne;t o!en &oc'ment.
-.itch to la%t
'%e& &oc'ment
Ctrl-Ta( -.itche% to the !revio'%l" %ho.n &oc'ment 1i) itH% %till o!en2. >ol&ing Ctrl
1or another mo&i)ier i) the ke"(in&ing ha% (een change&2 .ill %ho. a
&ialog0 then re!eate& !re%%e% o) the ke"(in&ing .ill %.itch to the 2n&-la%t
'%e& &oc'ment0 Yr&-la%t0 etc. 3l%o kno.n a% o%t-Gecentl"-+%e&
&oc'ment% %.itching.
ove
&oc'ment le)t
3lt-,age+! Change% the c'rrent &oc'ment .ith the le)t han& one.
ove
&oc'ment right
3lt-
,age7o.n
Change% the c'rrent &oc'ment .ith the right han& one.
ove
&oc'ment )ir%t
ove% the c'rrent &oc'ment to the )ir%t !o%ition.
ove
&oc'ment la%t
ove% the c'rrent &oc'ment to the la%t !o%ition.
Do#u&ent
A#tion
Default
short#ut Des#ri*tion
Ge!lace ta(% ("
%!ace
Ge!lace% all ta(% .ith the right amo'nt o) %!ace%.
Ge!lace %!ace%
(" ta(%
Ge!lace% all %!ace% .ith ta( character%.
Toggle c'rrent
)ol&
Toggle% the )ol&ing %tate o) the c'rrent co&e (lock.
Fol& all Fol&% all contracti(le co&e (lock%.
+n)ol& all +n)ol&% all contracte& co&e (lock%.
Geloa& %"m(ol
li%t
Ctrl--hi)t-G Geloa&% the tag<%"m(ol li%t.
Toggle Line
.ra!!ing
Ena(le% or &i%a(le% .ra!!ing o) long line%.
Toggle Line
(reaking
Ena(le% or &i%a(le% a'tomatic (reaking o) long line% at a con)ig'ra(le
col'mn.
)uild
Com!ile F8 Com!ile% the c'rrent )ile.
@'il& F9 @'il&% 1com!ile% i) nece%%ar" an& link%2 the c'rrent )ile.
ake all -hi)t-F9 @'il&% the c'rrent )ile .ith the ake tool.
ake c'%tom
target
Ctrl--hi)t-F9 @'il&% the c'rrent )ile .ith the ake tool an& a given target.
ake o(Aect Com!ile% the c'rrent )ile .ith the ake tool.
Ne;t error ?'m!% to the line .ith the ne;t error )rom the la%t ('il& !roce%%.
,revio'% error ?'m!% to the line .ith the !revio'% error )rom the la%t ('il& !roce%%.
G'n F$ E;ec'te% the c'rrent )ile in a terminal em'lation.
G'n
1alternative
comman&2
E;ec'te% the c'rrent )ile in a terminal em'lation.
@'il& o!tion% 4!en% the ('il& o!tion% &ialog.
Tools
A#tion
Default
short#ut Des#ri*tion
-ho. Color
Choo%er
4!en% the Color Choo%er &ialog.
8el*
>el! F1 4!en% the man'al.
!onfiguration files
Glo$al #onfiguration file
5o' can '%e a glo(al con)ig'ration )ile )or *ean" .hich .ill (e '%e& i) the '%er %tart% *ean" )or the )ir%t time an&
an '%erH% con)ig'ration )ile .a% not "et create& or in ca%e an '%er &elete& the con)ig'ration )ile to '%e &e)a'lt
val'e%.
The glo(al con)ig'ration )ile i% rea& )rom W!re)i;<%hare<gean"<gean".con) 1.here W!re)i; i% the !ath .here *ean"
i% in%talle&0 %ee 6n%tallation !re)i;2 .hen %tarting *ean" an& an '%er con)ig'ration )ile &oe% not e;i%t. 6t can
contain an" %etting% .hich are )o'n& in the '%'al con)ig'ration )ile create& (" *ean" ('t &oe% not have to
contain all %etting%.
Note
Thi% )eat're i% mainl" inten&e& )or !ackage maintainer% or %"%tem a&min% .ho .ant to %et '! *ean" in a m'lti
'%er environment an& %et %ome %ane &e)a'lt val'e% )or thi% environment. +%'al '%er% .onHt nee& to &o that.
Filety*e definition files
3ll color &e)inition% an& other )ilet"!e %!eci)ic %etting% are %tore& in the )ilet"!e &e)inition )ile%. Tho%e %etting% are
color% )or %"nta; highlighting0 general %etting% like comment character% or .or& &elimiter character% a% .ell a%
com!iler an& linker %etting%.
The %"%tem-.i&e con)ig'ration )ile% can (e )o'n& in W!re)i;<%hare<gean" an& are calle& )ilet"!e%.We;t0 .here
W!re)i; i% the !ath .here *ean" i% in%talle& 1%ee 6n%tallation !re)i;2 an& We;t i% the name o) the )ilet"!e. For ever"
)ilet"!e there i% a corre%!on&ing &e)inition )ile. There i% one e;ce!tion: )ilet"!e%.common -- thi% )ile i% )or general
%etting%0 .hich are not %!eci)ic to a certain )ilet"!e.
%arning
6t i% not recommen&e& )or '%er% to e&it the %"%tem-.i&e )ile%0 (eca'%e the" .ill (e overri&&en .hen *ean" i%
'!&ate&.
To change the %etting%0 co!" a )ile )rom W!re)i;<%hare<gean" to the %'(&irector" )ile&e)% in "o'r con)ig'ration
&irector" 1'%'all" F<.con)ig<gean"<2.
For e;am!le:
% cp /usr/1oca1/share/geany/fi1eypes.c /home/username/.config/geany/fi1edefs/
Then "o' can e&it the )ile an& the change% are al%o availa(le a)ter an '!&ate o) *ean" (eca'%e the" re%i&e in
"o'r con)ig'ration &irector". 3lternativel"0 "o' can create a )ile F<.con)ig<gean"<)ile&e)%<)ilet"!e%.= an& a&& onl"
the%e %etting% "o' .ant to change. 3ll mi%%ing %etting% .ill (e rea& )rom the corre%!on&ing glo(al &e)inition )ile
in W!re)i;<%hare<gean".
For&at
:styling; ,e#tion
6n thi% %ection the color% )or %"nta; highlighting are &e)ine&. The man'al )ormat i%:
ke"C)oregro'n&Mcolor/(ackgro'n&Mcolor/(ol&M)lag/italicM)lag
Color% have to (e %!eci)ie& a% G*@ he; val'e% !re)i;e& (" 0;. For e;am!le re& i% 0;))00000 (l'e i% 0;0000)). The
val'e% are ca%e-in%en%itive0 ('t it i% a goo& i&ea to '%e %mall letter%. @ol& an& italic are )lag% an& %ho'l& onl" (e
Ktr'eK or K)al%eK. 6) their val'e i% %omething other than Ktr'eK or K)al%eK0 K)al%eK i% a%%'me&.
5o' can omit )iel&% to '%e the K&e)a'ltK name& %t"le.
E.g. ke"C0;))0000//tr'e
Thi% make% the ke" %t"le have re& )oregro'n& te;t0 &e)a'lt (ackgro'n& color te;t an& (ol& em!ha%i%.
Using a na&ed style
The %econ& )ormat '%e% a name& %t"le name to re)erence a %t"le &e)ine& in )ilet"!e%.common.
ke"Cname&M%t"le
ke"2Cname&M%t"le20(ol&0italic
The (ol& an& italic !art% are o!tional0 an& i) !re%ent are '%e& to toggle the (ol& or italic )lag% to the o!!o%ite o)
the name& %t"leH% )lag%. 6n contra%t to %t"le &e)inition (oolean%0 the" are a literal K0(ol&0italicK an& comma% are
'%e& in%tea& o) %emi-colon%.
E.g. ke"Ccomment0italic
Thi% make% the ke" %t"le match the KcommentK name& %t"le0 ('t .ith italic em!ha%i%.
To &e)ine name& %t"le%0 %ee the )ilet"!e%.common Pname&M%t"le%Q -ection.
:+ey0ords; ,e#tion
Thi% %ection contain% ke"% )or &i))erent ke".or& li%t% %!eci)ic to the )ilet"!e. -ome )ilet"!e% &o not %'!!ort
ke".or&%0 %o a&&ing a ne. ke" .ill not .ork. 5o' can onl" a&& or remove ke".or&% to<)rom an e;i%ting li%t.
6m!ortant
The ke".or&% li%t m'%t (e in one line .itho't line en&ing character%.
:settings; ,e#tion
e;ten%ion
Thi% i% the &e)a'lt )ile e;ten%ion '%e& .hen %aving )ile%0 not incl'&ing the !erio& character 1.2. The
e;ten%ion '%e& %ho'l& match one o) the !attern% a%%ociate& .ith that )ilet"!e 1%ee Filet"!e e;ten%ion%2.
E;am!le: exension=cxx
.or&char%
The%e character% &e)ine .or& (o'n&arie% .hen making %election% an& %earching '%ing .or& matching
o!tion%.
E;am!le: (1oo' a sysem fi1eypes.* fi1es)
commentMo!en
3 character or %tring .hich i% '%e& to comment co&e. 6) "o' .ant to '%e m'ltiline comment%0 al%o %et
commentMclo%e0 other.i%e leave it em!t".
E;am!le: commen_open=/*
commentMclo%e
6) m'ltiline comment% are '%e&0 thi% i% the character or %tring to clo%e the comment.
E;am!le: commen_c1ose=*/
commentM'%eMin&ent
-et thi% to )al%e i) a comment character or %tring %ho'l& %tart at col'mn 0 o) a line. 6) %et to tr'e it '%e% an"
in&entation o) the line.
Note: Comment in&entation
commentM'%eMin&entCtr'e .o'l& generate thi% i) a line i% commente& 1e.g. .ith Ctrl-72:
# command_examp1e(),
commentM'%eMin&entC)al%e .o'l& generate thi% i) a line i% commente& 1e.g. .ith Ctrl-72:
# command_examp1e(),
Note: Thi% %etting onl" .ork% )or %ingle line comment% 1like H<<H0 HSH or H/H2.
E;am!le: commen_use_inden=rue
conte;tMactionMcm&
3 comman& .hich can (e e;ec'te& on a certain .or& or the c'rrent %election. E;am!le '%age: 4!en the
3,6 &oc'mentation )or the c'rrent )'nction call at the c'r%or !o%ition. The comman& can (e %et )or ever"
)ilet"!e or i) not %et0 a glo(al comman& .ill (e '%e&. The comman& it%el) can (e %!eci)ie& .itho't the )'ll
!ath0 then it i% %earche& in W,3T>. @'t )or %ec'rit" rea%on%0 it i% recommen&e& to %!eci)" the )'ll !ath to
the comman&. The .il&car& J% .ill (e re!lace& (" the c'rrent .or& at the c'r%or !o%ition or (" the
c'rrent %election.
>int: )or ,>, )ile% the )ollo.ing co'l& (e 9'ite '%e)'l: conte;tMactionMcm&C)ire)o; Khtt!:<<....!h!.net<J%K
E;am!le: conex_acion_cmd=devhe1p -s "%s"
:$uild<settings; ,e#tion
errorMrege;
Thi% i% a *N+-%t"le e;ten&e& reg'lar e;!re%%ion to !ar%e a )ilename an& line n'm(er )rom ('il& o't!'t. 6)
'n&e)ine&0 *ean" .ill )all (ack to it% &e)a'lt error me%%age !ar%ing.
4nl" the )ir%t t.o matche% .ill (e rea& (" *ean". *ean" .ill look )or a match that i% !'rel" &igit%0 an& '%e
thi% )or the line n'm(er. The remaining match .ill (e '%e& a% the )ilename.
E;am!le: error_regex=(.+):([0-9|+):[0-9|E
Thi% .ill !ar%e a me%%age %'ch a%: te%t.!":L:2I: E202 .hite%!ace (e)ore HQH
)uild #o&&ands
The ('il& comman&% are all con)ig'ra(le '%ing the -et 6ncl'&e% an& 3rg'ment% &ialog.
com!iler
Thi% item %!eci)ie% the comman& to com!ile %o'rce co&e )ile%. @'t it i% al%o !o%%i(le to '%e it .ith
inter!rete& lang'age% like ,erl or ,"thon. Dith the%e )ilet"!e% "o' can '%e thi% o!tion a% a kin& o) %"nta;
!ar%er0 .hich %en&% o't!'t to the com!iler me%%age .in&o..
5o' %ho'l& 9'ote the )ilename to al%o %'!!ort )ilename% .ith %!ace%. The )ollo.ing .il&car&% )or
)ilename% are availa(le:
J) -- com!lete )ilename .itho't !ath
Je -- )ilename .itho't !ath an& .itho't e;ten%ion
E;am!le: compi1er=gcc -Wa11 -c "%f"
linker
Thi% item %!eci)ie% the comman& to link the )ile. 6) the )ile i% not alrea&" com!ile&0 it .ill (e com!ile& .hile
linking. The -o o!tion i% a'tomaticall" a&&e& (" *ean". Thi% item .ork% .ell .ith *N+ gcc0 ('t ma" (e
!ro(lematic .ith other com!iler% 1e%!. .ith the linker2.
E;am!le: 1in'er=gcc -Wa11 "%f"
r'nMcm&
+%e thi% item to e;ec'te "o'r )ile. 6t ha% to have (een ('ilt alrea&". +%e the Je .il&car& to have onl" the
name o) the e;ec'ta(le 1i.e. .itho't e;ten%ion2 or '%e the J) .il&car& i) "o' nee& the com!lete )ilename0
e.g. )or %hell %cri!t%.
E;am!le: run_cmd="./%e"
,*e#ial file filety*es3#o&&on
There i% a %!ecial )ilet"!e &e)inition )ile calle& )ilet"!e%.common. Thi% )ile &e)ine% %ome general non-)ilet"!e-
%!eci)ic %etting%.
-ee the Format %ection )or ho. to &e)ine %t"le%.
:na&ed<styles; ,e#tion
Name& %t"le% &eclare& here can (e '%e& in the P%t"lingQ %ection o) an" )ilet"!e%.R )ile.
For e;am!le:
6n )ilet"!e%.common:
[named_sy1es|
foo=0xc00000,0xffffff,fa1se,rue
bar=foo
6n )ilet"!e%.c:
[sy1ing|
commen=foo
Thi% %ave% co!"ing an& !a%ting the .hole %t"le &e)inition into %everal &i))erent )ile%.
Note
5o' can &e)ine alia%e% )or name& %t"le%0 a% %ho.n .ith the (ar entr" in the a(ove e;am!le0 ('t the" m'%t (e
&eclare& a)ter the original %t"le.
:styling; ,e#tion
&e)a'lt
Thi% i% the &e)a'lt %t"le. 6t i% '%e& )or %t"ling )ile% .itho't a )ilet"!e %et.
E;am!le: defau1=0x000000,0xffffff,fa1se,fa1se
%election
The %t"le )or coloring %electe& te;t. The )ormat i%:
Foregro'n& color
@ackgro'n& color
+%e )oregro'n& color
+%e (ackgro'n& color
The color% are onl" %et i) the Yr& or Ith arg'ment i% tr'e. Dhen the color% are not overri&&en0 the &e)a'lt i%
a &ark gre" (ackgro'n& .ith %"nta; highlighte& )oregro'n& te;t.
E;am!le: se1ecion=0xc0c0c0,0x00007E,rue,rue
(raceMgoo&
The %t"le )or (race highlighting .hen a matching (race .a% )o'n&.
E;am!le: brace_good=0xff0000,0xEEEEEE,rue,fa1se
(raceM(a&
The %t"le )or (race highlighting .hen no matching (race .a% )o'n&.
E;am!le: brace_bad=0x0000ff,0xEEEEEE,rue,fa1se
caret
The %t"le )or coloring the caret1the (linking c'r%or2. 4nl" )ir%t an& thir& arg'ment i% inter!rete&. -et the
thir& arg'ment to tr'e to change the caret into a (lock caret.
E;am!le: care=0x000000,0x0,fa1se,fa1se
caretM.i&th
The .i&th )or the caret1the (linking c'r%or2. 4nl" the )ir%t arg'ment i% inter!rete&. The .i&th i% %!eci)ie& in
!i;el% .ith a ma;im'm o) three !i;el. +%e the .i&th 0 to make the caret invi%i(le.
E;am!le: care=1,0,fa1se,fa1se
c'rrentMline
The %t"le )or coloring the (ackgro'n& o) the c'rrent line. 4nl" the %econ& an& thir& arg'ment% are
inter!rete&. The %econ& arg'ment i% the (ackgro'n& color. +%e the thir& arg'ment to ena(le or &i%a(le
(ackgro'n& highlighting )or the c'rrent line 1ha% to (e tr'e<)al%e2.
E;am!le: curren_1ine=0x0,0xe5e5e5,rue,fa1se
in&entMg'i&e
The %t"le )or coloring the in&entation g'i&e%. 4nl" the )ir%t an& %econ& arg'ment% are inter!rete&.
E;am!le: inden_guide=0xc0c0c0,0xffffff,fa1se,fa1se
.hiteM%!ace
The %t"le )or coloring the .hite %!ace i) it i% %ho.n. The )ir%t (oth arg'ment% &e)ine the )oregro'n& an&
(ackgro'n& color%0 the thir& arg'ment %et% .hether to '%e the &e)ine& )oregro'n& color or to '%e the
color &e)ine& (" each )ilet"!e )or the .hite %!ace. The )o'rth arg'ment &e)ine% .hether to '%e the
(ackgro'n& color.
E;am!le: whie_space=0xc0c0c0,0xffffff,rue,rue
)ol&ingM%t"le
The %t"le o) )ol&ing icon%. 4nl" )ir%t an& %econ& arg'ment% are '%e&.
Nali& val'e% )or the )ir%t arg'ment are:
1 -- )or (o;e%
2 -- )or circle%
Nali& val'e% )or the %econ& arg'ment are:
1 -- )or %traight line%
2 -- )or c'rve& line%
E;am!le: fo1ding_sy1e=1,1,fa1se,fa1se
)ol&ingMhorizMline
7ra. a thin horizontal line at the line .here te;t i% )ol&e&. 4nl" )ir%t arg'ment i% '%e&.
Nali& val'e% )or the )ir%t arg'ment are:
0 -- &i%a(le0 &o not &ra. a line
1 -- &ra. the line a(ove )ol&e& te;t
2 -- &ra. the line (elo. )ol&e& te;t
E;am!le: fo1ding_horiz_1ine=0,0,fa1se,fa1se
invertMall
Dhether to invert all &e)ine& color%. Thi% i% '%e)'l i) "o' like a &ark (ackgro'n& color1e.g. (lack2 an& &o not
.ant to change ever" %ingle line. ,lea%e note0 at time o) .riting thi% .a% onl" te%te& .ith the C %"nta;
highlighting.
4nl" )ir%t arg'ment i% inter!rete&. -et it to 1 to invert all color%.
E;am!le: inver_a11=0,0,fa1se,fa1se
lineM.ra!Mvi%'al%
Fir%t arg'ment: &ra.ing o) vi%'al )lag% to in&icate a line i% .ra!!e&. Thi% i% a (itma%k o) the val'e%:
0 -- No vi%'al )lag%
1 -- Ni%'al )lag at en& o) %'(line o) a .ra!!e& line
2 -- Ni%'al )lag at (egin o) %'(line o) a .ra!!e& line. -'(line i% in&ente& (" at lea%t 1 to make room
)or the )lag.
-econ& arg'ment: .ether the vi%'al )lag% to in&icate a line i% .ra!!e& are &ra.n near the (or&er or near
the te;t. Thi% i% a (itma%k o) the val'e%:
0 -- Ni%'al )lag% &ra.n near (or&er
1 -- Ni%'al )lag at en& o) %'(line &ra.n near te;t
2 -- Ni%'al )lag at (egin o) %'(line &ra.n near te;t
4nl" )ir%t an& %econ& arg'ment i% inter!rete&.
E;am!le: 1ine_wrap_visua1s=3,0,fa1se,fa1se
lineM.ra!Min&ent
Fir%t arg'ment: %et% the %ize o) in&entation o) %'(line% )or .ra!!e& line% in term% o) the .i&th o) a %!ace0
onl" '%e& .hen the %econ& arg'ment i% 0.
-econ& arg'ment: .ra!!e& %'(line% can (e in&ente& to the !o%ition o) their )ir%t %'(line or one more
in&ent level. ,o%%i(le val'e%:
0 - Dra!!e& %'(line% aligne& to le)t o) .in&o. !l'% amo'nt %et (" the )ir%t arg'ment
1 - Dra!!e& %'(line% are aligne& to )ir%t %'(line in&ent 1'%e the %ame in&entation2
2 - Dra!!e& %'(line% are aligne& to )ir%t %'(line in&ent !l'% one more level o) in&entation
4nl" )ir%t an& %econ& arg'ment i% inter!rete&.
E;am!le: 1ine_wrap_inden=0,1,fa1se,fa1se
tran%l'cenc"
Tran%l'cenc" )or the c'rrent line 1)ir%t arg'ment2 an& the %election 1%econ& arg'ment2. Nal'e% (et.een 0
an& 2$6 are acce!te&.
Note )or Din&o.% 9$0 98 an& E '%er%: kee! thi% val'e at 2$6 to &i%a(le tran%l'cenc" other.i%e *ean"
might cra%h.
4nl" the )ir%t an& %econ& arg'ment i% inter!rete&.
E;am!le: rans1ucency=256,256,fa1se,fa1se
markerMline
The %t"le )or a highlighte& line 1e.g .hen '%ing *oto line or goto tag2. The )oregro'n& color 1)ir%t arg'ment2
i% onl" '%e& .hen the arker% margin i% ena(le& 1%ee Nie. men'2.
4nl" the )ir%t an& %econ& arg'ment i% inter!rete&.
E;am!le: mar'er_1ine=0x000000,0xffff00,fa1se,fa1se
markerM%earch
The %t"le )or a marke& %earch re%'lt% 1.hen '%ing KarkK in -earch &ialog%2. The %econ& arg'ment %et% the
(ackgro'n& colo'r )or the &ra.n rectangle.
4nl" the %econ& arg'ment i% inter!rete&.
E;am!le: mar'er_search=0x000000,0xb8f4b8,fa1se,fa1se
markerMmark
The %t"le )or a marke& line 1e.g .hen '%ing the KToggle arkerK ke"(in&ing 1Ctrl-22. The )oregro'n& color
1)ir%t arg'ment2 i% onl" '%e& .hen the arker% margin i% ena(le& 1%ee Nie. men'2.
4nl" the )ir%t an& %econ& arg'ment i% inter!rete&.
E;am!le: mar'er_mar'=0x000000,0xb8f4b8,fa1se,fa1se
markerMtran%l'cenc"
Tran%l'cenc" )or the line marker 1)ir%t arg'ment2 an& the %earch marker 1%econ& arg'ment2. Nal'e%
(et.een 0 an& 2$6 are acce!te&.
Note )or Din&o.% 9$0 98 an& E '%er%: kee! thi% val'e at 2$6 to &i%a(le tran%l'cenc" other.i%e *ean"
might cra%h.
4nl" the )ir%t an& %econ& arg'ment i% inter!rete&.
E;am!le: mar'er_rans1ucency=256,256,fa1se,fa1se
lineMheight
3mo'nt o) %!ace to (e &ra.n a(ove an& (elo. the lineH% (a%eline. The )ir%t arg'ment &e)ine% the amo'nt
o) %!ace to (e &ra.n a(ove the line0 the %econ& arg'ment &e)ine% the amo'nt o) %!ace to (e &ra.n (elo..
4nl" the )ir%t an& %econ& arg'ment i% inter!rete&.
E;am!le: 1ine_heigh=0,0,fa1se,fa1se
:settings; ,e#tion
.hite%!aceMchar%
Character% to treat a% .hite%!ace. The%e character% are ignore& .hen moving0 %electing an& &eleting
acro%% .or& (o'n&arie% 1%ee -cintilla ke"(oar& comman&%2.
Thi% %ho'l& incl'&e %!ace 1T%2 an& ta( 1Tt2.
E;am!le: whiespace_chars=\s\!\"#$%&'()*+,-./:,<=>?@[\\|^{|}~
Filety*e e-tensions
To change the &e)a'lt )ilet"!e e;ten%ion '%e& .hen %aving a ne. )ile0 %ee Filet"!e &e)inition )ile%.
5o' can overri&e the li%t o) )ile e;ten%ion% that *ean" '%e% )or each )ilet"!e '%ing the )ilet"!eMe;ten%ion%.con)
)ile.
To overri&e the %"%tem-.i&e con)ig'ration )ile0 co!" it )rom W!re)i;<%hare<gean" to "o'r con)ig'ration &irector"0
'%'all" F<.con)ig<gean"<. W!re)i; i% the !ath .here *ean" i% in%talle& 1%ee 6n%tallation !re)i;2.
For e;am!le:
% cp /usr/1oca1/share/geany/fi1eype_exensions.conf /home/username/.config/geany/
Then e&it it an& remove all the line% )or )ilet"!e e;ten%ion% that "o' &o not .ant to overri&e. The remaining line%
can (e e&ite& a)ter the C %ign0 '%ing a %emi-colon %e!arate& li%t o) !attern% .hich %ho'l& (e matche& )or that
)ilet"!e.
For e;am!le0 to %et the )ilet"!e e;ten%ion% )or ake0 the <home<'%ername<.con)ig<gean"<)ilet"!eMe;ten%ion%.con)
)ile %ho'l& look like:
[Exensions|
Ma'e=Ma'efi1e*,*.m',Bui1dfi1e,
Te&*lates
*ean" %'!!ort% the )ollo.ing tem!late%:
ChangeLog entr"
File hea&er
F'nction &e%cri!tion
-hort *,L notice
-hort @-7 notice
Filet"!e tem!late
To '%e the%e tem!late%0 A'%t o!en the E&it men' or o!en the !o!'! men' (" right-clicking in the e&itor .i&get0
an& choo%e K6n%ert Comment%K an& in%ert tem!late% a% "o' .ant.
-ome tem!late% 1like File hea&er or ChangeLog entr"2 .ill al.a"% (e in%erte& at the to! o) the )ile.
To in%ert a )'nction &e%cri!tion0 the c'r%or m'%t (e in%i&e o) the )'nction0 %o that the )'nction name can (e
&etermine& a'tomaticall". The &e%cri!tion .ill (e !o%itione& correctl" one line a(ove the )'nction0 A'%t check it
o't. 6) the c'r%or i% not in%i&e o) a )'nction or the )'nction name cannot (e &etermine&0 the in%erte& )'nction
&e%cri!tion .onHt contain the correct )'nction name ('t K'nkno.nK in%tea&.
Te&*late &eta data
eta &ata can (e '%e& .ith all tem!late%0 ('t (" &e)a'lt '%er %et meta &ata i% onl" '%e& )or the ChangeLog an&
File hea&er tem!late%.
6n the con)ig'ration &ialog "o' can )in& a ta( KTem!late%K 1%ee Tem!late ta( in !re)erence% &ialog2. 5o' can
&e)ine the &e)a'lt val'e% .hich .ill (e in%erte& in the tem!late%. 5o' %ho'l& re%tart *ean" a)ter making change%0
(eca'%e the" are onl" rea& at %tart'!.
File te&*lates
File tem!late% are tem!late% '%e& a% the (a%i% o) a ne. )ile. To '%e them0 choo%e the Ne. 1.ith Tem!late2 men'
item )rom the File men'.
@" &e)a'lt0 tem!late% are create& )or %ome )ilet"!e%. C'%tom )ile tem!late% can (e a&&e& (" creating the
a!!ro!riate tem!late )ile an& re%tarting *ean". 5o' can al%o e&it the &e)a'lt )ilet"!e tem!late%.
The )ileH% content% are A'%t the te;t to !lace in the &oc'ment0 e;ce!t )or the o!tional U)ilehea&erV tem!late
.il&car&. Thi% can (e !lace& an".here0 ('t i% '%'all" on the )ir%t line o) the )ile0 )ollo.e& (" a (lank line.
!usto& file te&*lates
The%e are rea& )rom the F<.con)ig<gean"<tem!late%<)ile% &irector" 1create& the )ir%t time *ean" i% %tarte&2. The
)ilet"!e to '%e i% &etecte& )rom the tem!late )ileH% e;ten%ion0 i) an". For e;am!le0 creating a )ile main.c .o'l& a&&
a men' item .hich create& a ne. &oc'ment .ith the )ilet"!e %et to HCH.
The tem!late )ile i% rea& )rom &i%k .hen the corre%!on&ing men' item i% clicke&0 %o "o' &onHt nee& to re%tart
*ean" a)ter e&iting a c'%tom )ile tem!late.
Filety*e te&*lates
Filet"!e tem!late )ile% are rea& )rom the F<.con)ig<gean"<tem!late% &irector"0 an& are name& K)ilet"!e.K )ollo.e&
(" the )ilet"!e name0 e.g. K)ilet"!e.!"thonK0 K)ilet"!e.%hK0 etc. 6) "o' are 'n%'re a(o't the )ilet"!e name
e;ten%ion%0 the" are the %ame a% the )ilet"!e con)ig'ration )ile e;ten%ion%0 commonl" in%talle& in
<'%r<%hare<gean"0 .ith the !re)i; K)ilet"!e%.K.
There i% al%o a tem!late )ile )ilet"!e.none .hich i% '%e& .hen the Ne. comman& i% '%e& .itho't a )ilet"!e. Thi%
i% em!t" (" &e)a'lt.
!usto&i=ing te&*lates
Each tem!late can (e c'%tomize& to "o'r nee&%. The tem!late% are %tore& in the F<.con)ig<gean"<tem!late%<
&irector" 1%ee the %ection calle& Comman& line o!tion% )or )'rther in)ormation a(o't the con)ig'ration
&irector"2. ?'%t o!en the &e%ire& tem!late .ith an e&itor 1i&eall"0 *ean" /-2 2 an& e&it the tem!late to "o'r nee&%.
There are %ome .il&car&% .hich .ill (e a'tomaticall" re!lace& (" *ean" at %tart'!.
Te&*late 0ild#ards
3ll .il&car&% m'%t (e enclo%e& (" KUK an& KVK0 e.g. U&ateV.
%ild#ard Des#ri*tion A7aila$le in
&evelo!er The name o) the
&evelo!er.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
initial The &evelo!erH%
initial%0 e.g. KETK )or
Enrico Trger or K?F7K
)or ?ohn Foo(ar 7oe.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
mail The email a&&re%% o)
the &evelo!er.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
com!an" The com!an" the
&evelo!er i% .orking
)or.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
"ear P1Q The c'rrent "ear.
7e)a'lt )ormat i%:
5555
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
ver%ion The initial ver%ion o) a
ne. )ile.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
&ate P1Q The c'rrent &ate.
7e)a'lt )ormat: 5555-
-77.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
'ntitle& The %tring K'ntitle&K
1thi% .ill (e tran%late&
to "o'r locale20 '%e&
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
%ild#ard Des#ri*tion A7aila$le in
in )ilet"!e tem!late%.
gean"ver%ion The act'al *ean"
ver%ion0 e.g. K*ean"
0.18K.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
&atetime P1Q The c'rrent &ate an&
time. 7e)a'lt )ormat:
77..5555
>>:mm:%% \\\\.
)ilet"!e tem!late%0 )ile hea&er0 )'nction &e%cri!tion0 ChangeLog entr"0
(%&0 g!l0 %ni!!et%
)ilename The )ilename o) the
c'rrent )ile.
)ile hea&er0 %ni!!et%
g!l Thi% .il&car& in%ert%
a %hort *,L notice.
)ile hea&er
(%& Thi% .il&car& in%ert%
a @-7 licence notice.
)ile hea&er
)'nctionname The )'nction name o)
the )'nction at the
c'r%or !o%ition. Thi%
.il&car& .ill onl" (e
re!lace& in the
)'nction &e%cri!tion
tem!late.
)'nction &e%cri!tion
)ilehea&er The )ile hea&er
tem!late. Thi%
.il&car& .ill onl" (e
re!lace& in )ilet"!e
tem!late%.
)ile hea&er0 %ni!!et%0 c'%tom )ilet"!e tem!late%
P1Q 110 20 Y2 The )ormat )or the "ear0 &ate an& &atetime .il&car&% can (e change& in the
!re)erence% &ialog0 %ee Tem!late ta( in !re)erence% &ialog. 5o' can '%e an" conver%ion
%!eci)ier% .hich can (e '%e& .ith the 3N-6 C %tr)time )'nction. For &etail% !lea%e %ee
htt!:<<man.c;<%tr)time.
!usto&i=ing the tool$ar
5o' can a&&0 remove an& reor&er the element% in the tool(ar (" '%ing the tool(ar e&itor (" man'all" e&iting the
)ile 'iMtool(ar.;ml.
The tool(ar e&itor can (e o!ene& )rom the !re)erence% e&itor on the Tool(ar ta( or (" right-clicking on the
tool(ar it%el) an& choo%ing it )rom the men'.
Manually editing of the tool$ar layout
To overri&e the %"%tem-.i&e con)ig'ration )ile0 co!" it )rom W!re)i;<%hare<gean" to "o'r con)ig'ration &irector"0
'%'all" F<.con)ig<gean"<. W!re)i; i% the !ath .here *ean" i% in%talle& 1%ee 6n%tallation !re)i;2.
For e;am!le:
% cp /usr/1oca1/share/geany/ui_oo1bar.xm1 /home/username/.config/geany/
Then e&it it an& a&& an" o) the availa(le element% li%te& in the )ile or remove an" o) the e;i%ting element%. 4)
co'r%e0 "o' can al%o reor&er the element% a% "o' .i%h an& a&& or remove a&&itional %e!arator%. Thi% )ile m'%t (e
vali& =L0 other.i%e the glo(al tool(ar +6 &e)inition .ill (e '%e& in%tea&.
5o'r change% are a!!lie& once "o' %ave the )ile.
Note
1. 5o' cannot a&& ne. action% .hich are not li%te& (elo..
2. Ever"thing "o' a&& or change m'%t (e in%i&e the <'i<tool(ar< !ath.
A7aila$le tool$ar ele&ents
Ele&ent na&e Des#ri*tion
Ne. Create a ne. )ile
4!en 4!en an e;i%ting )ile
-ave -ave the c'rrent )ile
-ave3ll -ave all o!en )ile%
Geloa& Geloa& the c'rrent )ile )rom &i%k
Clo%e Clo%e the c'rrent )ile
Clo%e3ll Clo%e all o!en )ile%
,rint ,rint the c'rrent )ile
C't C't the c'rrent %election
Co!" Co!" the c'rrent %election
,a%te ,a%te the content% o) the cli!(oar&
7elete 7elete the c'rrent %election
+n&o +n&o the la%t mo&i)ication
Ge&o Ge&o the la%t mo&i)ication
Nav@ack Navigate (ack a location
NavFor Navigate )or.ar& a location
Com!ile Com!ile the c'rrent )ile
Ele&ent na&e Des#ri*tion
@'il& @'il& the c'rrent )ile0 incl'&e% al%o a %'(men' )or ake comman&%. *ean"
remem(er% the la%t cho%en action )rom the %'(men' an& '%e% thi% a%
&e)a'lt action .hen the ('tton it%el) i% clicke&.
G'n G'n or vie. the c'rrent )ile
Color 4!en a color choo%er &ialog0 to interactivel" !ick color% )rom a !alette
\oom6n \oom in the te;t
\oom4't \oom o't the te;t
+n6n&ent 7ecrea%e in&entation
6n&ent 6ncrea%e in&entation
Ge!lace Ge!lace te;t in the c'rrent &oc'ment
-earchEntr" The %earch )iel& (elonging to the H-earchH element 1can (e '%e& alone2
-earch Fin& the entere& te;t in the c'rrent )ile 1onl" '%e)'l i) "o' al%o '%e
H-earchEntr"H2
*otoEntr" The goto )iel& (elonging to the H*otoH element 1can (e '%e& alone2
*oto ?'m! to the entere& line n'm(er 1onl" '%e)'l i) "o' al%o '%e H*otoEntr"H2
,re)erence% -ho. the !re)erence% &ialog
^'it ^'it *ean"
Plugin do#u&entation
Instant ,a7e
Thi% !l'gin %et% on ever" ne. )ile 1File-BNe. or File-B Ne. 1.ith tem!late22 a ran&oml" cho%en )ilename an& %et
it% )ilet"!e a!!ro!riate to the '%e& tem!late or .hen no tem!late .a% '%e&0 to a con)ig'ra(le &e)a'lt )ilet"!e.
Thi% ena(le% "o' to 9'ickl" com!ile0 ('il& an&<or r'n the ne. )ile .itho't the nee& to give it an e;!licit )ilename
'%ing the -ave 3% &ialog. Thi% might (e '%e)'l .hen "o' o)ten create ne. )ile% A'%t )or te%ting %ome co&e or
%omething %imilar.
)a#+u* !o*y
Thi% !l'gin create% a (ack'! co!" o) the c'rrent )ile in *ean" .hen it i% %ave&. 5o' can %!eci)" the &irector"
.here the (ack'! co!" i% %ave& an& "o' can con)ig're the a'tomaticall" a&&e& e;ten%ion in the con)ig're &ialog
in *ean"H% !l'gin manager.
3)ter the !l'gin .a% loa&e& in *ean"H% !l'gin manager0 ever" )ile i% co!ie& into the con)ig're& (ack'! &irector"
.hen the )ile i% %ave& in *ean".
!ontri$uting to this do#u&ent
Thi% &oc'ment 1gean".t;t2 i% .ritten in re-tr'ct're&Te;t 1or Kre-TK2. The %o'rce )ile )or it i% locate& in *ean"H% &oc
%'(&irector". 6) "o' inten& on making change%0 "o' %ho'l& gra( the %o'rce right )rom -NN to make %'re "o'Hve
got the ne.e%t ver%ion. 3)ter e&iting the )ile0 to ('il& the >TL &oc'ment to %ee ho. "o'r change% look0 r'n
Kmake &ocK in the %'(&irector" &oc o) *ean"H% %o'rce &irector". Thi% regenerate% the gean".html )ile. To generate
a ,7F )ile0 '%e the comman& Kmake !&)K .hich %ho'l& generate a )ile calle& gean"-0.18.!&).
3)ter "o' are ha!!" .ith "o'r change%0 create a !atch:
% svn diff geany.x > foo.pach
an& then %'(mit that )ile to the mailing li%t )or revie..
Note0 "o' .ill nee& the ,"thon &oc'til% %o)t.are !ackage in%talle& to ('il& the &oc%. The !ackage i% name&
!"thon-&oc'til% on 7e(ian an& Fe&ora %"%tem%.
,#intilla +ey$oard #o&&ands
Co!"right # 19980 2006 Neil >o&g%on Xneilh1at2%cintilla1&ot2orgB
Thi% a!!en&i; i% &i%tri('te& 'n&er the term% o) the Licen%e )or -cintilla an& -ciTE. 3 co!" o) thi% licen%e can (e
)o'n& in the )ile %cintilla<Licen%e.t;t incl'&e& .ith the %o'rce co&e o) thi% !rogram an& in the a!!en&i; o) thi%
&oc'ment. -ee Licen%e )or -cintilla an& -ciTE.
20 ?'ne 2006
Key$oard #o&&ands
8e"(oar& comman&% )or -cintilla mo%tl" )ollo. common Din&o.% an& *T8E convention%. 3ll move ke"% 1arro.%0
!age '!<&o.n0 home an& en&2 allo.% to e;ten& or re&'ce the %tream %election .hen hol&ing the -hi)t ke"0 an&
the rectang'lar %election .hen hol&ing the -hi)t an& Ctrl ke"%. -ome ke"% ma" not (e availa(le .ith %ome
national ke"(oar&% or (eca'%e the" are taken (" the %"%tem %'ch a% (" a .in&o. manager or *T8. 8e"(oar&
e9'ivalent% o) men' comman&% are li%te& in the men'%. -ome le%% common comman&% .ith no men' e9'ivalent
are:
A#tion ,hort#ut +ey
agni)" te;t %ize. CtrlE8e"!a&E
Ge&'ce te;t %ize. CtrlE8e"!a&-
Ge%tore te;t %ize to normal. CtrlE8e"!a&<
6n&ent (lock. Ta(
7e&ent (lock. -hi)tETa(
7elete to %tart o) .or&. CtrlE@ack-!ace
A#tion ,hort#ut +ey
7elete to en& o) .or&. CtrlE7elete
7elete to %tart o) line. CtrlE-hi)tE@ack-!ace
*o to %tart o) &oc'ment. CtrlE>ome
E;ten& %election to %tart o)
&oc'ment.
CtrlE-hi)tE>ome
*o to %tart o) &i%!la" line. 3ltE>ome
E;ten& %election to %tart o)
&i%!la" line.
3ltE-hi)tE>ome
*o to en& o) &oc'ment. CtrlEEn&
E;ten& %election to en& o)
&oc'ment.
CtrlE-hi)tEEn&
E;ten& %election to en& o) &i%!la"
line.
3ltE-hi)tEEn&
,revio'% !aragra!h. -hi)t
e;ten&% %election.
CtrlE+!
Ne;t !aragra!h. -hi)t e;ten&%
%election.
CtrlE7o.n
,revio'% .or&. -hi)t e;ten&%
%election.
CtrlELe)t
Ne;t .or&. -hi)t e;ten&%
%election.
CtrlEGight
Ti*s and tri#+s
Do#u&ent note$oo+
7o'(le-click on em!t" %!ace in the note(ook ta( (ar to o!en a ne. &oc'ment.
7o'(le-click on a &oc'mentH% note(ook ta( to toggle all a&&itional .i&get% 1to %ho. them again '%e the
Nie. men' or the ke"(oar& %hortc't2. The inter)ace !re) m'%t (e ena(le& )or thi% to .ork.
i&&le-click on a &oc'mentH% note(ook ta( to clo%e the &oc'ment.
Editor
3lt-%croll .heel move% '!<&o.n a !age.
Ctrl-%croll .heel zoom% in<o't.
-hi)t-%croll .heel %croll% 8 character% right<le)t.
Ctrl-click on a .or& in a &oc'ment to !er)orm *o to Tag 7e)inition.
Ctrl-click on a (racket<(race to !er)orm *o to atching @race.
Interfa#e
7o'(le-click on a %"m(ol-li%t gro'! to e;!an& or com!act it.
GTK/related
-crolling the mo'%e .heel over a note(ook ta( (ar .ill %.itch note(ook !age%.
The )ollo.ing are &erive& )rom =-Din&o.% )eat're% 1('t *T8 %till %'!!ort% them on Din&o.%2:
i&&le-click !a%te% the la%t %electe& te;t.
i&&le-click on a %croll(ar move% the %croll(ar to that !o%ition .itho't having to &rag it.
8idden *referen#es
There are %ome 'ncommon !re)erence% that are not %ho.n in the ,re)erence% &ialog. The%e can (e %et (" e&iting
F<.con)ig<gean"<gean".con)0 then re%tarting *ean". -earch )or the ke" name0 then e&it the val'e. E;am!le:
(raceMmatchMltgtCtr'e
The ta(le (elo. %ho. the ke" name% o) hi&&en !re)erence% in the con)ig'ration )ile.
Key Des#ri*tion Default
Editor
related

(raceMmatc
hMltgt
Dhether to highlight X0 B angle (racket%. )al%e
%ho.Me&itor
M%croll(ar%
Dhether to &i%!la" %croll(ar%. 6) %et to
)al%e0 the horizontal an& vertical %croll(ar%
are hi&&en com!letel".
tr'e
'%eMgtkM.or
&M(o'n&ari
e%
Dhether to look )or the en& o) a .or&
.hen '%ing .or&-(o'n&ar" relate&
-cintilla comman&% 1%ee -cintilla ke"(oar&
comman&%2.
tr'e
com!leteM%
ni!!et%M.hi
l%tMe&iting
Dhether to allo. com!letion o) %ni!!et%
.hen e&iting an e;i%ting line 1i.e. there i%
%ome te;t a)ter the c'rrent c'r%or !o%ition
on the line2. 4nl" '%e& .hen the
ke"(in&ing Com!lete %ni!!et i% %et to
)al%e
Key Des#ri*tion Default
-!ace.
Interfa#e
related

%ho.M%"m(
olMli%tMe;!a
n&er%
Dhether to %ho. or hi&e the %mall
e;!an&er icon% on the %"m(ol li%t treevie.
1onl" availa(le .ith *T8 2.12 or a(ove2.
tr'e
allo.Mal.a"
%M%ave
Dhether )ile% can (e %ave& al.a"%0 even i)
the" &onHt have an" change%. @" &e)a'lt0
the -ave ('tton% an& men' item% are
&i%a(le& .hen a )ile i% 'nchange&. Dhen
%etting thi% o!tion to tr'e0 the -ave
('tton% an& men' item% are al.a"% active
an& )ile% can (e %ave&.
)al%e
"TE related
em'lation Terminal em'lation mo&e. 4nl" change
thi% i) "o' have NTE termca! )ile% other
than vte<termca!<;term.
;term
File related
'%eM%a)eM)il
eM%aving
7e)ine% the mo&e ho. *ean" %ave% )ile% to
&i%k. 6) &i%a(le&0 *ean" &irectl" .rite% the
content o) the &oc'ment to &i%k. Thi%
might ca'%e in lo%% o) &ata .hen there i%
no more )ree %!ace on &i%k to %ave the )ile.
Dhen %et to tr'e0 *ean" )ir%t %ave% the
content% into a tem!orar" )ile an& i) thi%
%'ccee&e&0 the tem!orar" )ile i% move& to
the real )ile to %ave. Thi% give% (etter error
checking in ca%e o) no more )ree &i%k
%!ace. @'t it al%o &e%tro"% har& link% o) the
original )ile an& it% !ermi%%ion% 1e.g.
e;ec'ta(le )lag% are re%et2. +%e thi% .ith
care a% it can (reak thing% %erio'%l". The
(etter a!!roach .o'l& (e to en%'re "o'r
&i%k .onHt r'n o't o) )ree %!ace.
)al%e
!o&*ile/ti&e o*tions
There are %ome o!tion% .hich can onl" (e change& at com!ile time0 an& %ome o!tion% .hich are '%e& a% the
&e)a'lt )or con)ig'ra(le o!tion%. To change the%e o!tion%0 e&it the a!!ro!riate %o'rce )ile in the %rc %'(&irector".
Look )or a (lock o) line% %tarting .ith S&e)ine *E3N5MR. 3n" &e)inition% .hich are not li%te& here %ho'l& not (e
change&.
Note
o%t '%er% %ho'l& not nee& to change the%e o!tion%.
sr#>geany3h
.*tion Des#ri*tion Default
*E3N5M-TG6N
*M+NT6TLE7
3 %tring '%e& a% the &e)a'lt
name )or ne. )ile%. @e a.are
that the %tring can (e
tran%late&0 %o change it onl"
i) "o' kno. .hat "o' are
&oing.
'ntitle&
*E3N5MD6N7
4DM6N63L
MD67T>
The minimal .i&th o) the
main .in&o..
620
*E3N5MD6N7
4DM6N63L
M>E6*>T
The minimal height o) the
main .in&o..
II0
*E3N5MD6N7
4DM7EF3+LTM
D67T>
The &e)a'lt .i&th o) the
main .in&o. at the )ir%t
%tart.
900
*E3N5MD6N7
4DM7EF3+LTM
>E6*>T
The &e)a'lt height o) the
main .in&o. at the )ir%t
%tart.
600
%indo0s
s*e#ifi#

*E3N5M+-EMD
6NY2M763L4*
-et thi% to 1 i) "o' .ant to
'%e the &e)a'lt Din&o.% )ile
o!en an& %ave &ialog%
in%tea& *T8H% )ile o!en an&
%ave &ialog%. The &e)a'lt
Din&o.% )ile &ialog% are
mi%%ing %ome nice )eat're%
like choo%ing a )ilet"!e or an
enco&ing. 7o not to'ch thi%
%etting .hen ('il&ing on a
non-DinY2 %"%tem.
0
*ro9e#t3h
.*tion Des#ri*tion Default
*E3N5M,G4?E
CTME=T
The &e)a'lt )ilename
e;ten%ion )or *ean" !roAect
)ile%. 6t i% '%e& .hen
creating ne. !roAect% an& a%
)ilter ma%k )or the !roAect
o!en &ialog.
gean"
editor3h
.*tion Des#ri*tion Default
*E3N5MD4G7C>3G- The%e character% &e)ine .or& (o'n&arie%
.hen making %election% an& %earching '%ing
.or& matching o!tion%.
a %tring .ith: a-z0 3-\0 0-9
an& 'n&er%core.
+eyfile3#
The%e are &e)a'lt %etting% that can (e overri&&en in the ,re)erence% &ialog.
.*tion Des#ri*tion Default
*E3N5M6NM-5@4LL6-TMC>3G- >o. man" character% "o' nee& to t"!e to trigger the
a'tocom!letion li%t.
I
*E3N5M76-8MC>EC8MT6E4+T Time in %econ&% (et.een checking a )ile )or e;ternal
change%.
Y0
*E3N5M7EF3+LTMT44L-M38E The make tool. Thi% can al%o incl'&e a !ath. KmakeK
*E3N5M7EF3+LTMT44L-MTEG6N3L 3 terminal em'lator. 6t ha% to acce!t the comman&
line o!tion K-eK. Thi% can al%o incl'&e a !ath.
K;termK
*E3N5M7EF3+LTMT44L-M@G4D-EG 3 .e( (ro.%er. Thi% can al%o incl'&e a !ath. K)ire)o;K
*E3N5M7EF3+LTMT44L-M,G6NTC7 3 !rinting tool. 6t %ho'l& (e a(le to acce!t an&
!roce%% !lain te;t )ile%. Thi% can al%o incl'&e a !ath.
Kl!rK
*E3N5M7EF3+LTMT44L-M*GE, 3 gre! tool. 6t %ho'l& (e com!ati(le .ith *N+ gre!.
Thi% can al%o incl'&e a !ath.
Kgre!K
*E3N5M7EF3+LTMG+MLEN*T> The length o) the KGecent )ile%K li%t. 10
*E3N5M7EF3+LTMF4NTM-5@4LML6-T The )ont '%e& in %i&e(ar to %ho. %"m(ol% an& o!en
)ile%.
K-an% 9K
*E3N5M7EF3+LTMF4NTM-*MD6N74D The )ont '%e& in the me%%age% .in&o.. K-an% 9K
*E3N5M7EF3+LTMF4NTME76T4G The )ont '%e& in the e&itor .in&o.. Kono%!ace 10K
*E3N5MT4**LEM3G8 3 %tring .hich i% '%e& to mark a toggle& comment. KF K
*E3N5M3=M3+T4C4,LETEMD4G7- >o. man" a'tocom!letion %'gge%tion% %ho'l&
*ean" !rovi&e.
Y0
$uild3h
.*tion Des#ri*tion Default
*E3N5M@+6L7MEGGM>6*>L6*>TM3= 3mo'nt o) ('il& error me%%age% .hich %ho'l&
(e highlighte& in the Com!iler me%%age .in&o..
Thi% a))ect% the %!ecial coloring .hen *ean"
&etect% a com!iler o't!'t line a% an error
me%%age an& then highlight the corre%!on&ing
line in the %o'rce co&e. +%'all" onl" the )ir%t )e.
me%%age% are intere%ting (eca'%e )ollo.ing
error% are A'%t a)tere))ect%.
100
GNU General Pu$li# Li#ense
GNU GENE'AL PU)LI! LI!EN,E
"ersion 4, ?une @AA@
Co!"right 1C2 19890 1991 Free -o)t.are Fo'n&ation0 6nc.
$1 Franklin -t0 Fi)th Floor0 @o%ton0 3 02110-1Y01 +-3
Ever"one i% !ermitte& to co!" an& &i%tri('te ver(atim co!ie%
o) thi% licen%e &oc'ment0 ('t changing it i% not allo.e&.
Prea&$le
The licen%e% )or mo%t %o)t.are are &e%igne& to take a.a" "o'r
)ree&om to %hare an& change it. @" contra%t0 the *N+ *eneral ,'(lic
Licen%e i% inten&e& to g'arantee "o'r )ree&om to %hare an& change )ree
%o)t.are--to make %'re the %o)t.are i% )ree )or all it% '%er%. Thi%
*eneral ,'(lic Licen%e a!!lie% to mo%t o) the Free -o)t.are
Fo'n&ationH% %o)t.are an& to an" other !rogram .ho%e a'thor% commit to
'%ing it. 1-ome other Free -o)t.are Fo'n&ation %o)t.are i% covere& ("
the *N+ Li(rar" *eneral ,'(lic Licen%e in%tea&.2 5o' can a!!l" it to
"o'r !rogram%0 too.
Dhen .e %!eak o) )ree %o)t.are0 .e are re)erring to )ree&om0 not
!rice. 4'r *eneral ,'(lic Licen%e% are &e%igne& to make %'re that "o'
have the )ree&om to &i%tri('te co!ie% o) )ree %o)t.are 1an& charge )or
thi% %ervice i) "o' .i%h20 that "o' receive %o'rce co&e or can get it
i) "o' .ant it0 that "o' can change the %o)t.are or '%e !iece% o) it
in ne. )ree !rogram%/ an& that "o' kno. "o' can &o the%e thing%.
To !rotect "o'r right%0 .e nee& to make re%triction% that )or(i&
an"one to &en" "o' the%e right% or to a%k "o' to %'rren&er the right%.
The%e re%triction% tran%late to certain re%!on%i(ilitie% )or "o' i) "o'
&i%tri('te co!ie% o) the %o)t.are0 or i) "o' mo&i)" it.
For e;am!le0 i) "o' &i%tri('te co!ie% o) %'ch a !rogram0 .hether
grati% or )or a )ee0 "o' m'%t give the reci!ient% all the right% that
"o' have. 5o' m'%t make %'re that the"0 too0 receive or can get the
%o'rce co&e. 3n& "o' m'%t %ho. them the%e term% %o the" kno. their
right%.
De !rotect "o'r right% .ith t.o %te!%: 112 co!"right the %o)t.are0 an&
122 o))er "o' thi% licen%e .hich give% "o' legal !ermi%%ion to co!"0
&i%tri('te an&<or mo&i)" the %o)t.are.
3l%o0 )or each a'thorH% !rotection an& o'r%0 .e .ant to make certain
that ever"one 'n&er%tan&% that there i% no .arrant" )or thi% )ree
%o)t.are. 6) the %o)t.are i% mo&i)ie& (" %omeone el%e an& !a%%e& on0 .e
.ant it% reci!ient% to kno. that .hat the" have i% not the original0 %o
that an" !ro(lem% intro&'ce& (" other% .ill not re)lect on the original
a'thor%H re!'tation%.
Finall"0 an" )ree !rogram i% threatene& con%tantl" (" %o)t.are
!atent%. De .i%h to avoi& the &anger that re&i%tri('tor% o) a )ree
!rogram .ill in&ivi&'all" o(tain !atent licen%e%0 in e))ect making the
!rogram !ro!rietar". To !revent thi%0 .e have ma&e it clear that an"
!atent m'%t (e licen%e& )or ever"oneH% )ree '%e or not licen%e& at all.
The !reci%e term% an& con&ition% )or co!"ing0 &i%tri('tion an&
mo&i)ication )ollo..
GNU GENE'AL PU)LI! LI!EN,E
TE'M, AND !.NDITI.N, F.' !.PBING, DI,T'I)UTI.N AND M.DIFI!ATI.N
0. Thi% Licen%e a!!lie% to an" !rogram or other .ork .hich contain%
a notice !lace& (" the co!"right hol&er %a"ing it ma" (e &i%tri('te&
'n&er the term% o) thi% *eneral ,'(lic Licen%e. The K,rogramK0 (elo.0
re)er% to an" %'ch !rogram or .ork0 an& a K.ork (a%e& on the ,rogramK
mean% either the ,rogram or an" &erivative .ork 'n&er co!"right la.:
that i% to %a"0 a .ork containing the ,rogram or a !ortion o) it0
either ver(atim or .ith mo&i)ication% an&<or tran%late& into another
lang'age. 1>ereina)ter0 tran%lation i% incl'&e& .itho't limitation in
the term Kmo&i)icationK.2 Each licen%ee i% a&&re%%e& a% K"o'K.
3ctivitie% other than co!"ing0 &i%tri('tion an& mo&i)ication are not
covere& (" thi% Licen%e/ the" are o't%i&e it% %co!e. The act o)
r'nning the ,rogram i% not re%tricte&0 an& the o't!'t )rom the ,rogram
i% covere& onl" i) it% content% con%tit'te a .ork (a%e& on the
,rogram 1in&e!en&ent o) having (een ma&e (" r'nning the ,rogram2.
Dhether that i% tr'e &e!en&% on .hat the ,rogram &oe%.
1. 5o' ma" co!" an& &i%tri('te ver(atim co!ie% o) the ,rogramH%
%o'rce co&e a% "o' receive it0 in an" me&i'm0 !rovi&e& that "o'
con%!ic'o'%l" an& a!!ro!riatel" !'(li%h on each co!" an a!!ro!riate
co!"right notice an& &i%claimer o) .arrant"/ kee! intact all the
notice% that re)er to thi% Licen%e an& to the a(%ence o) an" .arrant"/
an& give an" other reci!ient% o) the ,rogram a co!" o) thi% Licen%e
along .ith the ,rogram.
5o' ma" charge a )ee )or the !h"%ical act o) tran%)erring a co!"0 an&
"o' ma" at "o'r o!tion o))er .arrant" !rotection in e;change )or a )ee.
2. 5o' ma" mo&i)" "o'r co!" or co!ie% o) the ,rogram or an" !ortion
o) it0 th'% )orming a .ork (a%e& on the ,rogram0 an& co!" an&
&i%tri('te %'ch mo&i)ication% or .ork 'n&er the term% o) -ection 1
a(ove0 !rovi&e& that "o' al%o meet all o) the%e con&ition%:
a2 5o' m'%t ca'%e the mo&i)ie& )ile% to carr" !rominent notice%
%tating that "o' change& the )ile% an& the &ate o) an" change.
(2 5o' m'%t ca'%e an" .ork that "o' &i%tri('te or !'(li%h0 that in
.hole or in !art contain% or i% &erive& )rom the ,rogram or an"
!art thereo)0 to (e licen%e& a% a .hole at no charge to all thir&
!artie% 'n&er the term% o) thi% Licen%e.
c2 6) the mo&i)ie& !rogram normall" rea&% comman&% interactivel"
.hen r'n0 "o' m'%t ca'%e it0 .hen %tarte& r'nning )or %'ch
interactive '%e in the mo%t or&inar" .a"0 to !rint or &i%!la" an
anno'ncement incl'&ing an a!!ro!riate co!"right notice an& a
notice that there i% no .arrant" 1or el%e0 %a"ing that "o' !rovi&e
a .arrant"2 an& that '%er% ma" re&i%tri('te the !rogram 'n&er
the%e con&ition%0 an& telling the '%er ho. to vie. a co!" o) thi%
Licen%e. 1E;ce!tion: i) the ,rogram it%el) i% interactive ('t
&oe% not normall" !rint %'ch an anno'ncement0 "o'r .ork (a%e& on
the ,rogram i% not re9'ire& to !rint an anno'ncement.2
The%e re9'irement% a!!l" to the mo&i)ie& .ork a% a .hole. 6)
i&enti)ia(le %ection% o) that .ork are not &erive& )rom the ,rogram0
an& can (e rea%ona(l" con%i&ere& in&e!en&ent an& %e!arate .ork% in
them%elve%0 then thi% Licen%e0 an& it% term%0 &o not a!!l" to tho%e
%ection% .hen "o' &i%tri('te them a% %e!arate .ork%. @'t .hen "o'
&i%tri('te the %ame %ection% a% !art o) a .hole .hich i% a .ork (a%e&
on the ,rogram0 the &i%tri('tion o) the .hole m'%t (e on the term% o)
thi% Licen%e0 .ho%e !ermi%%ion% )or other licen%ee% e;ten& to the
entire .hole0 an& th'% to each an& ever" !art regar&le%% o) .ho .rote it.
Th'%0 it i% not the intent o) thi% %ection to claim right% or conte%t
"o'r right% to .ork .ritten entirel" (" "o'/ rather0 the intent i% to
e;erci%e the right to control the &i%tri('tion o) &erivative or
collective .ork% (a%e& on the ,rogram.
6n a&&ition0 mere aggregation o) another .ork not (a%e& on the ,rogram
.ith the ,rogram 1or .ith a .ork (a%e& on the ,rogram2 on a vol'me o)
a %torage or &i%tri('tion me&i'm &oe% not (ring the other .ork 'n&er
the %co!e o) thi% Licen%e.
Y. 5o' ma" co!" an& &i%tri('te the ,rogram 1or a .ork (a%e& on it0
'n&er -ection 22 in o(Aect co&e or e;ec'ta(le )orm 'n&er the term% o)
-ection% 1 an& 2 a(ove !rovi&e& that "o' al%o &o one o) the )ollo.ing:
a2 3ccom!an" it .ith the com!lete corre%!on&ing machine-rea&a(le
%o'rce co&e0 .hich m'%t (e &i%tri('te& 'n&er the term% o) -ection%
1 an& 2 a(ove on a me&i'm c'%tomaril" '%e& )or %o)t.are interchange/ or0
(2 3ccom!an" it .ith a .ritten o))er0 vali& )or at lea%t three
"ear%0 to give an" thir& !art"0 )or a charge no more than "o'r
co%t o) !h"%icall" !er)orming %o'rce &i%tri('tion0 a com!lete
machine-rea&a(le co!" o) the corre%!on&ing %o'rce co&e0 to (e
&i%tri('te& 'n&er the term% o) -ection% 1 an& 2 a(ove on a me&i'm
c'%tomaril" '%e& )or %o)t.are interchange/ or0
c2 3ccom!an" it .ith the in)ormation "o' receive& a% to the o))er
to &i%tri('te corre%!on&ing %o'rce co&e. 1Thi% alternative i%
allo.e& onl" )or noncommercial &i%tri('tion an& onl" i) "o'
receive& the !rogram in o(Aect co&e or e;ec'ta(le )orm .ith %'ch
an o))er0 in accor& .ith -'(%ection ( a(ove.2
The %o'rce co&e )or a .ork mean% the !re)erre& )orm o) the .ork )or
making mo&i)ication% to it. For an e;ec'ta(le .ork0 com!lete %o'rce
co&e mean% all the %o'rce co&e )or all mo&'le% it contain%0 !l'% an"
a%%ociate& inter)ace &e)inition )ile%0 !l'% the %cri!t% '%e& to
control com!ilation an& in%tallation o) the e;ec'ta(le. >o.ever0 a% a
%!ecial e;ce!tion0 the %o'rce co&e &i%tri('te& nee& not incl'&e
an"thing that i% normall" &i%tri('te& 1in either %o'rce or (inar"
)orm2 .ith the maAor com!onent% 1com!iler0 kernel0 an& %o on2 o) the
o!erating %"%tem on .hich the e;ec'ta(le r'n%0 'nle%% that com!onent
it%el) accom!anie% the e;ec'ta(le.
6) &i%tri('tion o) e;ec'ta(le or o(Aect co&e i% ma&e (" o))ering
acce%% to co!" )rom a &e%ignate& !lace0 then o))ering e9'ivalent
acce%% to co!" the %o'rce co&e )rom the %ame !lace co'nt% a%
&i%tri('tion o) the %o'rce co&e0 even tho'gh thir& !artie% are not
com!elle& to co!" the %o'rce along .ith the o(Aect co&e.
I. 5o' ma" not co!"0 mo&i)"0 %'(licen%e0 or &i%tri('te the ,rogram
e;ce!t a% e;!re%%l" !rovi&e& 'n&er thi% Licen%e. 3n" attem!t
other.i%e to co!"0 mo&i)"0 %'(licen%e or &i%tri('te the ,rogram i%
voi&0 an& .ill a'tomaticall" terminate "o'r right% 'n&er thi% Licen%e.
>o.ever0 !artie% .ho have receive& co!ie%0 or right%0 )rom "o' 'n&er
thi% Licen%e .ill not have their licen%e% terminate& %o long a% %'ch
!artie% remain in )'ll com!liance.
$. 5o' are not re9'ire& to acce!t thi% Licen%e0 %ince "o' have not
%igne& it. >o.ever0 nothing el%e grant% "o' !ermi%%ion to mo&i)" or
&i%tri('te the ,rogram or it% &erivative .ork%. The%e action% are
!rohi(ite& (" la. i) "o' &o not acce!t thi% Licen%e. There)ore0 ("
mo&i)"ing or &i%tri('ting the ,rogram 1or an" .ork (a%e& on the
,rogram20 "o' in&icate "o'r acce!tance o) thi% Licen%e to &o %o0 an&
all it% term% an& con&ition% )or co!"ing0 &i%tri('ting or mo&i)"ing
the ,rogram or .ork% (a%e& on it.
6. Each time "o' re&i%tri('te the ,rogram 1or an" .ork (a%e& on the
,rogram20 the reci!ient a'tomaticall" receive% a licen%e )rom the
original licen%or to co!"0 &i%tri('te or mo&i)" the ,rogram %'(Aect to
the%e term% an& con&ition%. 5o' ma" not im!o%e an" )'rther
re%triction% on the reci!ient%H e;erci%e o) the right% grante& herein.
5o' are not re%!on%i(le )or en)orcing com!liance (" thir& !artie% to
thi% Licen%e.
L. 6)0 a% a con%e9'ence o) a co'rt A'&gment or allegation o) !atent
in)ringement or )or an" other rea%on 1not limite& to !atent i%%'e%20
con&ition% are im!o%e& on "o' 1.hether (" co'rt or&er0 agreement or
other.i%e2 that contra&ict the con&ition% o) thi% Licen%e0 the" &o not
e;c'%e "o' )rom the con&ition% o) thi% Licen%e. 6) "o' cannot
&i%tri('te %o a% to %ati%)" %im'ltaneo'%l" "o'r o(ligation% 'n&er thi%
Licen%e an& an" other !ertinent o(ligation%0 then a% a con%e9'ence "o'
ma" not &i%tri('te the ,rogram at all. For e;am!le0 i) a !atent
licen%e .o'l& not !ermit ro"alt"-)ree re&i%tri('tion o) the ,rogram ("
all tho%e .ho receive co!ie% &irectl" or in&irectl" thro'gh "o'0 then
the onl" .a" "o' co'l& %ati%)" (oth it an& thi% Licen%e .o'l& (e to
re)rain entirel" )rom &i%tri('tion o) the ,rogram.
6) an" !ortion o) thi% %ection i% hel& invali& or 'nen)orcea(le 'n&er
an" !artic'lar circ'm%tance0 the (alance o) the %ection i% inten&e& to
a!!l" an& the %ection a% a .hole i% inten&e& to a!!l" in other
circ'm%tance%.
6t i% not the !'r!o%e o) thi% %ection to in&'ce "o' to in)ringe an"
!atent% or other !ro!ert" right claim% or to conte%t vali&it" o) an"
%'ch claim%/ thi% %ection ha% the %ole !'r!o%e o) !rotecting the
integrit" o) the )ree %o)t.are &i%tri('tion %"%tem0 .hich i%
im!lemente& (" !'(lic licen%e !ractice%. an" !eo!le have ma&e
genero'% contri('tion% to the .i&e range o) %o)t.are &i%tri('te&
thro'gh that %"%tem in reliance on con%i%tent a!!lication o) that
%"%tem/ it i% '! to the a'thor<&onor to &eci&e i) he or %he i% .illing
to &i%tri('te %o)t.are thro'gh an" other %"%tem an& a licen%ee cannot
im!o%e that choice.
Thi% %ection i% inten&e& to make thoro'ghl" clear .hat i% (elieve& to
(e a con%e9'ence o) the re%t o) thi% Licen%e.
8. 6) the &i%tri('tion an&<or '%e o) the ,rogram i% re%tricte& in
certain co'ntrie% either (" !atent% or (" co!"righte& inter)ace%0 the
original co!"right hol&er .ho !lace% the ,rogram 'n&er thi% Licen%e
ma" a&& an e;!licit geogra!hical &i%tri('tion limitation e;cl'&ing
tho%e co'ntrie%0 %o that &i%tri('tion i% !ermitte& onl" in or among
co'ntrie% not th'% e;cl'&e&. 6n %'ch ca%e0 thi% Licen%e incor!orate%
the limitation a% i) .ritten in the (o&" o) thi% Licen%e.
9. The Free -o)t.are Fo'n&ation ma" !'(li%h revi%e& an&<or ne. ver%ion%
o) the *eneral ,'(lic Licen%e )rom time to time. -'ch ne. ver%ion% .ill
(e %imilar in %!irit to the !re%ent ver%ion0 ('t ma" &i))er in &etail to
a&&re%% ne. !ro(lem% or concern%.
Each ver%ion i% given a &i%ting'i%hing ver%ion n'm(er. 6) the ,rogram
%!eci)ie% a ver%ion n'm(er o) thi% Licen%e .hich a!!lie% to it an& Kan"
later ver%ionK0 "o' have the o!tion o) )ollo.ing the term% an& con&ition%
either o) that ver%ion or o) an" later ver%ion !'(li%he& (" the Free
-o)t.are Fo'n&ation. 6) the ,rogram &oe% not %!eci)" a ver%ion n'm(er o)
thi% Licen%e0 "o' ma" choo%e an" ver%ion ever !'(li%he& (" the Free -o)t.are
Fo'n&ation.
10. 6) "o' .i%h to incor!orate !art% o) the ,rogram into other )ree
!rogram% .ho%e &i%tri('tion con&ition% are &i))erent0 .rite to the a'thor
to a%k )or !ermi%%ion. For %o)t.are .hich i% co!"righte& (" the Free
-o)t.are Fo'n&ation0 .rite to the Free -o)t.are Fo'n&ation/ .e %ometime%
make e;ce!tion% )or thi%. 4'r &eci%ion .ill (e g'i&e& (" the t.o goal%
o) !re%erving the )ree %tat'% o) all &erivative% o) o'r )ree %o)t.are an&
o) !romoting the %haring an& re'%e o) %o)t.are generall".
N4 D3GG3NT5
11. @EC3+-E T>E ,G4*G3 6- L6CEN-E7 FGEE 4F C>3G*E0 T>EGE 6- N4 D3GG3NT5
F4G T>E ,G4*G30 T4 T>E E=TENT ,EG6TTE7 @5 3,,L6C3@LE L3D. E=CE,T D>EN
4T>EGD6-E -T3TE7 6N DG6T6N* T>E C4,5G6*>T >4L7EG- 3N7<4G 4T>EG ,3GT6E-
,G4N67E T>E ,G4*G3 K3- 6-K D6T>4+T D3GG3NT5 4F 3N5 86N70 E6T>EG E=,GE--E7
4G 6,L6E70 6NCL+76N*0 @+T N4T L66TE7 T40 T>E 6,L6E7 D3GG3NT6E- 4F
EGC>3NT3@6L6T5 3N7 F6TNE-- F4G 3 ,3GT6C+L3G ,+G,4-E. T>E ENT6GE G6-8 3-
T4 T>E ^+3L6T5 3N7 ,EGF4G3NCE 4F T>E ,G4*G3 6- D6T> 54+. ->4+L7 T>E
,G4*G3 ,G4NE 7EFECT6NE0 54+ 3--+E T>E C4-T 4F 3LL NECE--3G5 -EGN6C6N*0
GE,36G 4G C4GGECT64N.
12. 6N N4 ENENT +NLE-- GE^+6GE7 @5 3,,L6C3@LE L3D 4G 3*GEE7 T4 6N DG6T6N*
D6LL 3N5 C4,5G6*>T >4L7EG0 4G 3N5 4T>EG ,3GT5 D>4 35 476F5 3N7<4G
GE76-TG6@+TE T>E ,G4*G3 3- ,EG6TTE7 3@4NE0 @E L63@LE T4 54+ F4G 733*E-0
6NCL+76N* 3N5 *ENEG3L0 -,EC63L0 6NC67ENT3L 4G C4N-E^+ENT63L 733*E- 3G6-6N*
4+T 4F T>E +-E 4G 6N3@6L6T5 T4 +-E T>E ,G4*G3 16NCL+76N* @+T N4T L66TE7
T4 L4-- 4F 73T3 4G 73T3 @E6N* GEN7EGE7 6N3CC+G3TE 4G L4--E- -+-T36NE7 @5
54+ 4G T>6G7 ,3GT6E- 4G 3 F36L+GE 4F T>E ,G4*G3 T4 4,EG3TE D6T> 3N5 4T>EG
,G4*G3-20 ENEN 6F -+C> >4L7EG 4G 4T>EG ,3GT5 >3- @EEN 37N6-E7 4F T>E
,4--6@6L6T5 4F -+C> 733*E-.
EN7 4F TEG- 3N7 C4N76T64N-
8o0 to A**ly These Ter&s to Bour Ne0 Progra&s
6) "o' &evelo! a ne. !rogram0 an& "o' .ant it to (e o) the greate%t
!o%%i(le '%e to the !'(lic0 the (e%t .a" to achieve thi% i% to make it
)ree %o)t.are .hich ever"one can re&i%tri('te an& change 'n&er the%e term%.
To &o %o0 attach the )ollo.ing notice% to the !rogram. 6t i% %a)e%t
to attach them to the %tart o) each %o'rce )ile to mo%t e))ectivel"
conve" the e;cl'%ion o) .arrant"/ an& each )ile %ho'l& have at lea%t
the Kco!"rightK line an& a !ointer to .here the )'ll notice i% )o'n&.
Xone line to give the !rogramH% name an& a (rie) i&ea o) .hat it &oe%.B
Co!"right 1C2 X"earB Xname o) a'thorB
Thi% !rogram i% )ree %o)t.are/ "o' can re&i%tri('te it an&<or mo&i)"
it 'n&er the term% o) the *N+ *eneral ,'(lic Licen%e a% !'(li%he& ("
the Free -o)t.are Fo'n&ation/ either ver%ion 2 o) the Licen%e0 or
1at "o'r o!tion2 an" later ver%ion.
Thi% !rogram i% &i%tri('te& in the ho!e that it .ill (e '%e)'l0
('t D6T>4+T 3N5 D3GG3NT5/ .itho't even the im!lie& .arrant" o)
EGC>3NT3@6L6T5 or F6TNE-- F4G 3 ,3GT6C+L3G ,+G,4-E. -ee the
*N+ *eneral ,'(lic Licen%e )or more &etail%.
5o' %ho'l& have receive& a co!" o) the *N+ *eneral ,'(lic Licen%e
along .ith thi% !rogram/ i) not0 .rite to the Free -o)t.are
Fo'n&ation0 6nc.0 $1 Franklin -t0 Fi)th Floor0 @o%ton0 3 02110-1Y01 +-3
3l%o a&& in)ormation on ho. to contact "o' (" electronic an& !a!er mail.
6) the !rogram i% interactive0 make it o't!'t a %hort notice like thi%
.hen it %tart% in an interactive mo&e:
*nomovi%ion ver%ion 690 Co!"right 1C2 "ear name o) a'thor
*nomovi%ion come% .ith 3@-4L+TEL5 N4 D3GG3NT5/ )or &etail% t"!e _%ho. .H.
Thi% i% )ree %o)t.are0 an& "o' are .elcome to re&i%tri('te it
'n&er certain con&ition%/ t"!e _%ho. cH )or &etail%.
The h"!othetical comman&% _%ho. .H an& _%ho. cH %ho'l& %ho. the a!!ro!riate
!art% o) the *eneral ,'(lic Licen%e. 4) co'r%e0 the comman&% "o' '%e ma"
(e calle& %omething other than _%ho. .H an& _%ho. cH/ the" co'l& even (e
mo'%e-click% or men' item%--.hatever %'it% "o'r !rogram.
5o' %ho'l& al%o get "o'r em!lo"er 1i) "o' .ork a% a !rogrammer2 or "o'r
%chool0 i) an"0 to %ign a Kco!"right &i%claimerK )or the !rogram0 i)
nece%%ar". >ere i% a %am!le/ alter the name%:
5o"o&"ne0 6nc.0 here(" &i%claim% all co!"right intere%t in the !rogram
_*nomovi%ionH 1.hich make% !a%%e% at com!iler%2 .ritten (" ?ame% >acker.
X%ignat're o) T" CoonB0 1 3!ril 1989
T" Coon0 ,re%i&ent o) Nice
Thi% *eneral ,'(lic Licen%e &oe% not !ermit incor!orating "o'r !rogram into
!ro!rietar" !rogram%. 6) "o'r !rogram i% a %'(ro'tine li(rar"0 "o' ma"
con%i&er it more '%e)'l to !ermit linking !ro!rietar" a!!lication% .ith the
li(rar". 6) thi% i% .hat "o' .ant to &o0 '%e the *N+ Li(rar" *eneral
,'(lic Licen%e in%tea& o) thi% Licen%e.
Li#ense for ,#intilla and ,#iTE
Co!"right 1998-200Y (" Neil >o&g%on Xneilh1at2%cintilla1&ot2orgB
3ll Gight% Ge%erve&
,ermi%%ion to '%e0 co!"0 mo&i)"0 an& &i%tri('te thi% %o)t.are an& it% &oc'mentation )or an" !'r!o%e an& .itho't )ee i% here(" grante&0
!rovi&e& that the a(ove co!"right notice a!!ear in all co!ie% an& that (oth that co!"right notice an& thi% !ermi%%ion notice a!!ear in
%'!!orting &oc'mentation.
NE6L >47*-4N 76-CL36- 3LL D3GG3NT6E- D6T> GE*3G7 T4 T>6- -4FTD3GE0 6NCL+76N* 3LL 6,L6E7 D3GG3NT6E- 4F
EGC>3NT3@6L6T5 3N7 F6TNE--0 6N N4 ENENT ->3LL NE6L >47*-4N @E L63@LE F4G 3N5 -,EC63L0 6N76GECT 4G C4N-E^+ENT63L
733*E- 4G 3N5 733*E- D>3T-4ENEG GE-+LT6N* FG4 L4-- 4F +-E0 73T3 4G ,G4F6T-0 D>ET>EG 6N 3N 3CT64N 4F C4NTG3CT0
NE*L6*ENCE 4G 4T>EG T4GT64+- 3CT64N0 3G6-6N* 4+T 4F 4G 6N C4NNECT64N D6T> T>E +-E 4G ,EGF4G3NCE 4F T>6- -4FTD3GE.

You might also like