Commit Graph
6293 Commits
Author SHA1 Message Date
1grzyb1andClaude Opus 4.8 ace6cb3a1f VIM-4249 Remove visual mapping for abolish plugin
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 08:53:21 +00:00
1grzyb1 2961707664 VIM-1025 Syntax highlighting in control chars editor 2026-06-10 08:13:15 +00:00
1grzyb1 1370b8820d VIM-1025 Notify about control chars editor 2026-06-10 08:13:15 +00:00
1grzyb1 c74e767159 VIM-1025 Add control chars editor
It adds new action that opens special kind of editor where user can paste and yank control cahrachters like ^M ^[.
Normally IDE doesn't allow showing them especially ^M is always turned into \n s othere was no way of editing macros.
2026-06-10 08:13:15 +00:00
1grzyb1 990d75af55 VIM-1617 YouCompleteMe plugin support
Add plugin that allows to cycle through completion using tab instead of arrow keys
2026-06-09 09:02:59 +00:00
1grzyb1 e1a19a869f VIM-2431 use count to repeat mapped action 2026-06-08 08:31:50 +00:00
1grzyb1 f1d8813628 VIM-3301 adjust cursor offset by sticky panel height
Adjust in cursor scroll calculation for sticky panel height so it doesn't hide under sticky panel when scrolloff=0
2026-06-08 07:39:20 +00:00
1grzyb1 b20a38f19a VIM-2501 Apply inlayAwareMinHeightFudge to all centering decisions
Guard height-based centering checks when block inlays make the visible line count unreliable.
2026-06-05 10:10:55 +00:00
1grzyb1 f2916c5564 VIM-2501 Refactor scrollCaretIntoViewVertically for readability
Extract nested if blocks into named methods with early returns, without changing scroll behavior.
2026-06-05 10:10:55 +00:00
1grzyb1 915df3498d VIM-2529 Don' scroll after incremental search finish
Scroll during enter on inc search was triggered twice. One from search itself and once from exiting ex panel. Disable scroll in exit seach panel when it's executign incsearch
2026-06-05 08:23:04 +00:00
1grzyb1 13cd78e9b4 VIM-1638 equalize windows proportions 2026-06-03 09:34:36 +00:00
1grzyb1 84ce9f7879 VIM-1638 Resize windows width 2026-06-03 09:34:36 +00:00
1grzyb1 3768d3af09 VIM-1638 Resize windows height 2026-06-03 09:34:36 +00:00
Alex Plate ce372eada8 Fix(VIM-3459): smartcase should not affect star search highlighting
findAll silently ignored its ignoreCase parameter and re-derived case
sensitivity from the global smartcase/ignorecase options. As a result,
using * on a capitalized word with 'smartcase' enabled performed a
case-insensitive search but highlighted only the case-sensitive matches.

findAll now honors an explicit ignoreCase request: smartcase is skipped
and ignorecase is forced when the caller has already resolved case
handling. Behavior is unchanged when ignoreCase is false, so existing
callers are unaffected.

Cherry-picked from #1466 by davidot.
2026-06-02 17:30:31 +03:00
1grzyb1 643b76e069 VIM-1984 Implement CamelCaseMotion plugin 2026-06-02 09:48:32 +00:00
1grzyb1 da60924404 VIM-1362 add :Abolish command to abolish plugin 2026-06-01 09:21:27 +00:00
1grzyb1 2107442040 Fix(VIM-4245): Batch caret events in block-visual to unfreeze split mode
In split mode every per-caret event drove PatchEngineEditorSynchronizer, which walks all carets to build a model and ships an RD-protocol message per event — block-visual motion fires N caret events × O(N) per event = O(N²) per keystroke on the host, freezing the EDT.

Bulk caret-mutating sites (block-visual setVisualSelection, exitVisualMode's secondary-caret removal, repeatInsert's row-by-row replay) now run inside caretModel.runForEachCaret so beforeAllCaretsAction/afterAllCaretsAction fire and the synchronizer batches per-event sends into one end-of-op snapshot; a new CaretVisualAttributesListenerSuppressor gates IdeaVim's own EditorCaretHandler.updateCaretsVisualAttributes to drop the same O(N²) walk on the local side.
2026-05-29 13:22:05 +00:00
1grzyb1 55aadff3cb VIM-2078 recursion guard test 2026-05-29 08:25:40 +00:00
1grzyb1 145e05d76f VIM-2078 ! in abbrev listing 2026-05-29 08:25:40 +00:00
1grzyb1 d7d9d9c7a5 VIM-2078 Use iskeyword option in abbrev 2026-05-29 08:25:40 +00:00
1grzyb1 1b0e39899d VIM-2078 Added <expr> in abbreviation parsing and handling 2026-05-29 08:25:40 +00:00
1grzyb1 5c2f1e7301 VIM-2078 added buffer scoped abbreviations 2026-05-29 08:25:40 +00:00
1grzyb1 c06640fe71 VIM-2078 invalidate abbreviation session when caret moves 2026-05-29 08:25:40 +00:00
1grzyb1 3bbc5a0c9e VIM-2078 command line abbreviations 2026-05-29 08:25:40 +00:00
1grzyb1 1857b1a1bf VIM-2078 Added clearing abbreviations 2026-05-29 08:25:40 +00:00
1grzyb1 0fa82885bb VIM-2078 Adding new abbreviations and expanding them on trigger 2026-05-29 08:25:40 +00:00
1grzyb1 7520863dd1 VIM-4238 Track current editor in macro
In search window editor was chagned but macro group was using previous one so we had to change way of tracking if editor has chagne during macro execution
2026-05-27 08:45:00 +00:00
1grzyb1 14e7cfe0e7 VIM-4245 Fix repeat-insert undo grouping so one u reverts one logical change
Wrap the undo-mark only when there's actual replay work (count > 1,  block insert, or dot-repeat) — otherwise the always-fired wrap on plain `iHi<Esc>` emitted an empty mark group that swallowed the first `u`.
2026-05-22 09:41:25 +00:00
1grzyb1 95128f407b VIM-4235 use native saveFile action in :w
using FilerometeApi didn't trigger reformat on save action in splitmode/rider so I chagned it to native action execution in on save
2026-05-22 08:42:52 +00:00
1grzyb1 224156324d VIM-4245 group repeatInsert and insertPreviousInsert into single undo 2026-05-22 07:30:54 +00:00
1grzyb1 4cf7d6d4dc VIM-1362 Add abolish search 2026-05-20 10:40:45 +00:00
1grzyb1 6c7da4c183 VIM-1362 refactor abolish plugin to walk through substitiute command
This is the way real plugin does that, and it gives us all flags for free
2026-05-20 10:40:45 +00:00
1grzyb1 a7dcf36522 VIM-1362 Add user-defined coercion through g:abolish_coercions variable 2026-05-20 10:40:45 +00:00
1grzyb1 660753fdcd VIM-1362 Add missing coercion mappings 2026-05-20 10:40:45 +00:00
1grzyb1 3aedcceb13 VIM-1362 Add count to recase action 2026-05-20 10:40:45 +00:00
1grzyb1 6662525333 VIM-1362 Visual mode coercions 2026-05-20 10:40:45 +00:00
1grzyb1 2f0b72f933 VIM-1362 operator pending coersion mapping 2026-05-20 10:40:45 +00:00
1grzyb1 f57dbb4fa9 VIM-1362 add missing gap between original abolish plugin 2026-05-20 10:40:45 +00:00
1grzyb1 c7c82fa580 VIM-1362 Implement vim abolish plugin 2026-05-20 10:40:45 +00:00
1grzyb1 be91bf2504 VIM-833 implement command history actions
Add `q:` `q/` and `q/`
2026-05-19 10:05:00 +00:00
Matt Ellis 4402a1f001 Fix logic when reading history entries 2026-05-19 12:51:26 +03:00
Matt Ellis 02c522b352 Fix histget() with omitted index 2026-05-19 12:51:26 +03:00
Matt Ellis 2dd76658c1 Extract tracking current history from command line 2026-05-19 12:51:26 +03:00
Matt Ellis c81850982f Do not save empty command line as history 2026-05-19 12:51:26 +03:00
Matt Ellis 2bc2c5e4b2 Push clearing output panel to the test fixture 2026-05-19 12:51:26 +03:00
Matt Ellis 288e885dd9 Encapsulate HistoryBlock and make internal 2026-05-19 12:51:26 +03:00
Matt Ellis d5e917c5c6 Add histdel() history function 2026-05-19 12:51:26 +03:00
Matt Ellis 86aa74550a Add histnr() history function 2026-05-19 12:51:26 +03:00
Matt Ellis 97da421eec Add histget() history function 2026-05-19 12:51:26 +03:00
Matt Ellis 03a44d9855 Add histadd() history function 2026-05-19 12:51:26 +03:00