web-dev-qa-db-ja.com

githubのマークダウンの取り消し線コード

私はgithub markdownについて話していますが、ここではREADME.md

質問: githubのマークダウンで完全なコードブロックを取り消し線で通過することは可能ですか?

テキストをコードのブロックとしてマークする方法を知っています

this is
multiline code

and this

this

also

4つのスペースでインデントするか、 `` `または` ...

私も方法を知っています テキストに取り消し線を引く 使用する

  • デルタグ
  • 男性だけの
  • ~~

一時的な解決策

独立して、それらは正常に動作しますが、一緒に期待したり望まれたりすることはありません。上記のいくつかの組み合わせを試しました。

今のところ、これを使用します:

striked

through

単一行ごとに~~および `を使用します。

要件

コードブロックが連続しているコード形式のテキストに取り消し線を引きたいのですが。

unfortunately, this is
not striked through

または、少なくとも間に小さな段落がある場合:

unfortunately, also not striked through

これはまったく可能ですか?

Jekyllの使用に関するいくつかの古い投稿とヒントを見つけましたが、私が探していたのは、できればマークダウンでの簡単な方法です。

21
rocksteady

これは、GitHubで許可されていない生のHTMLでのみ可能です。ただし、代わりにdiffを使用できる場合があります。

コードブロック は、「事前にフォーマットされた」テキスト専用です。コードブロックで取得できる唯一の書式は、プレーンテキストで表現できる書式(インデント、大文字など)です。コードブロックのコンテンツをマークアップするメカニズムはありません(ボールド、イタリック、打たれた、下線など)。これは意図的な設計の決定でした。それ以外の場合、どのようにしてマークダウンテキストをコードブロックに表示できますか?書式付きテキストが必要な場合は、コードブロック以外のものを使用する必要があります。

rules 状態として:

HTMLはpublishing形式です。マークダウンは書き込み形式です。したがって、Markdownのフォーマット構文は、プレーンテキストで伝達できる問題のみを扱います。

Markdownの構文でカバーされていないマークアップについては、HTML自体を使用するだけです。

したがって、さまざまなビットを適切にマークアップして、独自のカスタムHTMLコードブロックをフォーマットする必要があります。

<pre><code><del>some stricken code</del>
<del>A second line of stricken code</del>
</pre></code>

ただし、セキュリティ上の理由から、GitHubはそのような生のHTMLをMarkdownから削除します。したがって、これはスタック全体を完全に制御できる場所で機能しますが、ホストされたサービスではほとんどの場合不可能です。

ただし、コードのブロックに加えられたいくつかの変更を表示したいと想定しています。結局のところ、そのための特定のフォーマットがすでに存在しています。つまりa diff です。言語としてG_Hubが正しくフォーマットするため、diffでフェンス付きコードブロックを使用するだけです。

```diff
  Unchanged Line
- Removed Line
+ Added Line
```

GitHubが上記のコードブロック live をどのように表示するかを確認できます( raw でも確認できます)が、便宜上、以下のスクリーンショットを含めました。

enter image description here

書式設定では取り消し線は使用されていませんが、一般的に使用され理解されている書式が使用されています。より複雑なブロックの場合は、おそらくdiffユーティリティプログラムを使用して差分を生成する必要があります。

21
Waylan

Waylan's answer の拡張:

これは他の人には明らかかもしれませんが、それは私を捕まえました。行をインデントした場合は、+または-は行の最初の文字であるか、強調表示されません。

diff

<div>
  Unchanged Line
  <ul>
    - <li>This won't work</li>
-    <li>This will</li>
+    <li>1st character, then indent</li>
  </ul>
</div>
6
Jason Deppen

コードブロックのコンテンツをマークアップすることに関して、「コード」の行の終わりにイタリック体の文字列を追加するには、次のようにします。

<code>id\_pn\_aside\_subscriber\_form\__form\_id_</code>

(あなたはこれを実際に見ることができます: https://github.com/devonostendorf/post-notif#how-do-you-use-the-stylesheet_filename-attribute-with-the-shortcode

この正確なユースケースに一致する例を見つけるのに苦労したので、これが同様の効果を達成しようとしている他の人にとって役立つことを願っています。

1
Devon Ostendorf