|
1 | | -*tabpage.txt* For Vim version 9.2. Last change: 2026 Apr 25 |
| 1 | +*tabpage.txt* For Vim version 9.2. Last change: 2026 Apr 28 |
2 | 2 |
|
3 | 3 |
|
4 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar |
@@ -482,36 +482,41 @@ The vertical separator character is taken from "tpl_vert" in 'fillchars'. |
482 | 482 | You can customize the appearance of the tab page labels using the highlight |
483 | 483 | groups: |hl-TabPanel| |hl-TabPanelSel| |hl-TabPanelFill| |
484 | 484 |
|
485 | | -SCROLLING IN THE TABPANEL: *tabpanel-scroll* |
| 485 | +SCROLLING IN THE TABPANEL *tabpanel-scroll* |
486 | 486 |
|
487 | 487 | When the total height of the tab page list exceeds the visible screen height, |
488 | | -the tabpanel by default displays the "page" that contains the current tab page |
489 | | -and offers no way to view tab pages outside that page. |
| 488 | +mouse wheel events over the tabpanel area scroll the tab page list up or down. |
| 489 | +The scroll step follows the 'mousescroll' setting. Wheel events inside the |
| 490 | +tabpanel area are consumed by the tabpanel and do not trigger |
| 491 | +|<ScrollWheelUp>| or |<ScrollWheelDown>| mappings. |
490 | 492 |
|
491 | | -To make the tabpanel scrollable, add "scroll" to 'tabpanelopt': > |
492 | | - :set tabpanelopt+=scroll |
| 493 | +The current tab page is always brought into view: when the selected tab page |
| 494 | +changes (by |gt|, |gT|, |:tabnext| etc.), the panel scrolls so the current |
| 495 | +entry is visible. |
493 | 496 |
|
494 | | -With "scroll" enabled, mouse wheel events over the tabpanel area scroll the |
495 | | -tab page list up or down. The scroll step follows the 'mousescroll' setting. |
496 | | -Wheel events inside the tabpanel area are consumed by the tabpanel and do not |
497 | | -trigger |<ScrollWheelUp>| or |<ScrollWheelDown>| mappings. |
498 | | - |
499 | | -To additionally show a vertical scrollbar indicating the current scroll |
500 | | -position, use "scrollbar": > |
| 497 | +To show a vertical scrollbar indicating the current scroll position, add |
| 498 | +"scrollbar" to 'tabpanelopt': > |
501 | 499 | :set tabpanelopt+=scrollbar |
502 | 500 |
|
503 | | -The "scrollbar" value implies "scroll". A one-column scrollbar is reserved at |
504 | | -the edge of the tabpanel; clicking on the scrollbar column moves the thumb to |
505 | | -the click position, and the thumb can be dragged to scroll continuously. |
506 | | - |
507 | | -When "vert" is combined with "scrollbar", the scrollbar is drawn next to the |
508 | | -vertical separator, on the panel side. |
| 501 | +A one-column scrollbar is always displayed at the right edge of the tabpanel, |
| 502 | +regardless of the "align:" setting in 'tabpanelopt'. Clicking on the |
| 503 | +scrollbar column moves the thumb to the click position, and the thumb can be |
| 504 | +dragged to scroll continuously. |
509 | 505 |
|
510 | 506 | The scrollbar uses the |hl-PmenuSbar| highlight group for the track and |
511 | 507 | |hl-PmenuThumb| for the thumb. |
512 | 508 |
|
513 | | -The scroll offset is remembered across redraws but is reset when "scroll" or |
514 | | -"scrollbar" is toggled off and back on. |
| 509 | +The scroll offset is remembered across redraws. |
| 510 | + |
| 511 | +MOUSE CLICKS IN THE TABPANEL *tabpanel-mouse* |
| 512 | + |
| 513 | +A left click on a row in the tabpanel selects the tab page that the row |
| 514 | +belongs to. Unlike the tabline, a double click in the tabpanel does not open |
| 515 | +a new, empty tab page; it is treated the same as a single click. |
| 516 | + |
| 517 | +For finer-grained control, the 'tabpanel' value may contain |stl-%[FuncName]| |
| 518 | +click regions. Clicks on those regions are dispatched to the callback |
| 519 | +function instead of falling through to tab selection. |
515 | 520 |
|
516 | 521 | ============================================================================== |
517 | 522 | 6. Setting 'guitablabel' *setting-guitablabel* |
|
0 commit comments