Hi,
On Thu, Aug 18, 2016 at 5:48 AM, Michael Henry <[email protected]> wrote:
> On 08/17/2016 01:58 PM, Yegappan Lakshmanan wrote:
>> On Wed, Aug 17, 2016 at 4:12 AM, Michael Henry <[email protected]>
> wrote:
>>> I'd like functions that:
>>>
>>> - Return True if a given window is a QuickFix or Location List
>>> window.
>>> [...]
>>
>> The new getwininfo() function can be used to distinguish between
>> the quickfix and location list windows. Check the 'quickfix' and the
>> 'loclist' keys in the returned dictionary.
>> [...]
>>
>> The getqflist() function returns the window ID of the quickfix window
>> (if it is opened). You can check for this.
>> [...]
>> You can use the getqflist() and getloclist() functions for these.
>>
>> - Yegappan
>
> Thanks, Yegappan, that's very helpful. I think these extensions
> will make things much smoother.
>
> I was trying to find something in the help regarding the meaning
> of a "window id". Though there are several functions that
> accept and return these, I can't find anything that defines
> them.
>
The window identifier is described in windows.txt. I am copying
the description below:
Each window has a unique identifier called the window ID. This identifier
will not change within a Vim session. The |win_getid()| and |win_id2tabwin()|
functions can be used to convert between the window/tab number and the
identifier. There is also the window number, which may change whenever
windows are opened or closed, see |winnr()|.
>
> Perhaps the help could contain a definition of window ID that
> answers these questions:
>
> - How does a window ID differ from a window number?
>
As described above, the ID of a window is unique in a Vim session.
OTOH, the window number can change as new windows are
created and existing windows are closed.
>
> - Since getloclist() accepts either a window number or a window
> ID for the first argument, these two number spaces must be
> non-overlapping; how does Vim ensure this property?
>
The window identifiers are internally assigned values greater
than 1000 (assuming that the number of windows will be less
than 1000).
>
> - Are window IDs unique across tab pages?
>
Yes. The window IDs are unique across all the tab pages.
>
> - Are window IDs more permanent in some way than window numbers?
> For example, if I rearrange the windows in a tab page, do the
> window numbers change but the window IDs remain the same?
>
Yes. The window numbers will change as you add/remove windows.
>
> That empirically seems to be the case when I move the QuickFix
> window around within a tab page; is this guaranteed? The
> window id empirically changes when closing and reopening the
> QuickFix window and when moving the QuickFix window to another
> tab; does that mean that the window ID stays the same until
> the window is closed?
>
Yes. Each newly opened window is assigned a unique identifier.
>
> Also, in the help for getwininfo() (vim 7.4.2222) is this
> sentence:
>
> """
> Without an information about all the windows in all the tab
> pages is returned.
> """
>
> Should that start with "Without {winid}, information about..."?
>
Yes. The help text needs to be corrected.
- Yegappan
>
> Thanks,
> Michael Henry
>
--
--
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
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.