Commit Graph

148 Commits (418b833d2b64ed986cfc84ca023e1a6ca5080008)

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
Ivan Tham 9d591427be
Fix earlier/later missing changeset update (#1069)
Fix #1059
3 years ago
Blaž Hrastnik 549cdee561 Refactor shebang detection to reuse the loaded buffer 3 years ago
ath3 77dbbc73f9
Detect filetype from shebang line (#1001) 3 years ago
Blaž Hrastnik e80708eba7 Make sure document diagnostics are sorted 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
Kirawi cec0cfdaec
Uncomment mapping LSP diagnostics through changes (#925) 3 years ago
Blaž Hrastnik c1e5831b21 set_path: Pass in the function directly 3 years ago
Blaž Hrastnik 3e69a4852e Simplify set_path 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
Blaž Hrastnik e36ad8b4ed minor: Further simplify take_with 3 years ago
Blaž Hrastnik 3edca7854e completion: fully revert state before apply & insertText common prefix 3 years ago
Blaž Hrastnik c913bade0a fix: Indentation used different default on `hx` vs `hx new_file.txt` 3 years ago
Blaž Hrastnik 0b1bc566e4 fix: lsp: Regression with textDocument/didSave not getting sent 3 years ago
Blaž Hrastnik 64099af3f1 Don't panic on save if language_server isn't initialized 3 years ago
Blaž Hrastnik 37606bad47 lsp: doc.language_server() is None until initialize completes 3 years ago
Blaž Hrastnik 10b690b5bd Drop some &mut bounds where & would have sufficed 3 years ago
Blaž Hrastnik 800d79b584 ls: Refactor textDocument/didSave in a similar vein 3 years ago
Blaž Hrastnik 184637c55a lsp: refactor format so we stop cloning the language_server 3 years ago
Blaž Hrastnik 57ed5180e0 lsp: Improve line ending handling when generating TextEdit 3 years ago
Brian Shu fa4caf7e3d remove unsafe 3 years ago
Kirawi b99db7c687
Move path util functions from helix-term to helix-core (#650) 3 years ago
Blaž Hrastnik 1d45f50781 fix: Don't internally use relative paths in the buffer picker
Fixes #619
3 years ago
Kirawi 16bf8e1e6b
Document more of document.rs (#562) 3 years ago
Gokul Soumya d84f8b5fde
Show file preview in split pane in fuzzy finder (#534)
* Add preview pane for fuzzy finder

* Fix picker preview lag by caching

* Add picker preview for document symbols

* Cache picker preview per document instead of view

* Use line instead of range for preview doc

* Add picker preview for buffer picker

* Fix render bug and refactor picker

* Refactor picker preview rendering

* Split picker and preview and compose

The current selected item is cloned on every event, which is
undesirable

* Refactor out clones in previewed picker

* Retrieve doc from editor if possible in filepicker

* Disable syntax highlight for picker preview

Files already loaded in memory have syntax highlighting enabled

* Ignore directory symlinks in file picker

* Cleanup unnecessary pubs and derives

* Remove unnecessary highlight from file picker

* Reorganize buffer rendering

* Use normal picker for code actions

* Remove unnecessary generics and trait impls

* Remove prepare_for_render and make render mutable

* Skip picker preview if screen small, less padding
3 years ago
Blaž Hrastnik f0eb6ed96a Resolve a couple TODOs 3 years ago
Blaž Hrastnik 557c63033c fix: Map all selections on transaction.apply 3 years ago
Nathan Vegdahl f88d4c1e20 Move indent-style code into `helix_core::indent`. 3 years ago
Nathan Vegdahl e191a75e33 Give default document a single line ending. 3 years ago
Nathan Vegdahl cd7302ffd3 Enforce cursor/selection invariants in one place.
Rather than per-command like before.
3 years ago
Nathan Vegdahl 43594049dd Merge branch 'master' into great_line_ending_and_cursor_range_cleanup 3 years ago
Shafkath Shuhan 25103833b2 mark reloaded buffers as unchanged 3 years ago
Nathan Vegdahl 198fe40951 Don't insert a final line ending on file load/reload. 3 years ago
Nathan Vegdahl a77274e8bb Merge branch 'master' into great_line_ending_and_cursor_range_cleanup 3 years ago
Kirawi 0b1ed8656d
Fix #442 (#446)
* fix #442

fix #442

fmt

* create Rope from default line ending

* Fix use of encoding in Document::open()
3 years ago
Nathan Vegdahl 85d5b399de Merge branch 'master' into great_line_ending_and_cursor_range_cleanup 3 years ago
Blaž Hrastnik fc34efea12 appease clippy 3 years ago
Blaž Hrastnik 48481db8ca fix: Make path absolute before normalizing
:open ../file.txt failed before because .. would be stripped
3 years ago
Blaž Hrastnik b72c6204e5 fix: When calculating relative path, expand tilde last 3 years ago
Kirawi c5b2973739
`:reload` (#374)
* reloading functionality

* fn with_newline_eof()

* fmt

* wip

* wip

* wip

* wip

* moved to core, added simd feature for encoding_rs

* wip

* rm

* .gitignore

* wip

* local wip

* wip

* wip

* no features

* wip

* nit

* remove simd

* doc

* clippy

* clippy

* address comments

* add indentation & line ending change
3 years ago
Nathan Vegdahl 28627f97e9 Fix empty document test. 3 years ago
Nathan Vegdahl 7961a13007 Make new documents empty, rather than starting with a line ending. 3 years ago
Nathan Vegdahl 22dca3b111 Allow last line in file to lack a line break character. 3 years ago
Nathan Vegdahl 7c7be6d583 Make `Selection`'s normalize and transform methods self-consuming only. 3 years ago
Nathan Vegdahl 0ae522f3df Clean up `Selection` to not use so many allocations. 3 years ago
Joe Neeman 2902a10a3e Make Document's format API a little nicer. 3 years ago
Joe Neeman c9be480bf8 Make formatting happen asynchronously. 3 years ago
Nathan Vegdahl d534d6470f Detect file language before file indent style.
Fixes #378.  The issue was that because indent style detection
ran before language detection, there was no language indent
style to fall back on if indent style detection failed, so it
would just default to 2 spaces.
3 years ago
teenjuna c688288881
Move helix-view/tests/*txt files to txts subdirectory (#372)
* Move helix-view/tests/*txt files to txts subdirectory

* Rename tests/txts to tests/encoding
3 years ago