aboutsummaryrefslogtreecommitdiff
path: root/helix-view/src
Commit message (Collapse)AuthorAge
...
| | * | | | Remove ui.cursor.primary and hashmap lookupsGokul Soumya2021-12-18
| | | | | |
| | * | | | Change default cursors to block for all modesGokul Soumya2021-11-29
| | | | | |
| | * | | | Use serde attribute to rename to lowercaseGokul Soumya2021-11-25
| | | | | |
| | * | | | Change cursor shape on mode changeGokul Soumya2021-11-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #323. Due to terminal limitations we can only change the shape of the primary cursor.
| * | | | | cargo fmt + clippy lintBlaž Hrastnik2022-01-23
| | | | | |
| * | | | | Store theme scopes on the loader, this way theme isn't passed aroundBlaž Hrastnik2022-01-23
| | | | | |
| * | | | | syntax: Split parsing and highlightingBlaž Hrastnik2022-01-23
| | | | | |
| * | | | | Update to rust 1.58, fix a bunch of optional lintsBlaž Hrastnik2022-01-16
| | | | | |
| * | | | | Fix panics when resizing (#1408)Mathis Brossier2022-01-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Change buffer.get & buffer.get_mut to return Option, Implement Trait Index & IndexMut to panic * Prevent FilePicker from drawing outside buffer (rust panics) * apply suggestion * add function in_bounds to avoid useless calculations Co-authored-by: mathis <mathis.brossier@universite-paris-saclay.fr>
| * | | | | Use the correct language ID for JavaScript & TypeScript (#1466)Kevin Sjöberg2022-01-15
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use correct language ID for JavaScript/TypeScript * Add missing slash * Only calculate fallback when needed
| * | | | Put some tests behind #[cfg(test)] (#1459)Benoît Cortier2022-01-08
| | |_|/ | |/| | | | | | It was missing in a few places.
| * | | feat(commands): shrink_selection (#1340)Matouš Dzivjak2022-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat(commands): shrink_selection Add `shrink_selection` command that can be used to shrink previously expanded selection. To make `shrink_selection` work it was necessary to add selection history to the Document since we want to shrink the selection towards the syntax tree node that was initially selected. Selection history is cleared any time the user changes selection other way than by `expand_selection`. This ensures that we don't get some funky edge cases when user calls `shrink_selection`. Related: https://github.com/helix-editor/helix/discussions/1328 * Refactor shrink_selection, move history to view * Remove useless comment * Add default key mapping for extend&shrink selection * Rework contains_selection method * Shrink selection without expand selects first child
| * | | Extract macro parsing to `helix-view` and add unit testsOmnikar2021-12-27
| | | |
| * | | Update settings at runtime (#798)Tamo2021-12-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat: Update settings at runtime fix the clippy warning * update the documentation * use to_value instead of to_vec+from_value * drop the equal * remove an useless comment * apply suggestion
| * | | feat(ui): file encoding in statusline (#1355)Matouš Dzivjak2021-12-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat(ui): file encoding in statusline Display file encoding in statusline if the encoding isn't UTF-8. * Re-export encoding_rs from core From there it can be imported by other mods that rely on it.
| * | | Improve dedent behavior (#1232)WindSoilder2021-12-21
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tmp add code for dedent * finish normal_mode with dedent behavior * use function pointer * rebase from origin * check dedent condition inside normal_mode implementation * using if let... * fix check * using char_is_whitespace instead of ch.is_whitespace * fix clippy * abstract restore_indent function
| * | Add ui.gutter to theme all gutters (i.e. set bg)Blaž Hrastnik2021-12-13
| | |
| * | Use `base16_tty` as 16-color default, fix theme nameOmnikar2021-12-13
| | |
| * | change to .unwrap_or_default() and fix ui.window and ui.statuslineNNB2021-12-13
| | |
| * | Update theme.rsNNB2021-12-13
| | |
| * | Load alt default theme if true color is not supportedOmnikar2021-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Move `runtime/themes/base16_default_terminal.toml` to `base16_theme.toml` alongside `theme.toml` * Use `terminfo` crate to detect whether the terminal supports true color and, if the user has no theme configured and their terminal does not support true color, load the alt default theme instead of the normal default. Remove `terminfo` dependency, use `COLORTERM` env instead Prevent user from switching to an unsupported theme Add `true-color-override` option If the terminal is wrongly detected to not support true color, `true-color-override = true` will override the detection. Rename `true-color-override` to `true-color`
| * | Macros (#1234)Omnikar2021-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Macros WIP `helix_term::compositor::Callback` changed to take a `&mut Context` as a parameter for use by `play_macro` * Default to `@` register for macros * Import `KeyEvent` * Special-case shift-tab -> backtab in `KeyEvent` conversion * Move key recording to the compositor * Add comment * Add persistent display of macro recording status When macro recording is active, the pending keys display will be shifted 3 characters left, and the register being recorded to will be displayed between brackets — e.g., `[@]` — right of the pending keys display. * Fix/add documentation
| * | Fix compilationBlaž Hrastnik2021-12-06
| | | | | | | | | | | | nix-direnv issues still mess with my shell..
| * | Use binary_search when looking up diagnosticsBlaž Hrastnik2021-12-06
| | | | | | | | | | | | They're sorted by range so they should also be sorted by line
| * | fix: Normalize backtab into shift-tabBlaž Hrastnik2021-12-06
| | | | | | | | | | | | Fixes #1150
| * | Bump rust to 1.57, fix new lint failuresBlaž Hrastnik2021-12-03
| | |
| * | Add last modified file (gm) (#1093)Ivan Tham2021-12-02
| | |
| * | Annotate Theme::highlight with #[inline]Blaž Hrastnik2021-12-01
| | |
| * | ui: Optimize tree-sitter style lookupsBlaž Hrastnik2021-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Tree sitter returns an index referring to the position of the scope in the scopes array. We can use that same index to avoid a hashmap lookup and instead store the styles in an array. This currently stores the styles in both a map and an array because the UI still uses hashmap lookups, but it's a reasonable tradeoff.
* | | Simplify some cases that use return None to use ?Blaž Hrastnik2021-12-02
| | |
* | | Mark some more TODOs as resolvedBlaž Hrastnik2021-12-01
| | |
* | | Provide a single gutter component that does breakpoint || diagnosticBlaž Hrastnik2021-11-30
| | |
* | | dap: Prevent crashes on files with no name or breakpointsBlaž Hrastnik2021-11-30
| | |
* | | dap: Extract diagnostics gutter into gutters.rsBlaž Hrastnik2021-11-30
| | |
* | | dap: Rewrite breakpoints so that there's a single set maintainedBlaž Hrastnik2021-11-30
| | |
* | | Pass editor into render_view & gutter, reducing the number of paramsBlaž Hrastnik2021-11-30
| | |
* | | Merge remote-tracking branch 'origin/master' into debugBlaž Hrastnik2021-11-30
|\| |
| * | Extract gutters into helix-viewBlaž Hrastnik2021-11-29
| | |
| * | Gutter functionsBlaž Hrastnik2021-11-29
| | |
| * | Detect filetype on :write (#1141)RustyStriker2021-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixes #1136 * removed a log::info * removed temp.rs * cargo clippy no longer complains * new get_lang_server function * get_lang_server is now launch_language_server * launch_lang_server will now close the previous one * better code readability * remove resfresh_ls(and a wrong comment)
| * | Simplify some code in editor.rsBlaž Hrastnik2021-11-26
| | |
| * | Optimize space for DocumentId with NonZeroUsize (#1097)Ivan Tham2021-11-25
| |/ | | | | Now Option<DocumentId> uses one byte rather than two
| * File picker config (#988)Dan Nases Sha2021-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * squashed WIP commits * hide_gitignore working with config * pass reference to new config parameter of file_picker() * update config option name to match name on walk builder * add comments to config and documentation of option to book * add git_ignore option to WalkBuilder within prompt in commands.rs * WIP: add FilePickerConfig struct * WIP: cleanup * WIP: add more options including max_depth * WIP: changed defaults to match ignore crate defaults * WIP: change WalkBuilder in global_search() to use config options * WIP: removed follow_links, changed max_depth to follow config setting * WIP: update book with file-picker inline table notation * update documentation for file-picker config in book * adjusted to [editor.file-picker] in book configuration.md * adjust comments in editor.rs to be doc comments, cleanup * adjust comments * adjust book
* | cargo fmtBlaž Hrastnik2021-11-22
| |
* | dap: Modify breakpoints in place with no cloningBlaž Hrastnik2021-11-22
| |
* | Merge remote-tracking branch 'origin/master' into debugBlaž Hrastnik2021-11-21
|\|
| * Simplify view/doc macrosBlaž Hrastnik2021-11-18
| |
| * helix-view/editor: use SCRATCH_BUFFER_NAME const (#1104)Cole Helbling2021-11-15
| |
| * helix-term/commands: implement buffer-close (bc, bclose) (#1035)Cole Helbling2021-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * helix-view/view: impl method to remove document from jumps * helix-view/editor: impl close_document * helix-view/editor: remove close_buffer argument from `close` According to archseer, this was never implemented or used properly. Now that we have a proper "buffer close" function, we can get rid of this. * helix-term/commands: implement buffer-close (bc, bclose) This behaves the same as Kakoune's `delete-buffer` / `db` command: * With 3 files opened by the user with `:o ab`, `:o cd`, and `:o ef`: * `buffer-close` once closes `ef` and switches to `cd` * `buffer-close` again closes `cd` and switches to `ab` * `buffer-close` again closes `ab` and switches to a scratch buffer * With 3 files opened from the command line with `hx -- ab cd ef`: * `buffer-close` once closes `ab` and switches to `cd` * `buffer-close` again closes `cd` and switches to `ef` * `buffer-close` again closes `ef` and switches to a scratch buffer * With 1 file opened (`ab`): * `buffer-close` once closes `ab` and switches to a scratch buffer * `buffer-close` again closes the scratch buffer and switches to a new scratch buffer * helix-term/commands: implement buffer-close! (bclose!, bc!) Namely, if you have a document open in multiple splits, all the splits will be closed at the same time, leaving only splits without that document focused (or a scratch buffer if they were all focused on that buffer). * helix-view/tree: reset focus if Tree is empty
| * helix-term/commands: implement cquit (#1096)Cole Helbling2021-11-15
| | | | | | This allows you to exit helix with an exit code, e.g. `:cq 2`.