マークダウンが Ruby レッドカーペットによって正しく解釈されない
概要
私のスレートプロジェクトには次のようなマークダウンがあります。
---
title: API Reference
language_tabs:
- http
- javascript
search: true
---
# Getting Started
## Logout
# Call Management
## Call States
```javascript
{
}
Call Notification
Caller ID Called Number
Call Information During Call
そして、サイトにサービスを提供するために仲介者を使用します。bundle exec middleman サーバーです。ただし、最後のサブセクションのタイトルは h2 タグとして正しく解釈されません (スクリーンショット)。 rake build でビルドしても結果は同じです。
ただし、このマークダウンを http://stackedit.io などの他のインタープリターに配置しても問題ありません。
したがって、私のマークダウンインタプリタ(Ruby redcarpet)が何らかの形で壊れているのではないかと思います。コンソールに警告/エラー メッセージは表示されませんでした。さまざまなバージョンのレッドカーペットを試してみました。エラーの内容は異なりますが、解釈された HTML もエラーになります。 Ruby と Redcarpet を組み合わせればうまくいくのではないでしょうか?
これが私のconfig.rbです。
Markdown
set :markdown_engine, :redcarpet set :markdown, fenced_code_blocks: true, smartypants: true, disable_indented_code_blocks: true, prettify: true, tables: true, with_toc_data: true, no_intra_emphasis: true
考えられる原因が何であるか誰か教えていただけますか?それともどうやって回復するのですか?
## 解決策
RedCarpet の最新バージョン (3.3.3) に更新すると、問題が解決しました。
まあ、それでも問題はあります。Markdown ファイル内の 1 文字も変更できません。そうしないと、生成された HTML マークアップが再び失敗します...
ついに解決しました。 RedCarpetをkramdownに切り替えると解決しました。
私のconfig.rb:
set :markdown_engine, :redcarpet
set :markdown_engine, :kramdown set :markdown, fenced_code_blocks: true, smartypants: true, disable_indented_code_blocks: true, prettify: true, tables: true, with_toc_data: true, no_intra_emphasis: true
```