コミュニティの皆さん、こんにちは。主にマークダウンで書かれた仕様を公開するためにディスコースサイトを使用していますが、ヘッダーに使用したアンカーが表示されてしまうという問題に直面しました。これらは非表示にされるべきです。
何か非表示にする方法をご存知の方はいらっしゃいますか?
コミュニティの皆さん、こんにちは。主にマークダウンで書かれた仕様を公開するためにディスコースサイトを使用していますが、ヘッダーに使用したアンカーが表示されてしまうという問題に直面しました。これらは非表示にされるべきです。
何か非表示にする方法をご存知の方はいらっしゃいますか?
こんにちは、ようこそ!
この構文はkramdownまたはPHP Markdown Extraのものですか?
DiscourseはMarkdownItに依存しており、これはCommonMark仕様に基づいています。ヘッダーIDの指定はサポートされていません。
彼らはかつてそれについて議論したようですが:https://talk.commonmark.org/t/anchors-in-markdown/247、決定的な結論は見られません。
しかし、Discourseは自動的にアンカーを生成します。
ここで確認できます:
基本的に、これらのIDが期待できます:
h-{headingId} (投稿IDなし、スラッグなし)h-{slug}-{headingId} (投稿IDなし)p-{postId}-h-{headingId} (投稿IDあり、スラッグなし)p-{postId}-h-{slug}-{headingId} (投稿IDあり、スラッグあり)例:
必要であれば、HTMLで手動でアンカーを作成することもできます。例:<a>
追加リソース —
目次を生成する必要がある場合は、このコンポーネントがあります:
@Arkshineさん、ありがとうございます!
問題は、他の目的でも使用しているマークダウンをディスコースでも公開していることです。そのため、ドキュメントを管理している人々は、複数のマークダウンを単一のドキュメントにマージする際に、クロスリファレンスとしてこれらのアンカーを使用しています。
投稿する前に、コンテンツをクリーンアップするスクリプトを作成しようと思います。
なるほど!
解決策は、この構文をサポートするためにマークダウンプラグインを備えたDiscourse用のプラグインを作成することでもあります。予算があれば、Marketplace に依頼することもできます。
もしまだ興味があれば、見出しの隣にアンカーIDを指定できる小さなDiscourseプラグインを作成しました。
これはDiscourseの自動見出しアンカーと連携して動作します。
基本的なサポートであることに注意してください。多くのバリエーションがあると思われますが、このプラグインは以下のもののみをサポートしています。
## My Heading {#custom_section}
以下を生成します。
<a name="custom_section" href="#custom_section" class="custom-anchor-id"></a>
ぜひ試してみてください!問題があればお知らせください。
@Arkshineさん、ありがとうございます!
ディスコース管理者に確認してみますね ![]()
@Arkshine Discourse(現在のウェブサイト)のアンカーがどのように生成されるかご存知ですか?共有されたパターンに従っていないように見えるため、質問しています。たとえば、これを見てください。
https://meta.discourse.org/t/adding-a-table-to-your-post-using-markdown/66544#creating-a-simple-table-1
これには設定がありますか?見つけられませんでした。それとも、<a> タグを使用していますか?それともあなたのプラグインですか?