我在这里谈论 github markdown ,对于像README.md
这样的文件。
问题: 是否有可能在github上的markdown中删除一个完整的代码块?
我知道如何将文本标记为代码块
this is
multiline code
and
this
this
also
通过缩进4个空格或使用```或`...
我也知道如何使用
临时解决方案:
他们独立工作正常,但并不像预期或期望的那样。我尝试了上面提到的几种组合。
现在,我用这个:
striked
through
使用~~和`为每一行。
要求:
我希望有一个代码格式化的文本,其中代码块是连续的:
unfortunately, this is
not striked through
或者至少只有一小段:
unfortunately, also not
striked through
这有可能吗?
我发现了一些关于使用jekyll的旧帖子和提示,但我正在寻找的是一种简单的方法,最好是降价。
答案 0 :(得分:20)
这只适用于GitHub不允许的原始HTML。但你可以改为使用差异。
Code blocks仅适用于“预格式化”文字。您可以在代码块中获得的唯一格式是可以用纯文本表示的格式(缩进,大小写等)。没有用于标记代码块内容的机制(粗体,斜体,受损,下划线等)。这是一个有意的设计决定。否则,您将如何在代码块中显示Markdown文本?如果您想要格式化文本,那么您需要使用除代码块之外的其他内容。
作为rules州:
HTML是发布格式; Markdown是一种写作格式。因此,Markdown的格式化语法仅解决可以用纯文本传达的问题。
对于Markdown语法未涵盖的任何标记,您只需使用HTML本身。
因此,您需要格式化自己的自定义HTML代码块,并正确标记各个位:
<pre><code><del>some stricken code</del>
<del>A second line of stricken code</del>
</pre></code>
但是,出于安全原因,GitHub将在Markdown中删除任何此类原始HTML。因此,虽然这可以完全控制整个堆栈,但在托管服务上很可能无法实现。
但是,我假设您要显示对代码块进行的一些更改。事实证明,已经存在一种特定的格式。即diff。只需使用带diff
语言的受防护代码块作为语言,GitHub就可以正确格式化它:
```diff
Unchanged Line
- Removed Line
+ Added Line
```
你可以看到GitHub如何显示上面的代码块live(你也可以在raw中看到),但为方便起见,我在下面提供了一个截图。
我意识到格式化不使用删除线,但确实使用了常用且理解的格式。对于更复杂的块,您应该使用diff
实用程序为您生成差异。
答案 1 :(得分:6)
这对其他人来说可能是显而易见的,但它抓住了我。如果您有缩进行,请确保+
或-
是该行中的第一个字符,否则它不会突出显示。
diff
<div>
Unchanged Line
<ul>
- <li>This won't work</li>
- <li>This will</li>
+ <li>1st character, then indent</li>
</ul>
</div>
答案 2 :(得分:1)
关于标记代码块内容的主题,要在“代码”行的末尾添加斜体字符串,请尝试以下操作:
<code>id\_pn\_aside\_subscriber\_form\__form\_id_</code>
我很难找到一个与这个精确用例相匹配的例子,所以我希望这对其他试图达到类似效果的人都有用。