Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Theia Editor Key Bindings switching (Default, VI, Emacs) #9244

Closed
vparfonov opened this issue Mar 26, 2018 · 7 comments
Closed

Theia Editor Key Bindings switching (Default, VI, Emacs) #9244

vparfonov opened this issue Mar 26, 2018 · 7 comments
Assignees
Labels
kind/enhancement A feature request - must adhere to the feature request template.
Milestone

Comments

@vparfonov
Copy link
Contributor

Provide ability for changing editor Key Bindings (Default, VI, Emacs)

@vparfonov vparfonov added kind/enhancement A feature request - must adhere to the feature request template. team/ide labels Mar 26, 2018
@vparfonov vparfonov self-assigned this Mar 26, 2018
@RomanNikitenko RomanNikitenko added the status/in-progress This issue has been taken by an engineer and is under active development. label Apr 16, 2018
@RomanNikitenko
Copy link
Member

the plugin with Emacs key bindings is temporarily placed here

@RomanNikitenko RomanNikitenko removed the status/in-progress This issue has been taken by an engineer and is under active development. label Jun 14, 2018
@RomanNikitenko
Copy link
Member

RomanNikitenko commented Jun 14, 2018

Corresponding to this comment Theia does not support chord keybindings properly at the moment, so keybindings for actions like 'Delete blank lines around'(Ctrl+X Ctrl+O) or 'Select All'(Ctrl+X H) are not implemented.
Update: as it turned out, Theia has ability to handle chord keybindings, so I added a few these ones like: Jump to line, Add selection to next find match, QuickOpen a file and so on. Implemented Key Bindings for Emacs you can see here

@RomanNikitenko RomanNikitenko added the status/in-progress This issue has been taken by an engineer and is under active development. label Jul 2, 2018
@RomanNikitenko RomanNikitenko removed the status/in-progress This issue has been taken by an engineer and is under active development. label Sep 13, 2018
@RomanNikitenko
Copy link
Member

depends on eclipse-theia/theia#2783

@epnasis
Copy link

epnasis commented Aug 11, 2019

Can you share update on the plans for introducing VI bindings?

@RomanNikitenko
Copy link
Member

Our first attempt to provide VI and Emacs key bindings was providing own extensions.
Some set of key bindings was implemented within this work.

At some stage of our project development we decided to change approach and invest our efforts for vs code extensions support - it allows to use existed extensions/plugins.
So the work on the issue was stopped till plugin API is aligned with vs code, vs code format of context is supported, sections from package.json of an extensions is used, commands Id is aligned with vs code commands and so on.

I tried to turn on VI and Emacs vs code extensions for theia a few days ago. Looks like theia picks up the key bindings from the extensions

vim

But there are still a lot of conflicts:
errors_keybindings

and I guess we have other incompatibilities.

Unfortunately it still works incorrectly, so something is missing, we should investigate it and define what we need to align with vs code to support these extensions.

@epnasis
Copy link

epnasis commented Aug 13, 2019

Thank you for the update! Having support for VS Code key binding extensions sounds like very good long term decision. Looking forward!

@vparfonov vparfonov added this to the Backlog - IDE 1 milestone Oct 30, 2019
@vinokurig
Copy link
Contributor

@RomanNikitenko RomanNikitenko removed the status/in-progress This issue has been taken by an engineer and is under active development. label Dec 18, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement A feature request - must adhere to the feature request template.
Projects
None yet
Development

No branches or pull requests

4 participants