diff options
| author | Chris Hebert <8251796+cphbrt@users.noreply.github.com> | 2026-08-05 05:37:02 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-05 06:37:02 -0400 |
| commit | e58f29ca3e6935af5b14879db1e8f2b959555c10 (patch) | |
| tree | d52c800beab0e2e4c14d63153807605ea0954b35 /runtime/plugin/python_setup.vim | |
| parent | 2e3785a702e0f107d22cb32c51f121b157b887b8 (diff) | |
| download | rneovim-e58f29ca3e6935af5b14879db1e8f2b959555c10.tar.gz rneovim-e58f29ca3e6935af5b14879db1e8f2b959555c10.tar.bz2 rneovim-e58f29ca3e6935af5b14879db1e8f2b959555c10.zip | |
fix(terminal): OSC 52 multiline copy replaces newlines with NUL #41097
Problem: An OSC 52 sequence from a :terminal job passes the decoded
payload to the clipboard provider as a single list item. Command-line
providers (pbcopy, xclip, ...) receive it with channel semantics, where
a newline inside an item is sent as NUL (:h chansend()), so multiline
copies arrive with NUL bytes instead of newlines.
Solution: Split the payload on newlines into a proper list of lines.
A trailing newline yields a final empty item, which chansend() turns
back into a newline, so payloads round-trip exactly.
Diffstat (limited to 'runtime/plugin/python_setup.vim')
0 files changed, 0 insertions, 0 deletions