アトムがCR、EOL文字もレンダリングする場合に備えて
0-31および127ASCIIコードは印刷不可能な文字です
また、#2085は関連しています
印刷できない文字をレンダリングすることは可能ですか?
絶対URLの前にUnicode10進コードがあり、相対パスとして扱われるため、URLの問題をデバッグするために20m腰を下ろしました。
プログラマーがコードに望んでいないこれらの奇妙な文字のレンダリングを有効にできるようにしてください。
+他のすべての非グラフィックコードポイント。
例:
U + 200B(ZERO WIDTH SPACE)形式の文字を含むソースコードファイルを作成し、VSCodeで開きます。
PS> [char]0x200B | Out-File .\zero_width_space.ps1 -Encoding utf8
バイト単位のファイルコンテンツ:
PS > [io.file]::ReadAllBytes('.\zero_width_space.ps1')
239
187
191
226
128
139
13
10
結果:
"editor.renderWhitespace" = "all"の場合でも、ファイルを開いたときにVSCodeは何も表示しません
最初の239187 191(ZERO WIDTH NON-BREAKING SPACE)はBOMとして解釈されます。
残りの226128 139 13 10(ゼロ幅スペース)+(CR)+(LF)はソースコードテキストです。
バックグラウンド。
この場合、2番目のコードポイント(ZERO WIDTH SPACE)は、特定のソースコードの構文エラーです。
ソースコードには構文エラーが含まれています=>コードエディタで非表示の文字を表示できるようにするために重要です。
一般に、ドキュメントのコメントで明示的に使用されている場合は、テキストファイルにUnicode形式の文字を表示するオプションがあると便利です。
Webブラウザからテキストを貼り付けるときに、文字の書式設定が誤ってゴミになることもあります。
BOM文字でさえ、完全な透明性のために非表示の文字として表示される可能性があります。
最も参考になるコメント
印刷できない文字をレンダリングすることは可能ですか?