Loading ...
Sorry, an error occurred while loading the content.

67125Re: Implementation of script support for non-uniform tabstops

Expand Messages
  • Nick Gravgaard
    Nov 19, 2012
    • 0 Attachment
      On Mon, Nov 19, 2012, at 0:28, Ben Fritz wrote:
      > 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)

      This sounds interesting. Are there any other Vim settings that work on
      different lines? If so, how do they work?

      --
      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
    • Show all 12 messages in this topic