在markdown中显示链接URL

时间:2016-12-27 12:24:21

标签: markdown

我有一个markdown文件,其中我多次使用链接,例如:

This [website][an_awesome_website_link] is awesome.

You will never use anything else than this [website][an_awesome_website_link].

[an_awesome_website_link]: https://stackoverflow.com

格式化,看起来像:

  

website太棒了。

     

除了website之外,你永远不会使用任何其他东西。

我想显示[an_awesome_website_link]的链接网址,而无需再次写下该网址。

例如,我想要这个,并在我的markdown文件中只写一次stackoverflow的url:

  

website (https://stackoverflow.com)

     

除了website之外,你永远不会使用任何其他东西。

     

查看https://stackoverflow.com以获得更多乐趣。

有可能吗?怎么样?

2 个答案:

答案 0 :(得分:9)

简而言之,没有某种非标准的扩展或宏,它是不可能的。

Markdown中有三种链接。

  1. 标准链接,其中标签和网址一起定义:

    [label](http://example.com)
    
  2. 参考链接,可以采用以下两种形式之一:

    [label][key] or [key]
    
    [key]: http://example.com
    
  3. 自动链接,标签为URL:

    <http://example.com>
    

    虽然某些实现不需要尖括号,但最好包含它们,以便适用于所有实现。

  4. 但是,没有工具可以引用参考链接并让它显示URL而不是标签。因此,生成所需输出的最小方法是使用此Markdown输入:

    This [website (https://stackoverflow.com)][website] is awesome.
    
    You will never use anything else than this [website].
    
    Check out <https://stackoverflow.com> for more fun.
    
    [website]: https://stackoverflow.com
    

    也就是说,一些Markdown解析器有扩展API,你可以想象写一个扩展/插件/宏,它会给你你想要的行为。但是,这将是非标准的,并且除了使用本地修改的解析器之外不会在其他任何地方工作。如您所示,您正在使用第三方托管服务,那么这对您来说可能不是一个选择。

答案 1 :(得分:2)

您不必使用reference links中的第二组方括号。您可以使用linktext作为标识符。

This [website] is awesome.

You will never use anything else than this [website].

Check out [https://stackoverflow.com][website] for more fun.

[website]: https://stackoverflow.com

会导致。

  

website太棒了。

     

除了website之外,你永远不会使用任何其他东西。

     

查看https://stackoverflow.com以获得更多乐趣。

Imho无法将链接的URL作为文本获取,因此您必须第二次将“https://stackoverflow.com”写为linktext。但你可以减少第二个支架。