Ingrid
37ee3b3fac
fix line feed handling in integration test for windows
2 months ago
Ingrid
36a8a614a9
address hanging TODOs
2 months ago
Ingrid
56b1e20ecb
avoid repeated loading of config to check persistence config in startup
2 months ago
Ingrid
c3ed498dc9
add integration test for persistent state
2 months ago
Ingrid
554f0f891d
only trim persistent state files if persistent state is enabled
2 months ago
Ingrid
451de43e0b
split persistence config options into own struct
3 months ago
Ingrid
da18261b3a
add command to reload history
3 months ago
Ingrid
afa0f095d9
add trim config options for persistence
3 months ago
Ingrid
838a9b6c12
trim persistence files
3 months ago
Ingrid
71217afc0c
add on/off config options for persistence
3 months ago
Ingrid
56f47f04f6
persist clipboard
3 months ago
Ingrid
ca16809d75
fix integration tests
3 months ago
Ingrid
69a13fbba2
fix quirky file persistence behaviour
3 months ago
Ingrid
5f3849dc24
store ViewPosition and Selection directly in FileHistoryEntry
3 months ago
Ingrid
677a3dd3be
promote type/implementation-specific persistence logic to helix-view
3 months ago
Ingrid
1e99b62828
rename session to persistence
3 months ago
Ingrid
1ae19d9171
avoid exposing internals of register.rs
3 months ago
Ingrid
e8baf4bcb5
encode register history with bincode, and merge logic with file history
...
encoding was found to be necessary because registers can contain line
endings, which breaks the previous lines-of-text format
3 months ago
Ingrid
1cefa2874c
load file history
...
It was necessary make pos in file args an option to prevent it from
overwriting the file positions loaded from persistence.
Alignment is not quite right... I think we need to persist selections
instead of view positions, or disable center aligning
3 months ago
Ingrid
ed7fb431aa
persist file history
3 months ago
Ingrid
b5c5e5d715
move session.rs from helix-term to helix-loader
3 months ago
Ingrid
6f6f3495d5
persist and load search history
3 months ago
Ingrid
69e40a3ea5
handle NotFound error when reading histfile before it has been created
3 months ago
Ingrid
32512a02b4
read command history from file
3 months ago
Ingrid
08f16fd4ca
switch to multi-file approach, implement persisting command history
3 months ago
Ingrid
0fcb26c877
rename shada to session
3 months ago
Ingrid
2f13ad6360
switch from rmp-serde to bincode
3 months ago
Ingrid
25ef120da9
disable writing shada in integration tests
...
will probably need a sophisticated way of handling this eventually for
testing shada behaviour, but for now this is fine
3 months ago
Ingrid
ac41d361ee
minimal implementation of shada
...
currently only writes the header when closing
3 months ago
dependabot[bot]
38e6fcd5c5
build(deps): bump the rust-dependencies group with 7 updates ( #11530 )
...
Bumps the rust-dependencies group with 7 updates:
| Package | From | To |
| --- | --- | --- |
| [serde](https://github.com/serde-rs/serde ) | `1.0.207` | `1.0.208` |
| [serde_json](https://github.com/serde-rs/json ) | `1.0.124` | `1.0.125` |
| [tokio](https://github.com/tokio-rs/tokio ) | `1.39.2` | `1.39.3` |
| [libc](https://github.com/rust-lang/libc ) | `0.2.155` | `0.2.158` |
| [pulldown-cmark](https://github.com/raphlinus/pulldown-cmark ) | `0.11.0` | `0.12.0` |
| [cc](https://github.com/rust-lang/cc-rs ) | `1.1.10` | `1.1.13` |
| [which](https://github.com/harryfei/which-rs ) | `6.0.2` | `6.0.3` |
Updates `serde` from 1.0.207 to 1.0.208
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.207...v1.0.208 )
Updates `serde_json` from 1.0.124 to 1.0.125
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.124...1.0.125 )
Updates `tokio` from 1.39.2 to 1.39.3
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.39.2...tokio-1.39.3 )
Updates `libc` from 0.2.155 to 0.2.158
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Changelog](https://github.com/rust-lang/libc/blob/0.2.158/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.155...0.2.158 )
Updates `pulldown-cmark` from 0.11.0 to 0.12.0
- [Release notes](https://github.com/raphlinus/pulldown-cmark/releases )
- [Commits](https://github.com/raphlinus/pulldown-cmark/compare/v0.11.0...v0.12.0 )
Updates `cc` from 1.1.10 to 1.1.13
- [Release notes](https://github.com/rust-lang/cc-rs/releases )
- [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.1.10...cc-v1.1.13 )
Updates `which` from 6.0.2 to 6.0.3
- [Release notes](https://github.com/harryfei/which-rs/releases )
- [Changelog](https://github.com/harryfei/which-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/harryfei/which-rs/compare/6.0.2...6.0.3 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: pulldown-cmark
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
- dependency-name: cc
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: which
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3 months ago
RoloEdits
4e729dea02
fix: ensure view is initiated for jump_* commands ( #11529 )
3 months ago
dependabot[bot]
112b2878ae
build(deps): bump the rust-dependencies group with 4 updates ( #11476 )
...
Bumps the rust-dependencies group with 4 updates: [serde](https://github.com/serde-rs/serde ), [serde_json](https://github.com/serde-rs/json ), [tempfile](https://github.com/Stebalien/tempfile ) and [cc](https://github.com/rust-lang/cc-rs ).
Updates `serde` from 1.0.204 to 1.0.207
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.204...v1.0.207 )
Updates `serde_json` from 1.0.122 to 1.0.124
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.122...v1.0.124 )
Updates `tempfile` from 3.11.0 to 3.12.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Stebalien/tempfile/commits )
Updates `cc` from 1.1.7 to 1.1.10
- [Release notes](https://github.com/rust-lang/cc-rs/releases )
- [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.1.7...cc-v1.1.10 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: tempfile
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
- dependency-name: cc
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4 months ago
RoloEdits
e46cedfc26
refactor(commands): `trim_end` of `sh` output ( #11161 )
4 months ago
Michael Davis
b7820ee668
Disallow macro keybindings within command sequences
...
This is a temporary limitation because of the way that command sequences
are executed. Each command is currently executed back-to-back
synchronously, but macros are by design queued up for the compositor.
So macros mixed into a command sequence will behave undesirably: they
will be executed after the rest of the static and/or typable commands
in the sequence.
This is pending a larger refactor of how we handle commands.
<https://redirect.github.com/helix-editor/helix/issues/5555 > has
further details and <https://redirect.github.com/helix-editor/helix/issues/4508 >
discusses a similar problem faced by the command palette.
4 months ago
Michael Davis
1098a348aa
Parse and execute macro mappable commands
4 months ago
RoloEdits
f52251960a
fix(picker): no longer `trim` search pattern ( #11406 )
4 months ago
Jefta
518425e055
Add commands for movement by subwords ( #8147 )
...
* Allow moving by subword
* Add tests for subword movement
4 months ago
Blaž Hrastnik
6ba46e5cbf
Fix crossterm compilation on macOS
4 months ago
dependabot[bot]
92a87dbc31
build(deps): bump the rust-dependencies group with 9 updates
...
Bumps the rust-dependencies group with 9 updates:
| Package | From | To |
| --- | --- | --- |
| [regex](https://github.com/rust-lang/regex ) | `1.10.5` | `1.10.6` |
| [dunce](https://gitlab.com/kornelski/dunce ) | `1.0.4` | `1.0.5` |
| [serde_json](https://github.com/serde-rs/json ) | `1.0.121` | `1.0.122` |
| [toml](https://github.com/toml-rs/toml ) | `0.8.16` | `0.8.19` |
| [crossterm](https://github.com/crossterm-rs/crossterm ) | `0.27.0` | `0.28.1` |
| [tempfile](https://github.com/Stebalien/tempfile ) | `3.10.1` | `3.11.0` |
| [serde_repr](https://github.com/dtolnay/serde-repr ) | `0.1.12` | `0.1.19` |
| [which](https://github.com/harryfei/which-rs ) | `6.0.1` | `6.0.2` |
| [windows-sys](https://github.com/microsoft/windows-rs ) | `0.52.0` | `0.59.0` |
Updates `regex` from 1.10.5 to 1.10.6
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.10.5...1.10.6 )
Updates `dunce` from 1.0.4 to 1.0.5
- [Commits](https://gitlab.com/kornelski/dunce/compare/v1.0.4...v1.0.5 )
Updates `serde_json` from 1.0.121 to 1.0.122
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.121...v1.0.122 )
Updates `toml` from 0.8.16 to 0.8.19
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.16...toml-v0.8.19 )
Updates `crossterm` from 0.27.0 to 0.28.1
- [Release notes](https://github.com/crossterm-rs/crossterm/releases )
- [Changelog](https://github.com/crossterm-rs/crossterm/blob/master/CHANGELOG.md )
- [Commits](https://github.com/crossterm-rs/crossterm/commits )
Updates `tempfile` from 3.10.1 to 3.11.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.10.1...v3.11.0 )
Updates `serde_repr` from 0.1.12 to 0.1.19
- [Release notes](https://github.com/dtolnay/serde-repr/releases )
- [Commits](https://github.com/dtolnay/serde-repr/compare/0.1.12...0.1.19 )
Updates `which` from 6.0.1 to 6.0.2
- [Release notes](https://github.com/harryfei/which-rs/releases )
- [Changelog](https://github.com/harryfei/which-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/harryfei/which-rs/compare/6.0.1...6.0.2 )
Updates `windows-sys` from 0.52.0 to 0.59.0
- [Release notes](https://github.com/microsoft/windows-rs/releases )
- [Commits](https://github.com/microsoft/windows-rs/compare/0.52.0...0.59.0 )
---
updated-dependencies:
- dependency-name: regex
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: dunce
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: toml
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: crossterm
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
- dependency-name: tempfile
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
- dependency-name: serde_repr
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: which
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: windows-sys
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
4 months ago
André Carneiro
0a4432b104
Add statusline errors when nothing is selected with `s`, `K`, `A-K` ( #11370 )
4 months ago
RoloEdits
cfe80acb6f
output `stderr` in `:sh` popup if shell commands fail ( #11239 )
...
* refactor(commands): output `stderr` in `:sh` popup
* refactor(commands): switch to `from_utf8_lossy`
This way something is always displayed.
* refactor: no longer log stderr output on failure
4 months ago
RoloEdits
86aecc96a1
chore: clean up clippy lints ( #11377 )
...
Using clippy 1.80.0. Also cleans up some that were windows only.
4 months ago
麦芽糖
08ac37d295
Add theme keys for the picker header area ( #11343 )
...
* feat: pertty header
* 更新 themes.md
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
---------
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
4 months ago
Pascal Kuthe
8e041c99df
stable sort lsp edits ( #11357 )
4 months ago
Skyler Hawthorne
face6a3268
Disable hard link integration test on Android
...
Non-rooted Android typically doesn't have permission to use hard links
at all, so this test fails on Android.
4 months ago
Kirawi
e5372b04a1
Fix writing hardlinks ( #11340 )
...
* don't use backup files with hardlinks
* check if the inodes remain the same in the test
* move funcs to faccess and use AsRawHandle
* use a copy as a backup for hardlinks
* delete backup after copy
4 months ago
Nikolay Minaev
0813147b97
Use fs' mtime to avoid saving problem on out-of-synced network fs ( #11142 )
...
In the case of network file systems, if the server time is ahead
of the local system time, then helix could annoy with messages
that the file has already been modified by another application.
4 months ago
Ingrid
1d0a3d49d3
Consistently maintain view position ( #10559 )
...
* replicate t-monaghan's changes
* remove View.offset in favour of Document.view_data.view_position
* improve access patterns for Document.view_data
* better borrow checker wrangling with doc_mut!()
* reintroduce ensure_cursor_in_view in handle_config_events
since we sorted out the borrow checker issues using partial borrows,
there's nothing stopping us from going back to the simpler implementation
* introduce helper functions on Document .view_offset, set_view_offset
* fix rebase breakage
4 months ago
Trevor Gross
70a9477ec8
Add `:mv` as an alias for `:move` ( #11256 )
...
`mv` is the familiar shell command to move or rename a file. Add this to
Helix as an alias for `:move`.
4 months ago
Michael Davis
dbaa636683
Picker: Skip dynamic query debounce for pastes ( #11211 )
...
Pastes are probably the last edit one means to make before the query
should run so it doesn't need to be debounced.
This makes global search much snappier for example when accepting the
history suggestion from the '/' register or pasting a pattern from the
clipboard or a register.
4 months ago