mirror of
https://github.com/neovim/neovim.git
synced 2026-08-14 11:29:31 +00:00
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.