vim mapping

vim のマップ

~/.vimrc

" Local mapping
map :i :i!
nmap mfore diwOforeach (pa as $key => pxa){}3k5w
nmap mfor diwOfor (pa = 0; pa < 0; pa++){}3k8w
nmap mif diwOif (0 == pa){}3k5w
nmap mwhile diwOwhile (0 == pa){}3k5w
nmap mfunc ofunction xxx(){}kko
nmap mprint diwOprint_r (pa);bb
inoremap  
inoremap  
inoremap  

単語の上でmfore

$rows
↓
foreach ($rows as $key => $row)
{
}

単語の上でmfor

$n
↓
for ($n = 0; $n < 0; $n++)
{
}

単語の上でmif

$n
↓
if (0 == $n)
{
}

単語の上でmwhile

$n
↓
while (0 == $n)
{
}

mfunc

function xxx()
{
}

単語の上でmprint

$a
↓
print_r ($a);

マクロ作ってみたのはいいが、なにげに使いづらい。