Søgning og flerfilssøgning

Søg efter tekst

Ctrl-F- Søg, Ctrl-R- Erstat

I-søgning

Den almindelige søgning med Redigér->Søg kræver at du angiver hele søgebegrebet inden du starter. Oftest er det meget hurtigere at søge inkrementelt. Hvis du klikker på søgefeltet som hedder I-søg i værktøjslinjen, sker søgningen mens du skriver. Du vil mærke at det ønskede resultat allerede er der når du har skrevet 3 eller 4 tegn.

Grep

Begge søgemekanismer som blev beskrevet ovenfor er begrænsede til søgning i én kildekodefil. Et yderligere værktøj som lader dig søge gennem et (muligvis stort) antal filer er tilgængeligt via punktet Søg i filer... i menuen Redigér. Det er blot en grænseflade til programmet grep(1).

I dialogen kan du angive hvilke filer der skal søges i. Der er et antal joker-mønstre tilgængelige i et kombinationsfelt. På denne måde kan du let begrænse søgemekanismen til inkluderingsfiler. Desuden angiver du en mappe hvor søgningen startes. Hvis du afkrydser feltet Rekursiv, går søgningen gennem alle mapper i hierarkiet under den angivne.

Søgebegrebet er generelt et regulært udtryk som følger POSIX-syntaksen. Du kan for eksempel bruge begrebet "\<K.*", hvis du vil finde alle ord som begynder med bogstavet K. Følgende tegn tolkes på en særlig måde:

. Matcher alle tegn
^ Matcher begyndelsen af en linje
$ Matcher slutningen af en linje
\< Matcher begyndelsen af et ord
\> Matcher slutningen af et ord
? Matcher foregående punkt mindre end en gang
* Matcher det foregående punkt nul eller eller flere gange
+ Matcher det foregående punkt en eller flere gange
{n} Matcher det foregående punkt nøjagtigt n gange
{n,} Matcher det foregående punkt n eller flere gange
{,n} Matcher foregående punkt mindre end n gange
{n,m} Matcher foregående punkt mindst n gange, men færre end m gange

Tilbagereferencer til deludtryk indeni parenteser er også tilgængelige med notationen \n.

Som en særlig bonus for C++ programmører, er der nogle søgeskabeloner tilgængelige for typiske mønstre. De tillader dig for eksempel at søge efter alle kald af medlemsfunktioner for et vist objekt.

Når du har startet søgningen ved at klikke på knappen Søg, udføres den af en ydre, asynkron proces. Alle punkter som findes, ses i visningen som hedder Grep. Derefter kan du gå til de fundne punkter ved at klikke på dem. Bemærk at grep gennemsøger filerne som de er opbevarede i filsystemet. Hvis du har ændrede versioner af dem i editoren, kan du få forkerte linjenumre, eller visse ugyldige fundne punkter. Du kan undgå dette ved at gemme alle filer inden søgningen.