EzoeRyou/cpp17book

バックスラッシュのエスケープ

Closed this issue · 4 comments

073-cpp17-lib-filesystem.md において、「path : ファイルパス文字列クラス」

例えばPOSIX互換環境では/が用いられるが、Microsoft Windowsでは\が使われている。

例えば、Microsoft Windowsでは、ネイティブのファイルパス文字列はディレクトリーの区切り文字にPOSIX準拠の/ではなく\を使っている。

および「resize」

増えたデータはnullバイト''でパディングされる。

という3箇所の文においてバックスラッシュが出てきています。これは GFM ではそのまま問題なく表示されていますが、pandoc に通すとエスケープだと判断されてしまい、バックスラッシュ以降の文章が消えてしまっています (参考)。

\\ とバックスラッシュ自体をエスケープすれば HTML 上は意図通り表示されるようになります。
GitHub 上で .md ファイルを閲覧した場合もちゃんとエスケープが認識されて表示されるようです (参考: 修正を施したブランチ)。

提案: 地の文の生のバックスラッシュをエスケープするのは如何でしょうか?

Note: 前者2つについては #98`\` などのように修正されましたね (3つめの '\0' は未修正)

@nekketsuuu \0の件についてもPull Requestを投げました。( #107 )

単なるエスケープよりMarkdown, HTML上での可読性があるcode tagを利用しています。

他のインラインコード部分が code tag でマークアップされていないのにバックスラッシュ周りだけ code tag にするのも一貫性が無いかなあと思いエスケーピングを提案しましたが、code tag にした PR がマージされたので、\0 についても code tag にするのが良さそうですね。ありがとうございます。

どちらの PR もマージされたのでクローズします。@yumetodo さん、ありがとうございました。