diff --git a/autoload/SpaceVim.vim b/autoload/SpaceVim.vim index 9abb2f84d..18ca57716 100644 --- a/autoload/SpaceVim.vim +++ b/autoload/SpaceVim.vim @@ -86,8 +86,12 @@ let g:spacevim_plugin_bundle_dir " < let g:spacevim_realtime_leader_guide = 0 "" -" Enable/Disable key frequency catching of SpaceVim. -let g:spacevim_enable_key_frequency = 1 +" Enable/Disable key frequency catching of SpaceVim. default value is 0. to +" enable it: +" > +" let g:spacevim_enable_key_frequency = 1 +" < +let g:spacevim_enable_key_frequency = 0 let g:spacevim_autocomplete_method = '' let g:spacevim_enable_cursorcolumn = 0 "" diff --git a/autoload/SpaceVim/mapping.vim b/autoload/SpaceVim/mapping.vim index e5753013c..66e65aba1 100644 --- a/autoload/SpaceVim/mapping.vim +++ b/autoload/SpaceVim/mapping.vim @@ -38,7 +38,11 @@ function! SpaceVim#mapping#def(type, key, value, ...) abort let gexe = substitute(gexe, '', "\", 'g') else endif - exec a:type . ' ' . a:key . ' ' . a:value + if g:spacevim_enable_key_frequency + exec a:type . ' ' . a:key . " SpaceVim#mapping#frequency#update('" . a:key . "', '" . a:value . "')" + else + exec a:type . ' ' . a:key . ' ' . a:value + endif if a:0 > 0 let desc = a:1 let description = '➤ ' diff --git a/autoload/SpaceVim/mapping/frequency.vim b/autoload/SpaceVim/mapping/frequency.vim index 31211c3c5..83b24d2ef 100644 --- a/autoload/SpaceVim/mapping/frequency.vim +++ b/autoload/SpaceVim/mapping/frequency.vim @@ -1,11 +1,12 @@ let s:data = {} -function! SpaceVim#mapping#frequency#update(key) abort +function! SpaceVim#mapping#frequency#update(key, rhs) abort if has_key(s:data, a:key) let s:data[a:key] += 1 else let s:data[a:key] = 1 endif + return a:rhs endfunction function! SpaceVim#mapping#frequency#view(keys) abort @@ -17,6 +18,9 @@ function! SpaceVim#mapping#frequency#view(keys) abort endfor endif endfunction +function! SpaceVim#mapping#frequency#viewall() abort + echo string(s:data) +endfunction function! s:get(key) abort if has_key(s:data, a:key) diff --git a/doc/SpaceVim.txt b/doc/SpaceVim.txt index 60d45a3d3..ca1126378 100644 --- a/doc/SpaceVim.txt +++ b/doc/SpaceVim.txt @@ -117,7 +117,11 @@ Enable/Disable realtime leader guide. Default is 0. < *g:spacevim_enable_key_frequency* -Enable/Disable key frequency catching of SpaceVim. +Enable/Disable key frequency catching of SpaceVim. default value is 0. to +enable it: +> + let g:spacevim_enable_key_frequency = 1 +< *g:spacevim_enable_neomake* SpaceVim default checker is neomake. If you want to use syntastic, use: