Commit Graph

494 Commits (1817b7f581f579232a216f92e0cac569b1a80c11)

Author SHA1 Message Date
ath3 35c974c9c4
Implement "Goto last modification" command (#1067) 3 years ago
Cole Helbling b824e091a9
helix-term/commands: move SCRATCH_BUFFER_NAME to helix-view/document (#1091)
This way, the name is accessible everywhere `Document` and related types
are.
3 years ago
Omnikar 6d4409c00f
Make prompts consistent (#1080) 3 years ago
Omnikar bf95a9ed04
Add `remove_selections` command (#1065)
* Add `remove_selections` command

* Document `remove_selections`

* Update helix-term/src/keymap.rs

Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
3 years ago
Ivan Tham 9d591427be
Fix earlier/later missing changeset update (#1069)
Fix #1059
3 years ago
Cole Helbling bf70cfd050
helix-term/command: make scratch buffer name consistent (#1071) 3 years ago
Omnikar ebc14d9d20
Add `m` textobject for pair under cursor (#961) 3 years ago
Bob 4d22454386
add wonly -- window only (#1057)
* add wonly

* Update book/src/keymap.md

Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>

* add `wonly` to space w mode too

* remove the TODO

Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
3 years ago
CossonLeo 68224232af
buffer picker add is_modifier flag (#1020) 3 years ago
CossonLeo a69caff450
search_impl will only align cursor center when it isn't in view (#959) 3 years ago
CossonLeo 29e6849413
Add LSP rename_symbol (space-r) (#1011)
improve apply_workspace_edit
3 years ago
Omnikar a252ecd8c8
Add WORD textobject (#991)
* Add WORD textobject

* Document WORD textobject
3 years ago
Blaž Hrastnik 2c1313c064 Specify vector capacity on surround_add 3 years ago
Blaž Hrastnik 1a1685acf7 Simplify current!(..).1 into doc!() 3 years ago
Blaž Hrastnik 0f4cd73000 Simplify goto_*_diagnostic commands 3 years ago
Blaž Hrastnik f659e1178a minor: view!(..).doc is slightly more efficient than current!(..).1.id() 3 years ago
Blaž Hrastnik b81a554424 Retain range direction on search
Co-authored-by: CossonLeo <20379044+cossonleo@users.noreply.github.com>
3 years ago
Blaž Hrastnik 6431b26a6a Implement Selection::replace to replace a single range
Fixes #985

Co-authored-by: Daniel S Poulin <crimsonmage+github@gmail.com>
3 years ago
Gygaxis Vainhardt 911b9b3276
Add reverse search functionality (#958)
* Add reverse search functionality

* Change keybindings for extend to be in select mode, incorporate Movement and Direction enums

* Fix accidental revert of #948 in rebase

* Add reverse search to docs, clean up mismatched whitespace

* Reverse search optimization

* More optimization via github feedback
3 years ago
Omnikar 51b4d35dce
Inform when reaching undo/redo bounds (#981)
* Inform when reaching undo/redo bounds

* `Already at oldest change` when undo fails
* `Already at newest change` when redo fails

* Add missing `the`
3 years ago
Blaž Hrastnik 7b65a6d687 Rewrite goto_buffer 3 years ago
ath3 78c68fae91 Implement "Goto next buffer / Goto previous buffer" commands 3 years ago
Blaž Hrastnik e2560f427e Replace documents SlotMap with BTreeMap 3 years ago
CossonLeo 39584cbccd
Add c-s to pick word under doc cursor to prompt line & search completion (#831)
* Add prompt shourtcut to book
Add completions to search
Add c-s to pick word under doc cursor to prompt line

* limit 20 last items of search completion, update book

* Update book/src/keymap.md

Co-authored-by: Ivan Tham <pickfire@riseup.net>

* limit search completions 200

Co-authored-by: Ivan Tham <pickfire@riseup.net>
3 years ago
CossonLeo 1720b98760
only remove primary index when search next without extend (#948) 3 years ago
Ivan Tham bc6a34d97e
Make match work with extend and multi cursors (#920) 3 years ago
Ivan Tham 21d535565b
Support extend for multiple goto (#909)
gg, ge, [n]gg
3 years ago
cossonleo f1d339919f add expand_selection to last_motion 3 years ago
Omnikar e2ed691537
Implement `hx --tutor` and `:tutor` to load `tutor.txt` (#898)
* Implement `hx --tutor` and `:tutor` to load `tutor.txt`

* Document `hx --tutor` and `:tutor`

* Change `Document::set_path` to take an `Option`

* `Document::set_path` accepts an `Option<&Path>` instead of `&Path`.
* Remove `Editor::open_tutor` and make tutor-open functionality use
  `Editor::open` and `Document::set_path`.

* Use `PathBuf::join`

Co-authored-by: Ivan Tham <pickfire@riseup.net>

* Add comments explaining unsetting tutor path

Co-authored-by: Ivan Tham <pickfire@riseup.net>
3 years ago
Omnikar a7d87c79ce
Fix `:quit!` description and tense of other commands (#902) 3 years ago
CossonLeo 2ed01f2d9c
find motion and textobj motion repeat (#891) 3 years ago
CossonLeo 971ba8929f
Filter completion items from language server by starts_with word under cursor (#883)
* filter items by starts_with pre nth char of cursor

* add config for filter completion items by starts_with

* filter items by starts_with pre nth char of cursor

* add config for filter completion items by starts_with

* remove completion items pre filter configuratio
3 years ago
Oskar Nehlin 0f886af4b9
Add commands for moving between splits with a direction (#860)
* Add commands for moving between splits with a direction

* Update keymaps

* Change picker mapping

* Add test and clean up some comments
3 years ago
Gokul Soumya 4ee92cad19
Add treesitter textobjects (#728)
* Add treesitter textobject queries

Only for Go, Python and Rust for now.

* Add tree-sitter textobjects

Only has functions and class objects as of now.

* Fix tests

* Add docs for tree-sitter textobjects

* Add guide for creating new textobject queries

* Add parameter textobject

Only parameter.inside is implemented now, parameter.around
will probably require custom predicates akin to nvim' `make-range`
since we want to select a trailing comma too (a comma will be
an anonymous node and matching against them doesn't work similar
to named nodes)

* Simplify TextObject cell init
3 years ago
radical3dd b1ebd7a07e
Replace current selection with all yanked values. (#882) 3 years ago
CossonLeo 9ac0c95161
Improve completion trigger (#838)
* improve idle completion trigger

* add completion-trigger-len to book

* rename semantics_completion to language_server_completion and optimize idle completion trigger
3 years ago
Blaž Hrastnik f8f63c5508
Merge pull request #821 from helix-editor/idle-timer
Idle timer / Autocompletion
3 years ago
Blaž Hrastnik 633b981db2 Make idle-timeout configurable 3 years ago
Ethan Frei 9f27be429d
relative paths showing active file in global search (#803) 3 years ago
Blaž Hrastnik 66f26e82ce Filter the initial completion 3 years ago
Blaž Hrastnik 40abec80e1 Experiment with autocompletion on idle 3 years ago
Irevoire c4ae17dfd4
fix clippy warnings (#804) 3 years ago
Irevoire 7e958e1834
Add a bunch of aliases (#797)
* add a bunch of aliases

* apply code review from archseer
3 years ago
Dylan Richardson 4a92a79da4
global search: show file names as relative paths (#802)
This commit fixes #786
3 years ago
Matt W df55eaae69
Add tilde expansion for file opening (#782)
* change to helix_core's tilde expansion,
    from helix-core::path::expand_tilde
3 years ago
Blaž Hrastnik 2e0803c8d9 Implement 'remove_primary_selection' as Alt-,
This allows removing search matches from the selection

Fixes #713
3 years ago
Blaž Hrastnik 9ea9e779b2 experiment: Move keep_primary_selection to , 3 years ago
lurpahi a958d34bfb
Add option for automatic insertion of closing-parens/brackets/etc (#779)
* Add auto-pair editor option

* Document auto-pair editor option

* Make cargo fmt happy

* Actually make cargo fmt happy

* Rename auto-pair option to auto-pairs

* Inline a few constants

Co-authored-by: miaomai <cunso@tutanota.com>
3 years ago
Leoi Hung Kin 432bec10ed
allow smart case in global search (#781) 3 years ago
Leoi Hung Kin 9456d5c1a2
Initial implementation of global search (#651)
* initial implementation of global search

* use tokio::sync::mpsc::unbounded_channel instead of Arc, Mutex, Waker poll_fn

* use tokio_stream::wrappers::UnboundedReceiverStream to collect all search matches

* regex_prompt: unified callback; refactor

* global search doc
3 years ago