Fungerar urklippshanterare i terminalen?
Fungerar urklippshanterare i terminalen?
Ja, på macOS gör de det. Terminal.app, iTerm2, Ghostty, Alacritty, kitty, WezTerm och Warp kopierar och klistrar alla in via systemets vanliga pasteboard. En urklippshanterare som Maccy sparar det du kopierar där och kan klistra tillbaka det i terminalen. Undantagen är tmux egna buffertar, text som kopierats på en fjärrdator över SSH och ett par säkerhetsinställningar. Allt det går vi igenom nedan.
Varför fungerar urklippshanterare i terminaler överhuvudtaget?
En urklippshanterare kopplar sig inte in i enskilda appar. Den bevakar systemets gemensamma pasteboard (NSPasteboard.general i macOS-termer) och sparar varje ny post. Allt som skriver till den pasteboarden syns för hanteraren, oavsett om det är en webbläsare, en textredigerare eller en terminalemulator.
Terminalemulatorer på macOS är vanliga Cocoa-appar eller GPU-renderade appar. När du markerar text och trycker Cmd+C skriver emulatorn markeringen till den allmänna pasteboarden, och Cmd+V läser från den. Kommandoradsverktygen pbcopy och pbpaste gör samma sak från skalet. Ett pasteboard-baserat verktyg som Maccy App ser alltså kopior från terminalen på exakt samma sätt som kopior från Safari eller Anteckningar.
Kompatibilitet i överblick
| Scenario | Fångas av en urklippshanterare? | Kommentar |
|---|---|---|
Markera text och Cmd+C i Terminal.app / iTerm2 / Ghostty / Alacritty / kitty / WezTerm / Warp | Ja | Vanlig skrivning till systemets pasteboard. |
echo hello | pbcopy | Ja | Skriver till den allmänna pasteboarden. Det enklaste sättet att testa din installation. |
| iTerm2 “copy on selection” | Ja | Varje markering blir en post i historiken, vilket kan bli rörigt. Kolla iTerm2:s markeringsinställningar. |
| Kopiering i tmux copy-mode (standardkonfiguration) | Oftast nej | Hamnar i tmux interna buffert om du inte kopplar ihop den med systemet (se nedan). |
Kopiering i Vim/Neovim med "+y | Beror på bygget | Kräver stöd för clipboard (ett Vim-bygge med clipboard-stöd, eller Neovims pbcopy-provider). Vanligt y stannar inne i redigeraren. |
| Text markerad i en SSH-session | Bara om terminalen stöder det | Fjärrdatorn har ingen åtkomst till din Macs pasteboard. OSC 52 kan överbrygga det. |
| Att klistra in en post från historiken i terminalen | Ja | Levereras som ren text, rik formatering ignoreras. |
Hur testar man det på 30 sekunder?
- Öppna valfri terminal och kör
echo "clipboard test $(date +%s)" | pbcopy. - Öppna urklippshanterarens historik. I Maccy är standardgenvägen Shift+Cmd+C.
- Den senaste posten ska vara teststrängen. Om den är det fungerar fångsten.
- Markera den och klistra tillbaka i terminalen. Fungerar det också är du klar.
Om fångsten fungerar men inklistringen inte gör det är orsaken nästan alltid behörigheter. Se nästa avsnitt.
Varför klistrar min urklippshanterare inte in i terminalen?
Maccy Mac kan antingen kopiera en post från historiken till urklipp så att du trycker Cmd+V själv, eller klistra in åt dig. Det senare läget fungerar genom att skicka ett syntetiskt Cmd+V till den app som ligger överst, vilket kräver behörigheten Hjälpmedel (Accessibility) i macOS.
Gå igenom följande i ordning:
- Behörigheten Hjälpmedel. Öppna Systeminställningar → Integritet och säkerhet → Hjälpmedel och kontrollera att Maccy är aktiverat. Om appen står med i listan men inte fungerar, slå av och på den, eller ta bort den och lägg till den igen. Det är vanligt efter en uppdatering av macOS eller av appen.
- Inställningen för automatisk inklistring. Kontrollera i Maccys inställningar att automatisk inklistring är påslagen. I annat fall kopierar Maccy bara posten till urklipp och du får klistra in manuellt.
- Secure Keyboard Entry. Terminal.app (Terminal → Secure Keyboard Entry) och iTerm2 (iTerm2 → Secure Keyboard Entry) kan aktivera detta skydd mot avlyssning av tangenttryckningar. Det kan störa vissa verktyg som bevakar eller injicerar tangentbordsinmatning. Om det påverkar din urklippshanterares snabbtangent eller automatiska inklistring beror på hur verktyget är implementerat. Får du problem kan du stänga av det som test, och falla tillbaka på manuell Cmd+V om du vill ha det påslaget.
- Konflikter mellan kortkommandon. Vissa terminaler binder Shift+Cmd+C till egna funktioner (till exempel kopieringsvarianter i vissa emulatorer). Om historikfönstret aldrig öppnas i just en app, byt Maccys globala genväg.
Hur är det med tmux, Vim och SSH?
Det är här de flesta klagomål på att “det inte funkar i terminaler” har sitt ursprung. Urklippshanteraren är hel, men datan når aldrig macOS pasteboard.
tmux
tmux har egna paste-buffertar. När du markerar text i copy-mode sparas den där och inte i systemets urklipp. Två vanliga lösningar:
- Skicka kopiorna vidare till
pbcopymed en bindning sombind -T copy-mode-vi y send -X copy-pipe-and-cancel "pbcopy". - Aktivera alternativet
set-clipboardså att tmux skickar OSC 52-sekvenser till din terminal. Terminalen måste då också tillåta åtkomst till urklipp (se nedan).
Musmarkering i tmux är en annan vanlig källa till förvirring. Med musläget påslaget hanteras markering med dra-och-släpp av tmux i stället för av terminalen. Många terminaler låter dig hålla in en modifierartangent (ofta Option) för att kringgå tmux och använda den inbyggda markeringen. Vilken tangent som gäller varierar mellan terminaler.
Vim och Neovim
Om du yankar med vanligt y stannar texten i Vims onamngivna register. För att nå systemets urklipp yankar du till registret + ("+y) eller sätter clipboard=unnamedplus. Det kräver ett Vim-bygge med stöd för clipboard. Alla bygg har inte det, så kontrollera med vim --version | grep clipboard och leta efter +clipboard. Neovim använder pbcopy/pbpaste på macOS automatiskt när de finns tillgängliga.
SSH-sessioner
Text du markerar i en vim eller tmux på en fjärrdator finns på en maskin som inte kan röra din Macs pasteboard. Markerar du den med musen på terminalnivå kopieras den lokalt som vilken annan text på skärmen som helst. Om ett program på fjärrsidan vill sätta ditt lokala urklipp behövs OSC 52, en escape-sekvens som ber terminalen göra det åt programmet.
Stödet varierar mellan terminaler och är ofta avstängt som standard av säkerhetsskäl. I iTerm2 finns alternativet under Settings → General → Selection (“Applications in terminal may access clipboard”). Många andra moderna terminaler (kitty, WezTerm, Alacritty, Ghostty) har egna OSC 52-inställningar, så läs deras dokumentation. Tänk på att det är ett riktigt förtroendebeslut att låta fjärrprogram skriva till ditt urklipp.
Är det säkert att använda en urklippshanterare tillsammans med en terminal?
I huvudsak ja, med två förbehåll som är värda att ta på allvar.
1. Hemligheter hamnar i historiken
Kommandon som pass -c, op read ... | pbcopy eller att kopiera en API-nyckel ur en .env-fil lägger känslig text på pasteboarden, och alla verktyg som sparar historik lagrar den. Välskötta lösenordshanterare markerar sina kopior som dolda eller tillfälliga (concealed/transient) så att urklippshanterare hoppar över dem, en konvention från nspasteboard.org. Maccy Clipboard respekterar de markeringarna . Men vanligt pbcopy sätter dem inte, så skalet kan inte välja bort lagringen åt dig.
Praktiska alternativ:
- Använd Maccys ignoreringsinställningar (Settings → Ignore) för att hoppa över specifika appar, pasteboard-typer eller textmönster med reguljära uttryck. Du kan till exempel ignorera allt som matchar ett känt token-prefix som
^ghp_för GitHub-tokens eller^sk-för vissa API-nycklar. - Att ignorera hela terminalappen går, men det är trubbigt eftersom du då också tappar alla ofarliga kommandon du kopierar. Om ignorering på appnivå pålitligt fångar
pbcopy-utdata från en terminal beror på hur källappen identifieras. - Ta bort känsliga poster ur historiken direkt efter användning.
- Välj hellre verktyg som inte rör urklipp alls, som
op runeller injicering via miljövariabler, framför att kopiera hemligheter för hand.
Eftersom Maccy är öppen källkod och sparar historiken lokalt på din Mac skickas ingenting till någon server. Det begränsar exponeringen jämfört med urklippshanterare som synkar via molnet, men lokal lagring betyder ändå att allt du kopierat ligger på disk tills du rensar det.
2. Paste hijacking
En skadlig webbsida kan lägga annan text i ditt urklipp än den som visas, till exempel ett ofarligt utseende kommando med ett dolt radbrytningstecken och ett andra kommando efter det. Om du klistrar in text med flera rader i ett skal kan den köras direkt. De flesta moderna terminaler och skal stöder bracketed paste mode, som håller inne inklistring av flera rader tills du trycker Retur. Se till att det är aktivt (färska versioner av zsh har det påslaget som standard, i bash styrs det av enable-bracketed-paste i readline). Med en urklippshanterare är det enkelt att förhandsgranska en post innan du klistrar in den, en bra vana för allt som kopierats från webben.
Praktiska tips för terminaltungt arbete
- Fäst dina standardkommandon. Ettliners du använder ofta (SSH-värdar,
docker-flaggor, kubectl-kontexter) kan du fästa i Maccy så att de överlever historikgränsen. - Använd sökningen. Skriv några tecken av kommandot du letar efter i stället för att skrolla i historiken.
- Håll koll på historikens storlek. Stora loggutdrag som kopierats från terminalen kan svälla ut historiken. Sänk historikstorleken i inställningarna om det stör dig.
- Kommandon med flera rader. Om ett inklistrat kommando blir förvanskat, kontrollera om terminalens skydd vid inklistring eller bracketed paste ändrar beteendet, inte urklippshanteraren.
Vanliga frågor
Fungerar Maccy med iTerm2?
Ja. iTerm2 använder systemets pasteboard för kopiera och klistra in, så Maccy fångar dess kopior och kan klistra in i den. Om automatisk inklistring misslyckas, kontrollera Maccys behörighet för Hjälpmedel och iTerm2:s inställning Secure Keyboard Entry.
Varför syns inte min tmux-markering i urklippshistoriken?
tmux sparar markeringar från copy-mode i en egen buffert. Bind en tangent i copy-mode till att skicka vidare till pbcopy, eller aktivera OSC 52 via set-clipboard och tillåt det i din terminal.
Registrerar urklippshanterare text som kopierats över SSH?
Bara om du kopierar den på terminalnivå (markerar text på skärmen) eller om fjärrappen använder OSC 52 och din terminal tillåter det. Annars är fjärrdatorns urklipp osynligt för din Mac.
Sparar en urklippshanterare mina lösenord från terminalen?
Om du kopierar en hemlighet med pbcopy eller genom att markera den sparas den som vilken annan text som helst. Använd ignoreringsregler, ta bort poster efter användning eller undvik att kopiera hemligheter alls.
Kan jag klistra in med formatering i en terminal?
Nej. Terminaler arbetar med ren text, så formateringen försvinner när du klistrar in, oavsett vilken urklippshanterare du använder.
Sammanfattning
Urklippshanterare fungerar utmärkt i terminaler eftersom terminaler använder samma macOS-pasteboard som allt annat. När något verkar trasigt är det nästan alltid en av tre saker: en app med egen buffert (tmux, Vim), en fjärrsession utan väg till din Macs urklipp, eller en behörighet som Hjälpmedel. Reda ut dem, lägg till en ignoreringsregel för hemligheter, så blir din historik ett av de nyttigaste verktygen i ett kommandoradsbaserat arbetsflöde.
Vill du prova är Maccy gratis och öppen källkod. Vilket urklippsgap drabbar dig oftast: tmux, fjärrsessioner eller något annat?





