バッジは Repology で広く使用されていることを、SWI-Prolog を使用した次の例で示します。
Repology
最近、neuro-vector-symbolic architectures の GitHub リポジトリで DOI バッジを見かけました。
多くの研究論文を読む人にとって、DOI は非常に重要であり、DOI サイト を使用して見つけることができますが、Markdown バッジは検索の手間を省きます。
この特定の DOI バッジについて、さらに詳しく知りたいと思い、ChatGPT に説明を求めました。ChatGPT の回答は以下のとおりです。
この Markdown は、Zenodo(研究データリポジトリ)でホストされている特定のリソースの DOI(Digital Object Identifier)リンクを持つバッジを作成します。
バッジの作成に使用される構文は次のとおりです。
[](https://zenodo.org/badge/latestdoi/587315616)バッジは、リソースの最新の DOI へのハイパーリンクを持つ画像(この場合は SVG 画像)で構成されます。
![DOI]構文は、画像が DOI を表すために使用されることを指定し、https://zenodo.org/badge/587315616.svgリンクは、画像ファイル自体の URL です。Markdown の 2 番目の部分であるhttps://zenodo.org/badge/latestdoi/587315616は、画像をクリックすると移動するハイパーリンクであり、指定されたリソースの DOI の最新バージョンです。全体として、この Markdown は研究リソースの DOI の存在を示すのに役立ち、ドキュメント、ウェブページ、その他のオンラインリソースに埋め込むことができます。
これにより、GitHub の a11y-markdown-badges リポジトリを発見しました。ここにはさらに多くのバッジの例があります。「online markdown badge generator」で Google 検索すると、いくつかのオンライン Markdown バッジジェネレーターも見つかりました。バッジはリンクとテキストまたはアイコンの短い形式の両方として機能できる、より用途が広いことを知ったので、他のバッジにも注意を払い、Discourse の投稿で使用する予定です。
Chrome がページを表示したときの様子です。

Discourse の Markdown バッジは次のように表示されます。
保存前の Discourse の編集プレビュー(右パネル)の画像キャプチャです。

同様の問題については、次のセクションを参照してください。
Discourse で使用されるバッジに関する大きな問題の 1 つは、ページが保存されると、おそらくクッキングフェーズ中に Discourse が画像をキャッシュすることです。Repology から特定のバージョン用のバッジは、更新されなくなるように変換されます。この問題は、この ページ を作成した際に学びました。私の希望は、SWI-Prolog フォーラムの Discourse ページにすべてのバッジを投稿し、バッジの生成を変更するバッジ内のリンクに基づいてバッジが変更されることでした。![]()
編集
この問題についてさらに調査したところ、
- これに関連するサイト設定は、「
download」、「hotlink」、「image」、「local」を検索することで見つけることができます。 adminアクセス権を持つユーザーの場合、「Rebuild HTML」が効果的かもしれません。現時点ではテストデータを作成する予定はなく、バッジが変更されるまで数週間待ってから確認する予定です。
これは便利ですね。どこでも使えそうです ![]()
昨夜、これらはキーと値に似ていることに気づきました。プログラマーで連想配列やJSONを扱ったことがあるなら、それはすぐにわかるはずです。それ自体はキーと値のように見えませんが、列に十分な数を集めると、見逃すのは難しいです。
これは、「ChatGPTは状況を悪化させる」というコラムの素晴らしい例です。
具体的には:
- 「
![DOI]構文は、画像がDOIを表すために使用されることを指定します」というのは厳密には間違いです。これはMarkdownで画像を特定するための構文の一部にすぎません。!は、それに続くリンク(通常のMarkdownリンク構文を使用)が、インラインで表示されるべき画像ファイルのURLであることを示します。[DOI]の部分は、単にそのリンクの代替テキストです。 - 「Markdownの2番目の部分」は実際には2番目の部分ではなく、実際には行の最初の
[を含む全体を「最初の部分」として囲んでいます。 - Markdownの仕組みをまだ理解していない場合、最後の文は非常に誤解を招くものです。Markdownを何らかの(HTMLのような)表示可能な形式にレンダリングする方法がないウェブページやドキュメントでは、まったく役に立たないでしょう。
要するに、ChatGPTは遊ぶには楽しいですが、学習のために使用している場合、おそらく誤解させられています。そして、他者を助けるためにその出力を無批判に再利用しないでください。それは基本的に、出力をより正当に見せかけるための「人間による洗浄」です。
新しいことを学ぶためにChatGPTを使用しているわけではありませんが、プロンプトエンジニアリングが得意で、出力の検証方法を知っていれば、ChatGPTは非常に役立ちます。
このトピックは、SWI-Prologに関連するChatGPTプロンプトのシリーズを開始しますが、生成されたコードの多くは機能しないか、修正が必要です。時には非常に明確なプロンプトで、初回で動作するコードを生成することもあります。
