]> git.wincent.com - docvim.git/commitdiff
Remove unnecessary explicit anchors in headings
authorGreg Hurrell <greg@hurrell.net>
Tue, 7 Jun 2016 14:11:03 +0000 (07:11 -0700)
committerGreg Hurrell <greg@hurrell.net>
Tue, 7 Jun 2016 14:11:03 +0000 (07:11 -0700)
GitHub is going to add them anyway. Note that our |:Ack| links
don't work, because we aren't rendering that link target (we should).

lib/Docvim/Printer/Markdown.hs
tests/fixtures/markdown/integration-ferret-plugin.golden

index cf8a1bf303609b9588124207a3cabb3be687fab4..c7eadc23a8b7a1aaeb435639e574b609f596849d 100644 (file)
@@ -32,30 +32,30 @@ node n = case n of
   BreakTag                -> return "<br />"
   Code c                  -> return $ "`" ++ c ++ "`"
   CommandAnnotation {}    -> return $ command n
-  CommandsAnnotation      -> return "## Commands\n\n" -- TODO link to foocommands
+  CommandsAnnotation      -> return $ h2 "Commands" -- TODO link to foocommands
   DocBlock d              -> nodes d
   Fenced f                -> return $ fenced f ++ "\n\n"
   FunctionDeclaration {}  -> nodes $ functionBody n
-  FunctionsAnnotation     -> return "## Functions\n\n" -- TODO link to foofunctions
+  FunctionsAnnotation     -> return $ h2 "Functions" -- TODO link to foofunctions
   -- TODO: add an anchor here
-  HeadingAnnotation h     -> return $ "## " ++ h ++ "\n\n" -- TODO link?
+  HeadingAnnotation h     -> return $ h2 h -- TODO link?
   Link l                  -> link l
   LinkTargets l           -> return $ linkTargets l ++ "\n"
   List ls                 -> nodes ls >>= nl
   ListItem l              -> fmap ("- " ++) (nodes l) >>= nl
   MappingAnnotation m     -> return $ mapping m
-  MappingsAnnotation      -> return "## Mappings\n\n" -- TODO link to foomappings
+  MappingsAnnotation      -> return $ h2 "Mappings" -- TODO link to foomappings
   -- TODO: handle OptionAnnotation
-  OptionsAnnotation       -> return "## Options\n\n" -- TODO link to foooptions
+  OptionsAnnotation       -> return $ h2 "Options" -- TODO link to foooptions
   Paragraph p             -> nodes p >>= nl >>= nl
   Plaintext p             -> return p
   -- TODO: this should be order-independent and always appear at the top.
   -- Note that I don't really have anywhere to put the description; maybe I should
   -- scrap it (nope: need it in the Vim help version).
-  PluginAnnotation name _ -> return $ "# " ++ name ++ "\n\n"
+  PluginAnnotation name _ -> return $ h1 name
   Project p               -> nodes p
   Separator               -> return $ "---" ++ "\n\n"
-  SubheadingAnnotation s  -> return $ "### " ++ s ++ "\n\n"
+  SubheadingAnnotation s  -> return $ h3 s
   Unit u                  -> nodes u
   Whitespace              -> return " "
   _                       -> return ""
@@ -111,11 +111,7 @@ h3 :: String -> String
 h3 = heading 3
 
 heading :: Int -> String -> String
-heading level string = replicate level '#' ++ " " ++ body ++ "\n\n"
-  where body = a $ Anchor [ Attribute "name" (sanitizeAnchor string)
-                          , Attribute "href" (gitHubAnchor string)
-                          ]
-                          string
+heading level string = replicate level '#' ++ " " ++ string ++ "\n\n"
 
 -- | Wraps a string in `<code>`/`</code>` tags.
 -- TODO: remember why I'm not using backticks here.
index 1bf79d664c4d64b210f3ed8b930d3379f2b6a597..0bcb96d33cb0526b3800d924b1d2862e016342a4 100644 (file)
@@ -54,7 +54,7 @@ To generate help tags under Pathogen, you can do so from inside Vim with:
 :call pathogen#helptags()
 ```
 
-### <a name="ack-pattern-options" href="#user-content-ack-pattern-options">`:Ack {pattern} {options}`</a>
+### `:Ack {pattern} {options}`
 
 Searches for {pattern} in all the files under the current directory (see <strong>`:pwd`</strong>), unless otherwise overridden via {options}, and displays the results in the <strong>`quickfix`</strong> listing.
 
@@ -76,13 +76,13 @@ Likewise, {options} are passed through. In this example, we pass the `-w` option
 
 As a convenience <leader>a is set-up (<strong>[`<Plug>(FerretAck)`](#user-content-plugferretack)</strong>) as a shortcut to enter <strong>`Cmdline-mode`</strong> with `:Ack` inserted on the <strong>`Cmdline`</strong>. Likewise <leader>s (<strong>[`<Plug>(FerretAckWord)`](#user-content-plugferretackword)</strong>) is a shortcut for running <strong>[`:Ack`](#user-content-ack)</strong> with the word currently under the cursor.
 
-### <a name="lack-pattern-options" href="#user-content-lack-pattern-options">`:Lack {pattern} {options}`</a>
+### `:Lack {pattern} {options}`
 
 Just like <strong>[`:Ack`](#user-content-ack)</strong>, but instead of using the <strong>`quickfix`</strong> listing, which is global across an entire Vim instance, it uses the <strong>`location-list`</strong>, which is a per-window construct.
 
 Note that <strong>[`:Lack`](#user-content-lack)</strong> always runs synchronously via <strong>`:cexpr`</strong>, because dispatch.vim doesn't currently support the <strong>`location-list`</strong>.
 
-### <a name="acks-patternreplacement" href="#user-content-acks-patternreplacement">`:Acks /{pattern}/{replacement}/`</a>
+### `:Acks /{pattern}/{replacement}/`
 
 Takes all of the files currently in the <strong>`quickfix`</strong> listing and performs a substitution of all instances of {pattern} (a standard Vim search <strong>`pattern`</strong>) by {replacement}.
 
@@ -93,7 +93,7 @@ A typical sequence consists of an <strong>[`:Ack`](#user-content-ack)</strong> i
 :Acks /foo/bar/
 ```
 
-### <a name="qargs" href="#user-content-qargs">`:Qargs`</a>
+### `:Qargs`
 
 This is a utility function that is used by the <strong>[`:Acks`](#user-content-acks)</strong> command but is also generally useful enough to warrant being exposed publicly.
 
@@ -117,7 +117,7 @@ Additionally, Ferret will set up special mappings in <strong>`quickfix`</strong>
 - `dd` (<strong>`Normal-mode`</strong>): delete current line
 - `d`{motion} (<strong>`Normal-mode`</strong>): delete range indicated by {motion}
 
-### <a name="plugferretack" href="#user-content-plugferretack">`<Plug>(FerretAck)`</a>
+### `<Plug>(FerretAck)`
 
 Ferret maps <leader>a to <strong>[`<Plug>(FerretAck)`](#user-content-plugferretack)</strong>, which triggers the <strong>[`:Ack`](#user-content-ack)</strong> command. To use an alternative mapping instead, create a different one in your <strong>`.vimrc`</strong> instead using <strong>`:nmap`</strong>:
 
@@ -126,7 +126,7 @@ Ferret maps <leader>a to <strong>[`<Plug>(FerretAck)`](#user-content-plugferreta
 nmap <leader>x <Plug>(FerretAck)
 ```
 
-### <a name="plugferretlack" href="#user-content-plugferretlack">`<Plug>(FerretLack)`</a>
+### `<Plug>(FerretLack)`
 
 Ferret maps <leader>l to <strong>[`<Plug>(FerretLack)`](#user-content-plugferretlack)</strong>, which triggers the <strong>[`:Lack`](#user-content-lack)</strong> command. To use an alternative mapping instead, create a different one in your <strong>`.vimrc`</strong> instead using <strong>`:nmap`</strong>:
 
@@ -135,7 +135,7 @@ Ferret maps <leader>l to <strong>[`<Plug>(FerretLack)`](#user-content-plugferret
 nmap <leader>y <Plug>(FerretLack)
 ```
 
-### <a name="plugferretackword" href="#user-content-plugferretackword">`<Plug>(FerretAckWord)`</a>
+### `<Plug>(FerretAckWord)`
 
 Ferret maps <leader>s (mnemonix: "selection) to <strong>[`<Plug>(FerretAckWord)`](#user-content-plugferretackword)</strong>, which uses <strong>[`:Ack`](#user-content-ack)</strong> to search for the word currently under the cursor. To use an alternative mapping instead, create a different one in your <strong>`.vimrc`</strong> instead using <strong>`:nmap`</strong>:
 
@@ -144,7 +144,7 @@ Ferret maps <leader>s (mnemonix: "selection) to <strong>[`<Plug>(FerretAckWord)`
 nmap <leader>z <Plug>(FerretAckWord)
 ```
 
-### <a name="plugferretacks" href="#user-content-plugferretacks">`<Plug>(FerretAcks)`</a>
+### `<Plug>(FerretAcks)`
 
 Ferret maps <leader>r (mnemonic: "replace") to <strong>[`<Plug>(FerretAcks)`](#user-content-plugferretacks)</strong>, which triggers the <strong>[`:Acks`](#user-content-acks)</strong> command and fills the prompt with the last search term from Ferret. to use an alternative mapping instead, create a different one in your <strong>`.vimrc`</strong> instead using <strong>`:nmap`</strong>: