summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-07-04 16:05:14 +0200
committerBram Moolenaar <Bram@vim.org>2019-07-04 16:05:14 +0200
commit6cb39f924a10912a615573230e906e8089975198 (patch)
treebe922586727211913970ab06a348240bff2ea6ba
parent5ca1ac373ae62b37152cb6f85916b402eda520a5 (diff)
downloadvim-git-8.1.1627.tar.gz
patch 8.1.1627: header file contains mixed comment stylev8.1.1627
Problem: Header file contains mixed comment style. Solution: Use // style comments.
-rw-r--r--src/structs.h2429
-rw-r--r--src/version.c2
2 files changed, 1220 insertions, 1211 deletions
diff --git a/src/structs.h b/src/structs.h
index c3d75bdde..7fb8f22aa 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -47,11 +47,11 @@ typedef struct
*/
typedef struct growarray
{
- int ga_len; /* current number of items used */
- int ga_maxlen; /* maximum number of items possible */
- int ga_itemsize; /* sizeof(item) */
- int ga_growsize; /* number of items to grow each time */
- void *ga_data; /* pointer to the first item */
+ int ga_len; // current number of items used
+ int ga_maxlen; // maximum number of items possible
+ int ga_itemsize; // sizeof(item)
+ int ga_growsize; // number of items to grow each time
+ void *ga_data; // pointer to the first item
} garray_T;
#define GA_EMPTY {0, 0, 0, 0, NULL}
@@ -59,8 +59,8 @@ typedef struct growarray
typedef struct window_S win_T;
typedef struct wininfo_S wininfo_T;
typedef struct frame_S frame_T;
-typedef int scid_T; /* script ID */
-typedef struct file_buffer buf_T; /* forward declaration */
+typedef int scid_T; // script ID
+typedef struct file_buffer buf_T; // forward declaration
typedef struct terminal_S term_T;
#ifdef FEAT_MENU
@@ -109,7 +109,7 @@ typedef struct {
# endif
# define guicolor_T long
# define INVALCOLOR ((guicolor_T)0x1ffffff)
- /* only used for cterm.bg_rgb and cterm.fg_rgb: use cterm color */
+ // only used for cterm.bg_rgb and cterm.fg_rgb: use cterm color
# define CTERMCOLOR ((guicolor_T)0x1fffffe)
#endif
#define COLOR_INVALID(x) ((x) == INVALCOLOR || (x) == CTERMCOLOR)
@@ -119,24 +119,24 @@ typedef struct {
* (a normal mark is a lnum/col pair, the same as a file position)
*/
-/* (Note: for EBCDIC there are more than 26, because there are gaps in the
- * alphabet coding. To minimize changes to the code, I decided to just
- * increase the number of possible marks. */
-#define NMARKS ('z' - 'a' + 1) /* max. # of named marks */
-#define JUMPLISTSIZE 100 /* max. # of marks in jump list */
-#define TAGSTACKSIZE 20 /* max. # of tags in tag stack */
+// (Note: for EBCDIC there are more than 26, because there are gaps in the
+// alphabet coding. To minimize changes to the code, I decided to just
+// increase the number of possible marks.
+#define NMARKS ('z' - 'a' + 1) // max. # of named marks
+#define JUMPLISTSIZE 100 // max. # of marks in jump list
+#define TAGSTACKSIZE 20 // max. # of tags in tag stack
typedef struct filemark
{
- pos_T mark; /* cursor position */
- int fnum; /* file number */
+ pos_T mark; // cursor position
+ int fnum; // file number
} fmark_T;
-/* Xtended file mark: also has a file name */
+// Xtended file mark: also has a file name
typedef struct xfilemark
{
fmark_T fmark;
- char_u *fname; /* file name, used when fnum == 0 */
+ char_u *fname; // file name, used when fnum == 0
#ifdef FEAT_VIMINFO
time_T time_set;
#endif
@@ -179,117 +179,117 @@ typedef struct
#endif
#ifdef FEAT_FOLDING
long wo_fdc;
-# define w_p_fdc w_onebuf_opt.wo_fdc /* 'foldcolumn' */
+# define w_p_fdc w_onebuf_opt.wo_fdc // 'foldcolumn'
int wo_fdc_save;
-# define w_p_fdc_save w_onebuf_opt.wo_fdc_save /* 'foldenable' saved for diff mode */
+# define w_p_fdc_save w_onebuf_opt.wo_fdc_save // 'foldenable' saved for diff mode
int wo_fen;
-# define w_p_fen w_onebuf_opt.wo_fen /* 'foldenable' */
+# define w_p_fen w_onebuf_opt.wo_fen // 'foldenable'
int wo_fen_save;
-# define w_p_fen_save w_onebuf_opt.wo_fen_save /* 'foldenable' saved for diff mode */
+# define w_p_fen_save w_onebuf_opt.wo_fen_save // 'foldenable' saved for diff mode
char_u *wo_fdi;
-# define w_p_fdi w_onebuf_opt.wo_fdi /* 'foldignore' */
+# define w_p_fdi w_onebuf_opt.wo_fdi // 'foldignore'
long wo_fdl;
-# define w_p_fdl w_onebuf_opt.wo_fdl /* 'foldlevel' */
+# define w_p_fdl w_onebuf_opt.wo_fdl // 'foldlevel'
int wo_fdl_save;
-# define w_p_fdl_save w_onebuf_opt.wo_fdl_save /* 'foldlevel' state saved for diff mode */
+# define w_p_fdl_save w_onebuf_opt.wo_fdl_save // 'foldlevel' state saved for diff mode
char_u *wo_fdm;
-# define w_p_fdm w_onebuf_opt.wo_fdm /* 'foldmethod' */
+# define w_p_fdm w_onebuf_opt.wo_fdm // 'foldmethod'
char_u *wo_fdm_save;
-# define w_p_fdm_save w_onebuf_opt.wo_fdm_save /* 'fdm' saved for diff mode */
+# define w_p_fdm_save w_onebuf_opt.wo_fdm_save // 'fdm' saved for diff mode
long wo_fml;
-# define w_p_fml w_onebuf_opt.wo_fml /* 'foldminlines' */
+# define w_p_fml w_onebuf_opt.wo_fml // 'foldminlines'
long wo_fdn;
-# define w_p_fdn w_onebuf_opt.wo_fdn /* 'foldnestmax' */
+# define w_p_fdn w_onebuf_opt.wo_fdn // 'foldnestmax'
# ifdef FEAT_EVAL
char_u *wo_fde;
-# define w_p_fde w_onebuf_opt.wo_fde /* 'foldexpr' */
+# define w_p_fde w_onebuf_opt.wo_fde // 'foldexpr'
char_u *wo_fdt;
-# define w_p_fdt w_onebuf_opt.wo_fdt /* 'foldtext' */
+# define w_p_fdt w_onebuf_opt.wo_fdt // 'foldtext'
# endif
char_u *wo_fmr;
-# define w_p_fmr w_onebuf_opt.wo_fmr /* 'foldmarker' */
+# define w_p_fmr w_onebuf_opt.wo_fmr // 'foldmarker'
#endif
#ifdef FEAT_LINEBREAK
int wo_lbr;
-# define w_p_lbr w_onebuf_opt.wo_lbr /* 'linebreak' */
+# define w_p_lbr w_onebuf_opt.wo_lbr // 'linebreak'
#endif
int wo_list;
-#define w_p_list w_onebuf_opt.wo_list /* 'list' */
+#define w_p_list w_onebuf_opt.wo_list // 'list'
int wo_nu;
-#define w_p_nu w_onebuf_opt.wo_nu /* 'number' */
+#define w_p_nu w_onebuf_opt.wo_nu // 'number'
int wo_rnu;
-#define w_p_rnu w_onebuf_opt.wo_rnu /* 'relativenumber' */
+#define w_p_rnu w_onebuf_opt.wo_rnu // 'relativenumber'
#ifdef FEAT_LINEBREAK
long wo_nuw;
-# define w_p_nuw w_onebuf_opt.wo_nuw /* 'numberwidth' */
+# define w_p_nuw w_onebuf_opt.wo_nuw // 'numberwidth'
#endif
int wo_wfh;
-# define w_p_wfh w_onebuf_opt.wo_wfh /* 'winfixheight' */
+# define w_p_wfh w_onebuf_opt.wo_wfh // 'winfixheight'
int wo_wfw;
-# define w_p_wfw w_onebuf_opt.wo_wfw /* 'winfixwidth' */
+# define w_p_wfw w_onebuf_opt.wo_wfw // 'winfixwidth'
#if defined(FEAT_QUICKFIX)
int wo_pvw;
-# define w_p_pvw w_onebuf_opt.wo_pvw /* 'previewwindow' */
+# define w_p_pvw w_onebuf_opt.wo_pvw // 'previewwindow'
#endif
#ifdef FEAT_RIGHTLEFT
int wo_rl;
-# define w_p_rl w_onebuf_opt.wo_rl /* 'rightleft' */
+# define w_p_rl w_onebuf_opt.wo_rl // 'rightleft'
char_u *wo_rlc;
-# define w_p_rlc w_onebuf_opt.wo_rlc /* 'rightleftcmd' */
+# define w_p_rlc w_onebuf_opt.wo_rlc // 'rightleftcmd'
#endif
long wo_scr;
-#define w_p_scr w_onebuf_opt.wo_scr /* 'scroll' */
+#define w_p_scr w_onebuf_opt.wo_scr // 'scroll'
#ifdef FEAT_SPELL
int wo_spell;
-# define w_p_spell w_onebuf_opt.wo_spell /* 'spell' */
+# define w_p_spell w_onebuf_opt.wo_spell // 'spell'
#endif
#ifdef FEAT_SYN_HL
int wo_cuc;
-# define w_p_cuc w_onebuf_opt.wo_cuc /* 'cursorcolumn' */
+# define w_p_cuc w_onebuf_opt.wo_cuc // 'cursorcolumn'
int wo_cul;
-# define w_p_cul w_onebuf_opt.wo_cul /* 'cursorline' */
+# define w_p_cul w_onebuf_opt.wo_cul // 'cursorline'
char_u *wo_cc;
-# define w_p_cc w_onebuf_opt.wo_cc /* 'colorcolumn' */
+# define w_p_cc w_onebuf_opt.wo_cc // 'colorcolumn'
#endif
#ifdef FEAT_STL_OPT
char_u *wo_stl;
-#define w_p_stl w_onebuf_opt.wo_stl /* 'statusline' */
+#define w_p_stl w_onebuf_opt.wo_stl // 'statusline'
#endif
int wo_scb;
-#define w_p_scb w_onebuf_opt.wo_scb /* 'scrollbind' */
- int wo_diff_saved; /* options were saved for starting diff mode */
+#define w_p_scb w_onebuf_opt.wo_scb // 'scrollbind'
+ int wo_diff_saved; // options were saved for starting diff mode
#define w_p_diff_saved w_onebuf_opt.wo_diff_saved
- int wo_scb_save; /* 'scrollbind' saved for diff mode*/
+ int wo_scb_save; // 'scrollbind' saved for diff mode
#define w_p_scb_save w_onebuf_opt.wo_scb_save
int wo_wrap;
-#define w_p_wrap w_onebuf_opt.wo_wrap /* 'wrap' */
+#define w_p_wrap w_onebuf_opt.wo_wrap // 'wrap'
#ifdef FEAT_DIFF
- int wo_wrap_save; /* 'wrap' state saved for diff mode*/
+ int wo_wrap_save; // 'wrap' state saved for diff mode
# define w_p_wrap_save w_onebuf_opt.wo_wrap_save
#endif
#ifdef FEAT_CONCEAL
- char_u *wo_cocu; /* 'concealcursor' */
+ char_u *wo_cocu; // 'concealcursor'
# define w_p_cocu w_onebuf_opt.wo_cocu
- long wo_cole; /* 'conceallevel' */
+ long wo_cole; // 'conceallevel'
# define w_p_cole w_onebuf_opt.wo_cole
#endif
int wo_crb;
-#define w_p_crb w_onebuf_opt.wo_crb /* 'cursorbind' */
- int wo_crb_save; /* 'cursorbind' state saved for diff mode*/
+#define w_p_crb w_onebuf_opt.wo_crb // 'cursorbind'
+ int wo_crb_save; // 'cursorbind' state saved for diff mode
#define w_p_crb_save w_onebuf_opt.wo_crb_save
#ifdef FEAT_SIGNS
char_u *wo_scl;
-# define w_p_scl w_onebuf_opt.wo_scl /* 'signcolumn' */
+# define w_p_scl w_onebuf_opt.wo_scl // 'signcolumn'
#endif
#ifdef FEAT_TERMINAL
char_u *wo_twk;
-# define w_p_twk w_onebuf_opt.wo_twk /* 'termwinkey' */
+# define w_p_twk w_onebuf_opt.wo_twk // 'termwinkey'
char_u *wo_tws;
-# define w_p_tws w_onebuf_opt.wo_tws /* 'termwinsize' */
+# define w_p_tws w_onebuf_opt.wo_tws // 'termwinsize'
#endif
#ifdef FEAT_EVAL
- sctx_T wo_script_ctx[WV_COUNT]; /* SCTXs for window-local options */
+ sctx_T wo_script_ctx[WV_COUNT]; // SCTXs for window-local options
# define w_p_script_ctx w_onebuf_opt.wo_script_ctx
#endif
} winopt_T;
@@ -306,15 +306,15 @@ typedef struct
*/
struct wininfo_S
{
- wininfo_T *wi_next; /* next entry or NULL for last entry */
- wininfo_T *wi_prev; /* previous entry or NULL for first entry */
- win_T *wi_win; /* pointer to window that did set wi_fpos */
- pos_T wi_fpos; /* last cursor position in the file */
- int wi_optset; /* TRUE when wi_opt has useful values */
- winopt_T wi_opt; /* local window options */
+ wininfo_T *wi_next; // next entry or NULL for last entry
+ wininfo_T *wi_prev; // previous entry or NULL for first entry
+ win_T *wi_win; // pointer to window that did set wi_fpos
+ pos_T wi_fpos; // last cursor position in the file
+ int wi_optset; // TRUE when wi_opt has useful values
+ winopt_T wi_opt; // local window options
#ifdef FEAT_FOLDING
- int wi_fold_manual; /* copy of w_fold_manual */
- garray_T wi_folds; /* clone of w_folds */
+ int wi_fold_manual; // copy of w_fold_manual
+ garray_T wi_folds; // clone of w_folds
#endif
};
@@ -324,20 +324,22 @@ struct wininfo_S
*/
typedef struct foldinfo
{
- int fi_level; /* level of the fold; when this is zero the
- other fields are invalid */
- int fi_lnum; /* line number where fold starts */
- int fi_low_level; /* lowest fold level that starts in the same
- line */
+ int fi_level; // level of the fold; when this is zero the
+ // other fields are invalid
+ int fi_lnum; // line number where fold starts
+ int fi_low_level; // lowest fold level that starts in the same
+ // line
} foldinfo_T;
-/* Structure to store info about the Visual area. */
+/*
+ * Structure to store info about the Visual area.
+ */
typedef struct
{
- pos_T vi_start; /* start pos of last VIsual */
- pos_T vi_end; /* end position of last VIsual */
- int vi_mode; /* VIsual_mode of last VIsual */
- colnr_T vi_curswant; /* MAXCOL from w_curswant */
+ pos_T vi_start; // start pos of last VIsual
+ pos_T vi_end; // end position of last VIsual
+ int vi_mode; // VIsual_mode of last VIsual
+ colnr_T vi_curswant; // MAXCOL from w_curswant
} visualinfo_T;
/*
@@ -356,62 +358,62 @@ typedef struct u_entry u_entry_T;
typedef struct u_header u_header_T;
struct u_entry
{
- u_entry_T *ue_next; /* pointer to next entry in list */
- linenr_T ue_top; /* number of line above undo block */
- linenr_T ue_bot; /* number of line below undo block */
- linenr_T ue_lcount; /* linecount when u_save called */
- undoline_T *ue_array; /* array of lines in undo block */
- long ue_size; /* number of lines in ue_array */
+ u_entry_T *ue_next; // pointer to next entry in list
+ linenr_T ue_top; // number of line above undo block
+ linenr_T ue_bot; // number of line below undo block
+ linenr_T ue_lcount; // linecount when u_save called
+ undoline_T *ue_array; // array of lines in undo block
+ long ue_size; // number of lines in ue_array
#ifdef U_DEBUG
- int ue_magic; /* magic number to check allocation */
+ int ue_magic; // magic number to check allocation
#endif
};
struct u_header
{
- /* The following have a pointer and a number. The number is used when
- * reading the undo file in u_read_undo() */
+ // The following have a pointer and a number. The number is used when
+ // reading the undo file in u_read_undo()
union {
- u_header_T *ptr; /* pointer to next undo header in list */
+ u_header_T *ptr; // pointer to next undo header in list
long seq;
} uh_next;
union {
- u_header_T *ptr; /* pointer to previous header in list */
+ u_header_T *ptr; // pointer to previous header in list
long seq;
} uh_prev;
union {
- u_header_T *ptr; /* pointer to next header for alt. redo */
+ u_header_T *ptr; // pointer to next header for alt. redo
long seq;
} uh_alt_next;
union {
- u_header_T *ptr; /* pointer to previous header for alt. redo */
+ u_header_T *ptr; // pointer to previous header for alt. redo
long seq;
} uh_alt_prev;
- long uh_seq; /* sequence number, higher == newer undo */
- int uh_walk; /* used by undo_time() */
- u_entry_T *uh_entry; /* pointer to first entry */
- u_entry_T *uh_getbot_entry; /* pointer to where ue_bot must be set */
- pos_T uh_cursor; /* cursor position before saving */
+ long uh_seq; // sequence number, higher == newer undo
+ int uh_walk; // used by undo_time()
+ u_entry_T *uh_entry; // pointer to first entry
+ u_entry_T *uh_getbot_entry; // pointer to where ue_bot must be set
+ pos_T uh_cursor; // cursor position before saving
long uh_cursor_vcol;
- int uh_flags; /* see below */
- pos_T uh_namedm[NMARKS]; /* marks before undo/after redo */
- visualinfo_T uh_visual; /* Visual areas before undo/after redo */
- time_T uh_time; /* timestamp when the change was made */
- long uh_save_nr; /* set when the file was saved after the
- changes in this block */
+ int uh_flags; // see below
+ pos_T uh_namedm[NMARKS]; // marks before undo/after redo
+ visualinfo_T uh_visual; // Visual areas before undo/after redo
+ time_T uh_time; // timestamp when the change was made
+ long uh_save_nr; // set when the file was saved after the
+ // changes in this block
#ifdef U_DEBUG
- int uh_magic; /* magic number to check allocation */
+ int uh_magic; // magic number to check allocation
#endif
};
-/* values for uh_flags */
-#define UH_CHANGED 0x01 /* b_changed flag before undo/after redo */
-#define UH_EMPTYBUF 0x02 /* buffer was empty */
+// values for uh_flags
+#define UH_CHANGED 0x01 // b_changed flag before undo/after redo
+#define UH_EMPTYBUF 0x02 // buffer was empty
/*
* structures used in undo.c
*/
-#define ALIGN_LONG /* longword alignment and use filler byte */
+#define ALIGN_LONG // longword alignment and use filler byte
#define ALIGN_SIZE (sizeof(long))
#define ALIGN_MASK (ALIGN_SIZE - 1)
@@ -424,11 +426,11 @@ typedef struct m_info minfo_T;
struct m_info
{
#ifdef ALIGN_LONG
- long_u m_size; /* size of the chunk (including m_info) */
+ long_u m_size; // size of the chunk (including m_info)
#else
- short_u m_size; /* size of the chunk (including m_info) */
+ short_u m_size; // size of the chunk (including m_info)
#endif
- minfo_T *m_next; /* pointer to next free chunk in the list */
+ minfo_T *m_next; // pointer to next free chunk in the list
};
/*
@@ -459,13 +461,13 @@ struct mf_hashitem_S
typedef struct mf_hashtab_S
{
- long_u mht_mask; /* mask used for hash value (nr of items
- * in array is "mht_mask" + 1) */
- long_u mht_count; /* nr of items inserted into hashtable */
- mf_hashitem_T **mht_buckets; /* points to mht_small_buckets or
- *dynamically allocated array */
- mf_hashitem_T *mht_small_buckets[MHT_INIT_SIZE]; /* initial buckets */
- char mht_fixed; /* non-zero value forbids growth */
+ long_u mht_mask; // mask used for hash value (nr of items
+ // in array is "mht_mask" + 1)
+ long_u mht_count; // nr of items inserted into hashtable
+ mf_hashitem_T **mht_buckets; // points to mht_small_buckets or
+ //dynamically allocated array
+ mf_hashitem_T *mht_small_buckets[MHT_INIT_SIZE]; // initial buckets
+ char mht_fixed; // non-zero value forbids growth
} mf_hashtab_T;
/*
@@ -485,17 +487,17 @@ typedef struct mf_hashtab_S
struct block_hdr
{
- mf_hashitem_T bh_hashitem; /* header for hash table and key */
-#define bh_bnum bh_hashitem.mhi_key /* block number, part of bh_hashitem */
+ mf_hashitem_T bh_hashitem; // header for hash table and key
+#define bh_bnum bh_hashitem.mhi_key // block number, part of bh_hashitem
- bhdr_T *bh_next; /* next block_hdr in free or used list */
- bhdr_T *bh_prev; /* previous block_hdr in used list */
- char_u *bh_data; /* pointer to memory (for used block) */
- int bh_page_count; /* number of pages in this block */
+ bhdr_T *bh_next; // next block_hdr in free or used list
+ bhdr_T *bh_prev; // previous block_hdr in used list
+ char_u *bh_data; // pointer to memory (for used block)
+ int bh_page_count; // number of pages in this block
#define BH_DIRTY 1
#define BH_LOCKED 2
- char bh_flags; /* BH_DIRTY or BH_LOCKED */
+ char bh_flags; // BH_DIRTY or BH_LOCKED
};
/*
@@ -508,10 +510,10 @@ typedef struct nr_trans NR_TRANS;
struct nr_trans
{
- mf_hashitem_T nt_hashitem; /* header for hash table and key */
-#define nt_old_bnum nt_hashitem.mhi_key /* old, negative, number */
+ mf_hashitem_T nt_hashitem; // header for hash table and key
+#define nt_old_bnum nt_hashitem.mhi_key // old, negative, number
- blocknr_T nt_new_bnum; /* new, positive, number */
+ blocknr_T nt_new_bnum; // new, positive, number
};
@@ -523,8 +525,8 @@ typedef struct buffheader buffheader_T;
*/
struct buffblock
{
- buffblock_T *b_next; /* pointer to next buffblock */
- char_u b_str[1]; /* contents (actually longer) */
+ buffblock_T *b_next; // pointer to next buffblock
+ char_u b_str[1]; // contents (actually longer)
};
/*
@@ -532,10 +534,10 @@ struct buffblock
*/
struct buffheader
{
- buffblock_T bh_first; /* first (dummy) block of list */
- buffblock_T *bh_curr; /* buffblock for appending */
- int bh_index; /* index for reading */
- int bh_space; /* space in bh_curr for appending */
+ buffblock_T bh_first; // first (dummy) block of list
+ buffblock_T *bh_curr; // buffblock for appending
+ int bh_index; // index for reading
+ int bh_space; // space in bh_curr for appending
};
typedef struct
@@ -549,29 +551,31 @@ typedef struct
*/
typedef struct expand
{
- int xp_context; /* type of expansion */
- char_u *xp_pattern; /* start of item to expand */
- int xp_pattern_len; /* bytes in xp_pattern before cursor */
+ int xp_context; // type of expansion
+ char_u *xp_pattern; // start of item to expand
+ int xp_pattern_len; // bytes in xp_pattern before cursor
#if defined(FEAT_EVAL) && defined(FEAT_CMDL_COMPL)
- char_u *xp_arg; /* completion function */
- sctx_T xp_script_ctx; /* SCTX for completion function */
+ char_u *xp_arg; // completion function
+ sctx_T xp_script_ctx; // SCTX for completion function
#endif
- int xp_backslash; /* one of the XP_BS_ values */
+ int xp_backslash; // one of the XP_BS_ values
#ifndef BACKSLASH_IN_FILENAME
- int xp_shell; /* TRUE for a shell command, more
- characters need to be escaped */
-#endif
- int xp_numfiles; /* number of files found by
- file name completion */
- char_u **xp_files; /* list of files */
- char_u *xp_line; /* text being completed */
- int xp_col; /* cursor position in line */
+ int xp_shell; // TRUE for a shell command, more
+ // characters need to be escaped
+#endif
+ int xp_numfiles; // number of files found by
+ // file name completion
+ char_u **xp_files; // list of files
+ char_u *xp_line; // text being completed
+ int xp_col; // cursor position in line
} expand_T;
-/* values for xp_backslash */
-#define XP_BS_NONE 0 /* nothing special for backslashes */
-#define XP_BS_ONE 1 /* uses one backslash before a space */
-#define XP_BS_THREE 2 /* uses three backslashes before a space */
+/*
+ * values for xp_backslash
+ */
+#define XP_BS_NONE 0 // nothing special for backslashes
+#define XP_BS_ONE 1 // uses one backslash before a space
+#define XP_BS_THREE 2 // uses three backslashes before a space
/*
* Command modifiers ":vertical", ":browse", ":confirm" and ":hide" set a flag.
@@ -580,24 +584,24 @@ typedef struct expand
*/
typedef struct
{
- int hide; /* TRUE when ":hide" was used */
+ int hide; // TRUE when ":hide" was used
# ifdef FEAT_BROWSE_CMD
- int browse; /* TRUE to invoke file dialog */
+ int browse; // TRUE to invoke file dialog
# endif
- int split; /* flags for win_split() */
- int tab; /* > 0 when ":tab" was used */
+ int split; // flags for win_split()
+ int tab; // > 0 when ":tab" was used
# if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
- int confirm; /* TRUE to invoke yes/no dialog */
+ int confirm; // TRUE to invoke yes/no dialog
# endif
- int keepalt; /* TRUE when ":keepalt" was used */
- int keepmarks; /* TRUE when ":keepmarks" was used */
- int keepjumps; /* TRUE when ":keepjumps" was used */
- int lockmarks; /* TRUE when ":lockmarks" was used */
- int keeppatterns; /* TRUE when ":keeppatterns" was used */
- int noswapfile; /* TRUE when ":noswapfile" was used */
- char_u *save_ei; /* saved value of 'eventignore' */
- regmatch_T filter_regmatch; /* set by :filter /pat/ */
- int filter_force; /* set for :filter! */
+ int keepalt; // TRUE when ":keepalt" was used
+ int keepmarks; // TRUE when ":keepmarks" was used
+ int keepjumps; // TRUE when ":keepjumps" was used
+ int lockmarks; // TRUE when ":lockmarks" was used
+ int keeppatterns; // TRUE when ":keeppatterns" was used
+ int noswapfile; // TRUE when ":noswapfile" was used
+ char_u *save_ei; // saved value of 'eventignore'
+ regmatch_T filter_regmatch; // set by :filter /pat/
+ int filter_force; // set for :filter!
} cmdmod_T;
#define MF_SEED_LEN 8
@@ -644,11 +648,11 @@ struct memfile
*/
typedef struct info_pointer
{
- blocknr_T ip_bnum; /* block number */
- linenr_T ip_low; /* lowest lnum in this block */
- linenr_T ip_high; /* highest lnum in this block */
- int ip_index; /* index for block with current lnum */
-} infoptr_T; /* block/index pair */
+ blocknr_T ip_bnum; // block number
+ linenr_T ip_low; // lowest lnum in this block
+ linenr_T ip_high; // highest lnum in this block
+ int ip_index; // index for block with current lnum
+} infoptr_T; // block/index pair
#ifdef FEAT_BYTEOFF
typedef struct ml_chunksize
@@ -657,11 +661,12 @@ typedef struct ml_chunksize
long mlcs_totalsize;
} chunksize_T;
- /* Flags when calling ml_updatechunk() */
-
-#define ML_CHNK_ADDLINE 1
-#define ML_CHNK_DELLINE 2
-#define ML_CHNK_UPDLINE 3
+/*
+ * Flags when calling ml_updatechunk()
+ */
+# define ML_CHNK_ADDLINE 1
+# define ML_CHNK_DELLINE 2
+# define ML_CHNK_UPDLINE 3
#endif
/*
@@ -669,28 +674,28 @@ typedef struct ml_chunksize
*/
typedef struct memline
{
- linenr_T ml_line_count; /* number of lines in the buffer */
+ linenr_T ml_line_count; // number of lines in the buffer
- memfile_T *ml_mfp; /* pointer to associated memfile */
+ memfile_T *ml_mfp; // pointer to associated memfile
-#define ML_EMPTY 1 /* empty buffer */
-#define ML_LINE_DIRTY 2 /* cached line was changed and allocated */
-#define ML_LOCKED_DIRTY 4 /* ml_locked was changed */
-#define ML_LOCKED_POS 8 /* ml_locked needs positive block number */
+#define ML_EMPTY 1 // empty buffer
+#define ML_LINE_DIRTY 2 // cached line was changed and allocated
+#define ML_LOCKED_DIRTY 4 // ml_locked was changed
+#define ML_LOCKED_POS 8 // ml_locked needs positive block number
int ml_flags;
- infoptr_T *ml_stack; /* stack of pointer blocks (array of IPTRs) */
- int ml_stack_top; /* current top of ml_stack */
- int ml_stack_size; /* total number of entries in ml_stack */
+ infoptr_T *ml_stack; // stack of pointer blocks (array of IPTRs)
+ int ml_stack_top; // current top of ml_stack
+ int ml_stack_size; // total number of entries in ml_stack
- linenr_T ml_line_lnum; /* line number of cached line, 0 if not valid */
- char_u *ml_line_ptr; /* pointer to cached line */
- colnr_T ml_line_len; /* length of the cached line, including NUL */
+ linenr_T ml_line_lnum; // line number of cached line, 0 if not valid
+ char_u *ml_line_ptr; // pointer to cached line
+ colnr_T ml_line_len; // length of the cached line, including NUL
- bhdr_T *ml_locked; /* block used by last ml_get */
- linenr_T ml_locked_low; /* first line in ml_locked */
- linenr_T ml_locked_high; /* last line in ml_locked */
- int ml_locked_lineadd; /* number of lines inserted in ml_locked */
+ bhdr_T *ml_locked; // block used by last ml_get
+ linenr_T ml_locked_low; // first line in ml_locked
+ linenr_T ml_locked_high; // last line in ml_locked
+ int ml_locked_lineadd; // number of lines inserted in ml_locked
#ifdef FEAT_BYTEOFF
chunksize_T *ml_chunksize;
int ml_numchunks;
@@ -745,13 +750,13 @@ typedef struct signlist signlist_T;
struct signlist
{
- int id; /* unique identifier for each placed sign */
- linenr_T lnum; /* line number which has this sign */
- int typenr; /* typenr of sign */
- signgroup_T *group; /* sign group */
- int priority; /* priority for highlighting */
- signlist_T *next; /* next signlist entry */
- signlist_T *prev; /* previous entry -- for easy reordering */
+ int id; // unique identifier for each placed sign
+ linenr_T lnum; // line number which has this sign
+ int typenr; // typenr of sign
+ signgroup_T *group; // sign group
+ int priority; // priority for highlighting
+ signlist_T *next; // next signlist entry
+ signlist_T *prev; // previous entry -- for easy reordering
};
#if defined(FEAT_SIGNS) || defined(PROTO)
@@ -775,9 +780,9 @@ struct signlist
*/
typedef struct arglist
{
- garray_T al_ga; /* growarray with the array of file names */
- int al_refcount; /* number of windows using this arglist */
- int id; /* id of this arglist */
+ garray_T al_ga; // growarray with the array of file names
+ int al_refcount; // number of windows using this arglist
+ int id; // id of this arglist
} alist_T;
/*
@@ -787,8 +792,8 @@ typedef struct arglist
*/
typedef struct argentry
{
- char_u *ae_fname; /* file name as specified */
- int ae_fnum; /* buffer number with expanded file name */
+ char_u *ae_fname; // file name as specified
+ int ae_fnum; // buffer number with expanded file name
} aentry_T;
#define ALIST(win) (win)->w_alist
@@ -809,8 +814,8 @@ typedef struct argentry
typedef struct eslist_elem eslist_T;
struct eslist_elem
{
- int saved_emsg_silent; /* saved value of "emsg_silent" */
- eslist_T *next; /* next element on the list */
+ int saved_emsg_silent; // saved value of "emsg_silent"
+ eslist_T *next; // next element on the list
};
/*
@@ -821,59 +826,59 @@ struct eslist_elem
struct condstack
{
- short cs_flags[CSTACK_LEN]; /* CSF_ flags */
- char cs_pending[CSTACK_LEN]; /* CSTP_: what's pending in ":finally"*/
+ short cs_flags[CSTACK_LEN]; // CSF_ flags
+ char cs_pending[CSTACK_LEN]; // CSTP_: what's pending in ":finally"
union {
- void *csp_rv[CSTACK_LEN]; /* return typeval for pending return */
- void *csp_ex[CSTACK_LEN]; /* exception for pending throw */
+ void *csp_rv[CSTACK_LEN]; // return typeval for pending return
+ void *csp_ex[CSTACK_LEN]; // exception for pending throw
} cs_pend;
- void *cs_forinfo[CSTACK_LEN]; /* info used by ":for" */
- int cs_line[CSTACK_LEN]; /* line nr of ":while"/":for" line */
- int cs_idx; /* current entry, or -1 if none */
- int cs_looplevel; /* nr of nested ":while"s and ":for"s */
- int cs_trylevel; /* nr of nested ":try"s */
- eslist_T *cs_emsg_silent_list; /* saved values of "emsg_silent" */
- char cs_lflags; /* loop flags: CSL_ flags */
+ void *cs_forinfo[CSTACK_LEN]; // info used by ":for"
+ int cs_line[CSTACK_LEN]; // line nr of ":while"/":for" line
+ int cs_idx; // current entry, or -1 if none
+ int cs_looplevel; // nr of nested ":while"s and ":for"s
+ int cs_trylevel; // nr of nested ":try"s
+ eslist_T *cs_emsg_silent_list; // saved values of "emsg_silent"
+ char cs_lflags; // loop flags: CSL_ flags
};
# define cs_rettv cs_pend.csp_rv
# define cs_exception cs_pend.csp_ex
-/* There is no CSF_IF, the lack of CSF_WHILE, CSF_FOR and CSF_TRY means ":if"
- * was used. */
-# define CSF_TRUE 0x0001 /* condition was TRUE */
-# define CSF_ACTIVE 0x0002 /* current state is active */
-# define CSF_ELSE 0x0004 /* ":else" has been passed */
-# define CSF_WHILE 0x0008 /* is a ":while" */
-# define CSF_FOR 0x0010 /* is a ":for" */
+// There is no CSF_IF, the lack of CSF_WHILE, CSF_FOR and CSF_TRY means ":if"
+// was used.
+# define CSF_TRUE 0x0001 // condition was TRUE
+# define CSF_ACTIVE 0x0002 // current state is active
+# define CSF_ELSE 0x0004 // ":else" has been passed
+# define CSF_WHILE 0x0008 // is a ":while"
+# define CSF_FOR 0x0010 // is a ":for"
-# define CSF_TRY 0x0100 /* is a ":try" */
-# define CSF_FINALLY 0x0200 /* ":finally" has been passed */
-# define CSF_THROWN 0x0400 /* exception thrown to this try conditional */
-# define CSF_CAUGHT 0x0800 /* exception caught by this try conditional */
-# define CSF_SILENT 0x1000 /* "emsg_silent" reset by ":try" */
-/* Note that CSF_ELSE is only used when CSF_TRY and CSF_WHILE are unset
- * (an ":if"), and CSF_SILENT is only used when CSF_TRY is set. */
+# define CSF_TRY 0x0100 // is a ":try"
+# define CSF_FINALLY 0x0200 // ":finally" has been passed
+# define CSF_THROWN 0x0400 // exception thrown to this try conditional
+# define CSF_CAUGHT 0x0800 // exception caught by this try conditional
+# define CSF_SILENT 0x1000 // "emsg_silent" reset by ":try"
+// Note that CSF_ELSE is only used when CSF_TRY and CSF_WHILE are unset
+// (an ":if"), and CSF_SILENT is only used when CSF_TRY is set.
/*
* What's pending for being reactivated at the ":endtry" of this try
* conditional:
*/
-# define CSTP_NONE 0 /* nothing pending in ":finally" clause */
-# define CSTP_ERROR 1 /* an error is pending */
-# define CSTP_INTERRUPT 2 /* an interrupt is pending */
-# define CSTP_THROW 4 /* a throw is pending */
-# define CSTP_BREAK 8 /* ":break" is pending */
-# define CSTP_CONTINUE 16 /* ":continue" is pending */
-# define CSTP_RETURN 24 /* ":return" is pending */
-# define CSTP_FINISH 32 /* ":finish" is pending */
+# define CSTP_NONE 0 // nothing pending in ":finally" clause
+# define CSTP_ERROR 1 // an error is pending
+# define CSTP_INTERRUPT 2 // an interrupt is pending
+# define CSTP_THROW 4 // a throw is pending
+# define CSTP_BREAK 8 // ":break" is pending
+# define CSTP_CONTINUE 16 // ":continue" is pending
+# define CSTP_RETURN 24 // ":return" is pending
+# define CSTP_FINISH 32 // ":finish" is pending
/*
* Flags for the cs_lflags item in struct condstack.
*/
-# define CSL_HAD_LOOP 1 /* just found ":while" or ":for" */
-# define CSL_HAD_ENDLOOP 2 /* just found ":endwhile" or ":endfor" */
-# define CSL_HAD_CONT 4 /* just found ":continue" */
-# define CSL_HAD_FINA 8 /* just found ":finally" */
+# define CSL_HAD_LOOP 1 // just found ":while" or ":for"
+# define CSL_HAD_ENDLOOP 2 // just found ":endwhile" or ":endfor"
+# define CSL_HAD_CONT 4 // just found ":continue"
+# define CSL_HAD_FINA 8 // just found ":finally"
/*
* A list of error messages that can be converted to an exception. "throw_msg"
@@ -883,9 +888,9 @@ struct condstack
*/
struct msglist
{
- char *msg; /* original message */
- char *throw_msg; /* msg to throw: usually original one */
- struct msglist *next; /* next of several messages in a row */
+ char *msg; // original message
+ char *throw_msg; // msg to throw: usually original one
+ struct msglist *next; // next of several messages in a row
};
/*
@@ -905,12 +910,12 @@ typedef enum
typedef struct vim_exception except_T;
struct vim_exception
{
- except_type_T type; /* exception type */
- char *value; /* exception value */
- struct msglist *messages; /* message(s) causing error exception */
- char_u *throw_name; /* name of the throw point */
- linenr_T throw_lnum; /* line number of the throw point */
- except_T *caught; /* next exception on the caught stack */
+ except_type_T type; // exception type
+ char *value; // exception value
+ struct msglist *messages; // message(s) causing error exception
+ char_u *throw_name; // name of the throw point
+ linenr_T throw_lnum; // line number of the throw point
+ except_T *caught; // next exception on the caught stack
};
/*
@@ -921,17 +926,17 @@ struct vim_exception
typedef struct cleanup_stuff cleanup_T;
struct cleanup_stuff
{
- int pending; /* error/interrupt/exception state */
- except_T *exception; /* exception value */
+ int pending; // error/interrupt/exception state
+ except_T *exception; // exception value
};
#ifdef FEAT_SYN_HL
-/* struct passed to in_id_list() */
+// struct passed to in_id_list()
struct sp_syn
{
- int inc_tag; /* ":syn include" unique tag */
- short id; /* highlight group ID of item */
- short *cont_in_list; /* cont.in group IDs, if non-zero */
+ int inc_tag; // ":syn include" unique tag
+ short id; // highlight group ID of item
+ short *cont_in_list; // cont.in group IDs, if non-zero
};
/*
@@ -941,12 +946,12 @@ typedef struct keyentry keyentry_T;
struct keyentry
{
- keyentry_T *ke_next; /* next entry with identical "keyword[]" */
- struct sp_syn k_syn; /* struct passed to in_id_list() */
- short *next_list; /* ID list for next match (if non-zero) */
+ keyentry_T *ke_next; // next entry with identical "keyword[]"
+ struct sp_syn k_syn; // struct passed to in_id_list()
+ short *next_list; // ID list for next match (if non-zero)
int flags;
- int k_char; /* conceal substitute character */
- char_u keyword[1]; /* actually longer */
+ int k_char; // conceal substitute character
+ char_u keyword[1]; // actually longer
};
/*
@@ -954,13 +959,13 @@ struct keyentry
*/
typedef struct buf_state
{
- int bs_idx; /* index of pattern */
- int bs_flags; /* flags for pattern */
+ int bs_idx; // index of pattern
+ int bs_flags; // flags for pattern
#ifdef FEAT_CONCEAL
- int bs_seqnr; /* stores si_seqnr */
- int bs_cchar; /* stores si_cchar */
+ int bs_seqnr; // stores si_seqnr
+ int bs_cchar; // stores si_cchar
#endif
- reg_extmatch_T *bs_extmatch; /* external matches from start pattern */
+ reg_extmatch_T *bs_extmatch; // external matches from start pattern
} bufstate_T;
/*
@@ -971,55 +976,55 @@ typedef struct syn_state synstate_T;
struct syn_state
{
- synstate_T *sst_next; /* next entry in used or free list */
- linenr_T sst_lnum; /* line number for this state */
+ synstate_T *sst_next; // next entry in used or free list
+ linenr_T sst_lnum; // line number for this state
union
{
- bufstate_T sst_stack[SST_FIX_STATES]; /* short state stack */
- garray_T sst_ga; /* growarray for long state stack */
+ bufstate_T sst_stack[SST_FIX_STATES]; // short state stack
+ garray_T sst_ga; // growarray for long state stack
} sst_union;
- int sst_next_flags; /* flags for sst_next_list */
- int sst_stacksize; /* number of states on the stack */
- short *sst_next_list; /* "nextgroup" list in this state
- * (this is a copy, don't free it! */
- disptick_T sst_tick; /* tick when last displayed */
- linenr_T sst_change_lnum;/* when non-zero, change in this line
- * may have made the state invalid */
+ int sst_next_flags; // flags for sst_next_list
+ int sst_stacksize; // number of states on the stack
+ short *sst_next_list; // "nextgroup" list in this state
+ // (this is a copy, don't free it!
+ disptick_T sst_tick; // tick when last displayed
+ linenr_T sst_change_lnum;// when non-zero, change in this line
+ // may have made the state invalid
};
-#endif /* FEAT_SYN_HL */
+#endif // FEAT_SYN_HL
/*
* Structure shared between syntax.c, screen.c and gui_x11.c.
*/
typedef struct attr_entry
{
- short ae_attr; /* HL_BOLD, etc. */
+ short ae_attr; // HL_BOLD, etc.
union
{
struct
{
- char_u *start; /* start escape sequence */
- char_u *stop; /* stop escape sequence */
+ char_u *start; // start escape sequence
+ char_u *stop; // stop escape sequence
} term;
struct
{
- /* These colors need to be > 8 bits to hold 256. */
- short_u fg_color; /* foreground color number */
- short_u bg_color; /* background color number */
+ // These colors need to be > 8 bits to hold 256.
+ short_u fg_color; // foreground color number
+ short_u bg_color; // background color number
# ifdef FEAT_TERMGUICOLORS
- guicolor_T fg_rgb; /* foreground color RGB */
- guicolor_T bg_rgb; /* background color RGB */
+ guicolor_T fg_rgb; // foreground color RGB
+ guicolor_T bg_rgb; // background color RGB
# endif
} cterm;
# ifdef FEAT_GUI
struct
{
- guicolor_T fg_color; /* foreground color handle */
- guicolor_T bg_color; /* background color handle */
- guicolor_T sp_color; /* special color handle */
- GuiFont font; /* font handle */
+ guicolor_T fg_color; // foreground color handle
+ guicolor_T bg_color; // background color handle
+ guicolor_T sp_color; // special color handle
+ GuiFont font; // font handle
# ifdef FEAT_XFONTSET
- GuiFontset fontset; /* fontset handle */
+ GuiFontset fontset; // fontset handle
# endif
} gui;
# endif
@@ -1033,7 +1038,7 @@ typedef struct attr_entry
# if defined(MACOS_X)
# include <sys/errno.h>
# ifndef EILSEQ
-# define EILSEQ ENOENT /* Early MacOS X does not have EILSEQ */
+# define EILSEQ ENOENT // Early MacOS X does not have EILSEQ
# endif
typedef struct _iconv_t *iconv_t;
# else
@@ -1048,22 +1053,22 @@ typedef void *iconv_t;
*/
typedef struct
{
- char_u *tb_buf; /* buffer for typed characters */
- char_u *tb_noremap; /* mapping flags for characters in tb_buf[] */
- int tb_buflen; /* size of tb_buf[] */
- int tb_off; /* current position in tb_buf[] */
- int tb_len; /* number of valid bytes in tb_buf[] */
- int tb_maplen; /* nr of mapped bytes in tb_buf[] */
- int tb_silent; /* nr of silently mapped bytes in tb_buf[] */
- int tb_no_abbr_cnt; /* nr of bytes without abbrev. in tb_buf[] */
- int tb_change_cnt; /* nr of time tb_buf was changed; never zero */
+ char_u *tb_buf; // buffer for typed characters
+ char_u *tb_noremap; // mapping flags for characters in tb_buf[]
+ int tb_buflen; // size of tb_buf[]
+ int tb_off; // current position in tb_buf[]
+ int tb_len; // number of valid bytes in tb_buf[]
+ int tb_maplen; // nr of mapped bytes in tb_buf[]
+ int tb_silent; // nr of silently mapped bytes in tb_buf[]
+ int tb_no_abbr_cnt; // nr of bytes without abbrev. in tb_buf[]
+ int tb_change_cnt; // nr of time tb_buf was changed; never zero
} typebuf_T;
/* Struct to hold the saved typeahead for save_typeahead(). */
typedef struct
{
typebuf_T save_typebuf;
- int typebuf_valid; /* TRUE when save_typebuf valid */
+ int typebuf_valid; // TRUE when save_typebuf valid
int old_char;
int old_mod_mask;
buffheader_T save_readbuf1;
@@ -1078,16 +1083,16 @@ typedef struct
*/
typedef struct
{
- int vc_type; /* zero or one of the CONV_ values */
- int vc_factor; /* max. expansion factor */
+ int vc_type; // zero or one of the CONV_ values
+ int vc_factor; // max. expansion factor
# ifdef MSWIN
- int vc_cpfrom; /* codepage to convert from (CONV_CODEPAGE) */
- int vc_cpto; /* codepage to convert to (CONV_CODEPAGE) */
+ int vc_cpfrom; // codepage to convert from (CONV_CODEPAGE)
+ int vc_cpto; // codepage to convert to (CONV_CODEPAGE)
# endif
# ifdef USE_ICONV
- iconv_t vc_fd; /* for CONV_ICONV */
+ iconv_t vc_fd; // for CONV_ICONV
# endif
- int vc_fail; /* fail for invalid char, don't use '?' */
+ int vc_fail; // fail for invalid char, don't use '?'
} vimconv_T;
/*
@@ -1095,11 +1100,11 @@ typedef struct
*/
typedef struct
{
- char_u *vir_line; /* text of the current line */
- FILE *vir_fd; /* file descriptor */
- vimconv_T vir_conv; /* encoding conversion */
- int vir_version; /* viminfo version detected or -1 */
- garray_T vir_barlines; /* lines starting with | */
+ char_u *vir_line; // text of the current line
+ FILE *vir_fd; // file descriptor
+ vimconv_T vir_conv; // encoding conversion
+ int vir_version; // viminfo version detected or -1
+ garray_T vir_barlines; // lines starting with |
} vir_T;
#define CONV_NONE 0
@@ -1109,7 +1114,7 @@ typedef struct
#define CONV_TO_LATIN9 4
#define CONV_ICONV 5
#ifdef MSWIN
-# define CONV_CODEPAGE 10 /* codepage -> codepage */
+# define CONV_CODEPAGE 10 // codepage -> codepage
#endif
#ifdef MACOS_X
# define CONV_MAC_LATIN1 20
@@ -1124,18 +1129,18 @@ typedef struct
typedef struct mapblock mapblock_T;
struct mapblock
{
- mapblock_T *m_next; /* next mapblock in list */
- char_u *m_keys; /* mapped from, lhs */
- char_u *m_str; /* mapped to, rhs */
- char_u *m_orig_str; /* rhs as entered by the user */
- int m_keylen; /* strlen(m_keys) */
- int m_mode; /* valid mode */
- int m_noremap; /* if non-zero no re-mapping for m_str */
- char m_silent; /* <silent> used, don't echo commands */
- char m_nowait; /* <nowait> used */
+ mapblock_T *m_next; // next mapblock in list
+ char_u *m_keys; // mapped from, lhs
+ char_u *m_str; // mapped to, rhs
+ char_u *m_orig_str; // rhs as entered by the user
+ int m_keylen; // strlen(m_keys)
+ int m_mode; // valid mode
+ int m_noremap; // if non-zero no re-mapping for m_str
+ char m_silent; // <silent> used, don't echo commands
+ char m_nowait; // <nowait> used
#ifdef FEAT_EVAL
- char m_expr; /* <expr> used, m_str is an expression */
- sctx_T m_script_ctx; /* SCTX where map was defined */
+ char m_expr; // <expr> used, m_str is an expression
+ sctx_T m_script_ctx; // SCTX where map was defined
#endif
};
@@ -1145,7 +1150,7 @@ struct mapblock
struct stl_hlrec
{
char_u *start;
- int userhl; /* 0: no HL, 1-9: User HL, < 0 for syn ID */
+ int userhl; // 0: no HL, 1-9: User HL, < 0 for syn ID
};
@@ -1162,38 +1167,38 @@ struct stl_hlrec
*/
typedef struct hashitem_S
{
- long_u hi_hash; /* cached hash number of hi_key */
+ long_u hi_hash; // cached hash number of hi_key
char_u *hi_key;
} hashitem_T;
-/* The address of "hash_removed" is used as a magic number for hi_key to
- * indicate a removed item. */
+// The address of "hash_removed" is used as a magic number for hi_key to
+// indicate a removed item.
#define HI_KEY_REMOVED &hash_removed
#define HASHITEM_EMPTY(hi) ((hi)->hi_key == NULL || (hi)->hi_key == &hash_removed)
-/* Initial size for a hashtable. Our items are relatively small and growing
- * is expensive, thus use 16 as a start. Must be a power of 2. */
+// Initial size for a hashtable. Our items are relatively small and growing
+// is expensive, thus use 16 as a start. Must be a power of 2.
#define HT_INIT_SIZE 16
typedef struct hashtable_S
{
- long_u ht_mask; /* mask used for hash value (nr of items in
- * array is "ht_mask" + 1) */
- long_u ht_used; /* number of items used */
- long_u ht_filled; /* number of items used + removed */
- int ht_locked; /* counter for hash_lock() */
- int ht_error; /* when set growing failed, can't add more
- items before growing works */
- hashitem_T *ht_array; /* points to the array, allocated when it's
- not "ht_smallarray" */
- hashitem_T ht_smallarray[HT_INIT_SIZE]; /* initial array */
+ long_u ht_mask; // mask used for hash value (nr of items in
+ // array is "ht_mask" + 1)
+ long_u ht_used; // number of items used
+ long_u ht_filled; // number of items used + removed
+ int ht_locked; // counter for hash_lock()
+ int ht_error; // when set growing failed, can't add more
+ // items before growing works
+ hashitem_T *ht_array; // points to the array, allocated when it's
+ // not "ht_smallarray"
+ hashitem_T ht_smallarray[HT_INIT_SIZE]; // initial array
} hashtab_T;
-typedef long_u hash_T; /* Type for hi_hash */
+typedef long_u hash_T; // Type for hi_hash
#ifdef FEAT_NUM64
-/* Use 64-bit Number. */
+// Use 64-bit Number.
# ifdef MSWIN
# ifdef PROTO
typedef long varnumber_T;
@@ -1222,7 +1227,7 @@ typedef unsigned long uvarnumber_T;
# define UVARNUM_MAX ULONG_MAX
# endif
#else
-/* Use 32-bit Number. */
+// Use 32-bit Number.
typedef int varnumber_T;
typedef unsigned int uvarnumber_T;
# define VARNUM_MIN INT_MIN
@@ -1277,33 +1282,33 @@ typedef enum
typedef struct
{
vartype_T v_type;
- char v_lock; /* see below: VAR_LOCKED, VAR_FIXED */
+ char v_lock; // see below: VAR_LOCKED, VAR_FIXED
union
{
- varnumber_T v_number; /* number value */
+ varnumber_T v_number; // number value
#ifdef FEAT_FLOAT
- float_T v_float; /* floating number value */
+ float_T v_float; // floating number value
#endif
- char_u *v_string; /* string value (can be NULL!) */
- list_T *v_list; /* list value (can be NULL!) */
- dict_T *v_dict; /* dict value (can be NULL!) */
- partial_T *v_partial; /* closure: function with args */
+ char_u *v_string; // string value (can be NULL!)
+ list_T *v_list; // list value (can be NULL!)
+ dict_T *v_dict; // dict value (can be NULL!)
+ partial_T *v_partial; // closure: function with args
#ifdef FEAT_JOB_CHANNEL
- job_T *v_job; /* job value (can be NULL!) */
- channel_T *v_channel; /* channel value (can be NULL!) */
+ job_T *v_job; // job value (can be NULL!)
+ channel_T *v_channel; // channel value (can be NULL!)
#endif
- blob_T *v_blob; /* blob value (can be NULL!) */
+ blob_T *v_blob; // blob value (can be NULL!)
} vval;
} typval_T;
-/* Values for "dv_scope". */
-#define VAR_SCOPE 1 /* a:, v:, s:, etc. scope dictionaries */
-#define VAR_DEF_SCOPE 2 /* l:, g: scope dictionaries: here funcrefs are not
- allowed to mask existing functions */
+// Values for "dv_scope".
+#define VAR_SCOPE 1 // a:, v:, s:, etc. scope dictionaries
+#define VAR_DEF_SCOPE 2 // l:, g: scope dictionaries: here funcrefs are not
+ // allowed to mask existing functions
-/* Values for "v_lock". */
-#define VAR_LOCKED 1 /* locked with lock(), can use unlock() */
-#define VAR_FIXED 2 /* locked forever */
+// Values for "v_lock".
+#define VAR_LOCKED 1 // locked with lock(), can use unlock()
+#define VAR_FIXED 2 // locked forever
/*
* Structure to hold an item of a list: an internal variable without a name.
@@ -1312,20 +1317,18 @@ typedef struct listitem_S listitem_T;
struct listitem_S
{
- listitem_T *li_next; /* next item in list */
- listitem_T *li_prev; /* previous item in list */
- typval_T li_tv; /* type and value of the variable */
+ listitem_T *li_next; // next item in list
+ listitem_T *li_prev; // previous item in list
+ typval_T li_tv; // type and value of the variable
};
-/*
- * Struct used by those that are using an item in a list.
- */
+// Struct used by those that are using an item in a list.
typedef struct listwatch_S listwatch_T;
struct listwatch_S
{
- listitem_T *lw_item; /* item being watched */
- listwatch_T *lw_next; /* next watcher */
+ listitem_T *lw_item; // item being watched
+ listwatch_T *lw_next; // next watcher
};
/*
@@ -1334,25 +1337,25 @@ struct listwatch_S
*/
struct listvar_S
{
- listitem_T *lv_first; /* first item, NULL if none */
- listitem_T *lv_last; /* last item, NULL if none */
- listwatch_T *lv_watch; /* first watcher, NULL if none */
- listitem_T *lv_idx_item; /* when not NULL item at index "lv_idx" */
- list_T *lv_copylist; /* copied list used by deepcopy() */
- list_T *lv_used_next; /* next list in used lists list */
- list_T *lv_used_prev; /* previous list in used lists list */
- int lv_refcount; /* reference count */
- int lv_len; /* number of items */
- int lv_idx; /* cached index of an item */
- int lv_copyID; /* ID used by deepcopy() */
- char lv_lock; /* zero, VAR_LOCKED, VAR_FIXED */
+ listitem_T *lv_first; // first item, NULL if none
+ listitem_T *lv_last; // last item, NULL if none
+ listwatch_T *lv_watch; // first watcher, NULL if none
+ listitem_T *lv_idx_item; // when not NULL item at index "lv_idx"
+ list_T *lv_copylist; // copied list used by deepcopy()
+ list_T *lv_used_next; // next list in used lists list
+ list_T *lv_used_prev; // previous list in used lists list
+ int lv_refcount; // reference count
+ int lv_len; // number of items
+ int lv_idx; // cached index of an item
+ int lv_copyID; // ID used by deepcopy()
+ char lv_lock; // zero, VAR_LOCKED, VAR_FIXED
};
/*
* Static list with 10 items. Use init_static_list() to initialize.
*/
typedef struct {
- list_T sl_list; /* must be first */
+ list_T sl_list; // must be first
listitem_T sl_items[10];
} staticList10_T;
@@ -1363,9 +1366,9 @@ typedef struct {
*/
struct dictitem_S
{
- typval_T di_tv; /* type and value of the variable */
- char_u di_flags; /* flags (only used for variable) */
- char_u di_key[1]; /* key (actually longer!) */
+ typval_T di_tv; // type and value of the variable
+ char_u di_flags; // flags (only used for variable)
+ char_u di_key[1]; // key (actually longer!)
};
typedef struct dictitem_S dictitem_T;
@@ -1376,31 +1379,31 @@ typedef struct dictitem_S dictitem_T;
#define DICTITEM16_KEY_LEN 16
struct dictitem16_S
{
- typval_T di_tv; /* type and value of the variable */
- char_u di_flags; /* flags (only used for variable) */
- char_u di_key[DICTITEM16_KEY_LEN + 1]; /* key */
+ typval_T di_tv; // type and value of the variable
+ char_u di_flags; // flags (only used for variable)
+ char_u di_key[DICTITEM16_KEY_LEN + 1]; // key
};
typedef struct dictitem16_S dictitem16_T;
-#define DI_FLAGS_RO 1 /* "di_flags" value: read-only variable */
-#define DI_FLAGS_RO_SBX 2 /* "di_flags" value: read-only in the sandbox */
-#define DI_FLAGS_FIX 4 /* "di_flags" value: fixed: no :unlet or remove() */
-#define DI_FLAGS_LOCK 8 /* "di_flags" value: locked variable */
-#define DI_FLAGS_ALLOC 16 /* "di_flags" value: separately allocated */
+#define DI_FLAGS_RO 1 // "di_flags" value: read-only variable
+#define DI_FLAGS_RO_SBX 2 // "di_flags" value: read-only in the sandbox
+#define DI_FLAGS_FIX 4 // "di_flags" value: fixed: no :unlet or remove()
+#define DI_FLAGS_LOCK 8 // "di_flags" value: locked variable
+#define DI_FLAGS_ALLOC 16 // "di_flags" value: separately allocated
/*
* Structure to hold info about a Dictionary.
*/
struct dictvar_S
{
- char dv_lock; /* zero, VAR_LOCKED, VAR_FIXED */
- char dv_scope; /* zero, VAR_SCOPE, VAR_DEF_SCOPE */
- int dv_refcount; /* reference count */
- int dv_copyID; /* ID used by deepcopy() */
- hashtab_T dv_hashtab; /* hashtab that refers to the items */
- dict_T *dv_copydict; /* copied dict used by deepcopy() */
- dict_T *dv_used_next; /* next dict in used dicts list */
- dict_T *dv_used_prev; /* previous dict in used dicts list */
+ char dv_lock; // zero, VAR_LOCKED, VAR_FIXED
+ char dv_scope; // zero, VAR_SCOPE, VAR_DEF_SCOPE
+ int dv_refcount; // reference count
+ int dv_copyID; // ID used by deepcopy()
+ hashtab_T dv_hashtab; // hashtab that refers to the items
+ dict_T *dv_copydict; // copied dict used by deepcopy()
+ dict_T *dv_used_next; // next dict in used dicts list
+ dict_T *dv_used_prev; // previous dict in used dicts list
};
/*
@@ -1462,35 +1465,35 @@ typedef struct
/* structure to hold info for a function that is currently being executed. */
struct funccall_S
{
- ufunc_T *func; /* function being called */
- int linenr; /* next line to be executed */
- int returned; /* ":return" used */
- struct /* fixed variables for arguments */
+ ufunc_T *func; // function being called
+ int linenr; // next line to be executed
+ int returned; // ":return" used
+ struct // fixed variables for arguments
{
- dictitem_T var; /* variable (without room for name) */
- char_u room[VAR_SHORT_LEN]; /* room for the name */
+ dictitem_T var; // variable (without room for name)
+ char_u room[VAR_SHORT_LEN]; // room for the name
} fixvar[FIXVAR_CNT];
- dict_T l_vars; /* l: local function variables */
- dictitem_T l_vars_var; /* variable for l: scope */
- dict_T l_avars; /* a: argument variables */
- dictitem_T l_avars_var; /* variable for a: scope */
- list_T l_varlist; /* list for a:000 */
- listitem_T l_listitems[MAX_FUNC_ARGS]; /* listitems for a:000 */
- typval_T *rettv; /* return value */
- linenr_T breakpoint; /* next line with breakpoint or zero */
- int dbg_tick; /* debug_tick when breakpoint was set */
- int level; /* top nesting level of executed function */
+ dict_T l_vars; // l: local function variables
+ dictitem_T l_vars_var; // variable for l: scope
+ dict_T l_avars; // a: argument variables
+ dictitem_T l_avars_var; // variable for a: scope
+ list_T l_varlist; // list for a:000
+ listitem_T l_listitems[MAX_FUNC_ARGS]; // listitems for a:000
+ typval_T *rettv; // return value
+ linenr_T breakpoint; // next line with breakpoint or zero
+ int dbg_tick; // debug_tick when breakpoint was set
+ int level; // top nesting level of executed function
#ifdef FEAT_PROFILE
- proftime_T prof_child; /* time spent in a child */
+ proftime_T prof_child; // time spent in a child
#endif
- funccall_T *caller; /* calling function or NULL */
+ funccall_T *caller; // calling function or NULL
- /* for closure */
- int fc_refcount; /* number of user functions that reference this
- * funccal */
- int fc_copyID; /* for garbage collection */
- garray_T fc_funcs; /* list of ufunc_T* which keep a reference to
- * "func" */
+ // for closure
+ int fc_refcount; // number of user functions that reference this
+ // funccal
+ int fc_copyID; // for garbage collection
+ garray_T fc_funcs; // list of ufunc_T* which keep a reference to
+ // "func"
};
/*
@@ -1498,9 +1501,9 @@ struct funccall_S
*/
typedef struct
{
- dict_T *fd_dict; /* Dictionary used */
- char_u *fd_newkey; /* new key in "dict" in allocated memory */
- dictitem_T *fd_di; /* Dictionary item used */
+ dict_T *fd_dict; // Dictionary used
+ char_u *fd_newkey; // new key in "dict" in allocated memory
+ dictitem_T *fd_di; // Dictionary item used
} funcdict_T;
typedef struct funccal_entry funccal_entry_T;
@@ -1510,7 +1513,7 @@ struct funccal_entry {
};
#else
-/* dummy typedefs for function prototypes */
+// dummy typedefs for use in function prototypes
typedef struct
{
int dummy;
@@ -1527,27 +1530,27 @@ typedef struct
struct partial_S
{
- int pt_refcount; /* reference count */
- char_u *pt_name; /* function name; when NULL use
- * pt_func->uf_name */
- ufunc_T *pt_func; /* function pointer; when NULL lookup function
- * with pt_name */
- int pt_auto; /* when TRUE the partial was created for using
- dict.member in handle_subscript() */
- int pt_argc; /* number of arguments */
- typval_T *pt_argv; /* arguments in allocated array */
- dict_T *pt_dict; /* dict for "self" */
+ int pt_refcount; // reference count
+ char_u *pt_name; // function name; when NULL use
+ // pt_func->uf_name
+ ufunc_T *pt_func; // function pointer; when NULL lookup function
+ // with pt_name
+ int pt_auto; // when TRUE the partial was created for using
+ // dict.member in handle_subscript()
+ int pt_argc; // number of arguments
+ typval_T *pt_argv; // arguments in allocated array
+ dict_T *pt_dict; // dict for "self"
};
-/* Information returned by get_tty_info(). */
+// Information returned by get_tty_info().
typedef struct {
- int backspace; /* what the Backspace key produces */
- int enter; /* what the Enter key produces */
- int interrupt; /* interrupt character */
- int nl_does_cr; /* TRUE when a NL is expanded to CR-NL on output */
+ int backspace; // what the Backspace key produces
+ int enter; // what the Enter key produces
+ int interrupt; // interrupt character
+ int nl_does_cr; // TRUE when a NL is expanded to CR-NL on output
} ttyinfo_T;
-/* Status of a job. Order matters! */
+// Status of a job. Order matters!
typedef enum
{
JOB_FAILED,
@@ -1570,12 +1573,12 @@ struct jobvar_S
PROCESS_INFORMATION jv_proc_info;
HANDLE jv_job_object;
#endif
- char_u *jv_tty_in; /* controlling tty input, allocated */
- char_u *jv_tty_out; /* controlling tty output, allocated */
+ char_u *jv_tty_in; // controlling tty input, allocated
+ char_u *jv_tty_out; // controlling tty output, allocated
jobstatus_T jv_status;
- char_u *jv_stoponexit; /* allocated */
+ char_u *jv_stoponexit; // allocated
#ifdef UNIX
- char_u *jv_termsig; /* allocated */
+ char_u *jv_termsig; // allocated
#endif
#ifdef MSWIN
char_u *jv_tty_type; // allocated
@@ -1583,13 +1586,13 @@ struct jobvar_S
int jv_exitval;
callback_T jv_exit_cb;
- buf_T *jv_in_buf; /* buffer from "in-name" */
+ buf_T *jv_in_buf; // buffer from "in-name"
- int jv_refcount; /* reference count */
+ int jv_refcount; // reference count
int jv_copyID;
- channel_T *jv_channel; /* channel for I/O, reference counted */
- char **jv_argv; /* command line used to start the job */
+ channel_T *jv_channel; // channel for I/O, reference counted
+ char **jv_argv; // command line used to start the job
};
/*
@@ -1615,7 +1618,7 @@ struct jsonq_S
typval_T *jq_value;
jsonq_T *jq_next;
jsonq_T *jq_prev;
- int jq_no_callback; /* TRUE when no callback was found */
+ int jq_no_callback; // TRUE when no callback was found
};
struct cbq_S
@@ -1626,7 +1629,7 @@ struct cbq_S
cbq_T *cq_prev;
};
-/* mode for a channel */
+// mode for a channel
typedef enum
{
MODE_NL = 0,
@@ -1645,8 +1648,8 @@ typedef enum {
#define CH_PART_FD(part) ch_part[part].ch_fd
-/* Ordering matters, it is used in for loops: IN is last, only SOCK/OUT/ERR
- * are polled. */
+// Ordering matters, it is used in for loops: IN is last, only SOCK/OUT/ERR
+// are polled.
typedef enum {
PART_SOCK = 0,
#define CH_SOCK_FD CH_PART_FD(PART_SOCK)
@@ -1663,90 +1666,90 @@ typedef enum {
#define INVALID_FD (-1)
-/* The per-fd info for a channel. */
+// The per-fd info for a channel.
typedef struct {
- sock_T ch_fd; /* socket/stdin/stdout/stderr, -1 if not used */
+ sock_T ch_fd; // socket/stdin/stdout/stderr, -1 if not used
# if defined(UNIX) && !defined(HAVE_SELECT)
- int ch_poll_idx; /* used by channel_poll_setup() */
+ int ch_poll_idx; // used by channel_poll_setup()
# endif
#ifdef FEAT_GUI_X11
- XtInputId ch_inputHandler; /* Cookie for input */
+ XtInputId ch_inputHandler; // Cookie for input
#endif
#ifdef FEAT_GUI_GTK
- gint ch_inputHandler; /* Cookie for input */
+ gint ch_inputHandler; // Cookie for input
#endif
ch_mode_T ch_mode;
job_io_T ch_io;
- int ch_timeout; /* request timeout in msec */
-
- readq_T ch_head; /* header for circular raw read queue */
- jsonq_T ch_json_head; /* header for circular json read queue */
- garray_T ch_block_ids; /* list of IDs that channel_read_json_block()
- is waiting for */
- /* When ch_wait_len is non-zero use ch_deadline to wait for incomplete
- * message to be complete. The value is the length of the incomplete
- * message when the deadline was set. If it gets longer (something was
- * received) the deadline is reset. */
+ int ch_timeout; // request timeout in msec
+
+ readq_T ch_head; // header for circular raw read queue
+ jsonq_T ch_json_head; // header for circular json read queue
+ garray_T ch_block_ids; // list of IDs that channel_read_json_block()
+ // is waiting for
+ // When ch_wait_len is non-zero use ch_deadline to wait for incomplete
+ // message to be complete. The value is the length of the incomplete
+ // message when the deadline was set. If it gets longer (something was
+ // received) the deadline is reset.
size_t ch_wait_len;
#ifdef MSWIN
DWORD ch_deadline;
#else
struct timeval ch_deadline;
#endif
- int ch_block_write; /* for testing: 0 when not used, -1 when write
- * does not block, 1 simulate blocking */
- int ch_nonblocking; /* write() is non-blocking */
- writeq_T ch_writeque; /* header for write queue */
+ int ch_block_write; // for testing: 0 when not used, -1 when write
+ // does not block, 1 simulate blocking
+ int ch_nonblocking; // write() is non-blocking
+ writeq_T ch_writeque; // header for write queue
- cbq_T ch_cb_head; /* dummy node for per-request callbacks */
- callback_T ch_callback; /* call when a msg is not handled */
+ cbq_T ch_cb_head; // dummy node for per-request callbacks
+ callback_T ch_callback; // call when a msg is not handled
- bufref_T ch_bufref; /* buffer to read from or write to */
- int ch_nomodifiable; /* TRUE when buffer can be 'nomodifiable' */
- int ch_nomod_error; /* TRUE when e_modifiable was given */
- int ch_buf_append; /* write appended lines instead top-bot */
- linenr_T ch_buf_top; /* next line to send */
- linenr_T ch_buf_bot; /* last line to send */
+ bufref_T ch_bufref; // buffer to read from or write to
+ int ch_nomodifiable; // TRUE when buffer can be 'nomodifiable'
+ int ch_nomod_error; // TRUE when e_modifiable was given
+ int ch_buf_append; // write appended lines instead top-bot
+ linenr_T ch_buf_top; // next line to send
+ linenr_T ch_buf_bot; // last line to send
} chanpart_T;
struct channel_S {
channel_T *ch_next;
channel_T *ch_prev;
- int ch_id; /* ID of the channel */
- int ch_last_msg_id; /* ID of the last message */
+ int ch_id; // ID of the channel
+ int ch_last_msg_id; // ID of the last message
- chanpart_T ch_part[PART_COUNT]; /* info for socket, out, err and in */
- int ch_write_text_mode; /* write buffer lines with CR, not NL */
+ chanpart_T ch_part[PART_COUNT]; // info for socket, out, err and in
+ int ch_write_text_mode; // write buffer lines with CR, not NL
- char *ch_hostname; /* only for socket, allocated */
- int ch_port; /* only for socket */
+ char *ch_hostname; // only for socket, allocated
+ int ch_port; // only for socket
- int ch_to_be_closed; /* bitset of readable fds to be closed.
- * When all readable fds have been closed,
- * set to (1 << PART_COUNT). */
- int ch_to_be_freed; /* When TRUE channel must be freed when it's
- * safe to invoke callbacks. */
- int ch_error; /* When TRUE an error was reported. Avoids
- * giving pages full of error messages when
- * the other side has exited, only mention the
- * first error until the connection works
- * again. */
+ int ch_to_be_closed; // bitset of readable fds to be closed.
+ // When all readable fds have been closed,
+ // set to (1 << PART_COUNT).
+ int ch_to_be_freed; // When TRUE channel must be freed when it's
+ // safe to invoke callbacks.
+ int ch_error; // When TRUE an error was reported. Avoids
+ // giving pages full of error messages when
+ // the other side has exited, only mention the
+ // first error until the connection works
+ // again.
void (*ch_nb_close_cb)(void);
- /* callback for Netbeans when channel is
- * closed */
+ // callback for Netbeans when channel is
+ // closed
#ifdef MSWIN
- int ch_named_pipe; /* using named pipe instead of pty */
+ int ch_named_pipe; // using named pipe instead of pty
#endif
- callback_T ch_callback; /* call when any msg is not handled */
- callback_T ch_close_cb; /* call when channel is closed */
+ callback_T ch_callback; // call when any msg is not handled
+ callback_T ch_close_cb; // call when channel is closed
int ch_drop_never;
- int ch_keep_open; /* do not close on read error */
+ int ch_keep_open; // do not close on read error
int ch_nonblock;
job_T *ch_job; // Job that uses this channel; this does not
@@ -1761,57 +1764,57 @@ struct channel_S {
int ch_copyID;
};
-#define JO_MODE 0x0001 /* channel mode */
-#define JO_IN_MODE 0x0002 /* stdin mode */
-#define JO_OUT_MODE 0x0004 /* stdout mode */
-#define JO_ERR_MODE 0x0008 /* stderr mode */
-#define JO_CALLBACK 0x0010 /* channel callback */
-#define JO_OUT_CALLBACK 0x0020 /* stdout callback */
-#define JO_ERR_CALLBACK 0x0040 /* stderr callback */
-#define JO_CLOSE_CALLBACK 0x0080 /* "close_cb" */
-#define JO_WAITTIME 0x0100 /* only for ch_open() */
-#define JO_TIMEOUT 0x0200 /* all timeouts */
-#define JO_OUT_TIMEOUT 0x0400 /* stdout timeouts */
-#define JO_ERR_TIMEOUT 0x0800 /* stderr timeouts */
-#define JO_PART 0x1000 /* "part" */
-#define JO_ID 0x2000 /* "id" */
-#define JO_STOPONEXIT 0x4000 /* "stoponexit" */
-#define JO_EXIT_CB 0x8000 /* "exit_cb" */
-#define JO_OUT_IO 0x10000 /* "out_io" */
-#define JO_ERR_IO 0x20000 /* "err_io" (JO_OUT_IO << 1) */
-#define JO_IN_IO 0x40000 /* "in_io" (JO_OUT_IO << 2) */
-#define JO_OUT_NAME 0x80000 /* "out_name" */
-#define JO_ERR_NAME 0x100000 /* "err_name" (JO_OUT_NAME << 1) */
-#define JO_IN_NAME 0x200000 /* "in_name" (JO_OUT_NAME << 2) */
-#define JO_IN_TOP 0x400000 /* "in_top" */
-#define JO_IN_BOT 0x800000 /* "in_bot" */
-#define JO_OUT_BUF 0x1000000 /* "out_buf" */
-#define JO_ERR_BUF 0x2000000 /* "err_buf" (JO_OUT_BUF << 1) */
-#define JO_IN_BUF 0x4000000 /* "in_buf" (JO_OUT_BUF << 2) */
-#define JO_CHANNEL 0x8000000 /* "channel" */
-#define JO_BLOCK_WRITE 0x10000000 /* "block_write" */
-#define JO_OUT_MODIFIABLE 0x20000000 /* "out_modifiable" */
-#define JO_ERR_MODIFIABLE 0x40000000 /* "err_modifiable" (JO_OUT_ << 1) */
+#define JO_MODE 0x0001 // channel mode
+#define JO_IN_MODE 0x0002 // stdin mode
+#define JO_OUT_MODE 0x0004 // stdout mode
+#define JO_ERR_MODE 0x0008 // stderr mode
+#define JO_CALLBACK 0x0010 // channel callback
+#define JO_OUT_CALLBACK 0x0020 // stdout callback
+#define JO_ERR_CALLBACK 0x0040 // stderr callback
+#define JO_CLOSE_CALLBACK 0x0080 // "close_cb"
+#define JO_WAITTIME 0x0100 // only for ch_open()
+#define JO_TIMEOUT 0x0200 // all timeouts
+#define JO_OUT_TIMEOUT 0x0400 // stdout timeouts
+#define JO_ERR_TIMEOUT 0x0800 // stderr timeouts
+#define JO_PART 0x1000 // "part"
+#define JO_ID 0x2000 // "id"
+#define JO_STOPONEXIT 0x4000 // "stoponexit"
+#define JO_EXIT_CB 0x8000 // "exit_cb"
+#define JO_OUT_IO 0x10000 // "out_io"
+#define JO_ERR_IO 0x20000 // "err_io" (JO_OUT_IO << 1)
+#define JO_IN_IO 0x40000 // "in_io" (JO_OUT_IO << 2)
+#define JO_OUT_NAME 0x80000 // "out_name"
+#define JO_ERR_NAME 0x100000 // "err_name" (JO_OUT_NAME << 1)
+#define JO_IN_NAME 0x200000 // "in_name" (JO_OUT_NAME << 2)
+#define JO_IN_TOP 0x400000 // "in_top"
+#define JO_IN_BOT 0x800000 // "in_bot"
+#define JO_OUT_BUF 0x1000000 // "out_buf"
+#define JO_ERR_BUF 0x2000000 // "err_buf" (JO_OUT_BUF << 1)
+#define JO_IN_BUF 0x4000000 // "in_buf" (JO_OUT_BUF << 2)
+#define JO_CHANNEL 0x8000000 // "channel"
+#define JO_BLOCK_WRITE 0x10000000 // "block_write"
+#define JO_OUT_MODIFIABLE 0x20000000 // "out_modifiable"
+#define JO_ERR_MODIFIABLE 0x40000000 // "err_modifiable" (JO_OUT_ << 1)
#define JO_ALL 0x7fffffff
-#define JO2_OUT_MSG 0x0001 /* "out_msg" */
-#define JO2_ERR_MSG 0x0002 /* "err_msg" (JO_OUT_ << 1) */
-#define JO2_TERM_NAME 0x0004 /* "term_name" */
-#define JO2_TERM_FINISH 0x0008 /* "term_finish" */
-#define JO2_ENV 0x0010 /* "env" */
-#define JO2_CWD 0x0020 /* "cwd" */
-#define JO2_TERM_ROWS 0x0040 /* "term_rows" */
-#define JO2_TERM_COLS 0x0080 /* "term_cols" */
-#define JO2_VERTICAL 0x0100 /* "vertical" */
-#define JO2_CURWIN 0x0200 /* "curwin" */
-#define JO2_HIDDEN 0x0400 /* "hidden" */
-#define JO2_TERM_OPENCMD 0x0800 /* "term_opencmd" */
-#define JO2_EOF_CHARS 0x1000 /* "eof_chars" */
-#define JO2_NORESTORE 0x2000 /* "norestore" */
-#define JO2_TERM_KILL 0x4000 /* "term_kill" */
-#define JO2_ANSI_COLORS 0x8000 /* "ansi_colors" */
-#define JO2_TTY_TYPE 0x10000 /* "tty_type" */
-#define JO2_BUFNR 0x20000 /* "bufnr" */
+#define JO2_OUT_MSG 0x0001 // "out_msg"
+#define JO2_ERR_MSG 0x0002 // "err_msg" (JO_OUT_ << 1)
+#define JO2_TERM_NAME 0x0004 // "term_name"
+#define JO2_TERM_FINISH 0x0008 // "term_finish"
+#define JO2_ENV 0x0010 // "env"
+#define JO2_CWD 0x0020 // "cwd"
+#define JO2_TERM_ROWS 0x0040 // "term_rows"
+#define JO2_TERM_COLS 0x0080 // "term_cols"
+#define JO2_VERTICAL 0x0100 // "vertical"
+#define JO2_CURWIN 0x0200 // "curwin"
+#define JO2_HIDDEN 0x0400 // "hidden"
+#define JO2_TERM_OPENCMD 0x0800 // "term_opencmd"
+#define JO2_EOF_CHARS 0x1000 // "eof_chars"
+#define JO2_NORESTORE 0x2000 // "norestore"
+#define JO2_TERM_KILL 0x4000 // "term_kill"
+#define JO2_ANSI_COLORS 0x8000 // "ansi_colors"
+#define JO2_TTY_TYPE 0x10000 // "tty_type"
+#define JO2_BUFNR 0x20000 // "bufnr"
#define JO_MODE_ALL (JO_MODE + JO_IN_MODE + JO_OUT_MODE + JO_ERR_MODE)
#define JO_CB_ALL \
@@ -1823,8 +1826,8 @@ struct channel_S {
*/
typedef struct
{
- int jo_set; /* JO_ bits for values that were set */
- int jo_set2; /* JO2_ bits for values that were set */
+ int jo_set; // JO_ bits for values that were set
+ int jo_set2; // JO2_ bits for values that were set
ch_mode_T jo_mode;
ch_mode_T jo_in_mode;
@@ -1832,9 +1835,9 @@ typedef struct
ch_mode_T jo_err_mode;
int jo_noblock;
- job_io_T jo_io[4]; /* PART_OUT, PART_ERR, PART_IN */
+ job_io_T jo_io[4]; // PART_OUT, PART_ERR, PART_IN
char_u jo_io_name_buf[4][NUMBUFLEN];
- char_u *jo_io_name[4]; /* not allocated! */
+ char_u *jo_io_name[4]; // not allocated!
int jo_io_buf[4];
int jo_pty;
int jo_modifiable[4];
@@ -1854,17 +1857,17 @@ typedef struct
int jo_timeout;
int jo_out_timeout;
int jo_err_timeout;
- int jo_block_write; /* for testing only */
+ int jo_block_write; // for testing only
int jo_part;
int jo_id;
char_u jo_soe_buf[NUMBUFLEN];
char_u *jo_stoponexit;
- dict_T *jo_env; /* environment variables */
+ dict_T *jo_env; // environment variables
char_u jo_cwd_buf[NUMBUFLEN];
char_u *jo_cwd;
#ifdef FEAT_TERMINAL
- /* when non-zero run the job in a terminal window of this size */
+ // when non-zero run the job in a terminal window of this size
int jo_term_rows;
int jo_term_cols;
int jo_vertical;
@@ -1897,14 +1900,18 @@ struct listener_S
};
#endif
-/* structure used for explicit stack while garbage collecting hash tables */
+/*
+ * structure used for explicit stack while garbage collecting hash tables
+ */
typedef struct ht_stack_S
{
hashtab_T *ht;
struct ht_stack_S *prev;
} ht_stack_T;
-/* structure used for explicit stack while garbage collecting lists */
+/*
+ * structure used for explicit stack while garbage collecting lists
+ */
typedef struct list_stack_S
{
list_T *list;
@@ -1921,12 +1928,12 @@ typedef struct
hashitem_T *dit_hi;
} dict_iterator_T;
-/* values for b_syn_spell: what to do with toplevel text */
-#define SYNSPL_DEFAULT 0 /* spell check if @Spell not defined */
-#define SYNSPL_TOP 1 /* spell check toplevel text */
-#define SYNSPL_NOTOP 2 /* don't spell check toplevel text */
+// values for b_syn_spell: what to do with toplevel text
+#define SYNSPL_DEFAULT 0 // spell check if @Spell not defined
+#define SYNSPL_TOP 1 // spell check toplevel text
+#define SYNSPL_NOTOP 2 // don't spell check toplevel text
-/* avoid #ifdefs for when b_spell is not available */
+// avoid #ifdefs for when b_spell is not available
#ifdef FEAT_SPELL
# define B_SPELL(buf) ((buf)->b_spell)
#else
@@ -1942,10 +1949,10 @@ typedef struct qf_info_S qf_info_T;
* Used for :syntime: timing of executing a syntax pattern.
*/
typedef struct {
- proftime_T total; /* total time used */
- proftime_T slowest; /* time of slowest call */
- long count; /* nr of times used */
- long match; /* nr of times matched */
+ proftime_T total; // total time used
+ proftime_T slowest; // time of slowest call
+ long count; // nr of times used
+ long match; // nr of times matched
} syn_time_T;
#endif
@@ -1973,14 +1980,14 @@ struct timer_S
*/
typedef struct {
int method_nr;
- void *method_state; /* method-specific state information */
+ void *method_state; // method-specific state information
} cryptstate_T;
-/* values for method_nr */
+// values for method_nr
# define CRYPT_M_ZIP 0
# define CRYPT_M_BF 1
# define CRYPT_M_BF2 2
-# define CRYPT_M_COUNT 3 /* number of crypt methods */
+# define CRYPT_M_COUNT 3 // number of crypt methods
// Currently all crypt methods work inplace. If one is added that isn't then
// define this.
@@ -2014,38 +2021,38 @@ typedef enum {
*/
typedef struct {
#ifdef FEAT_SYN_HL
- hashtab_T b_keywtab; /* syntax keywords hash table */
- hashtab_T b_keywtab_ic; /* idem, ignore case */
- int b_syn_error; /* TRUE when error occurred in HL */
+ hashtab_T b_keywtab; // syntax keywords hash table
+ hashtab_T b_keywtab_ic; // idem, ignore case
+ int b_syn_error; // TRUE when error occurred in HL
# ifdef FEAT_RELTIME
- int b_syn_slow; /* TRUE when 'redrawtime' reached */
+ int b_syn_slow; // TRUE when 'redrawtime' reached
# endif
- int b_syn_ic; /* ignore case for :syn cmds */
- int b_syn_spell; /* SYNSPL_ values */
- garray_T b_syn_patterns; /* table for syntax patterns */
- garray_T b_syn_clusters; /* table for syntax clusters */
- int b_spell_cluster_id; /* @Spell cluster ID or 0 */
- int b_nospell_cluster_id; /* @NoSpell cluster ID or 0 */
- int b_syn_containedin; /* TRUE when there is an item with a
- "containedin" argument */
- int b_syn_sync_flags; /* flags about how to sync */
- short b_syn_sync_id; /* group to sync on */
- long b_syn_sync_minlines; /* minimal sync lines offset */
- long b_syn_sync_maxlines; /* maximal sync lines offset */
- long b_syn_sync_linebreaks; /* offset for multi-line pattern */
- char_u *b_syn_linecont_pat; /* line continuation pattern */
- regprog_T *b_syn_linecont_prog; /* line continuation program */
+ int b_syn_ic; // ignore case for :syn cmds
+ int b_syn_spell; // SYNSPL_ values
+ garray_T b_syn_patterns; // table for syntax patterns
+ garray_T b_syn_clusters; // table for syntax clusters
+ int b_spell_cluster_id; // @Spell cluster ID or 0
+ int b_nospell_cluster_id; // @NoSpell cluster ID or 0
+ int b_syn_containedin; // TRUE when there is an item with a
+ // "containedin" argument
+ int b_syn_sync_flags; // flags about how to sync
+ short b_syn_sync_id; // group to sync on
+ long b_syn_sync_minlines; // minimal sync lines offset
+ long b_syn_sync_maxlines; // maximal sync lines offset
+ long b_syn_sync_linebreaks; // offset for multi-line pattern
+ char_u *b_syn_linecont_pat; // line continuation pattern
+ regprog_T *b_syn_linecont_prog; // line continuation program
#ifdef FEAT_PROFILE
syn_time_T b_syn_linecont_time;
#endif
- int b_syn_linecont_ic; /* ignore-case flag for above */
- int b_syn_topgrp; /* for ":syntax include" */
+ int b_syn_linecont_ic; // ignore-case flag for above
+ int b_syn_topgrp; // for ":syntax include"
# ifdef FEAT_CONCEAL
- int b_syn_conceal; /* auto-conceal for :syn cmds */
+ int b_syn_conceal; // auto-conceal for :syn cmds
# endif
# ifdef FEAT_FOLDING
- int b_syn_folditems; /* number of patterns with the HL_FOLD
- flag set */
+ int b_syn_folditems; // number of patterns with the HL_FOLD
+ // flag set
# endif
/*
* b_sst_array[] contains the state stack for a number of lines, for the
@@ -2067,25 +2074,25 @@ typedef struct {
synstate_T *b_sst_firstfree;
int b_sst_freecount;
linenr_T b_sst_check_lnum;
- short_u b_sst_lasttick; /* last display tick */
-#endif /* FEAT_SYN_HL */
+ short_u b_sst_lasttick; // last display tick
+#endif // FEAT_SYN_HL
#ifdef FEAT_SPELL
- /* for spell checking */
- garray_T b_langp; /* list of pointers to slang_T, see spell.c */
- char_u b_spell_ismw[256];/* flags: is midword char */
- char_u *b_spell_ismw_mb; /* multi-byte midword chars */
- char_u *b_p_spc; /* 'spellcapcheck' */
- regprog_T *b_cap_prog; /* program for 'spellcapcheck' */
- char_u *b_p_spf; /* 'spellfile' */
- char_u *b_p_spl; /* 'spelllang' */
- int b_cjk; /* all CJK letters as OK */
+ // for spell checking
+ garray_T b_langp; // list of pointers to slang_T, see spell.c
+ char_u b_spell_ismw[256]; // flags: is midword char
+ char_u *b_spell_ismw_mb; // multi-byte midword chars
+ char_u *b_p_spc; // 'spellcapcheck'
+ regprog_T *b_cap_prog; // program for 'spellcapcheck'
+ char_u *b_p_spf; // 'spellfile'
+ char_u *b_p_spl; // 'spelllang'
+ int b_cjk; // all CJK letters as OK
#endif
#if !defined(FEAT_SYN_HL) && !defined(FEAT_SPELL)
int dummy;
#endif
- char_u b_syn_chartab[32]; /* syntax iskeyword option */
- char_u *b_syn_isk; /* iskeyword option */
+ char_u b_syn_chartab[32]; // syntax iskeyword option
+ char_u *b_syn_isk; // iskeyword option
} synblock_T;
@@ -2099,17 +2106,17 @@ typedef struct {
struct file_buffer
{
- memline_T b_ml; /* associated memline (also contains line
- count) */
+ memline_T b_ml; // associated memline (also contains line
+ // count)
- buf_T *b_next; /* links in list of buffers */
+ buf_T *b_next; // links in list of buffers
buf_T *b_prev;
- int b_nwindows; /* nr of windows open on this buffer */
+ int b_nwindows; // nr of windows open on this buffer
- int b_flags; /* various BF_ flags */
- int b_locked; /* Buffer is being closed or referenced, don't
- let autocommands wipe it out. */
+ int b_flags; // various BF_ flags
+ int b_locked; // Buffer is being closed or referenced, don't
+ // let autocommands wipe it out.
/*
* b_ffname has the full path of the file (NULL for no name).
@@ -2124,83 +2131,83 @@ struct file_buffer
// b_sfname
#ifdef UNIX
- int b_dev_valid; /* TRUE when b_dev has a valid number */
- dev_t b_dev; /* device number */
- ino_t b_ino; /* inode number */
+ int b_dev_valid; // TRUE when b_dev has a valid number
+ dev_t b_dev; // device number
+ ino_t b_ino; // inode number
#endif
#ifdef FEAT_CW_EDITOR
- FSSpec b_FSSpec; /* MacOS File Identification */
+ FSSpec b_FSSpec; // MacOS File Identification
#endif
#ifdef VMS
- char b_fab_rfm; /* Record format */
- char b_fab_rat; /* Record attribute */
- unsigned int b_fab_mrs; /* Max record size */
+ char b_fab_rfm; // Record format
+ char b_fab_rat; // Record attribute
+ unsigned int b_fab_mrs; // Max record size
#endif
- int b_fnum; /* buffer number for this file. */
+ int b_fnum; // buffer number for this file.
char_u b_key[VIM_SIZEOF_INT * 2 + 1];
- /* key used for buf_hashtab, holds b_fnum as
- hex string */
-
- int b_changed; /* 'modified': Set to TRUE if something in the
- file has been changed and not written out. */
- dictitem16_T b_ct_di; /* holds the b:changedtick value in
- b_ct_di.di_tv.vval.v_number;
- incremented for each change, also for undo */
+ // key used for buf_hashtab, holds b_fnum as
+ // hex string
+
+ int b_changed; // 'modified': Set to TRUE if something in the
+ // file has been changed and not written out.
+ dictitem16_T b_ct_di; // holds the b:changedtick value in
+ // b_ct_di.di_tv.vval.v_number;
+ // incremented for each change, also for undo
#define CHANGEDTICK(buf) ((buf)->b_ct_di.di_tv.vval.v_number)
- varnumber_T b_last_changedtick; /* b:changedtick when TextChanged or
- TextChangedI was last triggered. */
+ varnumber_T b_last_changedtick; // b:changedtick when TextChanged or
+ // TextChangedI was last triggered.
#ifdef FEAT_INS_EXPAND
- varnumber_T b_last_changedtick_pum; /* b:changedtick when TextChangedP was
- last triggered. */
+ varnumber_T b_last_changedtick_pum; // b:changedtick when TextChangedP was
+ // last triggered.
#endif
- int b_saving; /* Set to TRUE if we are in the middle of
- saving the buffer. */
+ int b_saving; // Set to TRUE if we are in the middle of
+ // saving the buffer.
/*
* Changes to a buffer require updating of the display. To minimize the
* work, remember changes made and update everything at once.
*/
- int b_mod_set; /* TRUE when there are changes since the last
- time the display was updated */
- linenr_T b_mod_top; /* topmost lnum that was changed */
- linenr_T b_mod_bot; /* lnum below last changed line, AFTER the
- change */
- long b_mod_xlines; /* number of extra buffer lines inserted;
- negative when lines were deleted */
-
- wininfo_T *b_wininfo; /* list of last used info for each window */
-
- long b_mtime; /* last change time of original file */
- long b_mtime_read; /* last change time when reading */
- off_T b_orig_size; /* size of original file in bytes */
- int b_orig_mode; /* mode of original file */
+ int b_mod_set; // TRUE when there are changes since the last
+ // time the display was updated
+ linenr_T b_mod_top; // topmost lnum that was changed
+ linenr_T b_mod_bot; // lnum below last changed line, AFTER the
+ // change
+ long b_mod_xlines; // number of extra buffer lines inserted;
+ // negative when lines were deleted
+
+ wininfo_T *b_wininfo; // list of last used info for each window
+
+ long b_mtime; // last change time of original file
+ long b_mtime_read; // last change time when reading
+ off_T b_orig_size; // size of original file in bytes
+ int b_orig_mode; // mode of original file
#ifdef FEAT_VIMINFO
- time_T b_last_used; /* time when the buffer was last used; used
- * for viminfo */
+ time_T b_last_used; // time when the buffer was last used; used
+ // for viminfo
#endif
- pos_T b_namedm[NMARKS]; /* current named marks (mark.c) */
+ pos_T b_namedm[NMARKS]; // current named marks (mark.c)
- /* These variables are set when VIsual_active becomes FALSE */
+ // These variables are set when VIsual_active becomes FALSE
visualinfo_T b_visual;
#ifdef FEAT_EVAL
- int b_visual_mode_eval; /* b_visual.vi_mode for visualmode() */
+ int b_visual_mode_eval; // b_visual.vi_mode for visualmode()
#endif
- pos_T b_last_cursor; /* cursor position when last unloading this
- buffer */
- pos_T b_last_insert; /* where Insert mode was left */
- pos_T b_last_change; /* position of last change: '. mark */
+ pos_T b_last_cursor; // cursor position when last unloading this
+ // buffer
+ pos_T b_last_insert; // where Insert mode was left
+ pos_T b_last_change; // position of last change: '. mark
#ifdef FEAT_JUMPLIST
/*
* the changelist contains old change positions
*/
pos_T b_changelist[JUMPLISTSIZE];
- int b_changelistlen; /* number of active entries */
- int b_new_change; /* set by u_savecommon() */
+ int b_changelistlen; // number of active entries
+ int b_new_change; // set by u_savecommon()
#endif
/*
@@ -2210,65 +2217,63 @@ struct file_buffer
char_u b_chartab[32];
#ifdef FEAT_LOCALMAP
- /* Table used for mappings local to a buffer. */
+ // Table used for mappings local to a buffer.
mapblock_T *(b_maphash[256]);
- /* First abbreviation local to a buffer. */
+ // First abbreviation local to a buffer.
mapblock_T *b_first_abbr;
#endif
// User commands local to the buffer.
garray_T b_ucmds;
- /*
- * start and end of an operator, also used for '[ and ']
- */
+ // start and end of an operator, also used for '[ and ']
pos_T b_op_start;
pos_T b_op_start_orig; /* used for Insstart_orig */
pos_T b_op_end;
#ifdef FEAT_VIMINFO
- int b_marks_read; /* Have we read viminfo marks yet? */
+ int b_marks_read; // Have we read viminfo marks yet?
#endif
/*
* The following only used in undo.c.
*/
- u_header_T *b_u_oldhead; /* pointer to oldest header */
- u_header_T *b_u_newhead; /* pointer to newest header; may not be valid
- if b_u_curhead is not NULL */
- u_header_T *b_u_curhead; /* pointer to current header */
- int b_u_numhead; /* current number of headers */
- int b_u_synced; /* entry lists are synced */
- long b_u_seq_last; /* last used undo sequence number */
- long b_u_save_nr_last; /* counter for last file write */
- long b_u_seq_cur; /* hu_seq of header below which we are now */
- time_T b_u_time_cur; /* uh_time of header below which we are now */
- long b_u_save_nr_cur; /* file write nr after which we are now */
+ u_header_T *b_u_oldhead; // pointer to oldest header
+ u_header_T *b_u_newhead; // pointer to newest header; may not be valid
+ // if b_u_curhead is not NULL
+ u_header_T *b_u_curhead; // pointer to current header
+ int b_u_numhead; // current number of headers
+ int b_u_synced; // entry lists are synced
+ long b_u_seq_last; // last used undo sequence number
+ long b_u_save_nr_last; // counter for last file write
+ long b_u_seq_cur; // hu_seq of header below which we are now
+ time_T b_u_time_cur; // uh_time of header below which we are now
+ long b_u_save_nr_cur; // file write nr after which we are now
/*
* variables for "U" command in undo.c
*/
- undoline_T b_u_line_ptr; /* saved line for "U" command */
- linenr_T b_u_line_lnum; /* line number of line in u_line */
- colnr_T b_u_line_colnr; /* optional column number */
+ undoline_T b_u_line_ptr; // saved line for "U" command
+ linenr_T b_u_line_lnum; // line number of line in u_line
+ colnr_T b_u_line_colnr; // optional column number
#ifdef FEAT_INS_EXPAND
- int b_scanned; /* ^N/^P have scanned this buffer */
+ int b_scanned; // ^N/^P have scanned this buffer
#endif
- /* flags for use of ":lmap" and IM control */
- long b_p_iminsert; /* input mode for insert */
- long b_p_imsearch; /* input mode for search */
-#define B_IMODE_USE_INSERT -1 /* Use b_p_iminsert value for search */
-#define B_IMODE_NONE 0 /* Input via none */
-#define B_IMODE_LMAP 1 /* Input via langmap */
-#define B_IMODE_IM 2 /* Input via input method */
+ // flags for use of ":lmap" and IM control
+ long b_p_iminsert; // input mode for insert
+ long b_p_imsearch; // input mode for search
+#define B_IMODE_USE_INSERT -1 // Use b_p_iminsert value for search
+#define B_IMODE_NONE 0 // Input via none
+#define B_IMODE_LMAP 1 // Input via langmap
+#define B_IMODE_IM 2 // Input via input method
#define B_IMODE_LAST 2
#ifdef FEAT_KEYMAP
- short b_kmap_state; /* using "lmap" mappings */
-# define KEYMAP_INIT 1 /* 'keymap' was set, call keymap_init() */
-# define KEYMAP_LOADED 2 /* 'keymap' mappings have been loaded */
- garray_T b_kmap_ga; /* the keymap table */
+ short b_kmap_state; // using "lmap" mappings
+# define KEYMAP_INIT 1 // 'keymap' was set, call keymap_init()
+# define KEYMAP_LOADED 2 // 'keymap' mappings have been loaded
+ garray_T b_kmap_ga; // the keymap table
#endif
/*
@@ -2276,164 +2281,168 @@ struct file_buffer
* They are here because their value depends on the type of file
* or contents of the file being edited.
*/
- int b_p_initialized; /* set when options initialized */
+ int b_p_initialized; // set when options initialized
#ifdef FEAT_EVAL
- sctx_T b_p_script_ctx[BV_COUNT]; /* SCTXs for buffer-local options */
-#endif
-
- int b_p_ai; /* 'autoindent' */
- int b_p_ai_nopaste; /* b_p_ai saved for paste mode */
- char_u *b_p_bkc; /* 'backupcopy' */
- unsigned b_bkc_flags; /* flags for 'backupcopy' */
- int b_p_ci; /* 'copyindent' */
- int b_p_bin; /* 'binary' */
- int b_p_bomb; /* 'bomb' */
- char_u *b_p_bh; /* 'bufhidden' */
- char_u *b_p_bt; /* 'buftype' */
+ sctx_T b_p_script_ctx[BV_COUNT]; // SCTXs for buffer-local options
+#endif
+
+ int b_p_ai; // 'autoindent'
+ int b_p_ai_nopaste; // b_p_ai saved for paste mode
+ char_u *b_p_bkc; // 'backupcopy'
+ unsigned b_bkc_flags; // flags for 'backupcopy'
+ int b_p_ci; // 'copyindent'
+ int b_p_bin; // 'binary'
+ int b_p_bomb; // 'bomb'
+ char_u *b_p_bh; // 'bufhidden'
+ char_u *b_p_bt; // 'buftype'
#ifdef FEAT_QUICKFIX
#define BUF_HAS_QF_ENTRY 1
#define BUF_HAS_LL_ENTRY 2
int b_has_qf_entry;
#endif
- int b_p_bl; /* 'buflisted' */
+ int b_p_bl; // 'buflisted'
#ifdef FEAT_CINDENT
- int b_p_cin; /* 'cindent' */
- char_u *b_p_cino; /* 'cinoptions' */
- char_u *b_p_cink; /* 'cinkeys' */
+ int b_p_cin; // 'cindent'
+ char_u *b_p_cino; // 'cinoptions'
+ char_u *b_p_cink; // 'cinkeys'
#endif
#if defined(FEAT_CINDENT) || defined(FEAT_SMARTINDENT)
- char_u *b_p_cinw; /* 'cinwords' */
+ char_u *b_p_cinw; // 'cinwords'
#endif
#ifdef FEAT_COMMENTS
- char_u *b_p_com; /* 'comments' */
+ char_u *b_p_com; // 'comments'
#endif
#ifdef FEAT_FOLDING
- char_u *b_p_cms; /* 'commentstring' */
+ char_u *b_p_cms; // 'commentstring'
#endif
#ifdef FEAT_INS_EXPAND
- char_u *b_p_cpt; /* 'complete' */
+ char_u *b_p_cpt; // 'complete'
#endif
#ifdef FEAT_COMPL_FUNC
- char_u *b_p_cfu; /* 'completefunc' */
- char_u *b_p_ofu; /* 'omnifunc' */
+ char_u *b_p_cfu; // 'completefunc'
+ char_u *b_p_ofu; // 'omnifunc'
#endif
#ifdef FEAT_EVAL
- char_u *b_p_tfu; /* 'tagfunc' */
-#endif
- int b_p_eol; /* 'endofline' */
- int b_p_fixeol; /* 'fixendofline' */
- int b_p_et; /* 'expandtab' */
- int b_p_et_nobin; /* b_p_et saved for binary mode */
- int b_p_et_nopaste; /* b_p_et saved for paste mode */
- char_u *b_p_fenc; /* 'fileencoding' */
- char_u *b_p_ff; /* 'fileformat' */
- char_u *b_p_ft; /* 'filetype' */
- char_u *b_p_fo; /* 'formatoptions' */
- char_u *b_p_flp; /* 'formatlistpat' */
- int b_p_inf; /* 'infercase' */
- char_u *b_p_isk; /* 'iskeyword' */
+ char_u *b_p_tfu; // 'tagfunc'
+#endif
+ int b_p_eol; // 'endofline'
+ int b_p_fixeol; // 'fixendofline'
+ int b_p_et; // 'expandtab'
+ int b_p_et_nobin; // b_p_et saved for binary mode
+ int b_p_et_nopaste; // b_p_et saved for paste mode
+ char_u *b_p_fenc; // 'fileencoding'
+ char_u *b_p_ff; // 'fileformat'
+ char_u *b_p_ft; // 'filetype'
+ char_u *b_p_fo; // 'formatoptions'
+ char_u *b_p_flp; // 'formatlistpat'
+ int b_p_inf; // 'infercase'
+ char_u *b_p_isk; // 'iskeyword'
#ifdef FEAT_FIND_ID
- char_u *b_p_def; /* 'define' local value */
- char_u *b_p_inc; /* 'include' */
+ char_u *b_p_def; // 'define' local value
+ char_u *b_p_inc; // 'include'
# ifdef FEAT_EVAL
- char_u *b_p_inex; /* 'includeexpr' */
- long_u b_p_inex_flags; /* flags for 'includeexpr' */
+ char_u *b_p_inex; // 'includeexpr'
+ long_u b_p_inex_flags; // flags for 'includeexpr'
# endif
#endif
#if defined(FEAT_CINDENT) && defined(FEAT_EVAL)
- char_u *b_p_inde; /* 'indentexpr' */
- long_u b_p_inde_flags; /* flags for 'indentexpr' */
- char_u *b_p_indk; /* 'indentkeys' */
+ char_u *b_p_inde; // 'indentexpr'
+ long_u b_p_inde_flags; // flags for 'indentexpr'
+ char_u *b_p_indk; // 'indentkeys'
#endif
- char_u *b_p_fp; /* 'formatprg' */
+ char_u *b_p_fp; // 'formatprg'
#if defined(FEAT_EVAL)
- char_u *b_p_fex; /* 'formatexpr' */
- long_u b_p_fex_flags; /* flags for 'formatexpr' */
+ char_u *b_p_fex; // 'formatexpr'
+ long_u b_p_fex_flags; // flags for 'formatexpr'
#endif
#ifdef FEAT_CRYPT
- char_u *b_p_key; /* 'key' */
+ char_u *b_p_key; // 'key'
#endif
- char_u *b_p_kp; /* 'keywordprg' */
+ char_u *b_p_kp; // 'keywordprg'
#ifdef FEAT_LISP
- int b_p_lisp; /* 'lisp' */
-#endif
- char_u *b_p_menc; /* 'makeencoding' */
- char_u *b_p_mps; /* 'matchpairs' */
- int b_p_ml; /* 'modeline' */
- int b_p_ml_nobin; /* b_p_ml saved for binary mode */
- int b_p_ma; /* 'modifiable' */
- char_u *b_p_nf; /* 'nrformats' */
- int b_p_pi; /* 'preserveindent' */
+ int b_p_lisp; // 'lisp'
+#endif
+ char_u *b_p_menc; // 'makeencoding'
+ char_u *b_p_mps; // 'matchpairs'
+ int b_p_ml; // 'modeline'
+ int b_p_ml_nobin; // b_p_ml saved for binary mode
+ int b_p_ma; // 'modifiable'
+ char_u *b_p_nf; // 'nrformats'
+ int b_p_pi; // 'preserveindent'
#ifdef FEAT_TEXTOBJ
- char_u *b_p_qe; /* 'quoteescape' */
+ char_u *b_p_qe; // 'quoteescape'
#endif
- int b_p_ro; /* 'readonly' */
- long b_p_sw; /* 'shiftwidth' */
- int b_p_sn; /* 'shortname' */
+ int b_p_ro; // 'readonly'
+ long b_p_sw; // 'shiftwidth'
+ int b_p_sn; // 'shortname'
#ifdef FEAT_SMARTINDENT
- int b_p_si; /* 'smartindent' */
+ int b_p_si; // 'smartindent'
#endif
- long b_p_sts; /* 'softtabstop' */
- long b_p_sts_nopaste; /* b_p_sts saved for paste mode */
+ long b_p_sts; // 'softtabstop'
+ long b_p_sts_nopaste; // b_p_sts saved for paste mode
#ifdef FEAT_SEARCHPATH
- char_u *b_p_sua; /* 'suffixesadd' */
+ char_u *b_p_sua; // 'suffixesadd'
#endif
- int b_p_swf; /* 'swapfile' */
+ int b_p_swf; // 'swapfile'
#ifdef FEAT_SYN_HL
- long b_p_smc; /* 'synmaxcol' */
- char_u *b_p_syn; /* 'syntax' */
-#endif
- long b_p_ts; /* 'tabstop' */
- int b_p_tx; /* 'textmode' */
- long b_p_tw; /* 'textwidth' */
- long b_p_tw_nobin; /* b_p_tw saved for binary mode */
- long b_p_tw_nopaste; /* b_p_tw saved for paste mode */
- long b_p_wm; /* 'wrapmargin' */
- long b_p_wm_nobin; /* b_p_wm saved for binary mode */
- long b_p_wm_nopaste; /* b_p_wm saved for paste mode */
+ long b_p_smc; // 'synmaxcol'
+ char_u *b_p_syn; // 'syntax'
+#endif
+ long b_p_ts; // 'tabstop'
+ int b_p_tx; // 'textmode'
+ long b_p_tw; // 'textwidth'
+ long b_p_tw_nobin; // b_p_tw saved for binary mode
+ long b_p_tw_nopaste; // b_p_tw saved for paste mode
+ long b_p_wm; // 'wrapmargin'
+ long b_p_wm_nobin; // b_p_wm saved for binary mode
+ long b_p_wm_nopaste; // b_p_wm saved for paste mode
#ifdef FEAT_VARTABS
- char_u *b_p_vsts; /* 'varsofttabstop' */
- int *b_p_vsts_array; /* 'varsofttabstop' in internal format */
- char_u *b_p_vsts_nopaste; /* b_p_vsts saved for paste mode */
- char_u *b_p_vts; /* 'vartabstop' */
- int *b_p_vts_array; /* 'vartabstop' in internal format */
+ char_u *b_p_vsts; // 'varsofttabstop'
+ int *b_p_vsts_array; // 'varsofttabstop' in internal format
+ char_u *b_p_vsts_nopaste; // b_p_vsts saved for paste mode
+ char_u *b_p_vts; // 'vartabstop'
+ int *b_p_vts_array; // 'vartabstop' in internal format
#endif
#ifdef FEAT_KEYMAP
- char_u *b_p_keymap; /* 'keymap' */
+ char_u *b_p_keymap; // 'keymap'
#endif
- /* local values for options which are normally global */
+ /*
+ * local values for options which are normally global
+ */
#ifdef FEAT_QUICKFIX
- char_u *b_p_gp; /* 'grepprg' local value */
- char_u *b_p_mp; /* 'makeprg' local value */
- char_u *b_p_efm; /* 'errorformat' local value */
-#endif
- char_u *b_p_ep; /* 'equalprg' local value */
- char_u *b_p_path; /* 'path' local value */
- int b_p_ar; /* 'autoread' local value */
- char_u *b_p_tags; /* 'tags' local value */
- char_u *b_p_tc; /* 'tagcase' local value */
- unsigned b_tc_flags; /* flags for 'tagcase' */
+ char_u *b_p_gp; // 'grepprg' local value
+ char_u *b_p_mp; // 'makeprg' local value
+ char_u *b_p_efm; // 'errorformat' local value
+#endif
+ char_u *b_p_ep; // 'equalprg' local value
+ char_u *b_p_path; // 'path' local value
+ int b_p_ar; // 'autoread' local value
+ char_u *b_p_tags; // 'tags' local value
+ char_u *b_p_tc; // 'tagcase' local value
+ unsigned b_tc_flags; // flags for 'tagcase'
#ifdef FEAT_INS_EXPAND
- char_u *b_p_dict; /* 'dictionary' local value */
- char_u *b_p_tsr; /* 'thesaurus' local value */
+ char_u *b_p_dict; // 'dictionary' local value
+ char_u *b_p_tsr; // 'thesaurus' local value
#endif
- long b_p_ul; /* 'undolevels' local value */
+ long b_p_ul; // 'undolevels' local value
#ifdef FEAT_PERSISTENT_UNDO
- int b_p_udf; /* 'undofile' */
+ int b_p_udf; // 'undofile'
#endif
#ifdef FEAT_LISP
- char_u *b_p_lw; /* 'lispwords' local value */
+ char_u *b_p_lw; // 'lispwords' local value
#endif
#ifdef FEAT_TERMINAL
- long b_p_twsl; /* 'termwinscroll' */
+ long b_p_twsl; // 'termwinscroll'
#endif
- /* end of buffer options */
+ /*
+ * end of buffer options
+ */
#ifdef FEAT_CINDENT
- /* values set from b_p_cino */
+ // values set from b_p_cino
int b_ind_level;
int b_ind_open_imag;
int b_ind_no_brace;
@@ -2472,18 +2481,18 @@ struct file_buffer
int b_ind_cpp_extern_c;
#endif
- linenr_T b_no_eol_lnum; /* non-zero lnum when last line of next binary
- * write should not have an end-of-line */
+ linenr_T b_no_eol_lnum; // non-zero lnum when last line of next binary
+ // write should not have an end-of-line
- int b_start_eol; /* last line had eol when it was read */
- int b_start_ffc; /* first char of 'ff' when edit started */
- char_u *b_start_fenc; /* 'fileencoding' when edit started or NULL */
- int b_bad_char; /* "++bad=" argument when edit started or 0 */
- int b_start_bomb; /* 'bomb' when it was read */
+ int b_start_eol; // last line had eol when it was read
+ int b_start_ffc; // first char of 'ff' when edit started
+ char_u *b_start_fenc; // 'fileencoding' when edit started or NULL
+ int b_bad_char; // "++bad=" argument when edit started or 0
+ int b_start_bomb; // 'bomb' when it was read
#ifdef FEAT_EVAL
- dictitem_T b_bufvar; /* variable for "b:" Dictionary */
- dict_T *b_vars; /* internal variables, local to buffer */
+ dictitem_T b_bufvar; // variable for "b:" Dictionary
+ dict_T *b_vars; // internal variables, local to buffer
listener_T *b_listener;
list_T *b_recorded_changes;
@@ -2494,35 +2503,33 @@ struct file_buffer
#endif
#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
- char_u *b_p_bexpr; /* 'balloonexpr' local value */
- long_u b_p_bexpr_flags;/* flags for 'balloonexpr' */
+ char_u *b_p_bexpr; // 'balloonexpr' local value
+ long_u b_p_bexpr_flags;// flags for 'balloonexpr'
#endif
#ifdef FEAT_CRYPT
- char_u *b_p_cm; /* 'cryptmethod' */
+ char_u *b_p_cm; // 'cryptmethod'
#endif
- /* When a buffer is created, it starts without a swap file. b_may_swap is
- * then set to indicate that a swap file may be opened later. It is reset
- * if a swap file could not be opened.
- */
+ // When a buffer is created, it starts without a swap file. b_may_swap is
+ // then set to indicate that a swap file may be opened later. It is reset
+ // if a swap file could not be opened.
int b_may_swap;
- int b_did_warn; /* Set to 1 if user has been warned on first
- change of a read-only file */
-
- /* Two special kinds of buffers:
- * help buffer - used for help files, won't use a swap file.
- * spell buffer - used for spell info, never displayed and doesn't have a
- * file name.
- */
- int b_help; /* TRUE for help file buffer (when set b_p_bt
- is "help") */
+ int b_did_warn; // Set to 1 if user has been warned on first
+ // change of a read-only file
+
+ // Two special kinds of buffers:
+ // help buffer - used for help files, won't use a swap file.
+ // spell buffer - used for spell info, never displayed and doesn't have a
+ // file name.
+ int b_help; // TRUE for help file buffer (when set b_p_bt
+ // is "help")
#ifdef FEAT_SPELL
- int b_spell; /* TRUE for a spell file buffer, most fields
- are not used! Use the B_SPELL macro to
- access b_spell without #ifdef. */
+ int b_spell; // TRUE for a spell file buffer, most fields
+ // are not used! Use the B_SPELL macro to
+ // access b_spell without #ifdef.
#endif
- int b_shortname; /* this file has an 8.3 file name */
+ int b_shortname; // this file has an 8.3 file name
#ifdef FEAT_JOB_CHANNEL
char_u *b_prompt_text; // set by prompt_setprompt()
@@ -2532,7 +2539,7 @@ struct file_buffer
// a prompt buffer window.
#endif
#ifdef FEAT_MZSCHEME
- void *b_mzscheme_ref; /* The MzScheme reference to this buffer */
+ void *b_mzscheme_ref; // The MzScheme reference to this buffer
#endif
#ifdef FEAT_PERL
@@ -2540,11 +2547,11 @@ struct file_buffer
#endif
#ifdef FEAT_PYTHON
- void *b_python_ref; /* The Python reference to this buffer */
+ void *b_python_ref; // The Python reference to this buffer
#endif
#ifdef FEAT_PYTHON3
- void *b_python3_ref; /* The Python3 reference to this buffer */
+ void *b_python3_ref; // The Python3 reference to this buffer
#endif
#ifdef FEAT_TCL
@@ -2556,50 +2563,50 @@ struct file_buffer
#endif
#if defined(FEAT_SYN_HL) || defined(FEAT_SPELL)
- synblock_T b_s; /* Info related to syntax highlighting. w_s
- * normally points to this, but some windows
- * may use a different synblock_T. */
+ synblock_T b_s; // Info related to syntax highlighting. w_s
+ // normally points to this, but some windows
+ // may use a different synblock_T.
#endif
#ifdef FEAT_SIGNS
- signlist_T *b_signlist; /* list of signs to draw */
+ signlist_T *b_signlist; // list of signs to draw
# ifdef FEAT_NETBEANS_INTG
- int b_has_sign_column; /* Flag that is set when a first sign is
- * added and remains set until the end of
- * the netbeans session. */
+ int b_has_sign_column; // Flag that is set when a first sign is
+ // added and remains set until the end of
+ // the netbeans session.
# endif
#endif
#ifdef FEAT_NETBEANS_INTG
- int b_netbeans_file; /* TRUE when buffer is owned by NetBeans */
- int b_was_netbeans_file;/* TRUE if b_netbeans_file was once set */
+ int b_netbeans_file; // TRUE when buffer is owned by NetBeans
+ int b_was_netbeans_file;// TRUE if b_netbeans_file was once set
#endif
#ifdef FEAT_JOB_CHANNEL
- int b_write_to_channel; /* TRUE when appended lines are written to
- * a channel. */
+ int b_write_to_channel; // TRUE when appended lines are written to
+ // a channel.
#endif
#ifdef FEAT_CRYPT
- cryptstate_T *b_cryptstate; /* Encryption state while reading or writing
- * the file. NULL when not using encryption. */
+ cryptstate_T *b_cryptstate; // Encryption state while reading or writing
+ // the file. NULL when not using encryption.
#endif
- int b_mapped_ctrl_c; /* modes where CTRL-C is mapped */
+ int b_mapped_ctrl_c; // modes where CTRL-C is mapped
#ifdef FEAT_TERMINAL
- term_T *b_term; /* When not NULL this buffer is for a terminal
- * window. */
+ term_T *b_term; // When not NULL this buffer is for a terminal
+ // window.
#endif
#ifdef FEAT_DIFF
int b_diff_failed; // internal diff failed for this buffer
#endif
-}; /* file_buffer */
+}; // file_buffer
#ifdef FEAT_DIFF
/*
* Stuff for diff mode.
*/
-# define DB_COUNT 8 /* up to eight buffers can be diff'ed */
+# define DB_COUNT 8 // up to eight buffers can be diff'ed
/*
* Each diffblock defines where a block of lines starts in each of the buffers
@@ -2619,8 +2626,8 @@ typedef struct diffblock_S diff_T;
struct diffblock_S
{
diff_T *df_next;
- linenr_T df_lnum[DB_COUNT]; /* line number in buffer */
- linenr_T df_count[DB_COUNT]; /* nr of inserted/changed lines */
+ linenr_T df_lnum[DB_COUNT]; // line number in buffer
+ linenr_T df_count[DB_COUNT]; // nr of inserted/changed lines
};
#endif
@@ -2692,12 +2699,12 @@ struct tabpage_S
*/
typedef struct w_line
{
- linenr_T wl_lnum; /* buffer line number for logical line */
- short_u wl_size; /* height in screen lines */
- char wl_valid; /* TRUE values are valid for text in buffer */
+ linenr_T wl_lnum; // buffer line number for logical line
+ short_u wl_size; // height in screen lines
+ char wl_valid; // TRUE values are valid for text in buffer
#ifdef FEAT_FOLDING
- char wl_folded; /* TRUE when this is a range of folded lines */
- linenr_T wl_lastlnum; /* last buffer line number for logical line */
+ char wl_folded; // TRUE when this is a range of folded lines
+ linenr_T wl_lastlnum; // last buffer line number for logical line
#endif
} wline_T;
@@ -2722,9 +2729,9 @@ struct frame_S
win_T *fr_win; // window that fills this frame
};
-#define FR_LEAF 0 /* frame is a leaf */
-#define FR_ROW 1 /* frame with a row of windows */
-#define FR_COL 2 /* frame with a column of windows */
+#define FR_LEAF 0 // frame is a leaf
+#define FR_ROW 1 // frame with a row of windows
+#define FR_COL 2 // frame with a column of windows
/*
* Struct used for highlighting 'hlsearch' matches, matches defined by
@@ -2734,23 +2741,23 @@ struct frame_S
*/
typedef struct
{
- regmmatch_T rm; /* points to the regexp program; contains last found
- match (may continue in next line) */
- buf_T *buf; /* the buffer to search for a match */
- linenr_T lnum; /* the line to search for a match */
- int attr; /* attributes to be used for a match */
- int attr_cur; /* attributes currently active in win_line() */
- linenr_T first_lnum; /* first lnum to search for multi-line pat */
- colnr_T startcol; /* in win_line() points to char where HL starts */
- colnr_T endcol; /* in win_line() points to char where HL ends */
- int is_addpos; /* position specified directly by
- matchaddpos(). TRUE/FALSE */
+ regmmatch_T rm; // points to the regexp program; contains last
+ // found match (may continue in next line)
+ buf_T *buf; // the buffer to search for a match
+ linenr_T lnum; // the line to search for a match
+ int attr; // attributes to be used for a match
+ int attr_cur; // attributes currently active in win_line()
+ linenr_T first_lnum; // first lnum to search for multi-line pat
+ colnr_T startcol; // in win_line() points to char where HL starts
+ colnr_T endcol; // in win_line() points to char where HL ends
+ int is_addpos; // position specified directly by
+ // matchaddpos(). TRUE/FALSE
#ifdef FEAT_RELTIME
- proftime_T tm; /* for a time limit */
+ proftime_T tm; // for a time limit
#endif
} match_T;
-/* number of positions supported by matchaddpos() */
+// number of positions supported by matchaddpos()
#define MAXPOSMATCH 8
/*
@@ -2758,9 +2765,9 @@ typedef struct
*/
typedef struct
{
- linenr_T lnum; /* line number */
- colnr_T col; /* column number */
- int len; /* length: 0 - to the end of line */
+ linenr_T lnum; // line number
+ colnr_T col; // column number
+ int len; // length: 0 - to the end of line
} llpos_T;
/*
@@ -2770,10 +2777,10 @@ typedef struct
typedef struct posmatch posmatch_T;
struct posmatch
{
- llpos_T pos[MAXPOSMATCH]; /* array of positions */
- int cur; /* internal position counter */
- linenr_T toplnum; /* top buffer line */
- linenr_T botlnum; /* bottom buffer line */
+ llpos_T pos[MAXPOSMATCH]; // array of positions
+ int cur; // internal position counter
+ linenr_T toplnum; // top buffer line
+ linenr_T botlnum; // bottom buffer line
};
/*
@@ -2784,15 +2791,15 @@ typedef struct matchitem matchitem_T;
struct matchitem
{
matchitem_T *next;
- int id; /* match ID */
- int priority; /* match priority */
- char_u *pattern; /* pattern to highlight */
- int hlg_id; /* highlight group ID */
- regmmatch_T match; /* regexp program for pattern */
- posmatch_T pos; /* position matches */
- match_T hl; /* struct for doing the actual highlighting */
+ int id; // match ID
+ int priority; // match priority
+ char_u *pattern; // pattern to highlight
+ int hlg_id; // highlight group ID
+ regmmatch_T match; // regexp program for pattern
+ posmatch_T pos; // position matches
+ match_T hl; // struct for doing the actual highlighting
#ifdef FEAT_CONCEAL
- int conceal_char; /* cchar for Conceal highlighting */
+ int conceal_char; // cchar for Conceal highlighting
#endif
};
@@ -2821,80 +2828,80 @@ typedef struct {
*/
struct window_S
{
- int w_id; /* unique window ID */
+ int w_id; // unique window ID
- buf_T *w_buffer; /* buffer we are a window into */
+ buf_T *w_buffer; // buffer we are a window into
- win_T *w_prev; /* link to previous window */
- win_T *w_next; /* link to next window */
+ win_T *w_prev; // link to previous window
+ win_T *w_next; // link to next window
#if defined(FEAT_SYN_HL) || defined(FEAT_SPELL)
- synblock_T *w_s; /* for :ownsyntax */
+ synblock_T *w_s; // for :ownsyntax
#endif
- int w_closing; /* window is being closed, don't let
- autocommands close it too. */
+ int w_closing; // window is being closed, don't let
+ // autocommands close it too.
- frame_T *w_frame; /* frame containing this window */
+ frame_T *w_frame; // frame containing this window
- pos_T w_cursor; /* cursor position in buffer */
+ pos_T w_cursor; // cursor position in buffer
- colnr_T w_curswant; /* The column we'd like to be at. This is
- used to try to stay in the same column
- for up/down cursor motions. */
+ colnr_T w_curswant; // The column we'd like to be at. This is
+ // used to try to stay in the same column
+ // for up/down cursor motions.
- int w_set_curswant; /* If set, then update w_curswant the next
- time through cursupdate() to the
- current virtual column */
+ int w_set_curswant; // If set, then update w_curswant the next
+ // time through cursupdate() to the
+ // current virtual column
#ifdef FEAT_SYN_HL
linenr_T w_last_cursorline; // where last time 'cursorline' was drawn
#endif
/*
- * the next seven are used to update the visual part
+ * the next seven are used to update the Visual highlighting
*/
- char w_old_visual_mode; /* last known VIsual_mode */
- linenr_T w_old_cursor_lnum; /* last known end of visual part */
- colnr_T w_old_cursor_fcol; /* first column for block visual part */
- colnr_T w_old_cursor_lcol; /* last column for block visual part */
- linenr_T w_old_visual_lnum; /* last known start of visual part */
- colnr_T w_old_visual_col; /* last known start of visual part */
- colnr_T w_old_curswant; /* last known value of Curswant */
+ char w_old_visual_mode; // last known VIsual_mode
+ linenr_T w_old_cursor_lnum; // last known end of visual part
+ colnr_T w_old_cursor_fcol; // first column for block visual part
+ colnr_T w_old_cursor_lcol; // last column for block visual part
+ linenr_T w_old_visual_lnum; // last known start of visual part
+ colnr_T w_old_visual_col; // last known start of visual part
+ colnr_T w_old_curswant; // last known value of Curswant
/*
* "w_topline", "w_leftcol" and "w_skipcol" specify the offsets for
* displaying the buffer.
*/
- linenr_T w_topline; /* buffer line number of the line at the
- top of the window */
- char w_topline_was_set; /* flag set to TRUE when topline is set,
- e.g. by winrestview() */
+ linenr_T w_topline; // buffer line number of the line at the
+ // top of the window
+ char w_topline_was_set; // flag set to TRUE when topline is set,
+ // e.g. by winrestview()
#ifdef FEAT_DIFF
- int w_topfill; /* number of filler lines above w_topline */
- int w_old_topfill; /* w_topfill at last redraw */
- int w_botfill; /* TRUE when filler lines are actually
- below w_topline (at end of file) */
- int w_old_botfill; /* w_botfill at last redraw */
-#endif
- colnr_T w_leftcol; /* window column number of the left most
- character in the window; used when
- 'wrap' is off */
- colnr_T w_skipcol; /* starting column when a single line
- doesn't fit in the window */
+ int w_topfill; // number of filler lines above w_topline
+ int w_old_topfill; // w_topfill at last redraw
+ int w_botfill; // TRUE when filler lines are actually
+ // below w_topline (at end of file)
+ int w_old_botfill; // w_botfill at last redraw
+#endif
+ colnr_T w_leftcol; // window column number of the left most
+ // character in the window; used when
+ // 'wrap' is off
+ colnr_T w_skipcol; // starting column when a single line
+ // doesn't fit in the window
/*
* Layout of the window in the screen.
* May need to add "msg_scrolled" to "w_winrow" in rare situations.
*/
- int w_winrow; /* first row of window in screen */
- int w_height; /* number of rows in window, excluding
- status/command/winbar line(s) */
- int w_status_height; /* number of status lines (0 or 1) */
- int w_wincol; /* Leftmost column of window in screen. */
- int w_width; /* Width of window, excluding separation. */
- int w_vsep_width; /* Number of separator columns (0 or 1). */
- pos_save_T w_save_cursor; /* backup of cursor pos and topline */
+ int w_winrow; // first row of window in screen
+ int w_height; // number of rows in window, excluding
+ // status/command/winbar line(s)
+ int w_status_height; // number of status lines (0 or 1)
+ int w_wincol; // Leftmost column of window in screen.
+ int w_width; // Width of window, excluding separation.
+ int w_vsep_width; // Number of separator columns (0 or 1).
+ pos_save_T w_save_cursor; // backup of cursor pos and topline
#ifdef FEAT_TEXT_PROP
int w_popup_flags; // POPF_ values
char_u *w_popup_title;
@@ -2948,41 +2955,41 @@ struct window_S
* valid or need to be recomputed. See screen.c for values.
*/
int w_valid;
- pos_T w_valid_cursor; /* last known position of w_cursor, used
- to adjust w_valid */
- colnr_T w_valid_leftcol; /* last known w_leftcol */
+ pos_T w_valid_cursor; // last known position of w_cursor, used
+ // to adjust w_valid
+ colnr_T w_valid_leftcol; // last known w_leftcol
/*
* w_cline_height is the number of physical lines taken by the buffer line
* that the cursor is on. We use this to avoid extra calls to plines().
*/
- int w_cline_height; /* current size of cursor line */
+ int w_cline_height; // current size of cursor line
#ifdef FEAT_FOLDING
- int w_cline_folded; /* cursor line is folded */
+ int w_cline_folded; // cursor line is folded
#endif
- int w_cline_row; /* starting row of the cursor line */
+ int w_cline_row; // starting row of the cursor line
- colnr_T w_virtcol; /* column number of the cursor in the
- buffer line, as opposed to the column
- number we're at on the screen. This
- makes a difference on lines which span
- more than one screen line or when
- w_leftcol is non-zero */
+ colnr_T w_virtcol; // column number of the cursor in the
+ // buffer line, as opposed to the column
+ // number we're at on the screen. This
+ // makes a difference on lines which span
+ // more than one screen line or when
+ // w_leftcol is non-zero
/*
* w_wrow and w_wcol specify the cursor position in the window.
* This is related to positions in the window, not in the display or
* buffer, thus w_wrow is relative to w_winrow.
*/
- int w_wrow, w_wcol; /* cursor position in window */
+ int w_wrow, w_wcol; // cursor position in window
- linenr_T w_botline; /* number of the line below the bottom of
- the window */
- int w_empty_rows; /* number of ~ rows in window */
+ linenr_T w_botline; // number of the line below the bottom of
+ // the window
+ int w_empty_rows; // number of ~ rows in window
#ifdef FEAT_DIFF
- int w_filler_rows; /* number of filler rows at the end of the
- window */
+ int w_filler_rows; // number of filler rows at the end of the
+ // window
#endif
/*
@@ -2995,57 +3002,57 @@ struct window_S
* what is currently displayed. wl_valid is reset to indicated this.
* This is used for efficient redrawing.
*/
- int w_lines_valid; /* number of valid entries */
+ int w_lines_valid; // number of valid entries
wline_T *w_lines;
#ifdef FEAT_FOLDING
- garray_T w_folds; /* array of nested folds */
- char w_fold_manual; /* when TRUE: some folds are opened/closed
- manually */
- char w_foldinvalid; /* when TRUE: folding needs to be
- recomputed */
+ garray_T w_folds; // array of nested folds
+ char w_fold_manual; // when TRUE: some folds are opened/closed
+ // manually
+ char w_foldinvalid; // when TRUE: folding needs to be
+ // recomputed
#endif
#ifdef FEAT_LINEBREAK
- int w_nrwidth; /* width of 'number' and 'relativenumber'
- column being used */
+ int w_nrwidth; // width of 'number' and 'relativenumber'
+ // column being used
#endif
/*
* === end of cached values ===
*/
- int w_redr_type; /* type of redraw to be performed on win */
- int w_upd_rows; /* number of window lines to update when
- w_redr_type is REDRAW_TOP */
- linenr_T w_redraw_top; /* when != 0: first line needing redraw */
- linenr_T w_redraw_bot; /* when != 0: last line needing redraw */
- int w_redr_status; /* if TRUE status line must be redrawn */
+ int w_redr_type; // type of redraw to be performed on win
+ int w_upd_rows; // number of window lines to update when
+ // w_redr_type is REDRAW_TOP
+ linenr_T w_redraw_top; // when != 0: first line needing redraw
+ linenr_T w_redraw_bot; // when != 0: last line needing redraw
+ int w_redr_status; // if TRUE status line must be redrawn
#ifdef FEAT_CMDL_INFO
- /* remember what is shown in the ruler for this window (if 'ruler' set) */
- pos_T w_ru_cursor; /* cursor position shown in ruler */
- colnr_T w_ru_virtcol; /* virtcol shown in ruler */
- linenr_T w_ru_topline; /* topline shown in ruler */
- linenr_T w_ru_line_count; /* line count used for ruler */
+ // remember what is shown in the ruler for this window (if 'ruler' set)
+ pos_T w_ru_cursor; // cursor position shown in ruler
+ colnr_T w_ru_virtcol; // virtcol shown in ruler
+ linenr_T w_ru_topline; // topline shown in ruler
+ linenr_T w_ru_line_count; // line count used for ruler
# ifdef FEAT_DIFF
- int w_ru_topfill; /* topfill shown in ruler */
+ int w_ru_topfill; // topfill shown in ruler
# endif
- char w_ru_empty; /* TRUE if ruler shows 0-1 (empty line) */
+ char w_ru_empty; // TRUE if ruler shows 0-1 (empty line)
#endif
- int w_alt_fnum; /* alternate file (for # and CTRL-^) */
+ int w_alt_fnum; // alternate file (for # and CTRL-^)
- alist_T *w_alist; /* pointer to arglist for this window */
- int w_arg_idx; /* current index in argument list (can be
- out of range!) */
- int w_arg_idx_invalid; /* editing another file than w_arg_idx */
+ alist_T *w_alist; // pointer to arglist for this window
+ int w_arg_idx; // current index in argument list (can be
+ // out of range!)
+ int w_arg_idx_invalid; // editing another file than w_arg_idx
- char_u *w_localdir; /* absolute path of local directory or
- NULL */
+ char_u *w_localdir; // absolute path of local directory or
+ // NULL
#ifdef FEAT_MENU
- vimmenu_T *w_winbar; /* The root of the WinBar menu hierarchy. */
- winbar_item_T *w_winbar_items; /* list of items in the WinBar */
- int w_winbar_height; /* 1 if there is a window toolbar */
+ vimmenu_T *w_winbar; // The root of the WinBar menu hierarchy.
+ winbar_item_T *w_winbar_items; // list of items in the WinBar
+ int w_winbar_height; // 1 if there is a window toolbar
#endif
/*
@@ -3058,26 +3065,26 @@ struct window_S
winopt_T w_onebuf_opt;
winopt_T w_allbuf_opt;
- /* A few options have local flags for P_INSECURE. */
+ // A few options have local flags for P_INSECURE.
#ifdef FEAT_STL_OPT
- long_u w_p_stl_flags; /* flags for 'statusline' */
+ long_u w_p_stl_flags; // flags for 'statusline'
#endif
#ifdef FEAT_EVAL
- long_u w_p_fde_flags; /* flags for 'foldexpr' */
- long_u w_p_fdt_flags; /* flags for 'foldtext' */
+ long_u w_p_fde_flags; // flags for 'foldexpr'
+ long_u w_p_fdt_flags; // flags for 'foldtext'
#endif
#ifdef FEAT_SYN_HL
- int *w_p_cc_cols; /* array of columns to highlight or NULL */
+ int *w_p_cc_cols; // array of columns to highlight or NULL
#endif
#ifdef FEAT_LINEBREAK
- int w_p_brimin; /* minimum width for breakindent */
- int w_p_brishift; /* additional shift for breakindent */
- int w_p_brisbr; /* sbr in 'briopt' */
+ int w_p_brimin; // minimum width for breakindent
+ int w_p_brishift; // additional shift for breakindent
+ int w_p_brisbr; // sbr in 'briopt'
#endif
- long w_p_siso; /* 'sidescrolloff' local value */
- long w_p_so; /* 'scrolloff' local value */
+ long w_p_siso; // 'sidescrolloff' local value
+ long w_p_so; // 'scrolloff' local value
- /* transform a pointer to a "onebuf" option into a "allbuf" option */
+ // transform a pointer to a "onebuf" option into a "allbuf" option
#define GLOBAL_WO(p) ((char *)p + sizeof(winopt_T))
long w_scbind_pos;
@@ -3092,23 +3099,23 @@ struct window_S
* a new line after setting the w_pcmark. If not, then we revert to
* using the previous w_pcmark.
*/
- pos_T w_pcmark; /* previous context mark */
- pos_T w_prev_pcmark; /* previous w_pcmark */
+ pos_T w_pcmark; // previous context mark
+ pos_T w_prev_pcmark; // previous w_pcmark
#ifdef FEAT_JUMPLIST
/*
* the jumplist contains old cursor positions
*/
xfmark_T w_jumplist[JUMPLISTSIZE];
- int w_jumplistlen; /* number of active entries */
- int w_jumplistidx; /* current position */
+ int w_jumplistlen; // number of active entries
+ int w_jumplistidx; // current position
- int w_changelistidx; /* current position in b_changelist */
+ int w_changelistidx; // current position in b_changelist
#endif
#ifdef FEAT_SEARCH_EXTRA
- matchitem_T *w_match_head; /* head of match list */
- int w_next_match_id; /* next match ID */
+ matchitem_T *w_match_head; // head of match list
+ int w_next_match_id; // next match ID
#endif
/*
@@ -3117,9 +3124,9 @@ struct window_S
* entry 1: newer
* entry 2: newest
*/
- taggy_T w_tagstack[TAGSTACKSIZE]; /* the tag stack */
- int w_tagstackidx; /* idx just below active entry */
- int w_tagstacklen; /* number of tags on stack */
+ taggy_T w_tagstack[TAGSTACKSIZE]; // the tag stack
+ int w_tagstackidx; // idx just below active entry
+ int w_tagstacklen; // number of tags on stack
/*
* w_fraction is the fractional row of the cursor within the window, from
@@ -3131,17 +3138,17 @@ struct window_S
int w_prev_fraction_row;
#ifdef FEAT_GUI
- scrollbar_T w_scrollbars[2]; /* vert. Scrollbars for this window */
+ scrollbar_T w_scrollbars[2]; // vert. Scrollbars for this window
#endif
#ifdef FEAT_LINEBREAK
- linenr_T w_nrwidth_line_count; /* line count when ml_nrwidth_width
- * was computed. */
- long w_nuw_cached; /* 'numberwidth' option cached */
- int w_nrwidth_width; /* nr of chars to print line count. */
+ linenr_T w_nrwidth_line_count; // line count when ml_nrwidth_width
+ // was computed.
+ long w_nuw_cached; // 'numberwidth' option cached
+ int w_nrwidth_width; // nr of chars to print line count.
#endif
#ifdef FEAT_QUICKFIX
- qf_info_T *w_llist; /* Location list for this window */
+ qf_info_T *w_llist; // Location list for this window
/*
* Location list reference used in the location list window.
* In a non-location list window, w_llist_ref is NULL.
@@ -3151,7 +3158,7 @@ struct window_S
#ifdef FEAT_MZSCHEME
- void *w_mzscheme_ref; /* The MzScheme value for this window */
+ void *w_mzscheme_ref; // The MzScheme value for this window
#endif
#ifdef FEAT_PERL
@@ -3159,11 +3166,11 @@ struct window_S
#endif
#ifdef FEAT_PYTHON
- void *w_python_ref; /* The Python value for this window */
+ void *w_python_ref; // The Python value for this window
#endif
#ifdef FEAT_PYTHON3
- void *w_python3_ref; /* The Python value for this window */
+ void *w_python3_ref; // The Python value for this window
#endif
#ifdef FEAT_TCL
@@ -3180,30 +3187,30 @@ struct window_S
*/
typedef struct oparg_S
{
- int op_type; /* current pending operator type */
- int regname; /* register to use for the operator */
- int motion_type; /* type of the current cursor motion */
- int motion_force; /* force motion type: 'v', 'V' or CTRL-V */
- int use_reg_one; /* TRUE if delete uses reg 1 even when not
- linewise */
- int inclusive; /* TRUE if char motion is inclusive (only
- valid when motion_type is MCHAR */
- int end_adjusted; /* backuped b_op_end one char (only used by
- do_format()) */
- pos_T start; /* start of the operator */
- pos_T end; /* end of the operator */
- pos_T cursor_start; /* cursor position before motion for "gw" */
-
- long line_count; /* number of lines from op_start to op_end
- (inclusive) */
- int empty; /* op_start and op_end the same (only used by
- do_change()) */
- int is_VIsual; /* operator on Visual area */
- int block_mode; /* current operator is Visual block mode */
- colnr_T start_vcol; /* start col for block mode operator */
- colnr_T end_vcol; /* end col for block mode operator */
- long prev_opcount; /* ca.opcount saved for K_CURSORHOLD */
- long prev_count0; /* ca.count0 saved for K_CURSORHOLD */
+ int op_type; // current pending operator type
+ int regname; // register to use for the operator
+ int motion_type; // type of the current cursor motion
+ int motion_force; // force motion type: 'v', 'V' or CTRL-V
+ int use_reg_one; // TRUE if delete uses reg 1 even when not
+ // linewise
+ int inclusive; // TRUE if char motion is inclusive (only
+ // valid when motion_type is MCHAR
+ int end_adjusted; // backuped b_op_end one char (only used by
+ // do_format())
+ pos_T start; // start of the operator
+ pos_T end; // end of the operator
+ pos_T cursor_start; // cursor position before motion for "gw"
+
+ long line_count; // number of lines from op_start to op_end
+ // (inclusive)
+ int empty; // op_start and op_end the same (only used by
+ // do_change())
+ int is_VIsual; // operator on Visual area
+ int block_mode; // current operator is Visual block mode
+ colnr_T start_vcol; // start col for block mode operator
+ colnr_T end_vcol; // end col for block mode operator
+ long prev_opcount; // ca.opcount saved for K_CURSORHOLD
+ long prev_count0; // ca.count0 saved for K_CURSORHOLD
} oparg_T;
/*
@@ -3211,77 +3218,77 @@ typedef struct oparg_S
*/
typedef struct cmdarg_S
{
- oparg_T *oap; /* Operator arguments */
- int prechar; /* prefix character (optional, always 'g') */
- int cmdchar; /* command character */
- int nchar; /* next command character (optional) */
- int ncharC1; /* first composing character (optional) */
- int ncharC2; /* second composing character (optional) */
- int extra_char; /* yet another character (optional) */
- long opcount; /* count before an operator */
- long count0; /* count before command, default 0 */
- long count1; /* count before command, default 1 */
- int arg; /* extra argument from nv_cmds[] */
- int retval; /* return: CA_* values */
- char_u *searchbuf; /* return: pointer to search pattern or NULL */
+ oparg_T *oap; // Operator arguments
+ int prechar; // prefix character (optional, always 'g')
+ int cmdchar; // command character
+ int nchar; // next command character (optional)
+ int ncharC1; // first composing character (optional)
+ int ncharC2; // second composing character (optional)
+ int extra_char; // yet another character (optional)
+ long opcount; // count before an operator
+ long count0; // count before command, default 0
+ long count1; // count before command, default 1
+ int arg; // extra argument from nv_cmds[]
+ int retval; // return: CA_* values
+ char_u *searchbuf; // return: pointer to search pattern or NULL
} cmdarg_T;
-/* values for retval: */
-#define CA_COMMAND_BUSY 1 /* skip restarting edit() once */
-#define CA_NO_ADJ_OP_END 2 /* don't adjust operator end */
+// values for retval:
+#define CA_COMMAND_BUSY 1 // skip restarting edit() once
+#define CA_NO_ADJ_OP_END 2 // don't adjust operator end
#ifdef CURSOR_SHAPE
/*
* struct to store values from 'guicursor' and 'mouseshape'
*/
/* Indexes in shape_table[] */
-#define SHAPE_IDX_N 0 /* Normal mode */
-#define SHAPE_IDX_V 1 /* Visual mode */
-#define SHAPE_IDX_I 2 /* Insert mode */
-#define SHAPE_IDX_R 3 /* Replace mode */
-#define SHAPE_IDX_C 4 /* Command line Normal mode */
-#define SHAPE_IDX_CI 5 /* Command line Insert mode */
-#define SHAPE_IDX_CR 6 /* Command line Replace mode */
-#define SHAPE_IDX_O 7 /* Operator-pending mode */
-#define SHAPE_IDX_VE 8 /* Visual mode with 'selection' exclusive */
-#define SHAPE_IDX_CLINE 9 /* On command line */
-#define SHAPE_IDX_STATUS 10 /* A status line */
-#define SHAPE_IDX_SDRAG 11 /* dragging a status line */
-#define SHAPE_IDX_VSEP 12 /* A vertical separator line */
-#define SHAPE_IDX_VDRAG 13 /* dragging a vertical separator line */
-#define SHAPE_IDX_MORE 14 /* Hit-return or More */
-#define SHAPE_IDX_MOREL 15 /* Hit-return or More in last line */
-#define SHAPE_IDX_SM 16 /* showing matching paren */
+#define SHAPE_IDX_N 0 // Normal mode
+#define SHAPE_IDX_V 1 // Visual mode
+#define SHAPE_IDX_I 2 // Insert mode
+#define SHAPE_IDX_R 3 // Replace mode
+#define SHAPE_IDX_C 4 // Command line Normal mode
+#define SHAPE_IDX_CI 5 // Command line Insert mode
+#define SHAPE_IDX_CR 6 // Command line Replace mode
+#define SHAPE_IDX_O 7 // Operator-pending mode
+#define SHAPE_IDX_VE 8 // Visual mode with 'selection' exclusive
+#define SHAPE_IDX_CLINE 9 // On command line
+#define SHAPE_IDX_STATUS 10 // A status line
+#define SHAPE_IDX_SDRAG 11 // dragging a status line
+#define SHAPE_IDX_VSEP 12 // A vertical separator line
+#define SHAPE_IDX_VDRAG 13 // dragging a vertical separator line
+#define SHAPE_IDX_MORE 14 // Hit-return or More
+#define SHAPE_IDX_MOREL 15 // Hit-return or More in last line
+#define SHAPE_IDX_SM 16 // showing matching paren
#define SHAPE_IDX_COUNT 17
-#define SHAPE_BLOCK 0 /* block cursor */
-#define SHAPE_HOR 1 /* horizontal bar cursor */
-#define SHAPE_VER 2 /* vertical bar cursor */
+#define SHAPE_BLOCK 0 // block cursor
+#define SHAPE_HOR 1 // horizontal bar cursor
+#define SHAPE_VER 2 // vertical bar cursor
-#define MSHAPE_NUMBERED 1000 /* offset for shapes identified by number */
-#define MSHAPE_HIDE 1 /* hide mouse pointer */
+#define MSHAPE_NUMBERED 1000 // offset for shapes identified by number
+#define MSHAPE_HIDE 1 // hide mouse pointer
-#define SHAPE_MOUSE 1 /* used for mouse pointer shape */
-#define SHAPE_CURSOR 2 /* used for text cursor shape */
+#define SHAPE_MOUSE 1 // used for mouse pointer shape
+#define SHAPE_CURSOR 2 // used for text cursor shape
typedef struct cursor_entry
{
- int shape; /* one of the SHAPE_ defines */
- int mshape; /* one of the MSHAPE defines */
- int percentage; /* percentage of cell for bar */
- long blinkwait; /* blinking, wait time before blinking starts */
- long blinkon; /* blinking, on time */
- long blinkoff; /* blinking, off time */
- int id; /* highlight group ID */
- int id_lm; /* highlight group ID for :lmap mode */
- char *name; /* mode name (fixed) */
- char used_for; /* SHAPE_MOUSE and/or SHAPE_CURSOR */
+ int shape; // one of the SHAPE_ defines
+ int mshape; // one of the MSHAPE defines
+ int percentage; // percentage of cell for bar
+ long blinkwait; // blinking, wait time before blinking starts
+ long blinkon; // blinking, on time
+ long blinkoff; // blinking, off time
+ int id; // highlight group ID
+ int id_lm; // highlight group ID for :lmap mode
+ char *name; // mode name (fixed)
+ char used_for; // SHAPE_MOUSE and/or SHAPE_CURSOR
} cursorentry_T;
-#endif /* CURSOR_SHAPE */
+#endif // CURSOR_SHAPE
#ifdef FEAT_MENU
-/* Indices into vimmenu_T->strings[] and vimmenu_T->noremap[] for each mode */
+// Indices into vimmenu_T->strings[] and vimmenu_T->noremap[] for each mode
#define MENU_INDEX_INVALID -1
#define MENU_INDEX_NORMAL 0
#define MENU_INDEX_VISUAL 1
@@ -3293,7 +3300,7 @@ typedef struct cursor_entry
#define MENU_INDEX_TIP 7
#define MENU_MODES 8
-/* Menu modes */
+// Menu modes
#define MENU_NORMAL_MODE (1 << MENU_INDEX_NORMAL)
#define MENU_VISUAL_MODE (1 << MENU_INDEX_VISUAL)
#define MENU_SELECT_MODE (1 << MENU_INDEX_SELECT)
@@ -3303,74 +3310,74 @@ typedef struct cursor_entry
#define MENU_TERMINAL_MODE (1 << MENU_INDEX_TERMINAL)
#define MENU_TIP_MODE (1 << MENU_INDEX_TIP)
#define MENU_ALL_MODES ((1 << MENU_INDEX_TIP) - 1)
-/*note MENU_INDEX_TIP is not a 'real' mode*/
+// note MENU_INDEX_TIP is not a 'real' mode
-/* Start a menu name with this to not include it on the main menu bar */
+// Start a menu name with this to not include it on the main menu bar
#define MNU_HIDDEN_CHAR ']'
struct VimMenu
{
- int modes; /* Which modes is this menu visible for? */
- int enabled; /* for which modes the menu is enabled */
- char_u *name; /* Name of menu, possibly translated */
- char_u *dname; /* Displayed Name ("name" without '&') */
+ int modes; // Which modes is this menu visible for?
+ int enabled; // for which modes the menu is enabled
+ char_u *name; // Name of menu, possibly translated
+ char_u *dname; // Displayed Name ("name" without '&')
#ifdef FEAT_MULTI_LANG
- char_u *en_name; /* "name" untranslated, NULL when "name"
- * was not translated */
- char_u *en_dname; /* "dname" untranslated, NULL when "dname"
- * was not translated */
-#endif
- int mnemonic; /* mnemonic key (after '&') */
- char_u *actext; /* accelerator text (after TAB) */
- int priority; /* Menu order priority */
+ char_u *en_name; // "name" untranslated, NULL when "name"
+ // was not translated
+ char_u *en_dname; // "dname" untranslated, NULL when "dname"
+ // was not translated
+#endif
+ int mnemonic; // mnemonic key (after '&')
+ char_u *actext; // accelerator text (after TAB)
+ int priority; // Menu order priority
#ifdef FEAT_GUI
- void (*cb)(vimmenu_T *); /* Call-back routine */
+ void (*cb)(vimmenu_T *); // Call-back function
#endif
#ifdef FEAT_TOOLBAR
- char_u *iconfile; /* name of file for icon or NULL */
- int iconidx; /* icon index (-1 if not set) */
- int icon_builtin; /* icon names is BuiltIn{nr} */
-#endif
- char_u *strings[MENU_MODES]; /* Mapped string for each mode */
- int noremap[MENU_MODES]; /* A REMAP_ flag for each mode */
- char silent[MENU_MODES]; /* A silent flag for each mode */
- vimmenu_T *children; /* Children of sub-menu */
- vimmenu_T *parent; /* Parent of menu */
- vimmenu_T *next; /* Next item in menu */
+ char_u *iconfile; // name of file for icon or NULL
+ int iconidx; // icon index (-1 if not set)
+ int icon_builtin; // icon names is BuiltIn{nr}
+#endif
+ char_u *strings[MENU_MODES]; // Mapped string for each mode
+ int noremap[MENU_MODES]; // A REMAP_ flag for each mode
+ char silent[MENU_MODES]; // A silent flag for each mode
+ vimmenu_T *children; // Children of sub-menu
+ vimmenu_T *parent; // Parent of menu
+ vimmenu_T *next; // Next item in menu
#ifdef FEAT_GUI_X11
- Widget id; /* Manage this to enable item */
- Widget submenu_id; /* If this is submenu, add children here */
+ Widget id; // Manage this to enable item
+ Widget submenu_id; // If this is submenu, add children here
#endif
#ifdef FEAT_GUI_GTK
- GtkWidget *id; /* Manage this to enable item */
- GtkWidget *submenu_id; /* If this is submenu, add children here */
+ GtkWidget *id; // Manage this to enable item
+ GtkWidget *submenu_id; // If this is submenu, add children here
# if defined(GTK_CHECK_VERSION) && !GTK_CHECK_VERSION(3,4,0)
GtkWidget *tearoff_handle;
# endif
- GtkWidget *label; /* Used by "set wak=" code. */
+ GtkWidget *label; // Used by "set wak=" code.
#endif
#ifdef FEAT_GUI_MOTIF
- int sensitive; /* turn button on/off */
- char **xpm; /* pixmap data */
- char *xpm_fname; /* file with pixmap data */
+ int sensitive; // turn button on/off
+ char **xpm; // pixmap data
+ char *xpm_fname; // file with pixmap data
#endif
#ifdef FEAT_GUI_ATHENA
- Pixmap image; /* Toolbar image */
+ Pixmap image; // Toolbar image
#endif
#ifdef FEAT_BEVAL_TIP
- BalloonEval *tip; /* tooltip for this menu item */
+ BalloonEval *tip; // tooltip for this menu item
#endif
#ifdef FEAT_GUI_MSWIN
- UINT id; /* Id of menu item */
- HMENU submenu_id; /* If this is submenu, add children here */
- HWND tearoff_handle; /* hWnd of tearoff if created */
+ UINT id; // Id of menu item
+ HMENU submenu_id; // If this is submenu, add children here
+ HWND tearoff_handle; // hWnd of tearoff if created
#endif
#ifdef FEAT_GUI_MAC
-/* MenuHandle id; */
-/* short index; */ /* the item index within the father menu */
- short menu_id; /* the menu id to which this item belong */
- short submenu_id; /* the menu id of the children (could be
- get through some tricks) */
+// MenuHandle id;
+// short index; // the item index within the father menu
+ short menu_id; // the menu id to which this item belong
+ short submenu_id; // the menu id of the children (could be
+ // get through some tricks)
MenuHandle menu_handle;
MenuHandle submenu_handle;
#endif
@@ -3380,10 +3387,10 @@ struct VimMenu
#endif
};
#else
-/* For generating prototypes when FEAT_MENU isn't defined. */
+// For generating prototypes when FEAT_MENU isn't defined.
typedef int vimmenu_T;
-#endif /* FEAT_MENU */
+#endif // FEAT_MENU
/*
* Struct to save values in before executing autocommands for a buffer that is
@@ -3391,13 +3398,13 @@ typedef int vimmenu_T;
*/
typedef struct
{
- buf_T *save_curbuf; /* saved curbuf */
- int use_aucmd_win; /* using aucmd_win */
- win_T *save_curwin; /* saved curwin */
- win_T *new_curwin; /* new curwin */
- win_T *save_prevwin; /* saved prevwin */
- bufref_T new_curbuf; /* new curbuf */
- char_u *globaldir; /* saved value of globaldir */
+ buf_T *save_curbuf; // saved curbuf
+ int use_aucmd_win; // using aucmd_win
+ win_T *save_curwin; // saved curwin
+ win_T *new_curwin; // new curwin
+ win_T *save_prevwin; // saved prevwin
+ bufref_T new_curbuf; // new curbuf
+ char_u *globaldir; // saved value of globaldir
} aco_save_T;
/*
@@ -3408,7 +3415,7 @@ typedef struct
const char *name;
int hasnum;
long number;
- char_u *string; /* points into option string */
+ char_u *string; // points into option string
int strlen;
int present;
} option_table_T;
@@ -3457,10 +3464,10 @@ typedef struct
*/
typedef struct
{
- char_u *pum_text; /* main menu text */
- char_u *pum_kind; /* extra kind text (may be truncated) */
- char_u *pum_extra; /* extra menu text (may be truncated) */
- char_u *pum_info; /* extra info */
+ char_u *pum_text; // main menu text
+ char_u *pum_kind; // extra kind text (may be truncated)
+ char_u *pum_extra; // extra menu text (may be truncated)
+ char_u *pum_info; // extra info
} pumitem_T;
/*
@@ -3468,8 +3475,8 @@ typedef struct
*/
typedef struct
{
- char_u *tn_tags; /* value of 'tags' when starting */
- char_u *tn_np; /* current position in tn_tags */
+ char_u *tn_tags; // value of 'tags' when starting
+ char_u *tn_np; // current position in tn_tags
int tn_did_filefind_init;
int tn_hf_idx;
void *tn_search_ctx;
@@ -3502,79 +3509,79 @@ typedef enum
*/
struct js_reader
{
- char_u *js_buf; /* text to be decoded */
- char_u *js_end; /* NUL in js_buf */
- int js_used; /* bytes used from js_buf */
+ char_u *js_buf; // text to be decoded
+ char_u *js_end; // NUL in js_buf
+ int js_used; // bytes used from js_buf
int (*js_fill)(struct js_reader *);
- /* function to fill the buffer or NULL;
- * return TRUE when the buffer was filled */
- void *js_cookie; /* can be used by js_fill */
- int js_cookie_arg; /* can be used by js_fill */
+ // function to fill the buffer or NULL;
+ // return TRUE when the buffer was filled
+ void *js_cookie; // can be used by js_fill
+ int js_cookie_arg; // can be used by js_fill
};
typedef struct js_reader js_read_T;
-/* Maximum number of commands from + or -c arguments. */
+// Maximum number of commands from + or -c arguments.
#define MAX_ARG_CMDS 10
-/* values for "window_layout" */
-#define WIN_HOR 1 /* "-o" horizontally split windows */
-#define WIN_VER 2 /* "-O" vertically split windows */
-#define WIN_TABS 3 /* "-p" windows on tab pages */
+// values for "window_layout"
+#define WIN_HOR 1 // "-o" horizontally split windows
+#define WIN_VER 2 // "-O" vertically split windows
+#define WIN_TABS 3 // "-p" windows on tab pages
-/* Struct for various parameters passed between main() and other functions. */
+// Struct for various parameters passed between main() and other functions.
typedef struct
{
int argc;
char **argv;
- char_u *fname; /* first file to edit */
+ char_u *fname; // first file to edit
- int evim_mode; /* started as "evim" */
- char_u *use_vimrc; /* vimrc from -u argument */
- int clean; /* --clean argument */
+ int evim_mode; // started as "evim"
+ char_u *use_vimrc; // vimrc from -u argument
+ int clean; // --clean argument
- int n_commands; /* no. of commands from + or -c */
- char_u *commands[MAX_ARG_CMDS]; /* commands from + or -c arg. */
- char_u cmds_tofree[MAX_ARG_CMDS]; /* commands that need free() */
- int n_pre_commands; /* no. of commands from --cmd */
- char_u *pre_commands[MAX_ARG_CMDS]; /* commands from --cmd argument */
+ int n_commands; // no. of commands from + or -c
+ char_u *commands[MAX_ARG_CMDS]; // commands from + or -c arg.
+ char_u cmds_tofree[MAX_ARG_CMDS]; // commands that need free()
+ int n_pre_commands; // no. of commands from --cmd
+ char_u *pre_commands[MAX_ARG_CMDS]; // commands from --cmd argument
- int edit_type; /* type of editing to do */
- char_u *tagname; /* tag from -t argument */
+ int edit_type; // type of editing to do
+ char_u *tagname; // tag from -t argument
#ifdef FEAT_QUICKFIX
- char_u *use_ef; /* 'errorfile' from -q argument */
+ char_u *use_ef; // 'errorfile' from -q argument
#endif
int want_full_screen;
- int not_a_term; /* no warning for missing term? */
- int tty_fail; /* exit if not a tty */
- char_u *term; /* specified terminal name */
+ int not_a_term; // no warning for missing term?
+ int tty_fail; // exit if not a tty
+ char_u *term; // specified terminal name
#ifdef FEAT_CRYPT
- int ask_for_key; /* -x argument */
+ int ask_for_key; // -x argument
#endif
- int no_swap_file; /* "-n" argument used */
+ int no_swap_file; // "-n" argument used
#ifdef FEAT_EVAL
int use_debug_break_level;
#endif
- int window_count; /* number of windows to use */
- int window_layout; /* 0, WIN_HOR, WIN_VER or WIN_TABS */
+ int window_count; // number of windows to use
+ int window_layout; // 0, WIN_HOR, WIN_VER or WIN_TABS
#ifdef FEAT_CLIENTSERVER
- int serverArg; /* TRUE when argument for a server */
- char_u *serverName_arg; /* cmdline arg for server name */
- char_u *serverStr; /* remote server command */
- char_u *serverStrEnc; /* encoding of serverStr */
- char_u *servername; /* allocated name for our server */
+ int serverArg; // TRUE when argument for a server
+ char_u *serverName_arg; // cmdline arg for server name
+ char_u *serverStr; // remote server command
+ char_u *serverStrEnc; // encoding of serverStr
+ char_u *servername; // allocated name for our server
#endif
#if !defined(UNIX)
# define EXPAND_FILENAMES
- int literal; /* don't expand file names */
+ int literal; // don't expand file names
#endif
#ifdef MSWIN
- int full_path; /* file name argument was full path */
+ int full_path; // file name argument was full path
#endif
#ifdef FEAT_DIFF
- int diff_mode; /* start with 'diff' set */
+ int diff_mode; // start with 'diff' set
#endif
} mparm_T;
@@ -3607,25 +3614,25 @@ typedef struct
*/
typedef struct lval_S
{
- char_u *ll_name; /* start of variable name (can be NULL) */
- char_u *ll_exp_name; /* NULL or expanded name in allocated memory. */
- typval_T *ll_tv; /* Typeval of item being used. If "newkey"
- isn't NULL it's the Dict to which to add
- the item. */
- listitem_T *ll_li; /* The list item or NULL. */
- list_T *ll_list; /* The list or NULL. */
- int ll_range; /* TRUE when a [i:j] range was used */
- long ll_n1; /* First index for list */
- long ll_n2; /* Second index for list range */
- int ll_empty2; /* Second index is empty: [i:] */
- dict_T *ll_dict; /* The Dictionary or NULL */
- dictitem_T *ll_di; /* The dictitem or NULL */
- char_u *ll_newkey; /* New key for Dict in alloc. mem or NULL. */
- blob_T *ll_blob; /* The Blob or NULL */
+ char_u *ll_name; // start of variable name (can be NULL)
+ char_u *ll_exp_name; // NULL or expanded name in allocated memory.
+ typval_T *ll_tv; // Typeval of item being used. If "newkey"
+ // isn't NULL it's the Dict to which to add
+ // the item.
+ listitem_T *ll_li; // The list item or NULL.
+ list_T *ll_list; // The list or NULL.
+ int ll_range; // TRUE when a [i:j] range was used
+ long ll_n1; // First index for list
+ long ll_n2; // Second index for list range
+ int ll_empty2; // Second index is empty: [i:]
+ dict_T *ll_dict; // The Dictionary or NULL
+ dictitem_T *ll_di; // The dictitem or NULL
+ char_u *ll_newkey; // New key for Dict in alloc. mem or NULL.
+ blob_T *ll_blob; // The Blob or NULL
} lval_T;
-/* Structure used to save the current state. Used when executing Normal mode
- * commands while in any other mode. */
+// Structure used to save the current state. Used when executing Normal mode
+// commands while in any other mode.
typedef struct {
int save_msg_scroll;
int save_restart_edit;
diff --git a/src/version.c b/src/version.c
index e78733a17..0620a21e9 100644
--- a/src/version.c
+++ b/src/version.c
@@ -778,6 +778,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1627,
+/**/
1626,
/**/
1625,