Teksteditor

En teksteditor (norsk: tekstredigeringsverktøy) er et dataprogram for å redigere ren tekst. Enkle redigeringsverktøy følger med de aller fleste operativsystemer, men det fins også spesialiserte programmer utviklet med tanke på systemadministrasjon og redigering av kildekode.

Redigering av ren tekst
En teksteditor skiller seg fra et tekstbehandlingsprogram ved at den blir brukt til å lage, endre og lagre rene tekstfiler med ulike tegnsett.

Teksteditorer kan ikke vise filer med skjult formatering, slik tekstbehandlere og publiseringsverktøy gjør. Funksjoner som sideoppsett og bildebruk fins ikke, ikke engang enkel formatering som utheving og kursiv. Disse programmene er derfor uegnet til å redigere dokumenter og publikasjoner. For systemadministratorer, programmerere og webutviklere er de likevel et grunnleggende og tiltrengt verktøy på grunn av de spesialiserte funksjonene for tekst.

Bakgrunn 
De første teksteditorene – blant annet edlin, som fulgte med MS-DOS – kunne minne om skrivemaskiner, siden de bare arbeidet med én og én linje av gangen. Mange av de tidlige linjeeditorene kunne slette eller sette inn enkelte linjer, eller hele blokker, med tekst. De kunne også flytte en linje eller en tekstblokk til et annet sted i dokumentet. 

Etter hvert ble det utviklet programmer som kunne bruke hele skjermen, og på den måten fikk brukeren se større deler av filen i sammenheng. MS-DOS Editor (edit) og vi for Unix var utbredde programmer, som brukte kommandoer og tastatursnarveier for å endre på og navigere i teksten.

Moderne teksteditorer har ofte menyer og verktøyknapper, slik som andre dataprogrammer med grafiske brukergrensesnitt. Navigering ved hjelp av mus har kommet i tillegg til piltastene.

BBEdit, jEdit, Notepad++ og UltraEdit tilhører siste generasjon grafiske teksteditorer. Flere av disse er programmerbare, på tilsvarende vis som den avanserte, og fremdeles brukte, Emacs-editoren fra foregående generasjon.

Typer og funksjoner 
De enkleste teksteditorene er gjerne operativsystemene sine. De kan bare lage, lagre, skrive ut, klippe og lime tekst. Notisblokk (Windows), TextEdit (OS X) gedit (GNOME) og Kate (KDE) er typiske eksempler på slike enkle programmer. Slike programmer er svært raske sett i forhold til tekstbehandlere.

Avanserte teksteditorer kan være frittstående eller kjerne i et integrert utviklingsmiljø (IDE). De er langt kraftigere verktøy for dem som skal redigere kildekode-, (X)HTML- og konfigurasjonsfiler.

Vanlige funksjoner er:
 Støtte for ulike tegnsett/formater, som ANSI/ASCII og Unicode
 Støtte for ulike programmeringsspråk
 Støtte for nettverk, tjenere og Internett-protokoller
 Støtte for prosjekter
 Støtte for filer som er for store til å få plass i datamaskinminnet
 Bruk av tegnmønstre (regulære uttrykk)
 Kraftige søk- og teksterstatningsverktøy
 Mellomlagring av endringer (revisjonskontroll)
 Mellomlagring av flere utklipp
 Autofullføring av nøkkelord programmeringsspråkene bruker
 Syntaksmerking: Funksjoner, navn og nøkkelord blir gjerne uthevet i forskjellige farger for økt lesbarhet
 Enkle metoder for å vise/skjule kodeblokker og for å lage bokmerke i kildekoden
 Makroer
 Tekst- og filsammenligning
 Spesialiserte programtillegg
 Integrasjon med verktøy som validatorer, kompilatorer og debuggere, filtrering
 Redigering av binærfiler
 Stavekontroll

Tekstredigering