How to link to a named anchor in Multimarkdown?

后端 未结 7 1569
醉酒成梦
醉酒成梦 2020-11-28 17:21

I have come across a number of mentions of MultiMarkdown\'s support for internal links / named anchors but I am unable to find a single example of how to actually do it.

相关标签:
7条回答
  • 2020-11-28 17:31

    The best way to create internal links (related with sections) is create list but instead of link, put #section or #section-title if the header includes spaces.

    Markdown

    Go to section
    * [Hello](#hello)  
    * [Hello World](#hello-world)
    * [Another section](#new-section) <-- it's called 'Another section' in this list but refers to 'New section'
    
    
    ## Hello
    ### Hello World
    ## New section
    

    List preview

    Go to section
    Hello           <-- [Hello](#hello)                 -- go to `Hello` section
    Hello World     <-- [Hello World](#hello world)     -- go to `Hello World` section
    Another section <-- [Another section](#new-section) -- go to `New section`
    

    HTML

    <p>Go to section</p>
    <ul>
        <li><a href="#hello">Hello</a></li>
        <li><a href="#hello-world">Hello World</a></li>
        <li><a href="#new-section">Another section</a> &lt;– it’s called ‘Another section’ in this list but refers to ‘New section’</li>
    </ul>
    <h2 id="hello">Hello</h2>
    <h3 id="hello-world">Hello World</h3>
    <h2 id="new-section">New section</h2>
    

    It doesn't matter whether it's h1, h2, h3, etc. header, you always refer to it using just one #.
    All references in section list should be converted to lowercase text as it is shown in the example above.

    The link to the section should be lowercase. It won't work otherwise. This technique works very well for all Markdown variants, also MultiMarkdown.

    Currently I'm using the Pandoc to convert documents format. It's much better than MultiMarkdown.
    Test Pandoc here

    0 讨论(0)
  • 2020-11-28 17:32

    I tested Github Flavored Markdown for a while and can summarize with four rules:

    1. punctuation marks will be dropped
    2. leading white spaces will be dropped
    3. upper case will be converted to lower
    4. spaces between letters will be converted to -

    For example, if your section is named this:

    ## 1.1 Hello World
    

    Create a link to it this way:

    [Link](#11-hello-world)
    
    0 讨论(0)
  • 2020-11-28 17:33

    In standard Markdown, place an anchor <a name="abcd"></a> where you want to link to and refer to it on the same page by [link text](#abcd).

    (This uses name= and not id=, for reasons explained in this answer.)

    Remote references can use [link text](http://...#abcd) of course.

    This works like a dream, provided you have control over the source and target texts. The anchor can even appear in a heading, thus:

    ### <a name="head1234"></a>A Heading in this SO entry!
    

    produces:

    A Heading in this SO entry!

    and we can even link to it so:

    and we can even [link](#head1234) to it so:
    

    (On SO, the link doesn't work because the anchor is stripped.)

    0 讨论(0)
  • 2020-11-28 17:35

    In mdcharm it is like this:

    * [Descripción](#descripcion)
    * [Funcionamiento](#funcionamiento)
    * [Instalación](#instalacion)
    * [Configuración](#configuracion)
    

    ### Descripción {#descripcion}
    ### Funcionamiento {#funcionamiento}
    ### Instalación {#instalacion}
    ### Configuración {#configuracion}
    
    0 讨论(0)
  • 2020-11-28 17:43

    Here is my solution (derived from SaraubhM's answer)

    **Jump To**: [Hotkeys & Markers](#hotkeys-markers) / [Radii](#radii) / [Route Wizard 2.0](#route-wizard-2-0)

    Which gives you:

    Jump To: Hotkeys & Markers / Radii / Route Wizard 2.0

    Note the changes from and . to - and also the loss of the & in the links.

    0 讨论(0)
  • 2020-11-28 17:45

    Taken from the Multimarkdown Users Guide (thanks to @MultiMarkdown on Twitter for pointing it out)

    [Some Text][]will link to a header named “Some Text”
    e.g.

    ### Some Text ###
    

    An optional label of your choosing to help disambiguate cases where multiple headers have the same title:

    ### Overview [MultiMarkdownOverview] ##
    

    This allows you to use [MultiMarkdownOverview] to refer to this section specifically, and not another section named Overview. This works with atx- or settext-style headers.

    If you have already defined an anchor using the same id that is used by a header, then the defined anchor takes precedence.

    In addition to headers within the document, you can provide labels for images and tables which can then be used for cross-references as well.

    0 讨论(0)
提交回复
热议问题