Kodebit-programtillegget¶
Skriv en kort forstavelse, trykk ++tab++, og den foldes ut til en hel konstruksjon — en
for-løkke, et klasseskjelett, en Markdown-tabell — med markøren klar i det første
feltet du skal fylle ut. Tab/Shift+Tab går gjennom feltene, Esc avslutter.
Programtillegget gir også Fil ▸ Ny fra mal… for å stillasere hele filer.
Å folde ut en kodebit¶
- Skriv en kodebits forstavelse (for eksempel
fori en C++-fil). - Trykk ++tab++. Forstavelsen erstattes av kodebitens kropp — som ett angretrinn — og det første feltet merkes, klart til å skrives over.
- Trykk ++tab++ for å hoppe til det neste feltet, ++shift+tab++ for å gå tilbake.
- Etter det siste feltet setter ++tab++ markøren på kodebitens sluttplass. ++esc++ avslutter økten når som helst og lar teksten stå slik den er skrevet.
Er ordet foran markøren ikke en kodebitforstavelse, rykker ++tab++ inn som vanlig — tasten lånes bare når det er noe å folde ut. Mens fullføringslisten er åpen, hører ++tab++ til listen.
En utfolding over flere linjer arver innrykket fra den linjen du skrev den på, og linjeskiftene dens følger dokumentets konvensjon (CRLF/LF).
Kodebiter i fullføringslisten¶
Kodebitenes forstavelser kommer også fram i listen for automatisk fullføring, merket med et lite tegn, så de skiller seg ut fra alminnelige ord. Tar du imot et kodebitelement, foldes det ut med det samme, og feltøkten begynner — det samme som å skrive forstavelsen og trykke ++tab++.
Hva en kodebit kan inneholde¶
| Symbol | Betydning |
|---|---|
$1 … $9 |
Tabulatorstoppfelt, som besøkes i tallrekkefølge (uansett hvor de står i kroppen). |
${1:standard} |
Et felt med startinnhold, som merkes når det besøkes. |
$0 |
Der markøren ender opp etter det siste feltet (som standard slutten på kodebiten). |
$FILENAME |
Dokumentets filnavn (tomt for ulagrede buffere). |
$DATE |
Dagens dato i ISO-format (2026-07-06). |
$SELECTION |
Den teksten som var merket da kodebiten ble utløst. |
$CLIPBOARD |
Utklippstavlens gjeldende tekst. |
\$ |
Et bokstavelig dollartegn. |
Alt som er galt formet, settes inn bokstavelig i stedet for å feile. Et feltnummer som gjentas i kroppen, beholder bare den første forekomsten sin som et levende felt.
Å styre kodebitene¶
Innstillinger ▸ Kodebiter viser hver kodebit — både de medfølgende settene og dine egne. Derfra kan du:
- Legg til… en ny kodebit: forstavelse, omfang (kommaadskilte språk-id-er som
cpp, c; tomt eller*gjelder overalt), beskrivelse og kropp. - Redigere… dine kodebiter. Redigerer du en medfølgende kodebit, lages din egen kopi, som går foran den medfølgende (samme forstavelse og omfang).
- Fjerne dine kodebiter (de medfølgende kan ikke fjernes — overskygg dem i stedet).
Det følger med sett for C/C++, Python, JavaScript/TypeScript og Markdown, pluss to
allmenne hjelpere (date, clip). Kodebitene dine lagres som JSON i
programtilleggets datamappe (snippets/user.json); du kan også legge flere
*.json-filer der — formatet er det samme som i de medfølgende filene:
{
"language": ["cpp", "c"],
"snippets": [
{
"prefix": "for",
"description": "indexed for loop",
"body": ["for (${1:int i = 0}; ${2:i < count}; ${3:++i})", "{", "\t$0", "}"]
}
]
}
Kropper er tabeller av linjer. En "scopes"-tabell per kodebit overstyrer
"language"-standarden for hele filen.
Filmaler¶
Fil ▸ Ny fra mal… åpner en velger med filstillaser — en C++-kildefil med main, en
hodefil med et inkluderingsvern, et Python-skript, et Markdown-dokument, en HTML-side.
Den valgte malen åpnes som et nytt, ulagret dokument med variablene sine ($DATE,
$CLIPBOARD …) alt satt inn; feltsymboler faller sammen til standardteksten sin.
Maler er også JSON-filer (templates/*.json, både medfølgende og i programtilleggets
datamappe):
{
"templates": [
{
"name": "Python script",
"suggestedName": "script.py",
"body": ["#!/usr/bin/env python3", "", ""]
}
]
}
Begrensninger¶
- Et gjentatt feltnummer speiles ikke (skriver du i felt 1, oppdateres ikke en annen
$1); senere forekomster er alminnelig tekst. - Nøstede plassholdere (
${1:${2:x}}) støttes ikke; den indre teksten tas bokstavelig. $FILENAMEer tomt i ulagrede buffere.