diff --git a/tabby-terminal/src/api/baseTerminalTab.component.ts b/tabby-terminal/src/api/baseTerminalTab.component.ts index 3a6ebba46d0b5c05b3afa2c401cdacf6d8ba80ff..88b6d6643b8170279db5d295e99e34cc93f7bf54 100644 --- a/tabby-terminal/src/api/baseTerminalTab.component.ts +++ b/tabby-terminal/src/api/baseTerminalTab.component.ts @@ -422,15 +422,16 @@ export class BaseTerminalTabComponent extends BaseTabComponent implements OnInit async paste (): Promise { let data = this.platform.readClipboard() - if (this.config.store.terminal.bracketedPaste && this.frontend?.supportsBracketedPaste()) { - data = `\x1b[200~${data}\x1b[201~` - } if (this.hostApp.platform === Platform.Windows) { data = data.replaceAll('\r\n', '\r') } else { data = data.replaceAll('\n', '\r') } + if (data.endsWith('\n')) { + data = data.substring(0, data.length - 1) + } + if (!this.alternateScreenActive) { data = data.trim() @@ -451,6 +452,10 @@ export class BaseTerminalTabComponent extends BaseTabComponent implements OnInit } } } + + if (this.config.store.terminal.bracketedPaste && this.frontend?.supportsBracketedPaste()) { + data = `\x1b[200~${data}\x1b[201~` + } this.sendInput(data) }