30 Commits

Author SHA1 Message Date
a0b2f660a2 Refactor BufferView move cursor up/down by screen row to remove reference to current cursor row offset 2018-03-31 09:54:32 -04:00
c72308c9c3 For short files that fit entirely in the window, adjust H/M/L jump points to within the file 2018-03-26 11:04:56 -04:00
5d4ed598eb Add H, M, L commands to move cursor within screen 2018-03-26 10:25:07 -04:00
909e56d5af Determine new cursor screen row when jumping to line by number 2018-03-20 20:46:24 -04:00
62868e596d Jump to line number for :<n> commands 2018-03-19 23:20:32 -04:00
0d9d160464 add Ctrl+Home and Ctrl+End command-mode mappings 2018-01-03 17:05:16 -05:00
e8267b765b BufferView: Use Buffer::Iterator functions for moving forward/backward in line 2017-11-21 22:09:53 -05:00
bb5bf6a13a Implement f/F/t/T commands 2017-11-15 21:01:20 -05:00
2d559db7d0 BufferView: cursor_move() takes a character argument 2017-11-15 20:32:01 -05:00
7199bb56e3 adjust cursor screen row when moving cursor up/down by screen rows 2017-10-14 12:22:38 -04:00
1d12a7fe7d BufferView: fix more scrolling problems 2017-09-23 16:02:34 -04:00
33377f7668 fix moving cursor screen row down with row-wrapping tab characters 2017-09-23 10:54:30 -04:00
55dc13d729 Fix scrolling BufferView past empty lines 2017-09-20 20:00:19 -04:00
d2fa28c5e1 Fix BufferView repeating last line for the remainder of the view 2017-09-20 19:40:51 -04:00
5c3a095aeb BufferView: test and fix scrolling through super long lines 2017-09-13 20:57:42 -04:00
70aba6e2d4 BufferView: add scroll_view_{up,down}() 2017-09-13 20:08:09 -04:00
84759d0a36 BufferView: add functions to move cursor up/down by screen row 2017-09-11 22:43:38 -04:00
fcd198b691 Add cursor movement logic to BufferView 2017-09-11 21:10:02 -04:00
f3604e1850 BufferView optimization: avoid calling calculate_rows_in_cursor_line() twice per update() 2017-09-03 18:27:19 -04:00
359f5bed9f BufferView updates cursor screen row to follow moved cursor 2017-09-03 18:15:37 -04:00
14e285041e BufferView: user must call update() after all changes and before vert_iter() 2017-09-03 17:34:41 -04:00
5b35a35b24 BufferView stores all lines in view after update() 2017-09-03 17:31:56 -04:00
4b3e1ea7e7 Change BufferView and BufferLineWalker to return iterator objects for iteration instead of using lambdas for callbacks. 2017-09-03 17:05:01 -04:00
b89f348602 add some initial BufferView unit tests 2017-08-29 23:20:42 -04:00
8e0796decf move much of the buffer layout code from BufferPane to BufferView 2017-08-29 23:03:49 -04:00
545e73bd07 use BufferLineWalker from BufferView 2017-08-24 22:03:56 -04:00
3d4e8230fe move character iteration logic from BufferView to BufferLineWalker 2017-08-24 20:57:59 -04:00
65df0c2320 more work on BufferView 2017-05-07 19:52:21 -04:00
e243dd654c add BufferView::iter_cols() 2017-05-07 19:33:37 -04:00
43052321c4 add initial BufferView class 2017-05-07 19:10:00 -04:00