Add CI workflow to actually test-drive Vimux
This is fairly primitive, but it's a start. At least we will know if a PR makes some egregious error that makes basic functionality die. In the future we should probably write some small test scripts and verify the contents of panes with some sort of content capture for true unit regression testing, but a pass/fail grade that we don't explode is better than no testing.
Fixes#185
Vim does not allow escaping some characters in commands that can be
chained. In particular bars are disallowed and double quotes begin code
comments. Both of these things are regular features in shell command
strings.
I'm disallowing chaining for the two commands that take shell commands
as arguments so they can be used sensibly again. One solution to allow
this might be to have a ...Bar version of each. It might also be
possible to work around this with `:call` and functions instead of
commands.
* feat: Make s:VimuxOption (was _VimuxOption) public VimuxOption
* refactor: Simplify script-local private function names
* style: Format each function as a paragraph with no blanks
* feat: Make s:tmuxExec (was _VimuxTmux) public VimuxTmux
* Add Vint config file for vimscript linting
* Replace underscore convention with proper script-local scopes
* Prefer single quoted strings
* Use the full option name
* Use robust operators
I was a little confused by the example in the VimuxTslimeReplacement
section until I figured out that it was supposed to be calling
VimuxRunCommand, rather than VimuxSendText -> VimuxSendKeys.
The intended call is referenced in the follow paragraph, where it
describes passing `0` as a second arg to that call to avoid an
unwanted extra newline.