diff options
author | Jesse Luehrs <doy@tozt.net> | 2019-08-12 00:27:25 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2019-08-12 00:27:25 -0400 |
commit | 7d2e68156630af27539448a05347d6c55555c6ba (patch) | |
tree | 96334dd0bc345efef5b8243c8423dcada7f1b67c /src/views.rs | |
parent | ca12c28f744c34b27c57dd832ac5f713eff61ab4 (diff) | |
download | ynab-api-7d2e68156630af27539448a05347d6c55555c6ba.tar.gz ynab-api-7d2e68156630af27539448a05347d6c55555c6ba.zip |
add vi key bindings
Diffstat (limited to 'src/views.rs')
-rw-r--r-- | src/views.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/views.rs b/src/views.rs new file mode 100644 index 0000000..b6846b8 --- /dev/null +++ b/src/views.rs @@ -0,0 +1,18 @@ +mod txn_table; +pub use txn_table::{inflows_table, outflows_table}; + +pub fn vi_view<V: cursive::view::View>(v: V) -> impl cursive::view::View { + cursive::views::OnEventView::new(v) + .on_event('h', |s| { + s.on_event(cursive::event::Event::Key(cursive::event::Key::Left)) + }) + .on_event('j', |s| { + s.on_event(cursive::event::Event::Key(cursive::event::Key::Down)) + }) + .on_event('k', |s| { + s.on_event(cursive::event::Event::Key(cursive::event::Key::Up)) + }) + .on_event('l', |s| { + s.on_event(cursive::event::Event::Key(cursive::event::Key::Right)) + }) +} |