Lucas Pütz
be1953e00e
Fix handling of special keys ( #38 )
5 months ago
Iron-E
cbe88095ab
Feat/35/libmodal mode map fn ( #36 )
...
* ref(libmodal): `mode.switch` -> `mode.map.switch`
* feat(libmodal): `mode.map.fn`
* docs(libmodal): `libmodal.mode.map.fn`
* docs(examples): add `fn` example
6 months ago
Iron-E
9fa22b0453
fix(Mode): textchanged events ( #34 )
...
* ref(Mode): arbitrary number of per-instance autocmds
* ref(Mode): check cursor events using loop
* fix(Mode): handle textchanged events
* docs(examples): test CursorMoved, TextChanged events
7 months ago
Iron-E
8366119447
fix: virtual cursor edge cases ( #32 )
...
* perf(Mode): use dedicated virtual cursor namespace
* fix(Mode): virtual cursor stays in inactive buffers when exiting
* fix(Mode): `CursorMoved` not fired as expected
7 months ago
Iron-E
3cb0a3817f
feat(Mode): show count in popup
7 months ago
Iron-E
485b77bf14
fix(mode): incompatible with vim.v.count ( #26 )
...
* fix(mode): incompatible with vim.v.count
* ref(Vars): track local copy of global value
* ref(Mode): use new `Vars`
* ref(Mode): handle exit during `enter`
* ref: swap `Var.new` param order
Mode name should come before var name
* docs(examples): Vars
* ref: rename `Vars` -> `Var`
* fix(Mode): check if `exit == 1` for vim compat
* fix(Prompt): use new `Var` impl
* ref: remove `count1`
It seems like `math.max` is enough for this purpose
* doc: use h3 headers
7 months ago
Iron-E
1ecc4add3b
feat: `Mode:exit` ( #30 )
...
* fix(Mode): adapt to changes in `timeoutlen`
* feat(libmodal): do `self:exit()` inside callback
* docs: `Mode:exit`
* style: .editorconfig
* docs(libmodal): fix broken example
* feat(Mode): `self:switch`
* docs: `Mode:switch`
* feat(libmodal): `mode.switch`
Wraps `Mode:switch` for convenience
* docs: `libmodal.mode.switch`
* docs(examples): `*.switch`
7 months ago
Iron-E
3966014dbc
fix(Mode): cursor position doesn't update because of `getchar` ( #27 )
...
The solution here has been to use `vim.highlight.range` and hide the
real cursor.
SEE neovim/neovim#20793
7 months ago
vE5li
45577b6e19
fix: check for escaped keys and handle them correctly ( #23 )
...
Original author is @vE5li. The commit was resigned in order to be
merged upstream.
1 year ago
Iron-E
875636e91e
ref(Help): use `Statement` for vimscript commands
1 year ago
Iron-E
76f24a7456
fix(Help): remove debug code
1 year ago
Iron-E
1f402f9c65
fix(Help): attempt to get `strwidth` of function
...
CLOSES #21
1 year ago
Iron-E
1cf0232281
fix(Layer): abort `restore_map` if error occured
2 years ago
Iron-E
6d85cb30e0
test(layer): can be used multiple times
2 years ago
Iron-E
51f7373f2b
chore: ignore LuaLS configuration
2 years ago
Iron-E
6d8aefa5e6
ref: remove useless directory nesting
2 years ago
Iron-E
0822846209
docs: class namespaces follow directories
2 years ago
Iron-E
b3fc3b3621
docs(README): preventing breaking changes on lazy
2 years ago
Iron-E
ad39d8a0eb
Merge pull request #20 from itsFrank/make-layers-reusable
...
feat: make layers reusable
2 years ago
Frank O'Brien
e3a4b66027
extracted functionality for removing mapping from existing mapping to new function, used this function on exit instead of :unmap
2 years ago
Iron-E
617022d48c
feat(Help): highlight types with `nvim_echo`
2 years ago
Iron-E
5c4685cab2
fix(examples): unset `fooModeExit` before first run
2 years ago
Iron-E
8c164b811d
perf: general improvements
...
I forgot to break it up into individual commits, and I ain't going
backwards now.
2 years ago
Iron-E
e535c17e84
ref(Layer): future-proof pruning of `nvim_get_keymap` dict
2 years ago
Iron-E
4ac30e0104
fix(Popup): width wrong when first opening
2 years ago
Iron-E
43073dbd7e
fix(Layer): `unmap` after `enter`
2 years ago
Iron-E
a7dbc7b76e
fix(Layer): `unmap` before `enter`ing layer
...
It didn't work before because the layer would still apply the "unmapped"
LHS when entering.
2 years ago
Iron-E
72f45f9187
fix(Layer): checks for if layer is active
...
The `existing_keymaps_by_mode` table is _always_ initialized, so that
was a red herring.
2 years ago
Iron-E
c8fce913e5
fix(examples): missing argument from `layer:unmap()`
2 years ago
Iron-E
83dc6c5433
style(examples): inline keymaps-submode instruction
2 years ago
Iron-E
34b94a246d
perf(Mode): remove `InputBytes` class
2 years ago
Iron-E
69beec5e8e
feat(Mode): adapt to `showmode` option
2 years ago
Iron-E
ba75e9b4d3
ref: make workspace diagnostics more accurate
2 years ago
Iron-E
fb06f151d2
docs(README): fix keycodes morphed into unicode
2 years ago
Iron-E
f9f9308d8d
docs(README): use spaces instead of tabs
2 years ago
Iron-E
63c5604bfa
docs(README): add heirline config
2 years ago
Iron-E
b52a440f38
fix(Mode): `nvim_get_mode` returns a table
2 years ago
Iron-E
ac93fed590
perf(Mode): `vim.fn.mode()` -> `vim.api.nvim_get_mode()`
2 years ago
Iron-E
64b7f42670
docs(libmodal): update event listings
2 years ago
Iron-E
165d834f68
docs(README): use `ModeChanged` for `lualine`
2 years ago
Iron-E
caf4bad7f8
ref(Mode): use `ModeChanged` instead of custom event
2 years ago
Iron-E
767a25bf6e
docs(README): add lazy.nvim example
2 years ago
Iron-E
0eb4afcc5b
ref: workspace diagnostics
2 years ago
Iron-E
e5b47b3858
docs(README): freeze feline.nvim config
2 years ago
Iron-E
d8e1925ee3
docs(README): add staline.nvim
2 years ago
Iron-E
c518ca2bfc
docs(README): use nbsp
2 years ago
Iron-E
cef71cb13a
docs(README): indent a little bit
2 years ago
Iron-E
cf78e409d1
docs(README): don't indent `lualine` example
2 years ago
Iron-E
affbd180e0
docs(README): add `lualine` example
2 years ago
Iron-E
2eb180827b
Merge branch 'master' of https://github.com/Iron-E/nvim-libmodal
2 years ago