]> git.nbdom.net Git - nb.git/commitdiff
Sort in MapHelp()
authorNicolas Boisselier <nicolas.boisselier@gmail.com>
Tue, 21 Mar 2023 20:37:39 +0000 (21:37 +0100)
committerNicolas Boisselier <nicolas.boisselier@gmail.com>
Tue, 21 Mar 2023 20:37:39 +0000 (21:37 +0100)
etc/vim/source/functions.vim
etc/vim/source/map.vim

index a01c965f23637440a5561648e23cc9d9d3dddd88..d9de05cfd92d06a732290cc39cb537318abb6922 100644 (file)
@@ -5,7 +5,7 @@
 "
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
 if exists("_loaded_file")
-  finish
+  finish
 endif
 let _loaded_file = 1
 
index edc868420a57b695b8e38934f3c9f78e8dc8eb03..d84630e9c3dfd086aac774e6828027894e4821b2 100644 (file)
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
 let MapHelp = []
 func!MapHelp()
-  let i=0
   let line=['','']
+  let klines=[]
   let fcount=''
+
+  " Calculate string length for sprintf
   for line in g:MapHelp
     if len(line[0]) > fcount
       let fcount = len(line[0])
     endif
-    " echo len(line[0])
+    call add(klines,line[0]) " for sorting later
   endfor
-  " echo fcount
+       call sort(klines)
 
        let fmt=" %-" . fcount . "s : %s"
+
+       let i=0
        echo "Help:\n"
-  for line in g:MapHelp
-         echo printf(fmt,line[0],line[1])
+  for line in klines
+         echo printf(fmt,g:MapHelp[i][0],g:MapHelp[i][1])
+    let i = i+1
   endfor
+
 endfunc
 
 func! CommentMeNow()