vimで使うキーの機能使用頻度と打ちやすさを整理してみました。 今回整理したのはnormalモードについてだけです。 機能の使用頻度と打ちやすさは、完全に個人の見解です。 キーボードによっても打ちやすさは変わると思います。
すべてのキーを網羅しているわけではありません。
function! s:fix_number(pattern, ...) | |
if a:0 > 2 | |
return | |
endif | |
let s:start = exists('g:fix_number_default_start') ? g:fix_number_default_start : 0 | |
let s:step = exists('g:fix_number_default_step') ? g:fix_number_default_step : 1 | |
if a:0 >= 1 | |
let s:start = a:1 |
-----> Fetching custom git buildpack... done | |
-----> Ruby/Rack app detected | |
-----> Vendoring binaries | |
Fetching cairo-1.12.8.tgz | |
/tmp/build_2z0sqxbwxc8m1/vendor/cairo-1.12.8 | |
Exporting cairo-1.12.8.tgz build and include paths | |
Fetching pixman-0.28.0.tgz | |
/tmp/build_2z0sqxbwxc8m1/vendor/pixman-0.28.0 | |
Exporting pixman-0.28.0.tgz build and include paths | |
-----> Using Ruby version: ruby-2.0.0 |
" Inspired by ujihisa's vimrc | |
function! s:GitLogViewer() | |
" vnewだとコミットメッセージが切れてしまうのでnew | |
new | |
VimProcRead git log -u 'ORIG_HEAD..HEAD' | |
set filetype=git-log.git-diff | |
setlocal foldmethod=expr | |
setlocal foldexpr=getline(v:lnum)=~'^commit'?'>1':getline(v:lnum+1)=~'^commit'?'<1':'=' | |
setlocal foldtext=FoldTextOfGitLog() | |
endfunction |
# add print class tree method to Object | |
class Object | |
def self.print_class_tree | |
@class_tree ||= {} | |
# create class tree if not yet | |
ObjectSpace.each_object(Class) do |cls| | |
next if self == cls | |
# skip is cls is no name |
" 検索文字列をレジスタでグローバル置換 | |
function! s:ReplaceGlobalSearchToRegister() | |
let l:reg = getreg(v:register) | |
let l:cmd = '%substitute//' | |
let l:opt = '/g' | |
execute l:cmd . l:reg . l:opt | |
endfunction | |
nnoremap <silent> <Space>rs :<C-u>call <SID>ReplaceGlobalSearchToRegister()<CR> |