-
-
Notifications
You must be signed in to change notification settings - Fork 136
eliminate Jupyter's command mode #27
Comments
As it seems to be trickier than thought to hijack the |
Hum... This would change the concept of jupyter-vim-binding so I should be really careful to decide.
So current my feeling for this proposal is a bit negative. Let me know more positive points. |
No worries - this is just a general idea that I had ;-)
Hmm we could always remap them or use another leader key?
How about making this an opt-in option until we have figured out whether this would conflict with other plugins?
Well the main advantage of working purely in a "VimMode" are (1) is it's less confusing in which mode one currently is in (2) it's faster because one doesn't need to switch from command to edit mode all the time. I was annoyed a lot by needing to switch back to the command mode for daily actions like running a cell, toggling the output or deleting the cell. If you don't like this so much, I can also add this to the wiki and we wait on the feedback from other users ;-) |
Make sense. But give me a time...
I'm not really sure if I don't like this. I'll try when I have enough time to implement this feature. |
I for one fully agree with the greenify and think that having a single "vim mode" would simplify the navigation around the worksheet substantially. As a side note, this is how the vim mode editing in sage notebooks works. |
Thanks for the feedback :-)
Could you show me a working example? I would like to try. |
More specifically I meant sage-math-cloud notebooks (https://cloud.sagemath.com/) - although recently I think the server portion has been fully open sourced so one can probably run the whole thing locally. To see it in action you might have to create an account with them (which you may or may not want to do), open up a new sage notebook, and in settings set editing to vim. By default, in those notebooks, pressing 'j' when at bottom of a cell will automatically move you to the next cell, while keeping you in vim's command mode.... there is no going back after using it for a while ;) |
Yeah, 👍 here. The multiple nested modes are suuuuper confusing: there's non-edit mode, then edit-mode-but-really-in-vim-command-mode, and then true edit-mode-vim-edit-mode … Navigation still stumps me constantly; I'd realllllly prefer to see what @petergthatsme describes: |
I would love to see this separation suggested by @greenify. Also, I tend to hit ESC sometimes several times. If there is no overlap of shortcuts, would it be possible to stay in vim mode in the current cell? Thanks! |
Actually me too. But currently there is no chance to stay in vim mode. This suggested implementation requires big change so need time. But currently I don't have enough time to focus on this large implementation. |
As like you guys, I'm heavy user of jupyter-vim-binding and I also feel annoying for three individual modes (Jupyter Command | Vim Command | Vim Insert) so sending me a PR is really welcome :-) |
i'm probably missing something as haven't played with the code enough... but wouldn't disabling leaving the vim mode via ESC in leaveInsertOrNormalMode() along with the update from [(https://github.com//pull/31)] but a good first step to basically not need the "jupyter command" mode for normal operations? |
Hum... what do you guys think about operations like:
I'm not sure about mouse operation yet. |
IMHO the long term goal should be to get rid of the Jupyter mode altogether... but at as a starting point your proposal would work. |
The Shift-ESC proposal sounds very much worth trying. |
I knew I'm a person who try too hard to make a new one lol. See #51 and please give me feedback to improve the new version |
great - thanks for doing this... i will play with the new code base shortly, once i get a little time |
tl;dr: There is only the
j
andk
feature that we would loose by eliminating Jupyter's command mode.For me it just feels wrong that we have three different modes: (1) Jupyter command's mode, (2) CodeMirror's/Vim' command mode and (3) CodeMirror's/Vim' edit mode (let's leave the visual mode out).
In my humble opinion we don't need Jupyter's command mode and could stay in CodeMirror's command mode the entire time - I have looked at all existing command mode mappings and here is my opinion/result:
Should work fine
Easily resolved
-> only use
shift-o
Edit mode would only be vim's edit mode.
This would just leave vim's insert mode.
I propose
shift-y
,shift-d
,shift-p
andctrl-shift-p
. This could also be different, but should be consistent with the other commands, so thatshift-letter
is always below andctrl-shift-letter
is above (orctrl-letter
is below) - anyways I hope my point is clear ;-)I propose
shift-g
andshift-u
.I am not sure how useful those commands really are, so how about
ctrl-h,1
,ctrl-h,2
... ?(
ctrl-h
is usually mapped to the history in browsers, but I would safely assume that one doesn't need to access it during vim mode)Some work/action required
I would imagine to patch those commands so once
j
hits the last line of a cell, it will automatically jump to the first line of the next - et vice versa fork
.I will open a separate issue for that ;-)
The text was updated successfully, but these errors were encountered: