Can't input, can't move cursor when VIM key bindings on

Steps to reproduce

  1. Install Obsidian.
  2. Launch Obsidian.
  3. Open settings by Ctrl + ,.
  4. Turn on Vim key bindings and close settings.
  5. Focus editor pane by left click.
  6. Press down h/j/k/l/i/a, but not working.
  7. Press down cursor key, i can move cursor.

Expected result

move cursor with hjkl and input text.

Actual result

I can not move cursor and input text.

Environment

  • OS: Manjaro Linux.
    • xfce4
    • fcitx
  • Obsidian version: 0.10.11 AppImage.

Additional information

Hi, this is my first post at this forum.

Is there a solution?
How can I investigate the cause?
How do I debug?

Please help me!

Obsidian’s editor is implemented by CodeMirror.

I’m investigating CodeMirror.

I found a HackMD that seems to be using CodeMirror.
Similarly, the cursor in normal mode doesn’t work!

May be a CodeMirror’s issue.

I am also using by the AppImage on Ubuntu 18.04 and I can’t reproduce this. Do you have something out of the ordinary with your keyboard? Does it happen anywhere else?

I also encountered same problem with fcitx-skk.
But in my case, generic input method would works fine.

  • Obisidian 0.12.3 : can’t input, move.
  • CodeMirror CodeMirror: Vim bindings demo : can’t input, move.
  • HackMD : can’t input, move.

My environment:

  • ArchLinux: 5.12.4
    • i3 version 4.19.1 (2021-02-01)
  • fcitx: 4.2.9.7
  • fcitx-skk: 0.1.4

After some investigating with Keyboard Event Viewer, I found some differences on JavaScript input events.
Surprisingly it didn’t happen in the Chrome dev/beta build(91.0.4472.69 and 92.0.4503.0).

Normal US Input method(Google Chrome 90.0.4430.212):

fcitx-skk Input method(Google Chrome 90.0.4430.212):

(Please note that circumstances may differ from the original post author.)

1 Like

Thank you for reply!

I also use fcitx-skk :frowning:

1 Like

This issue seems to be fixed. (0.12.13/Installer version v0.12.10)

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.