neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

ui_events.in.h (8003B)


      1 #pragma once
      2 
      3 // This file is not compiled, just parsed for definitions
      4 #error "don't include this file, include nvim/ui.h"
      5 
      6 #include "nvim/api/private/defs.h"
      7 #include "nvim/func_attr.h"
      8 #include "nvim/ui.h"
      9 
     10 void mode_info_set(Boolean enabled, Array cursor_styles)
     11  FUNC_API_SINCE(3);
     12 void update_menu(void)
     13  FUNC_API_SINCE(3);
     14 void busy_start(void)
     15  FUNC_API_SINCE(3);
     16 void busy_stop(void)
     17  FUNC_API_SINCE(3);
     18 void mouse_on(void)
     19  FUNC_API_SINCE(3);
     20 void mouse_off(void)
     21  FUNC_API_SINCE(3);
     22 void mode_change(String mode, Integer mode_idx)
     23  FUNC_API_SINCE(3);
     24 void bell(void)
     25  FUNC_API_SINCE(3);
     26 void visual_bell(void)
     27  FUNC_API_SINCE(3);
     28 void flush(void)
     29  FUNC_API_SINCE(3) FUNC_API_REMOTE_IMPL;
     30 void connect(Array args)
     31  FUNC_API_SINCE(14) FUNC_API_REMOTE_ONLY FUNC_API_REMOTE_IMPL FUNC_API_CLIENT_IMPL;
     32 void restart(String progpath, Array argv)
     33  FUNC_API_SINCE(14) FUNC_API_REMOTE_ONLY FUNC_API_REMOTE_IMPL FUNC_API_CLIENT_IMPL;
     34 void suspend(void)
     35  FUNC_API_SINCE(3);
     36 void set_title(String title)
     37  FUNC_API_SINCE(3);
     38 void set_icon(String icon)
     39  FUNC_API_SINCE(3);
     40 void screenshot(String path)
     41  FUNC_API_SINCE(7);
     42 void option_set(String name, Object value)
     43  FUNC_API_SINCE(4);
     44 void chdir(String path)
     45  FUNC_API_SINCE(12);
     46 // Stop event is not exported as such, represented by EOF in the msgpack stream.
     47 void stop(void)
     48  FUNC_API_NOEXPORT;
     49 void ui_send(String content)
     50  FUNC_API_SINCE(14) FUNC_API_REMOTE_IMPL;
     51 
     52 // First revision of the grid protocol, used by default
     53 void update_fg(Integer fg)
     54  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     55 void update_bg(Integer bg)
     56  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     57 void update_sp(Integer sp)
     58  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     59 void resize(Integer width, Integer height)
     60  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     61 void clear(void)
     62  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     63 void eol_clear(void)
     64  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     65 void cursor_goto(Integer row, Integer col)
     66  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     67 void highlight_set(HlAttrs attrs)
     68  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY FUNC_API_REMOTE_IMPL;
     69 void put(String str)
     70  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     71 void set_scroll_region(Integer top, Integer bot, Integer left, Integer right)
     72  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     73 void scroll(Integer count)
     74  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
     75 
     76 // Second revision of the grid protocol, used with ext_linegrid ui option
     77 void default_colors_set(Integer rgb_fg, Integer rgb_bg, Integer rgb_sp, Integer cterm_fg,
     78                        Integer cterm_bg)
     79  FUNC_API_SINCE(4) FUNC_API_REMOTE_IMPL;
     80 void hl_attr_define(Integer id, HlAttrs rgb_attrs, HlAttrs cterm_attrs, Array info)
     81  FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL;
     82 void hl_group_set(String name, Integer id)
     83  FUNC_API_SINCE(6) FUNC_API_CLIENT_IGNORE;
     84 void grid_resize(Integer grid, Integer width, Integer height)
     85  FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL FUNC_API_COMPOSITOR_IMPL FUNC_API_CLIENT_IMPL;
     86 void grid_clear(Integer grid)
     87  FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL;
     88 void grid_cursor_goto(Integer grid, Integer row, Integer col)
     89  FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL FUNC_API_COMPOSITOR_IMPL;
     90 void grid_line(Integer grid, Integer row, Integer col_start, Array data, Boolean wrap)
     91  FUNC_API_SINCE(5) FUNC_API_REMOTE_ONLY FUNC_API_CLIENT_IMPL;
     92 void grid_scroll(Integer grid, Integer top, Integer bot, Integer left, Integer right, Integer rows,
     93                 Integer cols)
     94  FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL FUNC_API_COMPOSITOR_IMPL;
     95 void grid_destroy(Integer grid)
     96  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
     97 
     98 // For performance and simplicity, we use the dense screen representation
     99 // in internal code, such as compositor and TUI. The remote_ui module will
    100 // translate this in to the public grid_line format.
    101 void raw_line(Integer grid, Integer row, Integer startcol, Integer endcol, Integer clearcol,
    102              Integer clearattr, LineFlags flags, const schar_T *chunk, const sattr_T *attrs)
    103  FUNC_API_NOEXPORT FUNC_API_COMPOSITOR_IMPL;
    104 
    105 void win_pos(Integer grid, Window win, Integer startrow, Integer startcol, Integer width,
    106             Integer height)
    107  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    108 void win_float_pos(Integer grid, Window win, String anchor, Integer anchor_grid, Float anchor_row,
    109                   Float anchor_col, Boolean mouse_enabled, Integer zindex, Integer compindex,
    110                   Integer screen_row, Integer screen_col)
    111  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    112 void win_external_pos(Integer grid, Window win)
    113  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    114 void win_hide(Integer grid)
    115  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    116 void win_close(Integer grid)
    117  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    118 
    119 void msg_set_pos(Integer grid, Integer row, Boolean scrolled, String sep_char, Integer zindex,
    120                 Integer compindex)
    121  FUNC_API_SINCE(6) FUNC_API_COMPOSITOR_IMPL FUNC_API_CLIENT_IGNORE;
    122 
    123 void win_viewport(Integer grid, Window win, Integer topline, Integer botline, Integer curline,
    124                  Integer curcol, Integer line_count, Integer scroll_delta)
    125  FUNC_API_SINCE(7) FUNC_API_CLIENT_IGNORE;
    126 
    127 void win_viewport_margins(Integer grid, Window win, Integer top, Integer bottom, Integer left,
    128                          Integer right)
    129  FUNC_API_SINCE(12) FUNC_API_CLIENT_IGNORE;
    130 
    131 void win_extmark(Integer grid, Window win, Integer ns_id, Integer mark_id, Integer row, Integer col)
    132  FUNC_API_SINCE(10) FUNC_API_REMOTE_ONLY;
    133 
    134 void popupmenu_show(Array items, Integer selected, Integer row, Integer col, Integer grid)
    135  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    136 void popupmenu_hide(void)
    137  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    138 void popupmenu_select(Integer selected)
    139  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    140 
    141 void tabline_update(Tabpage current, Array tabs, Buffer current_buffer, Array buffers)
    142  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    143 
    144 void cmdline_show(Array content, Integer pos, String firstc, String prompt, Integer indent,
    145                  Integer level, Integer hl_id)
    146  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    147 void cmdline_pos(Integer pos, Integer level)
    148  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    149 void cmdline_special_char(String c, Boolean shift, Integer level)
    150  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    151 void cmdline_hide(Integer level, Boolean abort)
    152  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    153 void cmdline_block_show(Array lines)
    154  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    155 void cmdline_block_append(Array lines)
    156  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    157 void cmdline_block_hide(void)
    158  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    159 
    160 void wildmenu_show(Array items)
    161  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    162 void wildmenu_select(Integer selected)
    163  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    164 void wildmenu_hide(void)
    165  FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY;
    166 
    167 void msg_show(String kind, Array content, Boolean replace_last, Boolean history, Boolean append,
    168              Object id)
    169  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    170 void msg_clear(void)
    171  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    172 void msg_showcmd(Array content)
    173  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    174 void msg_showmode(Array content)
    175  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    176 void msg_ruler(Array content)
    177  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    178 void msg_history_show(Array entries, Boolean prev_cmd)
    179  FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY;
    180 
    181 // This UI event is currently undocumented.
    182 // - When the server needs to intentionally exit with an exit code, and there is no
    183 //   message in server stderr for the user, this event is sent with positive `status`
    184 //   argument, to indicate that the UI should exit normally with `status`.
    185 // - When the server has crashed or there is a message in server stderr for the user,
    186 //   this event is not sent, and the UI should make server stderr visible.
    187 // - When :detach is used on the server, this event is sent with a zero `status`
    188 //   argument, to indicate that the UI shouldn't wait for server exit.
    189 void error_exit(Integer status)
    190  FUNC_API_SINCE(12) FUNC_API_CLIENT_IMPL;