aboutsummaryrefslogtreecommitdiffstats
path: root/src/views.rs
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2019-08-12 00:27:25 -0400
committerJesse Luehrs <doy@tozt.net>2019-08-12 00:27:25 -0400
commit7d2e68156630af27539448a05347d6c55555c6ba (patch)
tree96334dd0bc345efef5b8243c8423dcada7f1b67c /src/views.rs
parentca12c28f744c34b27c57dd832ac5f713eff61ab4 (diff)
downloadynab-api-7d2e68156630af27539448a05347d6c55555c6ba.tar.gz
ynab-api-7d2e68156630af27539448a05347d6c55555c6ba.zip
add vi key bindings
Diffstat (limited to 'src/views.rs')
-rw-r--r--src/views.rs18
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))
+ })
+}