Replies: 2 comments 2 replies
-
You have obviously put a lot of thought into this, thanks for the link to Spiral Curriculum, very interesting! It all looks good to me. I would add that you could use Vale as a linter for style to ensure consistency, the Microsoft style guide provided is quite good: https://vale.sh/ |
Beta Was this translation helpful? Give feedback.
-
hey @n0s4 were there PRs etc? (it's unconvenient that github doesn't list the linked/mentioning prs/issues in discussions) what's the status on this? 😃 as i was also thinking on making some suggestions to tutor, so, it would be good to see where this one stands. thanks :) |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I think the tutor could do with a little "refactoring". The first half or so is pretty solid but the last 3 chapters especially were just sort of stuck on ad-hoc.
My idea for a general principal is to briefly showcase the fundamentals of each concept (selections,
multiple cursors, etc.), followed by chapters returning to previous the subjects going into more depth on each and building on previous foundations. Essentially akin to a "Spiral Curriculum".
Vimtutor as an example is quite concise, only consisting of 7 chapters with the most core concepts and commands on a broad range. I think this is a good idea, and if we wanted to go further then we could append chapters covering the more advanced commands of previous topics, keeping it digestible while more comprehensive.
Sections Still to Add
EXTEND/SELECT MODE:
v
FLIP SELECTION:
A-;
FLIP SELECTIONS FORWARD
A-:
CYCLING AND REMOVING SELECTIONS:
)
(
A-,
KEEP/REMOVE SELECTIONS ON REGEX:
K
A-K
ALIGN SELECTIONS:
&
SEARCHING FOR SELECTION:
*
ADDING NEXT SELECTION:
v-n
This is more of a technique than a command, but it's still quite distinctive behavior and I didn't know about it until I was told.
REPEAT SELECTION:
A-.
REPEAT ACTION:
.
REPLACE WITH CHAR:
r
REPLACE WITH REGISTER:
R
space-R
INCREMENT/DECREMENT:
C-a
C-x
REGISTERS:
" <ch>
There are also the "submodes". I think we at least could include goto mode (
g
), match mode (m
) and view mode (z
). We could also talk about window mode (space-w
) but space mode doesn't feel like it fits in what the tutor primarily covers: direct text editing.My Proposal
Consider this a WIP, please point out anything you think could be better.
I've laid this out in a sort of git diff style:
means moved elsewhere and boldcrossed out
++
means new / moved to here. Sections marked with(new)
are not currently included. Note that the chapter titles wouldn't be actual sections - just to define the grouping.This doesn't incorporate the submodes mentioned above, I want to postpone that for now, but it includes all the other "Sections To Add". I'm willing to start work on this but I'd like to hear others' suggestions and ideas first.
The Fundamentals
MORE ON INSERT MODE++ Alternate Insert Commands.
I wanted to move opening lines earlier, and since it is an insert command, I
extracted the other insert commands out into this mini chapter.
Motions and Selections
This chapter has gotten longer now, maybe we should postpone some sections until
later? Then again Motions and Selections are pretty central to Helix so perhaps
they deserve a bit more attention.
v
(new)I also want to add a note for
X
UNDOING++ Common Editor Actions to Cover Before Multiple Selections.
Multiple Cursors
COLLAPSING SELECTIONSSELECTING TO A CHARACTERNot related.&
(new) This is helpful to use in the demo for the next section:A-s
(new)++ More Selection Commands
r
(new) Wanted to mix in a miscellaneous command that refers back to the previous section..
A-.
(new)++ Miscellaneous Text Manipulation
Maybe these should be split up a bit? I like the idea of dropping them in other
chapters like how the change command is in motions & selections, that way you
can immediately use them in tandem with new commands which is more effective
for learning.
R
(new)C-a
C-x
(new)++ Registers & Macros
" <ch>
(new)++ More On Searching
*
(new) Note: mention that searching uses the/
registervn
(new)++ Advanced Selection Commands
)
(
A-,
(new)K
A-K
(new)S
I have an idea for a demo that includes changing case which is part of thereason I moved it here.
MiscCOPYING AND PASTING TEXTCHANGING CASEMACROSJumplist & SearchingUSING THE JUMPLISTSEARCHING IN FILELine Related CommandsJOINING LINESINDENTING LINESOPENING LINESBeta Was this translation helpful? Give feedback.
All reactions