On Sunday, November 18, 2012 4:23:29 PM UTC-6, Nick Gravgaard wrote: > > > I am aware that elastic tabstops is not something many people use > > > > (yet). Still, for me it is a very nice feature to use with a gedit > > > > plugin, but since my favourite editor is vim, I was hoping that > > > > support for this might appear here, in the form of introducing > > > > non-uniform tabstop support. > > > > > > A quick search of this list tells me that there is a patch for elastic > > > tabstops floating around. > > > > I'd love to see elastic tabstops get added to Vim, but if it's not going to > get added to the main code base, could we at least have the ability to set > non-uniform tabstops on different lines? Many text widgets have this > functionality now, so it's a shame that Vim cannot do this yet. Not only > would this make elastic tabstops easier to implement, but it would also be > useful for the implementation of many other table and layout related features. > >
I did a little thinking about this. Obviously there is not a good way to STORE these non-uniform tabstops on a line-by-line basis in a file. But maybe there could be 2 new features that could combine together to create the ability to do things like elastic tabstops or tables in the middle of text nicely, without backwards-incompatible changes and keeping in the spirit of other Vim options: 1. Implement variable-width tabstops by allowing a comma-separated list to be used as a value for 'tabstop'. For example, setting ts=4,2,8 would have the first tab in the line stop at column 4, the next stop at column 6, and all other tabs stop at 14, 22, 30, ... 2. Implement a 'tabstopexpr' option which would be set to an expression giving the value of 'tabstop' to use for v:lnum (which could potentially be a different comma-separated list for each line depending on context) -- You received this message from the "vim_dev" 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
