Backspace är en tangent på tangentbordet (ibland betecknad som ← eller med symbolen ⌫) som ursprungligen användes på skrivmaskiner för att flytta skrivmaskinsvagnen en position bakåt. På moderna skärmar flyttar backspace-markören en position åt vänster och raderar det tecken som står före markören, varvid efterföljande text flyttas en position bakåt.
Historia och tidiga användningssätt
På mekaniska skrivmaskiner kunde man till exempel skapa en bokstav med en accent genom att skriva basbokstaven, trycka backspace (så att vagnen flyttade sig ett steg tillbaka) och därefter skriva accenttecknet. Ett enkelt exempel är att skriva ett litet "a" följt av backspace och därefter akut accent för att få "á". Denna metod gav upphov till tekniker för kombination av tecken i tidiga datorsystem, till exempel i ASCII där man ibland använde avståndsmodifierare som karet (^ för circumflex).
Den mekaniska backspace-kompositionen fungerar i praktiken inte längre i moderna textsystem. Den har delvis ersatts av Unicodes mekanism för kombinerande diakritiska tecken (combining diacritics) och av förkomponerade tecken i teckenuppsättningar. Program som TeX eller Microsoft Windows-inmatningsmetoder använder ibland den omvända metoden, där accenten skrivs först och basbokstaven sedan placeras över eller vid sidan om.
ASCII, kontrolltecken och terminaler
Trycker man backspace i en klassisk dataterminal genereras ofta ASCII-koden 08 (BS, Backspace). Denna kontrollkod kan också produceras genom tangentkombinationen Ctrl+H, eftersom bokstaven H är den åttonde bokstaven i det latinska alfabetet och kontroll-tecknen historiskt genererades genom att subtrahera 0x40 från ASCII-värdet.
Om terminalen inte är konfigurerad så att BS flyttar markören bakåt och raderar föregående tecken, kan backspace visas som teckensekvensen ^H (caret, H). Denna sekvens används fortfarande humoristiskt i e-post och chatt för att "ångra" eller visa att en tidigare texttagits bort — på samma sätt som en överstrykning. Exempel (humoristisk bruk):
Min slavdri^H^H^H^H^H^H^H^H^H^H^H^H^H^H^Hchef bestämde sig för att fördröja projektet.
I Unix-liknande terminaler finns även andra kontrollkonstruktioner för redigering på kommandoraden. Ett vanligt kortkommando är ^W, som raderar föregående ord (i Berkeley Unix-linjedisciplinen). En serie ^W kan ersätta många ^H-tryckningar. För att radera hela inmatningsraden används ofta ^U (kill line). Dessa kortkommandon har också spridit sig till textredigerare som Vi.
Teknisk implementering och variationer
I ASCII representerar backspace kontrolltecknet 0x08. Historiskt har det också funnits förvirring mellan backspace (BS, 0x08) och delete (DEL, 0x7F) — vissa terminaler eller kommunikationsinställningar mappade tangenten till 0x7F istället för 0x08, vilket kunde leda till att backspace inte fungerade förväntat vid fjärranslutningar. På Unix-system kan man använda kommandot stty erase för att ange vilken kontrollkod som ska fungera som raderingskommando i terminalen.
I moderna operativsystem har tangentens funktion exponeras på olika sätt:
- Windows: backspace har ofta virtuellt tangentvärde VK_BACK (0x08) och raderar tecknet till vänster om markören.
- macOS: den vanliga Delete-tangenten på Mac-tangentbord fungerar som backspace (dvs. raderar bakåt). För att utföra en "forward delete" (radera tecken efter markören) används ofta Fn+Delete eller en separat Del-tangent på externa tangentbord.
- X Window System (X11) definierar keysym XK_BackSpace för backspace.
Skillnad mellan Backspace och Delete
Backspace raderar normalt tecknet till vänster om markören (bakåt). Delete raderar normalt tecknet till höger om markören (framåt). På fysiska papper eller stansmedia kunde en delete-tangent också "stansa ut" tecken eller markera dem som borttagna. I grafiska miljöer används delete ofta som ett generellt kommando för att ta bort ett objekt (t.ex. en bild i ett dokument eller en fil i en filhanterare), medan backspace inte alltid har denna funktionalitet.
I vissa moderna system och terminalkonfigurationer är tangentbordets backspace kopplat så att det istället skickar ASCII DEL (0x7F) — men funktionen att radera tecknet före markören behålls från användarens perspektiv.
Användning idag och etiketter på tangenten
I grafiska filbläddrare och webbläsare används backspace ofta som genväg för att gå tillbaka till föregående katalog eller webbsida. Observera att många moderna webbläsare har ändrat eller inaktiverat denna funktion för att undvika oavsiktligt navigeringsbortfall när användaren skriver i formulärfält.
Tangenten kan betecknas på olika sätt på fysiska tangentbord, till exempel Backspace, Delete, Erase (t.ex. på XO-1, One Laptop Per Child) eller med en vänsterpil. Symbolen ⌫ används också ibland. Namn och beteende kan variera mellan tillverkare och operativsystem.
Andra sammanhang
I äldre stordatormiljöer kunde kommandot "backspace" användas för att flytta ett magnetband bakåt, vanligtvis till föregående block — ett exempel på hur termen har använts i olika tekniska sammanhang för att beteckna rörelse bakåt eller ångring.
Sammanfattningsvis är backspace en grundläggande tangent för textredigering med rötter i skrivmaskinens mekanik. Dess exakta beteende och kodning har varierat över tid och mellan system, men dess huvudsakliga funktion — att ta bort tecknet till vänster om markören — är densamma i de flesta moderna miljöer.

