api_keysets_extra.lua (7816B)
1 --- @meta _ 2 error('Cannot require a meta file') 3 4 --- Extra types we can't generate keysets for 5 6 --- @class vim.api.keyset.extmark_details 7 --- @field ns_id integer 8 --- @field right_gravity boolean 9 --- 10 --- @field end_row? integer 11 --- @field end_col? integer 12 --- @field end_right_gravity? integer 13 --- 14 --- @field priority? integer 15 --- 16 --- @field undo_restore? false 17 --- @field invalidate? true 18 --- @field invalid? true 19 --- 20 --- @field hl_group? string 21 --- @field hl_eol? boolean 22 --- 23 --- @field conceal? string 24 --- @field spell? boolean 25 --- @field ui_watched? boolean 26 --- @field url? string 27 --- @field hl_mode? string 28 --- 29 --- @field virt_text? [string, string][] 30 --- @field virt_text_hide? boolean 31 --- @field virt_text_repeat_linebreak? boolean 32 --- @field virt_text_win_col? integer 33 --- @field virt_text_pos? string 34 --- 35 --- @field virt_lines? [string, string][][] 36 --- @field virt_lines_above? boolean 37 --- @field virt_lines_leftcol? boolean 38 --- 39 --- @field sign_text? string 40 --- @field sign_name? string 41 --- @field sign_hl_group? string 42 --- @field number_hl_group? string 43 --- @field line_hl_group? string 44 --- @field cursorline_hl_group? string 45 46 --- @class vim.api.keyset.get_extmark_item_by_id 47 --- @field [1] integer row 48 --- @field [2] integer col 49 --- @field [3] vim.api.keyset.extmark_details? 50 51 --- @class vim.api.keyset.get_extmark_item 52 --- @field [1] integer extmark_id 53 --- @field [2] integer row 54 --- @field [3] integer col 55 --- @field [4] vim.api.keyset.extmark_details? 56 57 --- @class vim.api.keyset.get_autocmds.ret 58 --- @field id? integer 59 --- @field group? integer 60 --- @field group_name? integer 61 --- @field desc? string 62 --- @field event? string 63 --- @field command? string 64 --- @field callback? function 65 --- @field once? boolean 66 --- @field pattern? string 67 --- @field buflocal? boolean 68 --- @field buffer? integer 69 70 --- @class vim.api.keyset.create_autocmd.callback_args 71 --- @field id integer autocommand id 72 --- @field event string name of the triggered event |autocmd-events| 73 --- @field group? integer autocommand group id, if any 74 --- @field match string expanded value of <amatch> 75 --- @field buf integer expanded value of <abuf> 76 --- @field file string expanded value of <afile> 77 --- @field data? any arbitrary data passed from |nvim_exec_autocmds()| *event-data* 78 79 --- @class vim.api.keyset.create_user_command.command_args 80 --- @field name string Command name 81 --- 82 --- The args passed to the command, if any <args> 83 --- @field args string 84 --- 85 --- The args split by unescaped whitespace 86 --- (when more than one argument is allowed), if any <f-args> 87 --- @field fargs string[] 88 --- 89 --- Number of arguments |:command-nargs| 90 --- @field nargs string 91 --- 92 --- "true" if the command was executed with a ! modifier <bang> 93 --- @field bang boolean 94 --- 95 --- The starting line of the command range <line1> 96 --- @field line1 integer 97 --- 98 --- The final line of the command range <line2> 99 --- @field line2 integer 100 --- 101 --- The number of items in the command range: 0, 1, or 2 <range> 102 --- @field range integer 103 --- 104 --- Any count supplied <count> 105 --- @field count integer 106 --- The optional register, if specified <reg> 107 --- @field reg string 108 --- Command modifiers, if any <mods> 109 --- @field mods string 110 --- 111 --- Command modifiers in a structured format. Has the same structure as the 112 --- "mods" key of |nvim_parse_cmd()|. 113 --- @field smods table 114 115 --- @class vim.api.keyset.command_info 116 --- @field name string 117 --- @field definition string 118 --- @field script_id integer 119 --- @field bang boolean 120 --- @field bar boolean 121 --- @field register boolean 122 --- @field keepscript boolean 123 --- @field preview? function 124 --- @field nargs string 125 --- @field complete? string|function 126 --- @field complete_arg? string 127 --- @field count? string 128 --- @field range? string 129 --- @field addr? string 130 --- @field callback? function 131 132 --- @class vim.api.keyset.hl_info.base 133 --- @field reverse? true 134 --- @field bold? true 135 --- @field italic? true 136 --- @field underline? true 137 --- @field undercurl? true 138 --- @field underdouble? true 139 --- @field underdotted? true 140 --- @field underdashed? true 141 --- @field standout? true 142 --- @field strikethrough? true 143 --- @field altfont? true 144 --- @field nocombine? true 145 --- @field ctermfg? integer 146 --- @field ctermbg? integer 147 148 --- @class vim.api.keyset.hl_info.cterm : vim.api.keyset.hl_info.base 149 --- @field foreground? integer 150 --- @field background? integer 151 152 --- @class vim.api.keyset.get_hl_info : vim.api.keyset.hl_info.base 153 --- @field fg? integer 154 --- @field bg? integer 155 --- @field sp? integer 156 --- @field default? true 157 --- @field link? string 158 --- @field blend? integer 159 --- @field cterm? vim.api.keyset.hl_info.cterm 160 161 --- @class vim.api.keyset.set_hl_info : vim.api.keyset.hl_info.base 162 --- @field fg? integer|string 163 --- @field bg? integer|string 164 --- @field sp? integer|string 165 --- @field default? true 166 --- @field link? string 167 --- @field blend? integer 168 --- @field force? true 169 --- @field cterm? vim.api.keyset.hl_info.cterm 170 171 --- @class vim.api.keyset.get_keymap 172 --- @field abbr? 0|1 173 --- @field buffer? 0|1 174 --- @field callback? function 175 --- @field desc? string 176 --- @field expr? 0|1 177 --- @field lhs? string 178 --- @field lhsraw? string 179 --- @field lhsrawalt? string 180 --- @field lnum? integer 181 --- @field mode? string 182 --- @field mode_bits? integer 183 --- @field noremap? 0|1 184 --- @field nowait? 0|1 185 --- @field rhs? string 186 --- @field script? 0|1 187 --- @field scriptversion? integer 188 --- @field sid? integer 189 --- @field silent? 0|1 190 191 --- @class vim.api.keyset.get_mode 192 --- @field blocking boolean 193 --- @field mode string 194 195 --- @class vim.api.keyset.get_option_info 196 --- @field name string 197 --- @field shortname string 198 --- @field scope 'buf'|'win'|'global' 199 --- @field global_local boolean 200 --- @field commalist boolean 201 --- @field flaglist boolean 202 --- @field was_set boolean 203 --- @field last_set_sid integer 204 --- @field last_set_linenr integer 205 --- @field last_set_chan integer 206 --- @field type 'string'|'boolean'|'number' 207 --- @field default string|boolean|integer 208 --- @field allows_duplicates boolean 209 210 --- @class vim.api.keyset.cmd.mods 211 --- @field filter? { force: boolean, pattern: string } 212 --- @field silent? boolean 213 --- @field emsg_silent? boolean 214 --- @field unsilent? boolean 215 --- @field sandbox? boolean 216 --- @field noautocmd? boolean 217 --- @field tab? integer 218 --- @field verbose? integer 219 --- @field browse? boolean 220 --- @field confirm? boolean 221 --- @field hide? boolean 222 --- @field keepalt? boolean 223 --- @field keepjumps? boolean 224 --- @field keepmarks? boolean 225 --- @field keeppatterns? boolean 226 --- @field lockmarks? boolean 227 --- @field noswapfile? boolean 228 --- @field vertical? boolean 229 --- @field horizontal? boolean 230 --- @field split? ''|'botright'|'topleft'|'belowright'|'aboveleft' 231 232 --- @class vim.api.keyset.cmd.magic 233 --- @field bar boolean 234 --- @field file boolean 235 236 --- @class vim.api.keyset.eval_statusline_ret.highlight 237 --- @field start integer 238 --- @field group string 239 --- @field groups string[] 240 241 --- @class vim.api.keyset.eval_statusline_ret 242 --- @field str string 243 --- @field width integer 244 --- @field highlights vim.api.keyset.eval_statusline_ret.highlight[] 245 246 --- @class vim.api.keyset.win_text_height_ret 247 --- @field all integer 248 --- @field fill integer 249 --- @field end_row integer 250 --- @field end_vcol integer 251 252 -- Inherit from vim.api.keyset.win_config so this type can be passed to nvim_open_win(). 253 -- Because of this we only need to define the fields with different types (nil or non-nil). 254 255 --- @class vim.api.keyset.win_config_ret : vim.api.keyset.win_config 256 --- @field focusable boolean 257 --- @field external boolean 258 --- @field hide boolean 259 --- @field mouse boolean 260 --- @field width integer 261 --- @field height integer 262 --- @field relative 'cursor'|'editor'|'laststatus'|'mouse'|'tabline'|'win' 263 --- 264 --- @field noautocmd nil 265 --- @field title nil 266 --- @field title_pos nil 267 --- @field footer nil 268 --- @field footer_pos nil 269 --- @field style nil 270 --- @field fixed nil 271 --- @field vertical nil