Skip to content

CSI u mode confuses neovim #1373

@classabbyamp

Description

@classabbyamp

Contour Terminal version

0.4.0

Installer source

Github: source code cloned (Void package, technically)

Operating System

Void Linux

Architecture

x86-64

Other Software

neovim 0.9.4
vim-surround at this commit, I think: https://github.com/tpope/vim-surround/tree/baf89ad26488f6a7665d51b986f5c7ad2d22b30b

Steps to reproduce

  1. set keyboard layout to non-ANSI QWERTY (I'm using Canadian French, e.g. setxkbmap -layout ca)
  2. enter neovim
  3. enter insert mode and type 'a'
  4. leave insert mode, put the cursor over the a, and type cs'" to change the surrounding ' to "

Expected Behavior

buffer contains "a"

Actual Behavior

buffer contains <80><fc>^B"a<80><fc>^B"

Additional notes

See also:

I believe this is caused by CSI u mode not having the semantics neovim expects. Following the semantics foot uses in the above PR will probably fix this. On my layout, " is Shift + 2 (and ' is Shift + ,, so this can be reproduced with other combinations of characters like cs"')

Metadata

Metadata

Assignees

No one assigned

    Labels

    VT: BackendVirtual Terminal Backend (libterminal API)bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions