]> git.wincent.com - docvim.git/commitdiff
Add @mapping support to Vim printer
authorGreg Hurrell <greg@hurrell.net>
Tue, 7 Jun 2016 07:28:20 +0000 (00:28 -0700)
committerGreg Hurrell <greg@hurrell.net>
Tue, 7 Jun 2016 07:28:20 +0000 (00:28 -0700)
lib/Docvim/AST.hs
lib/Docvim/Printer/Vim.hs
tests/fixtures/parser/integration-ferret-plugin.golden
tests/fixtures/shared/integration-ferret-plugin.vim
tests/fixtures/vim/integration-ferret-plugin.golden

index 0863b3aa965439632f412384d9d63f2f69b3f3a5..03f757da607d804393a168bb983d7260c04168df 100644 (file)
@@ -65,8 +65,6 @@ data Node
           | CommandAnnotation Name (Maybe Parameters)
           | FooterAnnotation
           | MappingsAnnotation
-          -- TODO: need more here, like default value?
-          -- ferret just has a link target *<Plug>(FerrtAck)*
           | MappingAnnotation Name
           | OptionsAnnotation
           | OptionAnnotation Name Type (Maybe Default)
index bbde31f60498c81e3e4845a781040135022ea785..1cbf7e53ad495937bdb91481af268abb608678fa 100644 (file)
@@ -150,6 +150,7 @@ node n = case n of
   LinkTargets l              -> linkTargets l True
   List ls                    -> nodes ls >>= nl
   ListItem l                 -> listitem l
+  MappingAnnotation m        -> mapping m
   MappingsAnnotation         -> heading "mappings"
   -- TODO: if there is no OptionsAnnotation but there are OptionAnnotations, we
   -- need to insert a `heading "options"` before the first option (ditto for
@@ -208,6 +209,9 @@ command (CommandAnnotation name params) = do
 -- (and do similar for other sections)
 -- once that is done, drop the extra newline above
 
+mapping :: String -> Env
+mapping name = linkTargets [name] True
+
 option :: Node -> Env
 option (OptionAnnotation n t d) = do
   targets <- linkTargets [n] True
index 1ff85e1785200e8a5ec718c297dac200a3200bf8..14743836e9c01061985a91bf58f6b67d85dfd4b1 100644 (file)
@@ -2065,7 +2065,7 @@ Project
       [ "\" Instead of <leader>s, use <leader>z."
       , "nmap <leader>z <Plug>(FerretAckWord)"
       ]
-  , MappingAnnotation "*<Plug>(FerretAcks)*"
+  , MappingAnnotation "<Plug>(FerretAcks)"
   , Paragraph
       [ Plaintext "Ferret"
       , Whitespace
index e41107d9393d7dd7f6f5c2ca5bfe63ae4705d33c..b4c6f1ca781a18d771c8708170c13088ccdcf521 100644 (file)
@@ -549,7 +549,7 @@ if s:map
 
   if !hasmapto('<Plug>(FerretAcks)') && maparg('<leader>r', 'n') ==# ''
     ""
-    " @mapping *<Plug>(FerretAcks)*
+    " @mapping <Plug>(FerretAcks)
     "
     " Ferret maps <leader>r (mnemonic: "replace") to |<Plug>(FerretAcks)|, which
     " triggers the |:Acks| command and fills the prompt with the last search
index fde57c0bdcdebd5914163d8f8a2a5504f7489c1f..1f22717a3d97afda64f907b912dc2cc5b799dd71 100644 (file)
@@ -160,6 +160,8 @@ unless prevented from doing so by |g:FerretQFMap|:
 - `dd` (|Normal-mode|): delete current line
 - `d`{motion} (|Normal-mode|): delete range indicated by {motion}
 
+
+                                                             *<Plug>(FerretAck)*
 Ferret maps <leader>a to |<Plug>(FerretAck)|, which triggers the |:Ack| command.
 To use an alternative mapping instead, create a different one in your |.vimrc|
 instead using |:nmap|:
@@ -167,6 +169,8 @@ instead using |:nmap|:
     " Instead of <leader>a, use <leader>x.
     nmap <leader>x <Plug>(FerretAck)
 <
+
+                                                            *<Plug>(FerretLack)*
 Ferret maps <leader>l to |<Plug>(FerretLack)|, which triggers the |:Lack|
 command. To use an alternative mapping instead, create a different one in
 your |.vimrc| instead using |:nmap|:
@@ -174,6 +178,8 @@ your |.vimrc| instead using |:nmap|:
     " Instead of <leader>l, use <leader>y.
     nmap <leader>y <Plug>(FerretLack)
 <
+
+                                                         *<Plug>(FerretAckWord)*
 Ferret maps <leader>s (mnemonix: "selection) to |<Plug>(FerretAckWord)|, which
 uses |:Ack| to search for the word currently under the cursor. To use an
 alternative mapping instead, create a different one in your |.vimrc| instead
@@ -182,6 +188,8 @@ using |:nmap|:
     " Instead of <leader>s, use <leader>z.
     nmap <leader>z <Plug>(FerretAckWord)
 <
+
+                                                            *<Plug>(FerretAcks)*
 Ferret maps <leader>r (mnemonic: "replace") to |<Plug>(FerretAcks)|, which
 triggers the |:Acks| command and fills the prompt with the last search term
 from Ferret. to use an alternative mapping instead, create a different one