neovim

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

popupmenu.h (964B)


      1 #pragma once
      2 
      3 #include <stdbool.h>
      4 
      5 #include "nvim/buffer_defs.h"
      6 #include "nvim/eval/typval_defs.h"  // IWYU pragma: keep
      7 #include "nvim/grid_defs.h"
      8 #include "nvim/macros_defs.h"
      9 #include "nvim/menu_defs.h"  // IWYU pragma: keep
     10 #include "nvim/types_defs.h"  // IWYU pragma: keep
     11 
     12 /// Used for popup menu items.
     13 typedef struct {
     14  char *pum_text;       ///< main menu text
     15  char *pum_kind;       ///< extra kind text (may be truncated)
     16  char *pum_extra;      ///< extra menu text (may be truncated)
     17  char *pum_info;       ///< extra info
     18  int pum_cpt_source_idx;    ///< index of completion source in 'cpt'
     19  int pum_user_abbr_hlattr;  ///< highlight attribute for abbr
     20  int pum_user_kind_hlattr;  ///< highlight attribute for kind
     21 } pumitem_T;
     22 
     23 EXTERN ScreenGrid pum_grid INIT( = SCREEN_GRID_INIT);
     24 
     25 /// state for pum_ext_select_item.
     26 EXTERN struct {
     27  bool active;
     28  int item;
     29  bool insert;
     30  bool finish;
     31 } pum_want;
     32 
     33 #include "popupmenu.h.generated.h"