implement highlighting the target character
rename for more explicit variable name

previously, the variable names for character often confuse me.  It
sometimes means the character itself, and otherwise the number of character.
In this commit, make the latter variables' names more explicit.
e.g.
    char -> char_num
tiny fixes

- ignore some errors on matchdelete() called
reuse s:generate_pattern() and exclude omap
fix when the target character is at another line