Markdownの事実上の標準となっているCommonMark仕様には日本語テキストで括弧類で囲まれた語句を強調表示するのが難しいという問題があります。
例えば、以下のようなMarkdownテキストがあったとします。
これは**「強調表示」**の例です。| # Bash prompt configuration | |
| # Function to get current git branch | |
| git_branch() { | |
| local branch=$(git rev-parse --abbrev-ref HEAD 2>/dev/null) | |
| if [ -n "$branch" ]; then | |
| echo "($branch)" | |
| fi | |
| } |
Markdownの事実上の標準となっているCommonMark仕様には日本語テキストで括弧類で囲まれた語句を強調表示するのが難しいという問題があります。
例えば、以下のようなMarkdownテキストがあったとします。
これは**「強調表示」**の例です。CSS Text Module Level 4 の text-spacing-trim プロパティ が最近のブラウザ Chrome (Chromium) 123 以降で利用可能になりました。また、CSS組版ソフトVivliostyleでも以前から利用可能です。
この text-spacing-trim プロパティの機能(行頭・行末や連続する約物の詰めの制御)は、DTPソフトのInDesignの文字組みアキ量設定に近いものです。そこで文字組みアキ量設定に対応するCSSでの設定方法をまとめます。
text-spacing-trim プロパティの値は次の通り:
CSS Text Module Level 4
W3C Working Draft, 19 February 2024
この文書はCSS Text Level 4を読むための参考として部分的に訳した抄訳です。
| <!DOCTYPE html> | |
| <html lang="ja"> | |
| <head> | |
| <meta charset="UTF-8" /> | |
| <title>text-spacing-trimテスト</title> | |
| <style> | |
| p { | |
| border: 1px solid silver; | |
| text-align: justify; |
| <!DOCTYPE html> | |
| <html lang="ja"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>行頭約物処理のテスト [text-spacing-trim space-first... test]</title> | |
| <style> | |
| @page { | |
| size: A4 landscape; | |
| margin: 5%; | |