On Sat, 14 Aug 2010, Jeri Raye wrote: > Hi Ben, > > On Fri, Aug 13, 2010 at 8:45 PM, Benjamin R. Haskell wrote: > > The attached file seems to do what you want, [...] > > > > [...] For some insight into how it works, do: > > :echo orig_syntax > when I type :echo original_syntax then I noticed that entity is still > reported in the vhdlStatement list. > > Then I've modified the line of block_words into > let block_keywords = [ 'if', 'else', 'entity', 'zab', 'end' , 'inout' , 'bar'] > Then give the same command again :echo original_syntax > > Then also end and inout are still in the list.
You left out the second instruction... :echo orig_syntax :syn list vhdlStatement The ':echo' gives you the original syntax entry for vhdlStatement. The ':syn' command gives you the current entry. (So you can compare them.) > It also says that only if and else are in the match group. At least > that's my understanding of the lines that comes after all the vhdl > keywords > match /\<\(if\|else\)\>/ > links to statement > > zab and bar are now highlighted as vhdl keywords Right. But they aren't listed in that :echo orig_syntax, are they? (They shouldn't be -- they were added to the new list.) > > Essentially, the file gets the original vhdlStatement list of > > keywords, and recreates it, filtering out the keywords you want to > > use as folding block indicators. (The attached file uses the list: > > 'if', 'else', 'entity', and 'zab'. You should be able to modify > > block_keywords to whatever you want.) > > > > Then it does two things: one is to fill in the answer to your > > question above. Instead of creating the individual matches/regions > > 'vhdlFoo', 'vhdlBar', and 'vhdlFooBarFold', it just adds them as > > matches in vhdlStatement, and adds the single region > > 'vhdlBlockFold': > > > The folding of code starting with if or entity or else or zab doesn't > happen. You also have to set foldmethod=syntax. Sorry, probably could've added it to that file: :set fdm=syntax -- Best, Ben -- You received this message from the "vim_use" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php
