diff --git a/autoload/SpaceVim.vim b/autoload/SpaceVim.vim index 566f112e6..9abb2f84d 100644 --- a/autoload/SpaceVim.vim +++ b/autoload/SpaceVim.vim @@ -85,6 +85,9 @@ let g:spacevim_plugin_bundle_dir " let g:spacevim_realtime_leader_guide = 1 " < let g:spacevim_realtime_leader_guide = 0 +"" +" Enable/Disable key frequency catching of SpaceVim. +let g:spacevim_enable_key_frequency = 1 let g:spacevim_autocomplete_method = '' let g:spacevim_enable_cursorcolumn = 0 "" diff --git a/autoload/SpaceVim/mapping/frequency.vim b/autoload/SpaceVim/mapping/frequency.vim new file mode 100644 index 000000000..31211c3c5 --- /dev/null +++ b/autoload/SpaceVim/mapping/frequency.vim @@ -0,0 +1,27 @@ +let s:data = {} + +function! SpaceVim#mapping#frequency#update(key) abort + if has_key(s:data, a:key) + let s:data[a:key] += 1 + else + let s:data[a:key] = 1 + endif +endfunction + +function! SpaceVim#mapping#frequency#view(keys) abort + if type(a:keys) == 1 + echo 'The frequency of ' . a:keys . ' is ' . s:get(a:keys) + elseif type(a:keys) == 3 + for key in a:keys + call SpaceVim#mapping#frequency#view(key) + endfor + endif +endfunction + +function! s:get(key) abort + if has_key(s:data, a:key) + return s:data[a:key] + else + return 0 + endif +endfunction diff --git a/doc/SpaceVim.txt b/doc/SpaceVim.txt index ded27c9cd..60d45a3d3 100644 --- a/doc/SpaceVim.txt +++ b/doc/SpaceVim.txt @@ -116,6 +116,9 @@ Enable/Disable realtime leader guide. Default is 0. let g:spacevim_realtime_leader_guide = 1 < + *g:spacevim_enable_key_frequency* +Enable/Disable key frequency catching of SpaceVim. + *g:spacevim_enable_neomake* SpaceVim default checker is neomake. If you want to use syntastic, use: >