Browse Source

Make cursor not wrap around

The wrap around feature was nice, but added too much code for what it
was worth. It also kind of defeated navigation by motions like }, gg
etc.
Marco Hinz 12 năm trước cách đây
mục cha
commit
7a4b8bc340
1 tập tin đã thay đổi với 5 bổ sung24 xóa
  1. 5 24
      autoload/startify.vim

+ 5 - 24
autoload/startify.vim

@@ -82,9 +82,6 @@ function! startify#insane_in_the_membrane() abort
     call append('$', ['', '   [q]  <quit>'])
   endif
 
-  let s:lastline = line('$')
-  call append('$', '')
-
   if exists('g:startify_custom_footer')
     call append('$', g:startify_custom_footer)
   endif
@@ -367,30 +364,14 @@ function! s:set_cursor() abort
 
   " going down
   if s:newline > s:oldline
-    if empty(getline(s:newline))
-      let s:newline += 1
-    endif
-    if s:newline > s:lastline
-      call cursor(headoff, 5)
-      let s:newline = headoff
-    else
-      call cursor(s:newline, 5)
-    endif
+    if empty(getline(s:newline)) | let s:newline += 1      | endif
   " going up
   elseif s:newline < s:oldline
-    if empty(getline(s:newline))
-      let s:newline -= 1
-    endif
-    if s:newline < headoff
-      call cursor(s:lastline, 5)
-      let s:newline = s:lastline
-    else
-      call cursor(s:newline, 5)
-    endif
-  " hold cursor in column
-  else
-    call cursor(s:newline, 5)
+    if empty(getline(s:newline)) | let s:newline -= 1      | endif
+    if s:newline < headoff       | let s:newline = headoff | endif
   endif
+
+  call cursor(s:newline, 5)
 endfunction
 
 " Function: s:set_mark {{{1