You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Keybinding must be carefully defined with use-case described here in mind.
To make complex flow feel very intuitive, easy and natural.
For ease of use, important keybinding must be universal. Usable both in normal editor and narrow-editor.
canceling
confirming
focusing/un-focusing
Auto open narrow(with predefined provider by language-grammar) by moving mouse to corner??
Use-case
Quick previewing
With search/lines provider.
Open narrow:lines and input query immediately.
Auto preview first matching line?(with opening closed fold?)
Closing narrow-editor recover original cursor position/screen-top/fold.
Direct edit multiple line
Open narrow:lines, narrow:search and input query immediately.
Move to item area, and edit-it(with explict entering direct-edit mode?)
Saving buffer(show dialog to confirm? and suppress-able by config-option) apply changes to real-file
How to undo-ing thab bulk-change?
Navigating point of interest
Open narrow:fold, narrow:search
Confirm first matching item, now focus is on original-pane.
next-item, previous-item guide cursor to next/previous point of interest.
As you move to next/previous-item, or any cursor movement/pane-item change reflect current-selected-item indicator on narrow-editor, this will give user "where am I info".
Keep track of current position within items is really important.
next-item then move cursor to different position by mouse-clicking/or via normal-atom-command then next-item SHOULD move to next-item which is relative to CURRENT cursor position.
Unless auto-tracking, next-item can be move-BACK cursor, this is not what user expect. narrow-editor must aware of position/buffer change of bound-editor.
As minimap
Open narrow:fold or narrow:symbols
Move this narrow-editor to rightmost or leftmost position in workspace, so that you can see it in comfortable place.
Each time you focused to different file, symbols(or fold) items are updated.
For fold, you can change fold level by cmd-[, cmd-] in narrow-editor to control granularity level of information.
Yes you can use this as minimap which clickable and shows only important information only.
Further, you can narrow the focus by query.
e.g. in file which file contains multiple classes and some of it have initialize overriding,
In this case, narrowing by initialize query, show only initialize functions in the items.
As TODO list
Place cursor the [TODO] or [FIXME] keyword, then open narrow:search-by-current-word.
Confirm first matching item, now focus is on original-pane.
next-item, previous-item guide cursor to next/previous point of interest.
After you fixed it and removed [FIXME] or [TODO] keyword and saved. items are auto-refreshed.
So remaining items in narrow-editor is [TODO]s you have to done.
When you done all the [TODO]s or [FIXME]s narrow-editor would have no items in the list. DONE.
As this way, you can use this approach when you
Rename variable names in project
Changing argument for particular function(e.g from string argument to object).
Removing deprecated code(after spending enough migration period and now it's time to delete!).
You can concentrate updating code and save then move to next by next-item(ctrl-cmd-n or tab for vim-mode-plus user).
As TOC( table-of-content )
Of course, clickable, narrowable.
Open narrow:symbols, narrow:search, narrow:fold, narrow item by query if necessary.
Click item listed cause auto-preview.
In this scenario, narrow is like minimap which gives overview of code with readable text(in minimap it's gives pictorial overview but text is not readable)
The text was updated successfully, but these errors were encountered:
t9md
changed the title
think about usecase and keystroke flow
[Important] Think about usecase and keystroke flow
Jan 28, 2017
t9md
changed the title
[Important] Think about usecase and keystroke flow
Use case and flow of keystroke
Jan 30, 2017
t9md
changed the title
Use case and flow of keystroke
Use case and flow of keystrokes
Jan 30, 2017
narrow is not settled(phase of experimenting several ideas).
But want to remember use-case that will/was worked.
Keystrokes
Use-case
Quick previewing
With search/lines provider.
narrow:lines
and input query immediately.Direct edit multiple line
narrow:lines
,narrow:search
and input query immediately.Navigating point of interest
narrow:fold
,narrow:search
next-item
,previous-item
guide cursor to next/previous point of interest.next-item
then move cursor to different position by mouse-clicking/or via normal-atom-command thennext-item
SHOULD move tonext-item
which is relative to CURRENT cursor position.next-item
can be move-BACK cursor, this is not what user expect. narrow-editor must aware of position/buffer change of bound-editor.As minimap
narrow:fold
ornarrow:symbols
symbols
(orfold
) items are updated.fold
, you can change fold level bycmd-[
,cmd-]
innarrow-editor
to control granularity level of information.initialize
overriding,initialize
query, show onlyinitialize
functions in the items.As TODO list
[TODO]
or[FIXME]
keyword, then opennarrow:search-by-current-word
.next-item
,previous-item
guide cursor to next/previous point of interest.[FIXME]
or[TODO]
keyword and saved. items are auto-refreshed.[TODO]
s you have to done.[TODO]
s or[FIXME]
s narrow-editor would have no items in the list. DONE.As this way, you can use this approach when you
You can concentrate updating code and save then move to next by
next-item
(ctrl-cmd-n
ortab
for vim-mode-plus user).As TOC( table-of-content )
Of course, clickable, narrowable.
narrow:symbols
,narrow:search
,narrow:fold
, narrow item by query if necessary.In this scenario, narrow is like minimap which gives overview of code with readable text(in minimap it's gives pictorial overview but text is not readable)
The text was updated successfully, but these errors were encountered: