- Fix: Make broken "Confirm on update real file" works again thanks to @heftyfunseeker #312
- Improve: No longer move cursor to EOL of prompt when refresh finished as long as cursor was originally at query line. #297
- Fix: No longer use deprecated
undo: 'skip'option when refreshing narrow-editor usingsetTextInBufferRange. #303
- New: Add
agExtraArgsandrgExtraArgssetting forSearchprovider #295, #293.- So that user can specify
--followoptions to let searcher search in symlink.
- So that user can specify
- Breaking: Rename and simplify
directionToOpen.- Old
directionOpenis split out to two newsplitanduseAdjacentPaneoptions. - Old setting value is auto-migrated on pkg activation but following value have no compatible setting, so just ignored.
right:never-use-previous-adjacent-panedown:never-use-previous-adjacent-pane
- Old
- Fix:
Symbolsprovider now correctly refresh items on rebound to different editor. - Experimental:
- Now narrow ui(or
narrow-editor) is special editor which mixins some capabilities which I calloutlet. - In other word, narrow-editor is special editor created by
atom-outletlibrary which I maintain separately. - User do not have to aware of this fact.
- Features:
- Now be able to
relocateeven whennarrow-editoris not focused. - New:
narrow:togglecan hide/show existing narrow on workspace.
- Now be able to
- Now narrow ui(or
- Test: Switch test runner to
atom-mocha-test-runner. - Other: Simplify searcher executable check.
- Surface: Tweak search options button size in controlBar to be a bit smaller.
- Rename: Rename command name. Need update your
keymap.cson, Warn deprecated when old command was used.- Old:
narrow-ui:switch-ui-location - New:
narrow-ui:relocate
- Old:
- New:
relocateUiByTabBarDoubleClickconfig- Default
true - When you clicked tab-bar for ui, clicked ui is relocated(same effect as you invoke
narrow-ui:relocate)
- Default
- Fix: No longer throw exception when searchOptions change commands invoked from provider which doesn't have one(e.g.
symbols,fold).- So calling these commands from non-search provider is safe now.
toggle-search-whole-word,toggle-search-ignore-case,toggle-search-use-regex
- So calling these commands from non-search provider is safe now.
- Improve: Refine startup preview timing to avoid multiple preview call which is unnecessary. #286
- Breaking: Simplify how
getItemsshould be implemented. #287- Now removed requirement to call
Provider.prototype.finishUpdateItemswithingetItems. - Instead just return array of items, it's the message to finish item update.
- Now removed requirement to call
- Improve: suppress cursor flash on
narrow-ui:switch-ui-locationwhen cursor is at query-prompt.
- Improve: atom-scan now direct-editable again #284, #285
- From
v0.48.0,narrow:update-real-filewas disabled for safety(avoid dangerous/immature mutation happening). - Now: By normalizing
atom-scan's item to well fit to direct-edit feature which does whole-line by line replace.
- From
- New, Breaking:
narrow-editorcan open in dock #283- First: If you immediately revert to previous behavior, set global
locationToOpentocenter, that's it!! - What's this?
- In previous version
narrow-editor(=ui) is openable only in center workspace's pane. - From this version
narrow-editoris openable in bothcenterworkspace andbottomdock. - Technically it's openable in other dock like
right,leftbut I want start it frombottomonly.
- In previous version
- User can move
narrow-editorin betweencenterandbottomby- drag&drop
- Clicking provider name at controlBar(e.g. click
scanon controlBar). - Or invoking
narrow-ui:switch-ui-location(no default keymap) command.
- New:
locationToOpenglobal and per-provider config which define default location(centerorbottom).- This value is referred at very first invocation of narrow after atom launch.
- Following narrow invocation open ui at last opened location.
- Last location is kept per provider basis, not shared across providers.
- First: If you immediately revert to previous behavior, set global
- Other improvement:
- Now flash cursor row if items count is greater than 2.(was 5 before but it was a bit strange threshold).
- Centering
narrow-editor's cursor row on startup to reduce chance for getting lost. - No longer unnecessary restore editor state when
focusOnStartConditionwasneverand cursor moved at narrow initiator editor after launch. - Flash current row regardless of
focustonarrow-editoron startup(flashed only onfocusedin previous version).
- Fix: just fix release number bug in CHANGELOG.md.
- Fix: When
narrow:scanstart without any input, don't preview first row item #281- This is regression introduced in v0.60.0.
- Plus: No longer start auto-preview when prompt query was clicked.
- Fix: RegExp search for
search,atom-scan,scandidn't work because of regression.- After v0.57.0.
- Style: Modify match color and line-marker color.
- Fix: When non-narrow-editor was active, first click on narrow-editor didn't start auto-preview item, but no longer.
- New: Config
drawItemAtUpperMiddleOnPreviewto scroll item to be displayed at upper-middle of viewport on preview.- Default enabled for provider
fold,symbolsandproject-symbols - Intention? I use
symbolsbycmd-oshortcut to quickly refer function/method body. So my general workflow is- Encounter function/method, then preview it by
cmd-o. - After reading function body close by
ctrl-g.
- Encounter function/method, then preview it by
- Before this change function sometimes shown at bottom of screen which require hand scroll to read function body.
- Default enabled for provider
- Improve: Update
project-symbols's tagkind.- old:
cfm - new:
cfmr(now JavaScript's method is shown)
- old:
- Improve, Experiment: Automatically append space at end of query on
move-to-promptto input next query immediately #278.
- Fix: No longer throw exception when
core:move-up/core:move-downcommand was executed with empty items #276 - Improve: History #277
- Tune when history is saved for
atom-scan,search,scanprovider(added confirm timing). - When recall history No longer move to item when cursor is at prompt of narrow editor.
- History feature itself is not new, was provided by default keymap which is available globally as long as workspace
has-narrow.ctrl-cmd-[(narrow:previous-query-history)ctrl-cmd-](narrow:next-query-history)
- For user who want to recall history from narrow-editor's prompt as like normal search-tool, define following keymap in
keymap.cson.- NOTE: This is vim-mode-plus user specific example
'atom-text-editor.narrow.narrow-editor.vim-mode-plus.insert-mode.prompt': # with up/down arrow key 'up': 'narrow:previous-query-history' 'down': 'narrow:next-query-history' # or ctrl-p, ctrl-n 'ctrl-p': 'narrow:previous-query-history' 'ctrl-n': 'narrow:next-query-history'
- Tune when history is saved for
- Fix: Regression where markerLayer for highlight
truncationIndicatorwas not defined. #275- No longer throw error where narrow-editor have
[truncated]and scroll to there.
- No longer throw error where narrow-editor have
- Breaking, Plugin Support: Bump
narrowservice version from1.0.0to2.0.0ProviderBaseis no longer provided.- Use
Providerbut usage is different.
- Architecture redesign: Narrow provider use composition rather than inherit. #272
- Each provider no longer inherit
ProviderBase, instead it haveProviderinstance as prop and use it's functionality.
- Each provider no longer inherit
- Refactoring:
- Extract narrow-able editor concern as
NarrowEditorclass. - And more and more but I'm too lazy to put detail here.
- Extract narrow-able editor concern as
- Fix: Regression
toggle-inline-git-diffbutton didn't work.
- Internal: Cleanup, remove lots of unnecessary indirection in code which was remains in historical reason.
- Support: Remove (I think) no longer necessary old warning of vmp specific keymap removal.
- Fix: Inaccurate item choice on
narrow:next-item,narrow:previous-item- Which was caused by comparing point between different file.
- Points are comparable only on same file. Now no longer does this inappropriate comparison.
- New:
git-diff-allprovider supportinline-git-diff. #266- Click new
octfaceicon on controlBar to enable/disableinline-git-diff. - If not installed, manually install or answer
Yesfor auto-install suggestion on clickoctfaceicon timing.
- Click new
- Internal:
- Apply
standardlinter/syntax #267 - Did some code rewriting for readability.
- Apply
- Fix:
foldprovider now collect fold only rather than collect all lines as fold in Atom-v1.24.0-beta
- Fix:
current-project-by-currentno longer throw exception. fixed by @jonboiser thanks!- This is regression introduced in v0.54.2. Sorry
- Fix: Quick workaround for narrow grammar is not set in Atom-v1.24.0-beta0.
- Not sure why calling
pane.activateItemrevert grammar from narrow to null-grammar. - To workaround this, set grammar after
pane.activateItem.
- Not sure why calling
- Fix: Remove leftover
console.logfor providerfold.
- New: Provider
foldnow save foldLevel to config. by @slavaGanzin
- Change in default: More distinguishable/color scheme safe default value for header appearance.
projectHeaderTemplate: default[__HEADER__], was just__HEADER__fileHeaderTemplate: default# __HEADER__, was just__HEADER__
- Fix: No longer access
vimState.modeManager, so no loger warned.
- Fix: Now show keymap removal notification only once.
- Breaking: Remove vim-mode-plus specific default keymap to avoid conflicts. #252
- User can recover older version keymap manually, see wiki.
- New: When
select-filesconfirmed, move to confirmed filePath item. #254- So
select-filescan be used to move to specific filePath item quickly as long as filtering filePaths to show.
- So
- Fix: When revealing on initial open, now flash selected item correctly(was broken so fixed).
- Fix: Broken
narrow:foldfrom Atom-v1.22.0-beta #253
- New: project header and file header styles are now configurable
- Following global setting is used as template for file and project header.(
__HEADER__is replaced with actual value).projectHeaderTemplate: default__HEADER__fileHeaderTemplate: default__HEADER__
- From this release project and file header add no
#prefix. If you like older version's style, you can recall it by setting.projectHeaderTemplateto# __HEADER__fileHeaderTemplate: to## __HEADER__
- Following global setting is used as template for file and project header.(
- Improve: Differentiate file-header color and project-header color on
narrow-editor. - Improve: When
searcher(agorrg) command not found, notify error as notification dialog. @slavaGanzin #244
- Fix: [Critical] Guard infinite loop(Atom freeze) when moving to last line on
narrow-editor. #239, #241.- This issue happen when
editor.scrollPastEndisfalse(default). - This is basically upstream Atom-core's bug to fire
onDidChangeScrollTopevent with same scrollTop value.- Reported/fixed on Atom-core but not released yet.
- This time fix is to ignore event when called with same scrollTop value to avoid infinite loop.
- This issue happen when
- Improve: Truncate long line on
narrow-editor#243- This is to to avoid Atom hang when render very long line
narrow-editor. - Typically happen when searching minified/uglified file.
- New config:
textTruncationThreshold( default200):- Truncate line exceeding this width.
textPrependToTruncatedText( default[truncated]):- When text was truncated, Text
[truncated]is pretended to original text for user easily notice truncation.
- When text was truncated, Text
- This is to to avoid Atom hang when render very long line
- Fix: Critical #239 fix Atom freeze issue.
- When
editor.scrollTopwasfalse( default ), Atom freeze because of infinite loop atonDidChangeScrollTopevent.
- When
- Fix: narrow grammar is not properly set when package panel of narrow was initially opened on Atom launch #240
- This is because package's main is loaded earlier than activation timing when pkg panel was opened.
- Fix: #236 refresh when query change from xxx to empty('').
- This is regression introduced in v0.50.x.
- When query get emptied, still last searched items are displayed where it should be cleared.
- Improve: #237 Redraw control-bar when query including "\n" was inserted.
- Fix, Cosmetic: ControlBar regex button now correctly reflect useRegex state
- Fix:
narrow-ui:open-herenow properly show original editor when active editor changed while previewing.
- Breaking: Rename command from
narrow-ui:confirm-open-heretonarrow-ui:open-here.- This is command introduced in v0.49.0 in a few hours ago. And have default keymap, so the impact should be not big I believe.
- Improve:
narrow-ui:open-hererestore original editor's scrollTop when necessary.- Since user opened item in same pane of UI. The scrollTop change made while preview should be reverted.
- This was not issue before since confirmed item was always opened at original editor's pane.
- New:
narrow-ui:confirm-open-herewhich open file at same pane of UI.Ois mapped by default inread-onlymode of UI.
- Fix: unsaved-change-aware ability of
git-diff-allwas broken from v0.48.1. #234.- Because I blindly use
TextBuffer.loadwhich just load fileContent from disk, so unsaved modification was just ignored.
- Because I blindly use
- Fix: unsaved-change was incorrectly ignored on
update-real-filefrom v0.48.1 #234.- This is same reason of
git-diff-allbug I mentioned above.
- This is same reason of
- Fix:
git-diff-allandupdate-real-fileno longer add temporally opened editor into workspace. #232.
- Fix:
select-filessometimes failed to open when it fail to determine pane to open.- Now no longer fail to open by explicitly specifying which pane to open( it's same pane of original UI ).
- Internal: Avoid overuse of ProviderBase.
- Avoid usage as proxy to utility methods, now explicitly import utility method by each file.
- Breaking: Provider
atom-scanno longer support direct edit.atom-scanuseworkspace.scanmethod internally, and it item truncate matched lineText to fit screen width.- Since
narrow:update-real-fileworks by replacing whole line, thisworkspace.scan's truncation doesn't work fit well. - Why I supported this feature for this provider is just because of my lack of understanding of this caveat.
- New: #230
narrow:git-diff-allnow aware of unsaved modification.- Refresh items without explicit save.
- Old: items are refreshed on save(
editor.onDidSave). - New: items are refreshed on modified(
editor.onDidStopChanging).
- Old: items are refreshed on save(
- Refresh items without explicit save.
- FIX: #227
narrow:search-current-project-by-current-worddid not work correctly.- Always threw
Uncaught TypeError: dir.contains is not a function. but no longer.
- Always threw
- Support: Engine
^1.19.0-beta0. - Internal: All code are converted from CoffeeScript to JavaScript #218, #219, #220
- Improve: Use decoration to highlight narrow-editor.
- Atom v1.19.0 and above allow foreground color change by decoration type
text. - Now when multiple matches found on single line, item in narrow-editor highlight matched part only.
- e.g. scan
foo, for textfoo foo. (NOTE:()surrounded means highlighted)- Old: 1st-item =
(foo) (foo), 2nd-item =(foo) (foo)<- can not distinguish visually - New: 1st-item =
(foo) foo, 2nd-item =foo (foo)<- can see matched part.
- Old: 1st-item =
- All highlight is done by decoration, no longer use grammar info to highlight narrow-editor.
- Atom v1.19.0 and above allow foreground color change by decoration type
- Breaking: #224 Now no longer display line/column info by default.
- Affected provider:
scan,search,atom-scan,git-diff-all,project-symbols
- Affected provider:
- Fix: #226
searchno longer show items for the file not belonging to any project.- This was incorrectly shown if files are modified.
- Fix:
symbolsincorrectly showed file and project header. - Fix:
project-symbolsdid not show file and project header where it should show.
- Fix: Search option state now correctly restored on
narrow:reopen. - New, Experiment: Add service for external custom provider.
- Super experimental, immature state. Will be changed in future.
- Fix: Critical: items for modified files are not shown on ui on
search- Modified files was updated only when modified after ui opened.
- Fix: Critical: when project include modified file,
atom-scanthrow exception.- This is old bug, NOT related to recently introduced modified-file-aware enhancement.
- Fix: Result in no-focus on
narrow:closeif active paneItem was changed after ui open(except preview).- Introduced from v0.42.0.
- Fix: Critical bug
searchfinish rendering before all search task have not yet finished.- In other word, not all items found are rendered on Ui. sorry!.
- Improve: #213
search,atom-scannow aware of unsaved modification.- Refresh items without explicit save.
- Old: items are refreshed on save(
editor.onDidSave). - New: items are refreshed on modified(
editor.onDidStopChanging).
- Old: items are refreshed on save(
- Can direct-edit(
update-real-file) for files which have unsaved modification.- Old: direct-edit warn and cancelled when trying to change files which have unsaved modification.
- New: direct-edit can change files which have unsaved modification.
- Refresh items without explicit save.
- New: QueryHistory support
- History are maintained per provider and persists across Atom reload.
- Max 100 entries are kept.
- New: Default keymap for following keymap to commands for
has-narrowscope.ctrl-cmd-[:narrow:previous-query-historyctrl-cmd-]:narrow:next-query-historyctrl-cmd-e:narrow:next-query-history( override defaultcmd-ebut only when workspace havenarrow-editor)
New: narrow-ui:delete-to-end-of-search-term.
- If cursor is not at end of searchTerm, it delete text till end of searchTerm.
- If cursor is already at end of searchTerm it delete to beginning of line.
- Keystroke
ctrl-uis mapped only onnarrow-editor.promptFix: Whenagsearched withregexenabled, it couldn't find multiple match on single line. - Remove
--nomultilinefrom ag option. #206 - The cause still not yet cleared( I reported to the_silver_searcher repo ).
- With this option enabled, search result found strange position when pattern was regex.
New, Breaking: Now
atom-scan,searchtake searchTerm from first query of narrow-editor #205. - As like
scanprovider have been already doing. - So you can modify searchTerm after start
narrow:search. - Behavioral changes:
- searched items are incrementally rendered instead of collect-all-items-then-render-in-bulk.
- FilePaths appeared on
narrow-editoris no longer ordered, just appeared in the order of finished. - Previously running search task(external process/item rendering) is cancelled on new search request.
- New
refreshDelayOnSearchTermChangecontrol amount of delay to start search.searchandatom-scan: Default700msscan: default10ms
- Breaking: No longer read searchTerm from dedicated
mini-editor. - Breaking: Remove input-history feature( might come back in future )
- Breaking:
spacecontained searchTerm is currently NOT searchable( will find the way in future release ). - Breaking:
rememberUseRegexforsearchandatom-scanwas removed. (will find the way in future release ). - Breaking: Config
useRegexis renamed tosearchUseRegex. No auto-migration, sorry. New: Super usefulquery-current-word. - Replace
narrow-editor's query with cursor-word, andnarrow-editorautomatically refreshed. - You can invoke this command from inside or outside of
narrow-editor. - Breaking: Remove not much useful(IMO) providers. #209
- Removed following providers
bookmarks,linter,git-diff
- Why? Just I want to reduce amount of code I need to maintain.
- I haven't used these providers since then I created, it's just exercise to test architecture of narrow( ui and provider ).
- Sorry in case someone like and uses these providers.
- Removed following providers
- Breaking, Improve: Closing
narrow-editorin normal way no longer activate provider's pane. #210- In Previous release:
- There is no behavioral diff between
narrow:closecommand and closingnarrow-editor's tab manually.
- There is no behavioral diff between
- From this release.
- Closing
narrow-editorby mouse of normalcore:closedo nothing about active focus. - Closing
narrow-editorbynarrow:closeactivate( focus to ) original editor after close.
- Closing
- In Previous release:
- Bug: When autoPreview was disabled, confirm didn't scroll to new cursor position.
- Improve: Keep minimum 3 column width to reduce chance where item-text side-shifted on item filtered.
- Was 2 column width in previous release.
- Fix: #204 mouse
clickon useRegex button now work properly. - Improve: Clicking
mini-editorcontainer for search input no longer closemin-editor.
- New: #194 Support regular expression search for provider
searchandatom-scan.- New config
useRegex: ( defaultfalse), initial regexp search state.rememberUseRegex: ( defaultfalse), if enabled last regexp search state is remembered.
- Internal:
--nomultilineflag foragto make it line based search - Special note for syntax highlight on
narrow-editor.- Automatically fallback to fixed string search if searchTerm didn't include regexp special char.
- For better performance and syntax highlight on
narrow-editor.
- For better performance and syntax highlight on
- Currently atom doesn't allowing text color( foreground color ) by decoration.
- So when regexp search was done, it use normal background decoration to highlight searchTerm on
narrow-editor. - Because translating Js's regexp to grammar's regex( Oniguruma ) is tough for me.
- This limitation will be fixed once atom support text color change via decoration.
- Automatically fallback to fixed string search if searchTerm didn't include regexp special char.
- New config
- Fix:
narrow:closeon protectednarrow-editornow properly re-render control-bar. - Improve: #189, #202 When
narrow-editoropen, place cursor on original search word.- e.g.
-
- Your cursor is at
|inwor|d.
- Your cursor is at
-
- Invoke
narrow:search-by-current-word
- Invoke
-
- Now: Cursor on
narrow-editoris atwor|dat selected-item. - Before: Cursor was at first column of selected-item.
- Now: Cursor on
-
- e.g.
- Improve: Delay refresh on query-change event so that frequent refresh not disturb next query-input.
- Improve: #200
narrow:scanget faster by using manual regexmatch instead of usingeditor.scan. - Improve: Tweak highlight not cover text such as base16-tomorrow-dark-theme syntax
- Improve: Keep column(
goalColumn) when header row was skipped for both core and vmp commands.core:move-up,core:move-down,vim-mode-plus:move-up-wrap,vim-mode-plus:move-down-wrap
- Improve: #193 For atom v1.17.0 and later, no longer activate preview target pane on preview.
- Add note on README.md.
- For atom v1.16.0 and former user who use narrow with vim-mode-plus.
- You need to disable
vim-mode-plus.automaticallyEscapeInsertModeOnActivePaneItemChange.
- You need to disable
- Fix, Critical: #185 In
PHP,ShellScriptfile,search-by-current-wordon$varfail to find$var.- More specific explanation: For the language where
selection.selectWord()select non word char. - When
search-by-current-wordwas executed with empty selection- Pick current-word then search by
agorrg- Before: With
--word-regexpoption and it never matched$char. - After: Without
--word-regexp, always searched with regex build by narrow.
- Before: With
- Pick current-word then search by
- More specific explanation: For the language where
- Improve: Now pkg is activated on-demand, via
activationCommandsto reduce statup time.
- Fix: In Atom-beta( v1.17.0-beta-0 ), auto-preview lose focus from
narrow-editor.
- Cosmetic, Config: Provider specific configs are default collapsed in
settings-view. - Improve:
searchandatom-scanprovider config no longer showon-inputchoice forrevealOnStartCondition.- Since it's have no effect(
searchandatom-scanhave always no-input, never met condition ofon-input)
- Since it's have no effect(
- New, Experimental: #177 New config param
focusOnStartConditionto control whether initially focus tonarrow-editoror not.- Possible values are
always( default ): always focus tonarrow-editoron start.never: never focus tonarrow-editoron start.no-input: focus when initial query was empty( this choice is not available forsearch,atom-scan)
- Possible values are
- Fix:
narrow:searchwith searcherrg,smartcasedidn't work correctly.- Because of ignorance of default behavior diff between
agandrg.
- Because of ignorance of default behavior diff between
- Fix:
narrow:searchwith searcherrgnow correctly refresh item list when files are modified.- On manual-refresh and on auto-refresh on save buffer, it cleared all items belonging to that modified file.
- This bug is also because of ignorance of default behavior diff between
agandrg, now fixed.
- Fix:
smartcasehandling for query is inverted in v0.38.0, now works properly again.
- New: #174 New query expression.
|is treated asOR.aaa|bbbmatches item which includeaaaORbbb.- See wiki for detail https://github.com/t9md/atom-narrow/wiki/Query.
- Fix: Now
narrow:searchcan correctly search/including pattern like/a/b/cwhen searcher is set torg.- This is
rgonly issue.rgnot allowing/to be escaped like\/. - To fix this, now
searchuse--fixed-stringsoption for bothagandrg(was searched as regex with escape regex-meta-char in previous release).
- This is
- Fix: Long standing bug, where editor content get blanked on pane-split immediately after
narrow:close.- See detailed #95
- New: #170 New query expression
>and<for word-boundary matching.- Query
>word<is translated to\bword\b. - Handled by each query.
- See wiki for detail https://github.com/t9md/atom-narrow/wiki/Query.
- Query
- Improve:
narrow:symbols-by-current-wordandnarrow:project-symbols-by-current-wordauto qualify initial query with word-boundary.- To make quick-previewing function by these command more useful.
- When you invoked these command from on
word, initial query become>word<. - This prevent unwanted matching where there are other symbols including
wordas part of symbols string.- Previous release:
refreshmatched also symbolsrefreshManuallyorautoRefreshsymbols. - This release:
>refresh<not match symbolsrefreshManuallyorautoRefresh, ideal whenby-current-wordinvocation.
- Previous release:
- Fix: #168 Prevent temporal active pane change on auto-previewing on query-change.
- In previous release, keystroke get passed to temporally activated editor which result in unwanted mutation.
- This was especially likely to happen on
!negation blank out narrow-editor items and open preview item on next query char.
- New: new config option for remember ignoreCase options for
searchandatom-scan.- Following two config options are introduced to control
by-current-wordor not respectively.rememberIgnoreCaseForByHandSearch: defaultfalserememberIgnoreCaseForByCurrentWordSearch: defaultfalse
- When set to
true, restoreignoreCaseoption for last execution.- So
caseSensitivityForSearchTermis no longer respected except very first execution.
- So
- Following two config options are introduced to control
- Fix: Redraw control-bar if on-prompt-selection-destroyed.
- Improve: Auto disable wholeWord search for
scan-by-current-wordfor non single length non-word-char.
- Fix: No longer throw error when empty search term was confirmed in
searchoratmo-scan.- Internally no longer
rejectpromise inProviderBase::start.
- Internally no longer
- Fix: No longer throw
Maximum call stack size exceedexception when num of items collected bysearchandatom-scanwas too big. - Breaking: Remove experimental
Search.agCommandArgsconfig.- Custom command args for
agsearch is no longer supported. - Removal is because this was just experiment while spec of narrow was not fixed yet.
- I will consider this to revival if user really report necessity of this.
- Custom command args for
- Improve, New: Support
rg( ripgrep ) forsearchprovider- default
searcherconfig isag, choosergto useripgrep - Performance improved?
- No. Although
rgis generally faster thanag, no significant diff in usage ofnarrow. - Most of time consumed in
narrowis spent in view-side( rendering innarrow-editor, header insertion to each item collected ) - So in my opinion both
agandrgis fast enough for the purpose ofnarrow. - If you feel default
agserch is very slow, it must be slow ofnarrowitself(e.g. JavaScript and Atom).
- No. Although
- default
- Internal: Automatic deprecation warning, removal of obsolete config parameter for provider config.
- Warning, removal for obsolete config is provided for global( non-provider-config ) config only in previous release.
- Improve: When
scan-by-current-wordinvoked from on single-length-non-word-char, auto disable boundary(\b) search.
- New
select-filesprovider specificrememberQueryconfig.- Default
false. - When set to
true, remember query per provider basis and apply it at startup.
- Default
- Improve: folder-icon on
control-baris green highlighted to indicate some files are excluded.- This is indicating files are actually excluded( filtered ).
- Not indicating remembered
select-filesquery is applied.- e.g. Applying remembered
.md!query to non-markdown-file-items have no effect, no highlight.
- e.g. Applying remembered
- Improve:
narrow:reopenrestore excluded-files state and query used forselect-files.
- Fix: wildcard was not expanded correctly when query words include single char query.
- Doc: Add link to wiki on README.md.
- Internal: Now
ProviderBase::startalways return promise. - Test: Add test for
select-filesprovider.
- Spec: Add basic level test for
search. - Breaking, Improve(?): Now
searchitems are sorted by filePath. - Internal: Consolidate
onDidStopChangingActiveItemevent observation. - Improve: Current match highlight is done without delay for boundToSingleFile provider( e.g.
scan). - New: Interactively select/exclude file to narrow by
select-filesmeta provider.- SelectFiles provider is invoked from
narrow-ui(narrow-editor). cmd-backspaceis mapped by default.- Add short tutorial in
README.md's "Useselect-filesprovider" section.
- SelectFiles provider is invoked from
- New:
negateNarrowQueryByEndingExclamationconfig option.- default
trueforselect-filesprovider,falsefor other provider. - Narrow query support
!word, expression to "excludewordmatching item"(from older version). - When this option set to
true,word!is also treated to excludewordmatching item.
- default
- Fix: No longer throw exception on change active pane item while reading search input.
- New: commands
narrow:reopen( no default keymap )- Reopen closed narrow editor up to 10 recent closed.
- Items are re-collected( yes, just re-starting narrow with same
queryand other properties ).
- Improve: Add basic test spec.
- Add
Ui::onDidDestroyto test easily.
- Add
- New: Support search input history in mini-input-editor.
- Used for
searchandatom-scan - Keep max 100 recent search history.
search-by-current-word,atom-scan-by-current-wordalso saved to history.- Simplify
Inputclass( used to read input ), no longer use custom element. - When focus changed to different app, keep mini-editor open( was closed in previous version ).
- Used for
- Bug: Fix
searchsearches first project only even in multi-project search.- This is degradation introduced in v0.29.0.
- Improve: #153 Per file refresh support for
searchandatom-scan- Old behavior: whole project was re-searched
onDidSave. - New behavior: search only saved file is re-searched
onDidSave.- When saved file have no existing items, items are appended to end of
narrow-editor.
- When saved file have no existing items, items are appended to end of
- Old behavior: whole project was re-searched
- Improve: Avoid re-search
onDidSavefor file which is not belonging to any project. - Internal: Inserting/removing project/file header is done by UI( previously done by provider )
- Doc: #154 Add gitter link on README.
- Breaking: #146 Remove
narrow:linesin favor ofnarrow:scan- Asking you to use
narrow:scan, it's better than oldnarrow:lines
- Asking you to use
- Improve: #151
narrow:symbolsindenttext.mdsyntax-ed markdown header. PR by @thancock20 - New: #129 Use selected text as initialQuery or initialSearchTerm generally.
- For
searchandatom-scan, when invoked with selected text, use it as search term. - For other providers, use selected text as initial query.
- What was changed?
- Old behavior:
narrow:scancan not use selected text. User have to usenarrow:scan-by-current-word. - New behavior:
narrow:scancan use selected text.
- Old behavior:
- For
- Internal: Lots of cleanup.
- New:
project-symbolsprovider, following commands are availablenarrow:project-symbols:narrow:project-symbols-by-current-word:
- New: #145 [Experimental] Per provider config for existing
directionToOpenwith new values.- Each provider can override global
directionToOpensetting. - Possible value and short descriptions are here.
inherit: pick global setting.right: default, no behavior changeright:never-use-previous-adjacent-pane: don't use previous adjacent pane( only use next-adjacent )right:always-new-pane:down:down:never-use-previous-adjacent-pane:down:always-new-pane:
- Each provider can override global
- New: #147 [Experimental] Provider specific
caseSensitivityForNarrowQuery - Improve, Breaking: #147, symbols no longer use line text, use tag name instead for better match.
- Basically indented by line indent, special indentation handling for markdown header.
- Internal: Introduce
globalSubscriptionsto dispose long-lived subscriptions- Currently, used for watching tags file change for
project-symbolsprovider.
- Currently, used for watching tags file change for
- Internal: #144 Extract item concern( selecting, finding ) to
Itemsclass
- Fix, Critical: Duplicate ui command registration.
- New: Reveal closest item on start
- New config param
revealOnStartConditioncontrol this behavior. - Value can be
never: never reveal( previous version's behavior )always: always try to revealon-input: only when initial input query was provided via-by-current-wordcommands.
- Each provider have different default value( opinionated ). So no global default.
- Basic strategy to choose default value is here.
- boundToSingleFile(
scan,fold,symbols) provider haveon-inputdefault - Other have
alwaysdefault(search,atom-scan,git-diff-all).
- boundToSingleFile(
- Basic strategy to choose default value is here.
- If you want previous version's behavior back, set
neverto each.
- New config param
- New: Rebind all text-editor except narrow-editor #140
- This is big design change.
- Now can
next-item,previous-itemfor each active editor on every provider.- In previous release,
next-item,previous-itemis tied to bound editor. - So regardless os active-text-editor, these commands move cursor of narrow-invoking-editor.
- In previous release,
- Fix: Editor's scroll-top was not restored correctly on cancel.
- Cosmetic: Change config order to less important providers come last.
- Doc: Update keymap example
- Improve: Avoid unnecessary refresh on re-bind to editor which have same filePath.
- Internal: #139 Rename
boundToEditorprovider property toboundToSingleFilesince now every provider have editor bound
- New: [Experimental] #136, #135 double click start
narrow:search- When new
Search.startByDoubleClickconfig set totrue( defaultfalse) - Mouse double click start
narrow:search-by-current-word. narrow-editorforsearchis opened with pending state.- You can continue click and search without messing lots of
narrow-editor. - command
narrow:toggle-search-start-by-double-clicktoggleSearch.startByDoubleClickvalue
- When new
- Fix, Critical: #137 When mini-editor for
searchatom-scanclosed by canceled,workspace.has-narrowscope (css class) remain unnecessary.- Because UI instance was registered BEFORE reading input from mini-editor.
- From this version UI instantiation is delayed until it really get prepared.
- Improve:
search,atom-scannow can detect new match atonDidSavefor every editor.- In previous release, the save event on editor which have no item was just ignored.
- Improve: keep originally selectedItem on manual refresh.
- Internal: Allow
narrow-editoropen in pending state, activate providerPane if activate set false( default = true )
- Doc: Update keymap example in README
- Doc: #132 Fix link for
keymap.csonpointed to stale branch. - Improve: Auto preview on focus narrow-editor.
- Improve: #130 No longer restore editor state( cursor, scroll-top ), if non-narrow-editor was clicked.
- In previous release, clicking non-narrow-editor is not treated as confirmation, so cursor had been restored after
narrow:close.
- In previous release, clicking non-narrow-editor is not treated as confirmation, so cursor had been restored after
- Improve: #134 highlight improve
- Flash current match on
next-item,previous-item - Limit emphasizing current match only in previewing.
- Internal: All highlight related logic was moved to
highlighter.coffeefromui.coffee
- Flash current match on
- Fix: #123, Prevent mouse event propagation for provider-panel
- When search-option button on provider-panel was clicked, no longer move cursor of
narrow-editor. provider-panelis embedded as narrow-editor's block-decoration, so need to explicitly suppress event propagation.
- When search-option button on provider-panel was clicked, no longer move cursor of
- Fix: Set unique title for each
narrow-editor. So tab title no longer becomeundefined( title must not conflict within pane ). - New: #121, New provider
git-diff-all.- Show git diff items across projects( Existing
git-diffshows diff for current file only )
- Show git diff items across projects( Existing
- Improve: #119, #124 Usability/usefulness improve for
next-itemandprevious-item.- These command is to move cursor to next/previous item without focusing
narrow-editor - Mapped to
tab,shift-tabforvim-mode-plususer,ctrl-cmd-n,ctrl-cmd-pfor normal user. - What was changed?:
- Land to
current-itemwhennext-itemandnarrow-editor's current-item is forwarding to active-editor's cursor. - Land to
current-itemWhenprevious-itemandnarrow-editor's current-item is backwarding to active-editor's cursor. - In previous version, simply landed chose next/previous item's position regardless of active-editor's position.
- So sometimes, user need
tab,shift-tabto go/back to adjust exceeded movement.
- Land to
- These command is to move cursor to next/previous item without focusing
- New: #128 Relaxed whole-word search.
- What's benefit?: Now can search
@editor\bby search@editorwithwhole-wordenabled. - In previous release, when
whole-wordwas enabled, search simply\beditor\b(editoris searching word here). - So when user search
@editor, searched wth pattern\b@editor\b( never match ). - From this release,
word-boundary(b) is automatically relaxed as long as start or end can match with boundary - Example
editor, ->\beditor\b( start and end is word-char).@editor, ->@editor\b( relaxed start boundary ).editor!, ->\beditor!( relaxed end boundary ).@editor!, ->\b@editor!\b( No relax, relaxing both boundary means no-whole-word, contradict to user's intention ).
- What's benefit?: Now can search
- New: Command
symbols-by-current-word, since it sometime useful to quickly preview function definition under cursor. - New: #126 New button in provider-panel( see README GIF to quick overview ).
- Auto preview: click eye icon to toggle-auto-preview.
- Protect: click lock icon to toggle protect narrow-editor( protected narrow-editor is no longer closedb by
ctrl-gor confirm byenter). - Refresh: clicking it manually refresh item. Also when search options was changed, it indicate search is running by changing icon to
Xicon.
- Internal, Performance: Use faster
DisplayMarkerLayer.clear() - Internal: #122 Consolidate file/project header injection/filter-out logic( was done in per provider, but now done by base-provider).
- New: #118, Show provider specific information above prompt.
- All provider shows item count.
- For
scan,search,atom-scanspecific.- Loading indicator.
- Button to toggle
ignoreCase,wholeWordand show tooltips when mouseover.
- Achieved by block-decoration(since I want keep
narrow-editorreally normal text-editor).- Recover block-decoration(destroy and re-decorate) when prompt on accidental prompt row removal.
- For
narrow:scan, search term can be changed multiple times.- Unless manually changed by button or shortcut, it respect
caseSensitivityForSearchTerm
- Unless manually changed by button or shortcut, it respect
- Improve UX: Show buffer lines on empty query( = empty searchTerm ) for
narrow:scan.- Also limit minimum column width to 2 to avoid side move items( since initial column is 1 ).
- Fix: No longer throw error when confirm with empty item list
- Fix: When
narrow:focus.ReferenceError: otherEditors is not defined( oversight when renaming ) - Breaking, Improve: #116
ctrl-lin vim-mode-plus-search input startnarrow:scan( wasnarrow:linesbefore ). - Improve UX: #117 open
narrow-editoron same pane of existingnarrow-editorwhen narrow is started fromnarrow-editor.
- New: Provider
scanas betternarrow:lines- Commands
narrow:scan: startscan.narrow:scan-by-current-word: startscanby passing current-word as initial query input.narrow:scan:toggle-whole-word: toggle whole word scan on narrow-editor.
- Why better than
narrow:lines?- It can highlight.
- It can show multiple matches on same line as different items.
- Move you precise position when navigating by
next-item,previous-item.
- Some exceptional characteristics important to understand.
- Use
editor.scanunder the hood. - It use first narrow query as search term( first word separated by white-spaces on query text ).
- Rest of include and exclude(
!starting word) queries are treated as normal filter query. - To make this exceptional query handling obvious by eye, use different syntax grammar highlight for first query(= scan term).
- It start with empty items, since no query means no scan-term provided.
- Use
- Commands
- New: UI command to toggle search option on the fly.
narrow-ui:toggle-search-whole-word:alt-cmd-w)narrow-ui:toggle-search-ignore-case:alt-cmd-c)- Currently you can not see current search option state('
searchIgnoreCase,searchWholeWord').- Will come in future version!!
- New: Config
searchWholeWord. Used to determine initial value of whole-word-search.Scan.searchWholeWordAtomScan.searchWholeWordSearch.searchWholeWord
- Improve: Faster highlight than v0.20.0 by letting item hold range and use it for decoration.
- No longer heavier
editor.scanto matching start of range against item.point.
- No longer heavier
- Fix: #107
Error: The workspace can only contain one instance of item [object Object](…)- Critical and wanted to fix, I could finally found the cause and fixed!!
- Was happened tying to open item for filePath-A when
narrow-editor's pane have editor for filePath-A as item. - This situation result in trying to one editor(pane-item) activate on multiple-pane, but no-longer!!
- Fix:
Pointis not imported onutils.coffee. rarely evaluated code path, I can't describe what situation cause error by this bug.
- New, Improve: Show multiple matches on same line for
searchandatom-scan- Show column for
search,atom-scan - Add protection for
update-real-fileby detecting conflicting change to same line.- e.g
- When you have text file which content is "test abc abc\n"
- search
abcnow shows two items(since one line contain twoabc). - So user can edit these two items differently and try to
update-real-file. - But this is not allowed, detect conflict and show warning.
- e.g
- Show column for
- Breaking, Experiment: Remove indentation of lineHeader for more space for line text.
- Improve: #106 highlight matches for provider
searchandatom-scan.- Update current match highlight on each sync-editor-to-ui.
- Improve: Adjust point to first-character-of-line( was column 0 ) for provider
foldandsymbols. - Improve: #102 Change itemIndicator color for protected
narrow-editor. - Improve: Improve UX when
narrow:close(ctrl-g) is executed on protectednarrow-editor.- No longer close un-protected
narrow-editor. - Clear query then refocus to caller editor for not interfering regular preview-then-close-by-ctrl-g flow.
- Thus though it don't close
narrow-editor, it behave like closed byctrl-g.
- Thus though it don't close
- No longer close un-protected
- Experiment: Use octicon icon for itemIndicator in
narrow-editor. - Internal: Add Ui event when working on #106
- Introduce
Ui::onDidStopRefreshingwhich is fired 100ms delayed afteronDidRefresh. - Introduce
Ui::onDidPreview - Introduce
Ui::onDidChangeSelectedItem
- Introduce
-
New: Exclude particular file item from result for non-boundToEditor provider.
- This is nothing to do with provider's behavior, just filter out result in narrow-editor(ui).
narrow-ui:exclude-file:backspace, Exclude currently selected file from result.(no effect in boundToEditor provider)narrow-ui:clear-excluded-files:ctrl-backspace, Clear exclude-file list. and refresh
- This is nothing to do with provider's behavior, just filter out result in narrow-editor(ui).
-
New: Move to next/previous file's item(no effect in boundToEditor provider)
narrow-ui:move-to-next-file-item:n, Move to first-item of next-file.narrow-ui:move-to-previous-file-item:pMove to last-item of previous-file.
-
Use case
- Start
narrow:search, then enterread-onlymode backspaceto exclude currently selected file's item from result.ctrl-backspaceto clear and refresh excluded file list.nto move to first-item of next filepto move to last-item of previous file
- Start
-
Improve: No longer close
narrow-editoron confirm if protected bynarrow-ui:protect. -
Doc: FAQ Section in README
-
Fix: [Critical]. No longer modify cursor position after confirmed
- It's interfere precise closest position when auto-sync.
- Also because of this bug, item's point was just ignored in all providers.
- New: #97
narrow-ui:protect( no keymap by default ) to protectnarrow-editorfrom being closed bynarrow:close(ctrl-g).- E.g. If you want keep opened
narrow:symbolsfor long use, then you don't want close thisnarrow-editorbyctrl-g. - In this case, invoke
narrow-ui:protecton thatnarrow-editor, after thatctrl-gdon't close thisnarrow-editor.
- E.g. If you want keep opened
- Improve: #98 Prevent side scroll of
narrow-editorwhile auto-syncing to active-editor.- Particularly useful when
narrow:symbolsornarrow:foldis used as long-use with keep opened(bynarrow-ui:protected ).
- Particularly useful when
- New, Breaking: #88, #62 read-only item area as like vim for non-vim-mode-plus user
- If you don't like, you can change
autoShiftReadOnlyOnMoveToItemArea. - In
read-onlymodej,kto move-up/down in item-area.iorato start insert on query-prompt etc.
- If you don't like, you can change
- New
autoShiftReadOnlyOnMoveToItemAreasetting( defaulttrue)- If this set to
true, When cursor move to item area innarrow-editor, automatically set editor toread-onlymode. - This setting affects both vim-mode-plus and non-vim-mode-plus user.
- If this set to
- Breaking: Key map tweaking, update README to reflect new keymap.
tabis no longer mapped tonarrow-ui:move-to-prompt-or-selected-item( maybe I will deprecate it in future ).
- Breaking:
narrow-ui:refresh-forcecommand since its duplicating globally availablenarrow:refresh. - Improve: New
narrow:focusnever fail to focus to ui in workspace #84.- So you can close all
narrow-editorone by one by repeatingctrl-g.
- So you can close all
- Improve: #91 Now auto preview don't change focused item and cursor position unnecessarily.
- As a result, auto-preview get light faster.
- Improve: Auto preview at initial invocation when initial query input was provided(
-by-current-wordsituation).- Tweak
tab(preview-next-item) behavior in query-prompt.- Don't skip first item on first time
tabif it's not yet auto-previewed.
- Don't skip first item on first time
- Tweak
- Improve: Cleanup, avoid unnecessary auto refresh when auto-syncing editor.
- Improve: Usability of direc-edit(
update-real-file). #87- If you keymap
cmd-s( if you are macOS user ), then you can apply changes innarrow-editorbycmd-s. - Overwrite, TextBuffer's
isModifiedfunction to update modified icon on tab(provided by coretabspackage). - confirm user before
update-real-fileactually start updating.- New config option
confirmOnUpdateRealFile( defaulttrue). - If this set to
false, no longer ask beforeupdate-real-file, danger!
- New config option
- If you keymap
- Fix: When
update-real-fileonsearchresult and filePath include unsaved modification, result in unwanted update. #85- Since
searchuseagwhich search match from saved file on disk - In this situation, now cancel update by warning user.
- Since
- Doc: Update my keymaps on README.
- New: Now all providers sync to current active editor. #81
- In previous release only boundToEditor provider(e.g.
lines,foldetc) support sync. - Now all provider support sync(e.g.
search,atom-scan) - What is sync?
- update current item indicator by cursor move on active-text editor
- So keep you inform where you are among items.
- Also auto refresh items when bounded editor content is updated, in following timing.
onDidStopChangingforboundToEditorprovider(e.g.line).onDidSavefor nonboundToEditorprovider(e.g.search).
- In previous release only boundToEditor provider(e.g.
- New: Auto rebind to editor for boundToEditor provider #82
- e.g.
narrow:foldauto refresh fold items on each focus change- Each time you change focus to different text-editor, fold items are refreshed
- So you can use this fold list as table-of-content of currently focused file
- e.g.
- Internal: Further decoupled/eliminate state depending code from boundToEditor/syncToEditor logic #82, #81
- To support re-bind editor/sync for
search,atom-scan
- To support re-bind editor/sync for
- Improve: Show gutter for provider which indent is not empty. #83.
- Doc: Put link to Use case and flow of keystrokes in README.
- Improve: Delay
autoPreviewOnQueryChangetiming toonDidStopChangingfor non boundToEditor provider- E.g.
search,atom-scan - Was so heavy that it interfere query keystroke.
- E.g.
- New: #79 Preview without moving cursor from query-prompt. no keymap for non-vim-mode-plus user.
narrow-ui:preview-next-itemnarrow-ui:preview-previous-item
- New: wrap items on next/previous select(from top-to-bottom, bottom-to-top). #72
- From outside of narrow-editor,
next-item,previous-itemnow wrap. - In narrow-editor, moving up/down now wrap for both vim-mode-plus and normal user.
- For vim-mode-plus user, it's depend on latest(v0.82.0) vim-mode-plus command.
- From outside of narrow-editor,
- New: Auto previewing as you type #76
- Automatically preview first item in item-list as you type query.
- New:
autoPreviewOnQueryChangeper provider config. defaulttruein all provider.
- Improve: #74 closing narrow-editor after preview now restore cursor/scroll-top/fold.
- Improve: Keymap in narrow-editor for vim-mode-plus user.
k:vim-mode-plus:move-up-wrap(require vmp v0.82.0 or later).j:vim-mode-plus:move-down-wrap(require vmp v0.82.0 or later).tab:preview-next-item: Preview without moving cursor from query-prompt.shift-tab:preview-previous-item: Preview without moving cursor from query-prompt.
- Breaking: Per provider config is scoped to each provider, sorry for no auto-migration!!.
- For easier maintenance(to avoid mess) and for collapsible UI in setting-view.
- Here are example of how config name was changed.
LinesAutoPreview->Lines.autoPreviewLinesCloseOnConfirm->Lines.closeOnConfirmSearchAutoPreview->Search.autoPreviewSearchAgCommandArgs->Search.agCommandArgs
- Fix:
next-item,previous-itemnow always confirm item even if single item.
-
New keymap: For vim-mode-plus user(need vim-mode-plus v0.81.0 or later).
tab,shift-tabto move to next/previous item from outside of narrow-editor- These keymaps are only activated at least one narrow-editor exists on workspace.
-
New command:
narrow:focus-prompt: focus prompt of narrow-editor from outside/inside of narrow-editor.- If cursor is already at prompt of narrow-editor, it focus back to original editor.
narrow:refresh: Manually refresh items from inside/outside of narrow-editor.- Intended to be used for non-editor-bounded provider such as
search,atom-scan.
- Intended to be used for non-editor-bounded provider such as
-
Improve, Breaking: Simplify vim-mode-plus integration.
- Following two configurations are removed. Why? Get default behavior right, so no longer need these option.
vmpAutoChangeModeInUIvmpStartInInsertModeForUI
-
Fix: No longer throw error when non-boundToEditor provider(e.g. search) destroy original editor and click item.
-
Internal: Lots of conceptual cleanup and reflect it to code, logic, fix lot of potential bug(I believe so).
- Released for README.update after 3 min of 0.12.0 release. no behavioral change.
- New:
*(wildcard) and!negate expression support for query. See #64 for detail. - New: setting to control
close-on-confirmbehavior. Params and default values are below.AtomScanCloseOnConfirm: trueBookmarksCloseOnConfirm: trueFoldCloseOnConfirm: trueGitDiffCloseOnConfirm: trueLinesCloseOnConfirm: trueLinterCloseOnConfirm: trueSearchCloseOnConfirm: trueSymbolsCloseOnConfirm: true
- New: new provider
narrow:linterwhich use linter packages message as information source.- Support
direct-edit
- Support
- Improve: improve usability for
vim-mode-plususer.vmpAutoChangeModeInUIset to defaultfalse(wastruein v0.11.0)- Revival
vmpStartInInsertModeForUIsettings (was removed in v0.11.0) i,ain narrow-editor mapped to newvim-mode-plus-user:narrow-ui:move-to-prompt.- Which move to prompt and start insert-mode if not.
- Improve: No longer syncToProviderEditor for editor-bound-provider while cursor move caused by preview.
- New: direct-edit support #45, #43.
- After you edit narrow-editor items then invoked
narrow-ui:update-real-file. - Which apply changes to real file and auto-save.
- Read instruction on README.md.
direct-editsupported providers arelines,search,atom-scan.
- After you edit narrow-editor items then invoked
- New:
atom-scanprovider, similar tosearch.atom-scanuseatom.workspace.scanso no external command is required.
- New: narrow-editor have
narrow-editorCSS class - Improve: Add quick-tour on README.md.
- Improve: Set many default-keymap.
- Breaking: Rename commands name
- Rename:
narrow-ui:refresh-forcetonarrow-ui:refresh-forceand add newctrl-lkeymap - Rename:
narrow-ui:move-to-query-or-current-itemtonarrow-ui:move-to-prompt-or-selected-item - Rename:
vim-mode-plus-user:narrow-lines-from-searchtovim-mode-plus-user:narrow:lines - Rename:
vim-mode-plus-user:narrow-searchtovim-mode-plus-user:narrow:search - Rename:
vim-mode-plus-user:narrow-search-current-projecttovim-mode-plus-user:narrow:search-current-project - New:
vim-mode-plus-user:narrow:atom-scan
- Rename:
- Breaking: No longer
ctr-rmapped invim-mode-plus.normal-modeto avoid conflict tovim-mode-plus:redo. - Breaking: Configuration parameters
- Simplify auto preview config name remove
Defaultpart from name.LinesDefaultAutoPreviewtoLinesAutoPreviewFoldDefaultAutoPreviewtoFoldAutoPreviewSearchDefaultAutoPreviewtoSearchAutoPreviewSymbolsDefaultAutoPreviewtoSymbolAutoPreviewGitDiffDefaultAutoPreviewtoGitDiffAutoPreviewBookmarksDefaultAutoPreviewtoBookmarksAutoPreview
- For
directionOpenpram,hereis no longer supported.- Old allowed value: [
right,down,here] - New allowed value: [
right,down]
- Old allowed value: [
vmpStartInInsertModeForUIis removedvmpAutoChangeModeInUIis added
- Simplify auto preview config name remove
- Change:
searchno longer show column on each items. #47 - Improve: Respect word boundary(
\b) for both grammar and search args forsearch,atom-scan. - Improve:
linesnow place cursor on query matching position by best effort. - Improve: Prevent green row marker remains by updating atomically.
- Improve: Add spaces for line-header, All line-header showing provider now show aligned line-header.
- Improve: Item cache is handled by ui and controlled by
supportCacheItemsprop on provider. - Improve: Item area refresh is not skipped on
undoandredo, so only queries are undo managed.
- Eval: tryout to fix
agsearch not work on windows #9.
- New:
narrow:closecommand.(no keymap by default) - New:
narrow-ui:move-to-query-or-current-itemcommand, available innarrow-editor(=ui).tabis mapped. Usetabkey to move between prompt line and current selected item quickly.- This mitigate frustration of autoSync to cursor position for boundToEditor providers.
- New: Custom command args for
agfornarrow:searchprovider. #42. - Fix:
narrow:searchplaced cursor one column right in previous release, but no longer. - Improve: skip auto-updating-cursor-position of narrowEditor when cursor is at prompt row.
- New:
caseSensitivityForNarrowQueryconfig options #44.smartcaseis default- Providers global/not per-provider basis.
smartcase-tivity is handled query per-word(separated by white-space).- Eg. For query "hello World": hello=case-insensitive, World=case-sensitive.
- Fix: Provider.Fold
increase-fold-level,decrease-fold-leveldidn't worked(I believe) by regression in v0.9.0.
- New: Auto sync selected items on narrowUI with bounded editor's cursor position.
- Enabled on following providers
Fold,GitDiff,Lines,Symbols
- Enabled on following providers
- New:
narrow:next-item,narrow:preview-itemto move to next item without focusing narrowEditor(UI). - Improve: GitDiff provider auto-refresh items on bound-editor's change.
- Improve: Currectly track last focused UI for
narrow:focus. - Improve: Clear row-marker when focus lost from narrowEditor.
- Breaking: Command rename
narrow-ui:open-without-closetonarrow-ui:confirm-keep-open. - Breaking: Default keymap on vim-mode-plus's search-form was change.
- Breaking:
Symbolsprovider no longer display line number.
- New:
narrow:foldbuffer's keymapscmd-[,cmd-]to change foldLevel to filter items. - Update style
- New:
narrow:symbols - New:
narrow:git-diff - New:
narrow:bookmarks
- Fix: prep for
::shadowboundary removal - Fix: When
directionToOpenwashereautoPreview throw error, to fix this whenhere, disable autoPreview #12. - New:
by-current-wordsuffixed version of commands for each provider #15, #6. - Improve: Change style for narrow's line-highlight to underline to avoid covering existing highlight #14.
- New: Config option to control default
autoPreviewof each provider. And the default istruefor all provider #18. - Breaking: Remove fuzzy search feature. Since it was confusing.
- Fix: When
narrow:line, window closed byqit throw error.
- Fix: correctly set selected position on center of screen on
core:confirm.
- Fix: No longer throw error when original Pane is destroyed before narrow-ui is closed. #1.
- Fix: Several bugs.
- New:
narrow:search-current-projectand defaultcmd-shift-ofor vim-mode-plus user. - New: Better vim-mode-plus integration when enter
insert-modein narrow-ui, it move cursor to row 0.
- Fix: Search duplicates file headers.
- Improve: Skip header item when cursor move up and down.
- Improve: Better integration with vim-mode-plus
vmpStartInInsertModeForUIcontrol initial vim's mode. - New: Support fuzzy search for Lines and Fold.
- Improve: cursor position centering
- Fix:
narrow:focus, just because forgotten to rename from old to new name. - Improve: grammar highlight
- Improve:
narrow:searchheader is indented so that foldable. - Improve:
narrow:searchhide header for filtered outed item. - Improve: ui select first valid item at startup.
- experimented blockDecoration to display file, project header in
narrow:search. but decided not to use because of ux.
- UI inproved.
narrow:lineandnarrow:foldhaveautoPreviewenabled on start.- Special integration with
vim-mode-plus.
- cleanup
- Initial release