diff options
| author | Aaron Bull Schaefer <aaron@elasticdog.com> | 2019-06-02 16:26:25 -0700 |
|---|---|---|
| committer | Aaron Bull Schaefer <aaron@elasticdog.com> | 2019-06-02 20:23:42 -0700 |
| commit | 3a401f0771efe6e2d03c1920c7937f3779e2a0e0 (patch) | |
| tree | ccc934a8a52125cceaf170637896bc5cd91d9e8c /rc/tools/python | |
| parent | 1ebea85e6f07aeb6a8287b8043480f56f0e58edb (diff) | |
Trim whitespace from spell check word length variable
Due to ambiguity in the POSIX standard, GNU and BSD versions of the `wc`
utility use slightly different whitespace conventions when formatting
their output [1]. When limiting the output to just counting the number
of bytes (as is done by Kakoune when calculating the length of words
for spell check highlighting), the BSD version of `wc -c` has some
additional leading whitespace:
gnu$ printf %s "test" | wc -c
4
bsd$ printf %s "test" | wc -c
4
This leading whitespace needs to be removed before defining the "region"
to highlight, or `set-option` will not be able to parse the given
`spell_regions` and will complain that there are "not enough elements
in tuple." In other words, the region `1.21+8|Error` on Linux ends up
looking like `1.21+ 8|Error` on macOS, which is invalid.
Removing the whitespace could be accomplished in a number of ways, but
using arithmetic expansion [2] is POSIX compliant and does not require
shelling out to another process.
[1]: https://unix.stackexchange.com/questions/205906/extra-space-with-counted-line-number
[2]: https://mywiki.wooledge.org/ArithmeticExpression
Diffstat (limited to 'rc/tools/python')
0 files changed, 0 insertions, 0 deletions
