vim: fix/improve `isMap`: ignore `norm[al]`
optlib: make default.ctags empty before generating it

This fix is related to a bug #131 reported by @wikimatze.

Signed-off-by: Masatake YAMATO <yamato@redhat.com>
xcmd: extend xcmd protocol to deal with the case back-end command is unavailable

This patch fixes a bug reported by @kaushalmodi in #131.
coffee xcmd driver dealt the error of coffeetags, its back-end command.
But it assumed coffeetags is always available. As the result it
tries to launch coffeetags command even if the command is not available.

In this change, coffee xcmd driver checks the available of back-end; and
report unavailability with special status code 77.

Signed-off-by: Masatake YAMATO <yamato@redhat.com>
Merge pull request #129 from blueyed/vim-fix-isMap

vim: fix/improve `isMap`: ignore `norm[al]`
Fix modelines used in tests, so Vim would parse them
doc: redact modeline section
Improve determineVimFileType: do not require "set", search backwards

 - "set " or "se " is not required with the (newer) modelines
 - prefer later entries in case of multiple settings, by using a new
   strrstr function
Simplify `strrstr` and `strstr`

Thanks @vhda.
Ref: https://github.com/fishman/ctags/pull/125#issuecomment-63169399