On 2015-12-31, Bram Moolenaar wrote:
> Gary Johnson wrote:
> 
> > > > I recently learned that Vim can query an xterm directly for the
> > > > number of colors it supports.  (This is not necessarily the same
> > > > value reported by terminfo.  Otherwise, it wouldn't be very useful.)
> > > > Vim then sets t_Co to this number.  I would like to use that value
> > > > to affect other color settings, but I can't figure out when to do
> > > > that.  I captured the value of &t_Co at the start and end of my
> > > > ~/.vimrc and upon these autocommand events,
> > > > 
> > > >     BufWinEnter
> > > >     ColorScheme
> > > >     FileType
> > > >     OptionSet
> > > >     TermResponse
> > > >     VimEnter
> > > > 
> > > > but the value was always 8.  By the time I queried the value from
> > > > Vim's command line, though, the value was 256.
> > > > 
> > > > What event do I need to wait for to determine that t_Co may have
> > > > changed to 256?
> > > 
> > > Can't think of something.  We do have the OptionSet autocommand event,
> > > but it's not triggered in this case.  Perhaps we should make a change
> > > for that.  The code is near the end of set_num_option().
> > 
> > That seems like the right thing to do.  I'm trying to think of what
> > could go wrong.  I'm concerned about this statement under ":help
> > OptionsSet":
> > 
> >     Note: It's a bad idea to reset an option
> >     during this autocommand, this may break a
> >     plugin. You can always use `:noa` to prevent
> >     triggering this autocommand.
> > 
> > I was considering having this autocommand execute a :colorscheme
> > {name} command.  That would often set 'background'.  And if "nested"
> > was used, it would trigger a ColorScheme event.
> > 
> > That all seems OK.  I'll look at creating a patch.
> 
> The color schemes are reloaded when t_Co changes, perhaps you can set a
> color scheme that checks the value of t_Co?
I thought more about the problem I was actually trying to solve, and
about why I thought that the color scheme was not being reloaded
when Co was received from xterm, and I think that the current
behavior and a color scheme that checks the value of t_Co will work
fine--actually better than what I thought I wanted.
Thank you for your help.
Regards,
Gary
-- 
-- 
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
--- 
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Friday, January 1, 2016
Subscribe to:
Post Comments (Atom)
 
No comments:
Post a Comment