mirror of
https://github.com/koalaman/shellcheck.git
synced 2025-10-03 19:29:44 +08:00
Explain how U+00A0 can be inserted into a program on macOS
10
SC1018.md
10
SC1018.md
@@ -1,7 +1,13 @@
|
|||||||
# This is a unicode non-breaking space. Delete it and retype as space.
|
# This is a unicode non-breaking space. Delete it and retype as space.
|
||||||
|
|
||||||
You copy-pasted some code, probably from a blog or web site, which for formatting reasons contained unicode no-break spaces or unicode zero-width spaces instead of regular spaces or in words.
|
You copy-pasted some code, probably from a blog or web site, which for formatting reasons contained Unicode no-break spaces or Unicode zero-width spaces instead of regular spaces or in words.
|
||||||
|
|
||||||
To humans, a zero-width space is invisible and a non-breaking space is indistinguishable from a regular space, but the shell does not agree.
|
To humans, a zero-width space is invisible and a non-breaking space is indistinguishable from a regular space, but the shell does not agree.
|
||||||
|
|
||||||
If you have just a few, delete the indiciated space/word and retype it. If you have tons, do a search&replace in your editor (copy-paste an offending space into the search field, and type a regular space into the replace field), or use `sed -e $'s/\xC2\xA0/ /g' -e $'s/\xE2\x80\x8b//g' -i yourfile` to remove them.
|
If you have just a few, delete the indicated space/word and retype it. If you have tons, do a search-and-replace in your editor (copy-paste an offending space into the search field, and type a regular space into the replace field), or use the following command to remove them:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sed -e $'s/\xC2\xA0/ /g' -e $'s/\xE2\x80\x8b//g' -i yourfile
|
||||||
|
```
|
||||||
|
|
||||||
|
On macOS, a non-breaking space can be inserted into most programs by holding <kbd>⌥ Option</kbd>+<kbd>Space</kbd>.
|
||||||
|
Reference in New Issue
Block a user