Mercurial > vim
annotate runtime/doc/popup.txt @ 16829:5cebaecad422 v8.1.1416
patch 8.1.1416: popup_getposition() not implemented yet
commit https://github.com/vim/vim/commit/bc133543b8b0ebb1d8624e37d840b739eb00f3f3
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed May 29 20:26:46 2019 +0200
patch 8.1.1416: popup_getposition() not implemented yet
Problem: Popup_getposition() not implemented yet.
Solution: Implement it. (Yasuhiro Matsumoto, closes https://github.com/vim/vim/issues/4449)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 29 May 2019 20:30:05 +0200 |
parents | 069ee8dc8c8d |
children | 6699c03347d2 |
rev | line source |
---|---|
16808 | 1 *popup.txt* For Vim version 8.1. Last change: 2019 May 26 |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4 VIM REFERENCE MANUAL by Bram Moolenaar |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
5 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
6 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
7 Displaying text in floating window. *popup* *popup-window* |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
8 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
9 THIS IS UNDER DESIGN - ANYTHING MAY STILL CHANGE |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
10 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
11 1. Introduction |popup-intro| |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
12 2. Functions |popup-functions| |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
13 3. Examples |popup-examples| |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
14 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
15 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
16 {not available if the |+eval| feature was disabled at compile time} |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
17 {not able to use text properties if the |+textprop| feature was disabled at |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
18 compile time} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
19 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
20 ============================================================================== |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
21 1. Introduction *popup-intro* |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
22 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
23 We are talking about popup windows here, text that goes on top of the regular |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
24 windows and is under control of a plugin. You cannot edit the text in the |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
25 popup window like with regular windows. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
26 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
27 A popup window can be used for such things as: |
16808 | 28 - briefly show a message without overwriting the command line |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
29 - prompt the user with a dialog |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
30 - display contextual information while typing |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
31 - give extra information for auto-completion |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
32 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
33 The text in the popup window can be colored with |text-properties|. It is |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
34 also possible to use syntax highlighting. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
35 |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
36 The default color used is "Pmenu". If you prefer something else use the |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
37 "highlight" argument or the 'wincolor' option, e.g.: > |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
38 hi MyPopupColor ctermbg=lightblue guibg=lightblue |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
39 call setwinvar(winid, '&wincolor', 'MyPopupColor') |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
40 |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
41 'hlsearch' and match highlighting are not displayed in a popup window. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
42 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
43 A popup window has a window-ID like other windows, but behaves differently. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
44 The size can be up to the whole Vim window and it overlaps other windows. |
16808 | 45 Popup windows can also overlap each other. |
46 | |
47 The popup window contains a buffer, and that buffer is always associated with | |
48 the popup window. The window cannot be used in Normal, Visual or Insert mode, | |
49 it does not get keyboard focus. You can use functions like `setbufline()` to | |
50 change the text in the buffer. There are more differences from how this | |
51 window and buffer behave compared to regular windows and buffers, see | |
52 |popup-buffer|. | |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
53 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
54 If this is not what you are looking for, check out other popup functionality: |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
55 - popup menu, see |popup-menu| |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
56 - balloon, see |balloon-eval| |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
57 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
58 |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
59 WINDOW POSITION AND SIZE *popup-position* |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
60 |
16808 | 61 The height of the window is normally equal to the number of, possibly |
62 wrapping, lines in the buffer. It can be limited with the "maxheight" | |
63 property. You can use empty lines to increase the height. | |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
64 |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
65 The width of the window is normally equal to the longest line in the buffer. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
66 It can be limited with the "maxwidth" property. You can use spaces to |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
67 increase the width. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
68 |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
69 By default the 'wrap' option is set, so that no text disappears. However, if |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
70 there is not enough space, some text may be invisible. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
71 |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
72 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
73 TODO: |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
74 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
75 Example how to use syntax highlighting of a code snippet. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
76 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
77 Scrolling: When the screen scrolls up for output of an Ex command, what |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
78 happens with popups? |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
79 1. Stay where they are. Problem: listed text may go behind and can't be read. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
80 2. Scroll with the page. What if they get updated? Either postpone, or take |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
81 the scroll offset into account. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
82 Probably 2. is the best choice. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
83 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
84 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
85 IMPLEMENTATION: |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
86 - Code is in popupwin.c |
16829
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
87 - when creating the window set options to Vim default? (verify with 'number') |
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
88 - Do not show tilde below last line. |
16808 | 89 - Implement filter. |
16829
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
90 Check that popup_close() works in the filter. |
16808 | 91 - Handle screen resize in screenalloc(). |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
92 - Make redrawing more efficient and avoid flicker. |
16829
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
93 Fix redrawing problem with completion. |
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
94 Fix redrawing problem when scrolling non-current window |
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
95 Fix redrawing the statusline on top of a popup |
16808 | 96 - Properly figure out the size and position. |
16829
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
97 - Can the buffer be re-used, to avoid using up lots of buffer numbers? |
16808 | 98 - Implement all the unimplemented options and features. |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
99 |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
100 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
101 ============================================================================== |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
102 2. Functions *popup-functions* |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
103 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
104 THIS IS UNDER DESIGN - ANYTHING MAY STILL CHANGE |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
105 |
16808 | 106 [functions to be moved to eval.txt later, keep overview of functions here] |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
107 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
108 popup_create({text}, {options}) *popup_create()* |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
109 Open a popup window showing {text}, which is either: |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
110 - a string |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
111 - a list of strings |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
112 - a list of text lines with text properties |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
113 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
114 {options} is a dictionary with many possible entries. |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
115 See |popup_create-usage| for details. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
116 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
117 Returns a window-ID, which can be used with other popup |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
118 functions. Use `winbufnr()` to get the number of the buffer |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
119 in the window: > |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
120 let winid = popup_create('hello', {}) |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
121 let bufnr = winbufnr(winid) |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
122 call setbufline(bufnr, 2, 'second line') |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
123 < In case of failure zero is returned. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
124 |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
125 |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
126 popup_close({id}) *popup_close()* |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
127 Close popup {id}. The window and the associated buffer will |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
128 be deleted. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
129 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
130 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
131 popup_dialog({text}, {options}) *popup_dialog()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
132 {not implemented yet} |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
133 Just like |popup_create()| but with these default options: > |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
134 call popup_create({text}, { |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
135 \ 'pos': 'center', |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
136 \ 'zindex': 200, |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
137 \ 'border': [], |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
138 \}) |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
139 < Use {options} to change the properties. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
140 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
141 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
142 popup_notification({text}, {options}) *popup_notification()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
143 {not implemented yet} |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
144 Show the {text} for 3 seconds at the top of the Vim window. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
145 This works like: > |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
146 call popup_create({text}, { |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
147 \ 'line': 1, |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
148 \ 'col': 10, |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
149 \ 'time': 3000, |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
150 \ 'tab': -1, |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
151 \ 'zindex': 200, |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
152 \ 'highlight': 'WarningMsg', |
16800
12e3a3afdb6a
patch 8.1.1402: "timer" option of popup windows not supported
Bram Moolenaar <Bram@vim.org>
parents:
16778
diff
changeset
|
153 \ 'border': [], |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
154 \ }) |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
155 < Use {options} to change the properties. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
156 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
157 |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
158 popup_atcursor({text}, {options}) *popup_atcursor()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
159 {not implemented yet} |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
160 Show the {text} above the cursor, and close it when the cursor |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
161 moves. This works like: > |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
162 call popup_create({text}, { |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
163 \ 'line': 'cursor-1', |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
164 \ 'col': 'cursor', |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
165 \ 'moved': 'WORD', |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
166 \ }) |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
167 < Use {options} to change the properties. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
168 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
169 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
170 popup_menu({text}, {options}) *popup_menu()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
171 {not implemented yet} |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
172 Show the {text} near the cursor, handle selecting one of the |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
173 items with cursorkeys, and close it an item is selected with |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
174 Space or Enter. {text} should have multiple lines to make this |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
175 useful. This works like: > |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
176 call popup_create({text}, { |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
177 \ 'pos': 'center', |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
178 \ 'zindex': 200, |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
179 \ 'wrap': 0, |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
180 \ 'border': [], |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
181 \ 'filter': 'popup_filter_menu', |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
182 \ }) |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
183 < Use {options} to change the properties. Should at least set |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
184 "callback" to a function that handles the selected item. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
185 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
186 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
187 popup_hide({id}) *popup_hide()* |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
188 If {id} is a displayed popup, hide it now. If the popup has a |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
189 filter it will not be invoked for so long as the popup is |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
190 hidden. |
16809
5ff14f96f1c9
patch 8.1.1406: popup_hide() and popup_show() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16808
diff
changeset
|
191 If window {id} does not exist nothing happens. If window {id} |
5ff14f96f1c9
patch 8.1.1406: popup_hide() and popup_show() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16808
diff
changeset
|
192 exists but is not a popup window an error is given. *E993* |
5ff14f96f1c9
patch 8.1.1406: popup_hide() and popup_show() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16808
diff
changeset
|
193 |
5ff14f96f1c9
patch 8.1.1406: popup_hide() and popup_show() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16808
diff
changeset
|
194 popup_show({id}) *popup_show()* |
5ff14f96f1c9
patch 8.1.1406: popup_hide() and popup_show() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16808
diff
changeset
|
195 If {id} is a hidden popup, show it now. |
5ff14f96f1c9
patch 8.1.1406: popup_hide() and popup_show() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16808
diff
changeset
|
196 For {id} see `popup_hide()`. |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
197 |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
198 popup_move({id}, {options}) *popup_move()* |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
199 Move popup {id} to the position speficied with {options}. |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
200 {options} may contain the items from |popup_create()| that |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
201 specify the popup position: "line", "col", "pos", "maxheight", |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
202 "minheight", "maxwidth" and "minwidth". |
16809
5ff14f96f1c9
patch 8.1.1406: popup_hide() and popup_show() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16808
diff
changeset
|
203 For {id} see `popup_hide()`. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
204 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
205 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
206 popup_filter_menu({id}, {key}) *popup_filter_menu()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
207 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
208 Filter that can be used for a popup. It handles the cursor |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
209 keys to move the selected index in the popup. Space and Enter |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
210 can be used to select an item. Invokes the "callback" of the |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
211 popup menu with the index of the selected line as the second |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
212 argument. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
213 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
214 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
215 popup_filter_yesno({id}, {key}) *popup_filter_yesno()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
216 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
217 Filter that can be used for a popup. It handles only the keys |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
218 'y', 'Y' and 'n' or 'N'. Invokes the "callback" of the |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
219 popup menu with the 1 for 'y' or 'Y' and zero for 'n' or 'N' |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
220 as the second argument. Pressing Esc and CTRL-C works like |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
221 pressing 'n'. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
222 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
223 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
224 popup_setoptions({id}, {options}) *popup_setoptions()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
225 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
226 Override options in popup {id} with entries in {options}. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
227 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
228 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
229 popup_getoptions({id}) *popup_getoptions()* |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
230 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
231 Return the {options} for popup {id}. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
232 |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
233 popup_getposition({id}) *popup_getposition()* |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
234 Return the position and size of popup {id}. Returns a Dict |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
235 with these entries: |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
236 col screen column of the popup, one-based |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
237 line screen line of the popup, one-based |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
238 width width of the popup in screen cells |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
239 height height of the popup in screen cells |
16829
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
240 Note that these are the actual screen positions. They differ |
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
241 from the values in `popup_getoptions()` for the sizing and |
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
242 positioning mechanism applied. |
5cebaecad422
patch 8.1.1416: popup_getposition() not implemented yet
Bram Moolenaar <Bram@vim.org>
parents:
16817
diff
changeset
|
243 If popup window {id} is not found an empty Dict is returned. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
244 |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
245 win_execute({id}, {command}) |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
246 {not implemented yet} |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
247 Like `execute()` but in the context of window {id}. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
248 The window will temporarily be made the current window, |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
249 without triggering autocommands. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
250 Example: > |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
251 call win_execute(winid, 'syntax enable') |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
252 < |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
253 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
254 *:popupclear* *:popupc* |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
255 :popupc[lear] Emergency solution to a misbehaving plugin: close all popup |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
256 windows. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
257 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
258 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
259 POPUP BUFFER AND WINDOW *popup-buffer* |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
260 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
261 A new buffer is created to hold the text and text properties of the popup |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
262 window. The buffer is always associated with the popup window and |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
263 manipulation is restricted: |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
264 - the buffer has no name |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
265 - 'buftype' is "popup" |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
266 - 'swapfile' is off |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
267 - 'bufhidden' is "hide" |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
268 - 'buflisted' is off |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
269 - 'undolevels' is -1: no undo at all |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
270 TODO: more |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
271 |
16808 | 272 It is possible to change these options, but anything might break then, so |
273 better leave them alone. | |
274 | |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
275 The window does have a cursor position, but the cursor is not displayed. |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
276 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
277 Options can be set on the window with `setwinvar()`, e.g.: > |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
278 call setwinvar(winid, '&wrap', 0) |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
279 And options can be set on the buffer with `setbufvar()`, e.g.: > |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
280 call setbufvar(winbufnr(winid), '&filetype', 'java') |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
281 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
282 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
283 POPUP_CREATE() ARGUMENTS *popup_create-usage* |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
284 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
285 The first argument of |popup_create()| specifies the text to be displayed, and |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
286 optionally text properties. It is in one of three forms: |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
287 - a string |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
288 - a list of strings |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
289 - a list of dictionaries, where each dictionary has these entries: |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
290 text String with the text to display. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
291 props A list of text properties. Optional. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
292 Each entry is a dictionary, like the third argument of |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
293 |prop_add()|, but specifying the column in the |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
294 dictionary with a "col" entry, see below: |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
295 |popup-props|. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
296 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
297 The second argument of |popup_create()| is a dictionary with options: |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
298 line screen line where to position the popup; can use |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
299 "cursor", "cursor+1" or "cursor-1" to use the line of |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
300 the cursor and add or subtract a number of lines; |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
301 default is "cursor-1". |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
302 {only number is implemented} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
303 col screen column where to position the popup; can use |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
304 "cursor" to use the column of the cursor, "cursor+99" |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
305 and "cursor-99" to add or subtract a number of |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
306 columns; default is "cursor" |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
307 {only number is implemented} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
308 pos "topleft", "topright", "botleft" or "botright": |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
309 defines what corner of the popup "line" and "col" are |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
310 used for. Default is "botleft". Alternatively |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
311 "center" can be used to position the popup in the |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
312 center of the Vim window. |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
313 {not implemented yet} |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
314 flip when TRUE (the default) and the position is relative |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
315 to the cursor, flip to below or above the cursor to |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
316 avoid overlap with the |popupmenu-completion| or |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
317 another popup with a higher "zindex" |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
318 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
319 maxheight maximum height |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
320 minheight minimum height |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
321 maxwidth maximum width |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
322 minwidth minimum width |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
323 hidden when TRUE the popup exists but is not displayed; use |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
324 `popup_show()` to unhide it. |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
325 {not implemented yet} |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
326 tab when -1: display the popup on all tabs; when 0 (the |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
327 default): display the popup on the current tab; |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
328 otherwise the number of the tab page the popup is |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
329 displayed on; when invalid the current tab is used |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
330 {only -1 and 0 are implemented} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
331 title text to be displayed above the first item in the |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
332 popup, on top of any border |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
333 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
334 wrap TRUE to make the lines wrap (default TRUE) |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
335 {not implemented yet} |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
336 highlight highlight group name to use for the text, stored in |
16806
306766ed0f70
patch 8.1.1405: "highlight" option of popup windows not supported
Bram Moolenaar <Bram@vim.org>
parents:
16800
diff
changeset
|
337 the 'wincolor' option |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
338 border list with numbers, defining the border thickness |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
339 above/right/below/left of the popup; an empty list |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
340 uses a border of 1 all around |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
341 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
342 borderhighlight highlight group name to use for the border |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
343 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
344 borderchars list with characters, defining the character to use |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
345 for the top/right/bottom/left border; optionally |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
346 followed by the character to use for the |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
347 topright/botright/botleft/topleft corner; an empty |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
348 list can be used to show a double line all around |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
349 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
350 zindex priority for the popup, default 50 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
351 time time in milliseconds after which the popup will close; |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
352 when omitted |popup_close()| must be used. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
353 moved "cell": close the popup if the cursor moved at least |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
354 one screen cell; "word" allows for moving within |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
355 |<cword>|, "WORD" allows for moving within |<cWORD>|, |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
356 a list with two numbers specifies the start and end |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
357 column |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
358 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
359 filter a callback that can filter typed characters, see |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
360 |popup-filter| |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
361 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
362 callback a callback to be used when the popup closes, e.g. when |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
363 using |popup_filter_menu()|, see |popup-callback|. |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
364 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
365 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
366 Depending on the "zindex" the popup goes under or above other popups. The |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
367 completion menu (|popup-menu|) has zindex 100. For messages that occur for a |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
368 short time the suggestion is to use zindex 1000. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
369 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
370 By default text wraps, which causes a line in {lines} to occupy more than one |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
371 screen line. When "wrap" is FALSE then the text outside of the popup or |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
372 outside of the Vim window will not be displayed, thus truncated. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
373 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
374 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
375 POPUP TEXT PROPERTIES *popup-props* |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
376 |
16811
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
377 These are similar to the third argument of |prop_add()| except: |
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
378 - "lnum" is always the current line in the list |
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
379 - "bufnr" is always the buffer of the popup |
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
380 - "col" is in the Dict instead of a separate argument |
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
381 - "transparent" is extra |
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
382 So we get: |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
383 col starting column, counted in bytes, use one for the |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
384 first column. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
385 length length of text in bytes; can be zero |
16811
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
386 end_lnum line number for the end of the text |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
387 end_col column just after the text; not used when "length" is |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
388 present; when {col} and "end_col" are equal, this is a |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
389 zero-width text property |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
390 id user defined ID for the property; when omitted zero is |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
391 used |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
392 type name of the text property type, as added with |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
393 |prop_type_add()| |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
394 transparent do not show these characters, show the text under it; |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
395 if there is an border character to the right or below |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
396 it will be made transparent as well |
16811
0457d49eb2d9
patch 8.1.1407: popup_create() does not support text properties
Bram Moolenaar <Bram@vim.org>
parents:
16809
diff
changeset
|
397 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
398 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
399 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
400 POPUP FILTER *popup-filter* |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
401 |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
402 {not implemented yet} |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
403 A callback that gets any typed keys while a popup is displayed. The filter is |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
404 not invoked when the popup is hidden. |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
405 |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
406 The filter can return TRUE to indicate the key has been handled and is to be |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
407 discarded, or FALSE to let Vim handle the key as usual in the current state. |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
408 In case it returns FALSE and there is another popup window visible, that |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
409 filter is also called. The filter of the popup window with the highest zindex |
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
410 is called first. |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
411 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
412 The filter function is called with two arguments: the ID of the popup and the |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
413 key. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
414 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
415 Some common key actions: |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
416 Esc close the popup |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
417 cursor keys select another entry |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
418 Tab accept current suggestion |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
419 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
420 A mouse click arrives as <LeftMouse>. The coordinates are in |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
421 v:mouse_popup_col and v:mouse_popup_row. The top-left screen cell of the |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
422 popup is col 1, row 1 (not counting the border). |
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
423 |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
424 Vim provides standard filters |popup_filter_menu()| and |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
425 |popup_filter_yesno()|. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
426 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
427 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
428 POPUP CALLBACK *popup-callback* |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
429 |
16778
eda4d65f232c
patch 8.1.1391: no popup window support
Bram Moolenaar <Bram@vim.org>
parents:
16724
diff
changeset
|
430 {not implemented yet} |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
431 A callback that is invoked when the popup closes. Used by |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
432 |popup_filter_menu()|. Invoked with two arguments: the ID of the popup and |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
433 the result, which would usually be an index in the popup lines, or whatever |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
434 the filter wants to pass. |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
435 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
436 ============================================================================== |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
437 3. Examples *popup-examples* |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
438 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
439 TODO |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
440 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
441 Prompt the user to press y/Y or n/N: > |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
442 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
443 func MyDialogHandler(id, result) |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
444 if a:result |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
445 " ... 'y' or 'Y' was pressed |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
446 endif |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
447 endfunc |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
448 |
16724
6030631a1541
patch 8.1.1364: design for popup window support needs more details
Bram Moolenaar <Bram@vim.org>
parents:
16654
diff
changeset
|
449 call popup_create(['Continue? y/n'], { |
16654
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
450 \ 'filter': 'popup_filter_yesno', |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
451 \ 'callback': 'MyDialogHandler', |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
452 \ }) |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
453 < |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
454 |
7d54a66c95d7
patch 8.1.1329: plans for popup window support are spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
455 vim:tw=78:ts=8:noet:ft=help:norl: |