Commit Graph

69 Commits (2793ff383228403b1ebaf2a29c870a13ee76075a)

Author SHA1 Message Date
Gokul Soumya e4e93e176c fix: Merge default palette with user palette 3 years ago
Gokul Soumya e40e6db227 feat: Default theme palette using 16 terminal colors 3 years ago
oberblastmeister 825bceeab6
add_newline unimpaired mapping (#653)
* added some keymaps

* remove

* remove wrong mappings

* remove

* wrong import

* use enum

* correct line ending

* added to book

* column
3 years ago
Blaž Hrastnik ce7ad2beb5 Reimplement keep-pipe, it needs to manipulate selections, not text 3 years ago
Omnikar e772808a5b
Shell commands (#547)
* Implement shell interaction commands

* Use slice instead of iterator for shell invocation

* Default to `sh` instead of `$SHELL` for shell commands

* Enforce trailing comma in `commands` macro

* Use `|` register for shell commands

* Move shell config to `editor` and use in command

* Update shell command prompts

* Remove clone of shell config

* Change shell function names to match prompts

* Log stderr contents upon external command error

* Remove `unwrap` calls on potential common errors

`shell` will no longer panic if:
  * The user-configured shell cannot be found
  * The shell command does not output UTF-8

* Remove redundant `pipe` parameter

* Rename `ShellBehavior::None` to `Ignore`

* Display error when shell command is used and `shell = []`

* Document shell commands in `keymap.md`
3 years ago
CossonLeo d6a9c2c0f6
Add ui.menu text style (#664)
* add menu text style

* add ui.menu.text ui.info ui.info.text to book

* change ui.menu.text to ui.menu

* fix book's ui.menu
3 years ago
Omnikar 46f537d4ce Fix missing backtick in `keymap.md` 3 years ago
Omnikar 048a390568
Add `Command` column to keymap documentation (#662) 3 years ago
Gokul Soumya b59b248561
Add docs for registers, multi key remaps (#557) 3 years ago
superlou 4b5090a5f6 Update configuration.md for Windows
Added explicit paths for WIndows, Mac, and Linux based on [`choose_base_strategy`](https://docs.rs/etcetera/0.3.2/etcetera/base_strategy/fn.choose_base_strategy.html)
3 years ago
Blaž Hrastnik dbd853a082 Document new keys in book/ 3 years ago
Blaž Hrastnik 66a90130a5 Implement selection rotation with `(` and `)` 3 years ago
Blaž Hrastnik 5342f976d4 Document C/Alt-C in the keymap 3 years ago
Ryo Hirayama ef6a2317b7 Update keymap.md 3 years ago
Blaž Hrastnik 0fdb626c2c Remove embed_runtime feature
It's no longer practical to maintain. Closes #451
3 years ago
Ivan Tham 013bec407c Quite edit page
Stolen from https://github.com/rust-lang/wg-async-foundations/pull/225
3 years ago
Gokul Soumya 6a8a01df6b Add missing keybinds to docs 3 years ago
Cor Peters 722cfedb38
Added change_case command (#441)
* Added change_case command

* Added switch_to_uppercase and switch_to_lowercase

Renamed change_case to switch_case.

* Updated the Keymap section of the Book

* Use flat_map instead of map + flatten

* Fix switch_to_uppercase using to_lowercase

* Switched 'Alt-`' to uppercase and '`' to lowercase

Co-authored-by: Cor <prive@corpeters.nl>
3 years ago
Kirawi 084a8a9522
Rewritten Rust `highlights.scm` (#425)
* rewrote Rust highlights.scm

* wip

* wip

* wip

* wip

* fixed type highlighting

* wip

* rewrite again

* moved operators

* missing newline

* missing newline

* update book

* fix constructor highlighting

* fix constructor highlighting

* fix const highlighting

* better constructor highlighting

* remove dup, bug was my locals.scm file

* fixed docs

* merge

* fixed for highlighting

* add yield

* remove yield

* added yield back

* fixed yield highlighting

* unecessary
3 years ago
Kirawi c7aa7bf4ba
VSCode Dark+ Theme (#414)
* wip

* Add VSCode Dark+ Theme

wip

wip

wip

wip

wip

wip

properly detect constants

add bool

wip

* suggestion

* add variant for c/c++

* fix hexcode error

* removed regex highlight

* fixed constant higlighting

* wip

* add space

* add suggestions

* update theme

* update book

* suggestions

* fix c/c++ enum

* update book
3 years ago
Blaž Hrastnik a4e28c6927 Implement `X` as extend selection to line bounds 3 years ago
Gokul Soumya 37f0b9ee15 Add missing linenr.selected key to docs 3 years ago
Gokul Soumya c68fe1f2a3
Add object selection (textobjects) (#385)
* Add textobjects for word

* Add textobjects for surround characters

* Apply clippy lints

* Remove ThisWordPrevBound in favor of PrevWordEnd

It's the same as PrevWordEnd except for taking the current char
into account, so use a "flag" to capture that usecase

* Add tests for PrevWordEnd movement

* Remove ThisWord* movements

They did not preserve anchor positions and were only used
for textobject boundary search anyway so replace them with
simple position finding functions

* Rewrite tests of word textobject

* Add tests for surround textobject

* Add textobject docs

* Refactor textobject word position functions

* Apply clippy lints on textobject

* Fix overflow error with textobjects
3 years ago
Jakub Bartodziej 79f096963c
Color palettes (#393)
* Enable using color palettes in theme files.

* Add an example theme defined using a gruvbox color palette.

* Fix clippy error.

* Small style improvement.

* Add documentation for the features to themes.md.

* Update runtime/themes/gruvbox.toml

Fix the value of purple0.

Co-authored-by: DrZingo <DrZingo@users.noreply.github.com>

Co-authored-by: DrZingo <DrZingo@users.noreply.github.com>
3 years ago
PabloMansanet c2a292ecf3 Update keymap.md 3 years ago
wojciechkepka c534fdefdc Refactor, add `ui.cursor.primary` 3 years ago
wojciechkepka d70be55f70 Add ability to theme primary selecition 3 years ago
wojciechkepka f09ccbc891 Update docs 3 years ago
wojciechkepka ed6528b9a6 fix: Docs, `select_line` -> `extend_line` 3 years ago
Blaž Hrastnik 866b32b5d7 Add repology.org packaging status 3 years ago
Gokul Soumya 753ed4cbc5 Add documentation for surround 3 years ago
wojciechkepka 618ad55dc1 Update docs 3 years ago
Blaž Hrastnik f41688d960 Merge `x` and `X` 3 years ago
Benoît CORTIER ffb54b4eac book: document new system clipboard mappings 3 years ago
Gokul Soumya 29f77b9c5f Fix docx formatting and links 3 years ago
wojciechkepka cd0ecded1f Update docs 3 years ago
rypervenche 0151826233
Removed unneeded escaping in Markdown docs (#299) 3 years ago
wojciechkepka a3cb79ebaa Use kebab-case for config 3 years ago
wojciechkepka bbefc1db63 Add an option to disable display of progress in status bar 3 years ago
Perry Thompson f65db9397a Fix typos in Markdown documentation 3 years ago
Blaž Hrastnik 14db2cc68b
Add homebrew tap instructions again 3 years ago
PabloMansanet f7e00cf720
Configurable keys 2 (Mapping keys to commands) (#268)
* Add convenience/clarity wrapper for Range initialization

* Add keycode parse and display methods

* Add remapping functions and tests

* Implement key remapping

* Add remapping book entry

* Use raw string literal for toml

* Add command constants

* Make command functions private

* Map directly to commands

* Match key parsing/displaying to Kakoune

* Formatting pass

* Update documentation

* Formatting

* Fix example in the book

* Refactor into single config file

* Formatting

* Refactor configuration and add keymap newtype wrappers

* Address first batch of PR comments

* Replace FromStr with custom deserialize
3 years ago
Gokul Soumya d1c8a74771 Add theme key for selected line number
Adds `ui.linenr.selected` which controls highlight of linu numbes which
have cursors on.

- Fallback to linenr if linenr.selected is missing

- Update docs and themes

- Add TODOs for themes with temporary linenr.selected
3 years ago
Gokul Soumya eb77de6a51 Format docs for better readability
- Wrapped appropriate table elements in inline code blocks
- Added links to different modes
- Capitalised table elements
3 years ago
Ivan Tham 002f1ad397 Add filter ability to picker
Inspired by doom emacs. Able to filter picker options multiple times.
3 years ago
Gokul Soumya f33aaba53f Add ui.selection to theme.toml
Enables changing the color of the selection which was previously
hard coded.
3 years ago
Robin 9baf1ecc90
add symbol picker (#230)
* add symbol picker

use the lsp document_symbol request

* fix errors from merging in master

* add docs for symbol picker
3 years ago
Robin 44cc0d8eb0
add alternate file (#223)
* add alternate file

inspired by vim ctrl-6/kak ga commands. the alternate file is kept per view

* apply feedback from #223

* rename to last_accessed

* add ga doc

* add fail message for ga
3 years ago
PabloMansanet 86af55c379
Movement fixes, refactor and unit test suite (#217)
* Add convenience/clarity wrapper for Range initialization

* Test horizontal moves

* Add column jumping tests

* Add failing movement conditions for multi-word moves

* Refactor skip_over_next

* Add complex forward movement unit tests

* Add strict whitespace checks and edge case tests

* Restore formatting

* Remove unused function

* Add empty test case for deletion and fix nth_prev_word_boundary

* Add tests for backward motion

* Refactor word movement

* Address review comments and finish refactoring backwards move

* Finish unit test suite

* Fmt pass

* Fix lint erors

* Clean up diff restoring bad 'cargo fmt' actions

* Simplify movement closures (thanks Pickfire)

* Fmt pass

* Replace index-based movement with iterator based movement, ensuring that each move incurs a single call to the RopeSlice API

* Break down tuple function

* Extract common logic to all movement functions

* Split iterator helpers away into their own module

* WIP reducing clones

* Operate on spans

* WIP simplifying iterators

* Simplify motion helpers

* Fix iterator

* Fix all unit tests

* Refactor and simplify

* Simplify fold
4 years ago
Wojciech Kępka 48df05b16d commands: Add goto first non-whitespace char of line 4 years ago