Vim の関数内で set hlsearch しても反映されない場合の対処方法

なぜ、反映されないのかいまいちよくわかっていないんですが対処方法があったので書いておきます。
さて、次のように関数内で set hlsearch を呼び出してもハイライトは行われません。

function! HLsearch()
    set hlsearch
endfunction
call HLsearch()

[対処方法]

feedkeys() を使用します。

function! HLsearch()
    call feedkeys(":set hlsearch\<CR>", "n")
endfunction
call HLsearch()


これでハイライトが行われます。