The branch main has been updated by bapt:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=52d19df19ed6455df025f7ac2c6cf5db7df8e5ec

commit 52d19df19ed6455df025f7ac2c6cf5db7df8e5ec
Merge: b8480379adce 3110ba77506b
Author:     Baptiste Daroussin <[email protected]>
AuthorDate: 2026-01-14 15:22:35 +0000
Commit:     Baptiste Daroussin <[email protected]>
CommitDate: 2026-01-14 15:28:57 +0000

    nvi: import version 2.2.2

 contrib/nvi/.gitignore           |  14 --
 contrib/nvi/CMakeLists.txt       |  67 +++---
 contrib/nvi/README               |   2 +-
 contrib/nvi/cl/cl.h              |   2 +-
 contrib/nvi/cl/extern.h          |  31 +++
 contrib/nvi/common/common.h      |  13 +-
 contrib/nvi/common/cut.c         |   5 +
 contrib/nvi/common/extern.h      | 131 ++++++++++++
 contrib/nvi/common/line.c        |   4 +-
 contrib/nvi/common/options.c     |  39 ++--
 contrib/nvi/common/options_def.h |  86 ++++++++
 contrib/nvi/common/put.c         |  46 ++--
 contrib/nvi/common/recover.c     |   2 +-
 contrib/nvi/ex/ex.c              |   2 +
 contrib/nvi/ex/ex.h              |   5 +-
 contrib/nvi/ex/ex_append.c       |  21 +-
 contrib/nvi/ex/ex_bang.c         |   4 +-
 contrib/nvi/ex/ex_def.h          |  76 +++++++
 contrib/nvi/ex/ex_move.c         |   2 +-
 contrib/nvi/ex/ex_put.c          |   2 +-
 contrib/nvi/ex/ex_shift.c        |   8 +-
 contrib/nvi/ex/extern.h          | 131 ++++++++++++
 contrib/nvi/vi/extern.h          | 145 +++++++++++++
 contrib/nvi/vi/v_put.c           |  34 ++-
 contrib/nvi/vi/vi.h              |   2 +-
 usr.bin/vi/cl_extern.h           |  31 +++
 usr.bin/vi/common_extern.h       | 131 ++++++++++++
 usr.bin/vi/ex/version.h          |   2 +-
 usr.bin/vi/ex_extern.h           | 131 ++++++++++++
 usr.bin/vi/extern.h              | 444 ---------------------------------------
 usr.bin/vi/pathnames.h           |   1 -
 usr.bin/vi/version.h             |   1 +
 usr.bin/vi/vi_extern.h           | 145 +++++++++++++
 33 files changed, 1179 insertions(+), 581 deletions(-)

diff --cc contrib/nvi/cl/extern.h
index 000000000000,7b01ccd3f8cf..7b01ccd3f8cf
mode 000000,100644..100644
--- a/contrib/nvi/cl/extern.h
+++ b/contrib/nvi/cl/extern.h
diff --cc contrib/nvi/common/extern.h
index 000000000000,c887696080de..c887696080de
mode 000000,100644..100644
--- a/contrib/nvi/common/extern.h
+++ b/contrib/nvi/common/extern.h
diff --cc contrib/nvi/common/options_def.h
index 000000000000,15104845c380..15104845c380
mode 000000,100644..100644
--- a/contrib/nvi/common/options_def.h
+++ b/contrib/nvi/common/options_def.h
diff --cc contrib/nvi/ex/ex_def.h
index 000000000000,7afb7b19d677..7afb7b19d677
mode 000000,100644..100644
--- a/contrib/nvi/ex/ex_def.h
+++ b/contrib/nvi/ex/ex_def.h
diff --cc contrib/nvi/ex/extern.h
index 000000000000,9d7b1d674c3c..9d7b1d674c3c
mode 000000,100644..100644
--- a/contrib/nvi/ex/extern.h
+++ b/contrib/nvi/ex/extern.h
diff --cc contrib/nvi/vi/extern.h
index 000000000000,8e145c6318ef..8e145c6318ef
mode 000000,100644..100644
--- a/contrib/nvi/vi/extern.h
+++ b/contrib/nvi/vi/extern.h
diff --cc usr.bin/vi/cl_extern.h
index 000000000000,000000000000..7b01ccd3f8cf
new file mode 100644
--- /dev/null
+++ b/usr.bin/vi/cl_extern.h
@@@ -1,0 -1,0 +1,31 @@@
++int cl_waddstr(SCR *, const CHAR_T *, size_t);
++int cl_addstr(SCR *, const char *, size_t);
++int cl_attr(SCR *, scr_attr_t, int);
++int cl_baud(SCR *, u_long *);
++int cl_bell(SCR *);
++int cl_clrtoeol(SCR *);
++int cl_cursor(SCR *, size_t *, size_t *);
++int cl_deleteln(SCR *);
++int cl_discard(SCR *, SCR **);
++int cl_ex_adjust(SCR *, exadj_t);
++int cl_insertln(SCR *);
++int cl_keyval(SCR *, scr_keyval_t, CHAR_T *, int *);
++int cl_move(SCR *, size_t, size_t);
++int cl_refresh(SCR *, int);
++int cl_rename(SCR *, char *, int);
++void cl_setname(GS *, char *);
++int cl_split(SCR *, SCR *);
++int cl_suspend(SCR *, int *);
++void cl_usage(void);
++int sig_init(GS *, SCR *);
++int cl_event(SCR *, EVENT *, u_int32_t, int);
++int cl_screen(SCR *, u_int32_t);
++int cl_quit(GS *);
++int cl_getcap(SCR *, char *, char **);
++int cl_term_init(SCR *);
++int cl_term_end(GS *);
++int cl_fmap(SCR *, seq_t, CHAR_T *, size_t, CHAR_T *, size_t);
++int cl_optchange(SCR *, int, char *, u_long *);
++int cl_omesg(SCR *, CL_PRIVATE *, int);
++int cl_ssize(SCR *, int, size_t *, size_t *, int *);
++int cl_putchar(int);
diff --cc usr.bin/vi/common_extern.h
index 000000000000,000000000000..5ddcf43610c4
new file mode 100644
--- /dev/null
+++ b/usr.bin/vi/common_extern.h
@@@ -1,0 -1,0 +1,131 @@@
++char * codeset(void);
++void conv_init(SCR *, SCR *);
++int conv_enc(SCR *, int, char *);
++void conv_end(SCR *);
++int cut(SCR *, CHAR_T *, MARK *, MARK *, int);
++int cut_line(SCR *, recno_t, size_t, size_t, CB *);
++void cut_close(GS *);
++TEXT *text_init(SCR *, const CHAR_T *, size_t, size_t);
++void text_lfree(TEXTH *);
++void text_free(TEXT *);
++int del(SCR *, MARK *, MARK *, int);
++int looks_utf8(const char *, size_t);
++int looks_utf16(const char *, size_t);
++int decode_utf8(const char *);
++int decode_utf16(const char *, int);
++FREF *file_add(SCR *, char *);
++int file_init(SCR *, FREF *, char *, int);
++int file_end(SCR *, EXF *, int);
++int file_write(SCR *, MARK *, MARK *, char *, int);
++int file_m1(SCR *, int, int);
++int file_m2(SCR *, int);
++int file_m3(SCR *, int);
++int file_aw(SCR *, int);
++void set_alt_name(SCR *, char *);
++lockr_t file_lock(SCR *, char *, int, int);
++int v_key_init(SCR *);
++void v_key_ilookup(SCR *);
++size_t v_key_len(SCR *, ARG_CHAR_T);
++char *v_key_name(SCR *, ARG_CHAR_T);
++e_key_t v_key_val(SCR *, ARG_CHAR_T);
++int v_event_push(SCR *, EVENT *, CHAR_T *, size_t, u_int);
++int v_event_get(SCR *, EVENT *, int, u_int32_t);
++void v_event_err(SCR *, EVENT *);
++int v_event_flush(SCR *, u_int);
++int db_eget(SCR *, recno_t, CHAR_T **, size_t *, int *);
++int db_get(SCR *, recno_t, u_int32_t, CHAR_T **, size_t *);
++int db_delete(SCR *, recno_t);
++int db_append(SCR *, int, recno_t, CHAR_T *, size_t);
++int db_insert(SCR *, recno_t, CHAR_T *, size_t);
++int db_set(SCR *, recno_t, CHAR_T *, size_t);
++int db_exist(SCR *, recno_t);
++int db_last(SCR *, recno_t *);
++int db_rget(SCR *, recno_t, char **, size_t *);
++int db_rset(SCR *, recno_t, char *, size_t);
++void db_err(SCR *, recno_t);
++int log_init(SCR *, EXF *);
++int log_end(SCR *, EXF *);
++int log_cursor(SCR *);
++int log_line(SCR *, recno_t, u_int);
++int log_mark(SCR *, LMARK *);
++int log_backward(SCR *, MARK *);
++int log_setline(SCR *);
++int log_forward(SCR *, MARK *);
++int editor(GS *, int, char *[]);
++void v_end(GS *);
++int mark_init(SCR *, EXF *);
++int mark_end(SCR *, EXF *);
++int mark_get(SCR *, ARG_CHAR_T, MARK *, mtype_t);
++int mark_set(SCR *, ARG_CHAR_T, MARK *, int);
++int mark_insdel(SCR *, lnop_t, recno_t);
++void msgq(SCR *, mtype_t, const char *, ...);
++void msgq_wstr(SCR *, mtype_t, const CHAR_T *, const char *);
++void msgq_str(SCR *, mtype_t, const char *, const char *);
++void mod_rpt(SCR *);
++void msgq_status(SCR *, recno_t, u_int);
++int msg_open(SCR *, char *);
++void msg_close(GS *);
++const char *msg_cmsg(SCR *, cmsg_t, size_t *);
++const char *msg_cat(SCR *, const char *, size_t *);
++char *msg_print(SCR *, const char *, int *);
++int opts_init(SCR *, int *);
++int opts_set(SCR *, ARGS *[], char *);
++int o_set(SCR *, int, u_int, char *, u_long);
++int opts_empty(SCR *, int, int);
++void opts_dump(SCR *, enum optdisp);
++int opts_save(SCR *, FILE *);
++OPTLIST const *opts_search(CHAR_T *);
++void opts_nomatch(SCR *, CHAR_T *);
++int opts_copy(SCR *, SCR *);
++void opts_free(SCR *);
++int f_altwerase(SCR *, OPTION *, char *, u_long *);
++int f_columns(SCR *, OPTION *, char *, u_long *);
++int f_lines(SCR *, OPTION *, char *, u_long *);
++int f_lisp(SCR *, OPTION *, char *, u_long *);
++int f_msgcat(SCR *, OPTION *, char *, u_long *);
++int f_print(SCR *, OPTION *, char *, u_long *);
++int f_readonly(SCR *, OPTION *, char *, u_long *);
++int f_recompile(SCR *, OPTION *, char *, u_long *);
++int f_reformat(SCR *, OPTION *, char *, u_long *);
++int f_ttywerase(SCR *, OPTION *, char *, u_long *);
++int f_w300(SCR *, OPTION *, char *, u_long *);
++int f_w1200(SCR *, OPTION *, char *, u_long *);
++int f_w9600(SCR *, OPTION *, char *, u_long *);
++int f_window(SCR *, OPTION *, char *, u_long *);
++int f_encoding(SCR *, OPTION *, char *, u_long *);
++int put(SCR *, CB *, CHAR_T *, MARK *, MARK *, int, int);
++int rcv_tmp(SCR *, EXF *, char *);
++int rcv_init(SCR *);
++int rcv_sync(SCR *, u_int);
++int rcv_list(SCR *);
++int rcv_read(SCR *, FREF *);
++int screen_init(GS *, SCR *, SCR **);
++int screen_end(SCR *);
++SCR *screen_next(SCR *);
++int f_search(SCR *,
++   MARK *, MARK *, CHAR_T *, size_t, CHAR_T **, u_int);
++int b_search(SCR *,
++   MARK *, MARK *, CHAR_T *, size_t, CHAR_T **, u_int);
++void search_busy(SCR *, busy_t);
++int seq_set(SCR *, CHAR_T *,
++   size_t, CHAR_T *, size_t, CHAR_T *, size_t, seq_t, int);
++int seq_delete(SCR *, CHAR_T *, size_t, seq_t);
++int seq_free(SEQ *);
++SEQ *seq_find
++  (SCR *, SEQ **, EVENT *, CHAR_T *, size_t, seq_t, int *);
++void seq_close(GS *);
++int seq_dump(SCR *, seq_t, int);
++int seq_save(SCR *, FILE *, char *, seq_t);
++int e_memcmp(CHAR_T *, EVENT *, size_t);
++void *binc(SCR *, void *, size_t *, size_t);
++int nonblank(SCR *, recno_t, size_t *);
++char *join(char *, char *);
++char *expanduser(char *);
++char *quote(char *);
++char *v_strdup(SCR *, const char *, size_t);
++CHAR_T *v_wstrdup(SCR *, const CHAR_T *, size_t);
++enum nresult nget_uslong(u_long *, const CHAR_T *, CHAR_T **, int);
++enum nresult nget_slong(long *, const CHAR_T *, CHAR_T **, int);
++void timepoint_steady(struct timespec *);
++void timepoint_system(struct timespec *);
++void TRACE(SCR *, const char *, ...);
diff --cc usr.bin/vi/ex/version.h
index 1c18911cc593,000000000000..111bb6909b25
mode 100644,000000..100644
--- a/usr.bin/vi/ex/version.h
+++ b/usr.bin/vi/ex/version.h
@@@ -1,1 -1,0 +1,1 @@@
- #define VI_VERSION "2.2.1 (2023-09-25)"
++#define VI_VERSION "2.2.2 (2025-10-08)"
diff --cc usr.bin/vi/ex_extern.h
index 000000000000,000000000000..9d7b1d674c3c
new file mode 100644
--- /dev/null
+++ b/usr.bin/vi/ex_extern.h
@@@ -1,0 -1,0 +1,131 @@@
++int ex(SCR **);
++int ex_cmd(SCR *);
++int ex_range(SCR *, EXCMD *, int *);
++int ex_is_abbrev(CHAR_T *, size_t);
++int ex_is_unmap(CHAR_T *, size_t);
++void ex_badaddr
++  (SCR *, EXCMDLIST const *, enum badaddr, enum nresult);
++int ex_abbr(SCR *, EXCMD *);
++int ex_unabbr(SCR *, EXCMD *);
++int ex_append(SCR *, EXCMD *);
++int ex_change(SCR *, EXCMD *);
++int ex_insert(SCR *, EXCMD *);
++int ex_next(SCR *, EXCMD *);
++int ex_prev(SCR *, EXCMD *);
++int ex_rew(SCR *, EXCMD *);
++int ex_args(SCR *, EXCMD *);
++char **ex_buildargv(SCR *, EXCMD *, char *);
++int argv_init(SCR *, EXCMD *);
++int argv_exp0(SCR *, EXCMD *, CHAR_T *, size_t);
++int argv_exp1(SCR *, EXCMD *, CHAR_T *, size_t, int);
++int argv_exp2(SCR *, EXCMD *, CHAR_T *, size_t);
++int argv_exp3(SCR *, EXCMD *, CHAR_T *, size_t);
++int argv_flt_ex(SCR *, EXCMD *, CHAR_T *, size_t);
++int argv_free(SCR *);
++int argv_flt_path(SCR *, EXCMD *, CHAR_T *, size_t);
++CHAR_T *argv_esc(SCR *, EXCMD *, CHAR_T *, size_t);
++CHAR_T *argv_uesc(SCR *, EXCMD *, CHAR_T *, size_t);
++int ex_at(SCR *, EXCMD *);
++int ex_bang(SCR *, EXCMD *);
++int ex_cd(SCR *, EXCMD *);
++int ex_cscope(SCR *, EXCMD *);
++int cscope_end(SCR *);
++int cscope_display(SCR *);
++int cscope_search(SCR *, TAGQ *, TAG *);
++int ex_delete(SCR *, EXCMD *);
++int ex_display(SCR *, EXCMD *);
++int ex_edit(SCR *, EXCMD *);
++int ex_equal(SCR *, EXCMD *);
++int ex_file(SCR *, EXCMD *);
++int ex_filter(SCR *, 
++   EXCMD *, MARK *, MARK *, MARK *, CHAR_T *, enum filtertype);
++int ex_global(SCR *, EXCMD *);
++int ex_v(SCR *, EXCMD *);
++int ex_g_insdel(SCR *, lnop_t, recno_t);
++int ex_screen_copy(SCR *, SCR *);
++int ex_screen_end(SCR *);
++int ex_optchange(SCR *, int, char *, u_long *);
++int ex_exrc(SCR *);
++int ex_run_str(SCR *, char *, CHAR_T *, size_t, int, int);
++int ex_join(SCR *, EXCMD *);
++int ex_map(SCR *, EXCMD *);
++int ex_unmap(SCR *, EXCMD *);
++int ex_mark(SCR *, EXCMD *);
++int ex_mkexrc(SCR *, EXCMD *);
++int ex_copy(SCR *, EXCMD *);
++int ex_move(SCR *, EXCMD *);
++int ex_open(SCR *, EXCMD *);
++int ex_preserve(SCR *, EXCMD *);
++int ex_recover(SCR *, EXCMD *);
++int ex_list(SCR *, EXCMD *);
++int ex_number(SCR *, EXCMD *);
++int ex_pr(SCR *, EXCMD *);
++int ex_print(SCR *, EXCMD *, MARK *, MARK *, u_int32_t);
++int ex_ldisplay(SCR *, const CHAR_T *, size_t, size_t, u_int);
++int ex_scprint(SCR *, MARK *, MARK *);
++int ex_printf(SCR *, const char *, ...);
++int ex_puts(SCR *, const char *);
++int ex_fflush(SCR *sp);
++int ex_put(SCR *, EXCMD *);
++int ex_quit(SCR *, EXCMD *);
++int ex_read(SCR *, EXCMD *);
++int ex_readfp(SCR *, char *, FILE *, MARK *, recno_t *, int);
++int ex_bg(SCR *, EXCMD *);
++int ex_fg(SCR *, EXCMD *);
++int ex_resize(SCR *, EXCMD *);
++int ex_sdisplay(SCR *);
++int ex_script(SCR *, EXCMD *);
++int sscr_exec(SCR *, recno_t);
++int sscr_input(SCR *);
++int sscr_end(SCR *);
++int ex_set(SCR *, EXCMD *);
++int ex_shell(SCR *, EXCMD *);
++int ex_exec_proc(SCR *, EXCMD *, char *, const char *, int);
++int proc_wait(SCR *, long, const char *, int, int);
++int ex_shiftl(SCR *, EXCMD *);
++int ex_shiftr(SCR *, EXCMD *);
++int ex_retab(SCR *, EXCMD *);
++int ex_source(SCR *, EXCMD *);
++int ex_stop(SCR *, EXCMD *);
++int ex_s(SCR *, EXCMD *);
++int ex_subagain(SCR *, EXCMD *);
++int ex_subtilde(SCR *, EXCMD *);
++int re_compile(SCR *,
++    CHAR_T *, size_t, CHAR_T **, size_t *, regex_t *, u_int);
++void re_error(SCR *, int, regex_t *);
++int ex_tag_first(SCR *, CHAR_T *);
++int ex_tag_push(SCR *, EXCMD *);
++int ex_tag_next(SCR *, EXCMD *);
++int ex_tag_prev(SCR *, EXCMD *);
++int ex_tag_nswitch(SCR *, TAG *, int);
++int ex_tag_Nswitch(SCR *, TAG *, int);
++int ex_tag_pop(SCR *, EXCMD *);
++int ex_tag_top(SCR *, EXCMD *);
++int ex_tag_display(SCR *);
++int ex_tag_copy(SCR *, SCR *);
++int tagq_free(SCR *, TAGQ *);
++int tagq_push(SCR*, TAGQ*, int, int );
++void tag_msg(SCR *, tagmsg_t, char *);
++int ex_tagf_alloc(SCR *, char *);
++int ex_tag_free(SCR *);
++int ex_txt(SCR *, TEXTH *, ARG_CHAR_T, u_int32_t);
++int ex_undo(SCR *, EXCMD *);
++int ex_help(SCR *, EXCMD *);
++int ex_usage(SCR *, EXCMD *);
++int ex_viusage(SCR *, EXCMD *);
++void ex_cinit(SCR *, EXCMD *, int, int, recno_t, recno_t, int);
++int ex_getline(SCR *, FILE *, size_t *);
++int ex_ncheck(SCR *, int);
++int ex_init(SCR *);
++void ex_wemsg(SCR *, CHAR_T *, exm_t);
++void ex_emsg(SCR *, char *, exm_t);
++int ex_version(SCR *, EXCMD *);
++int ex_visual(SCR *, EXCMD *);
++int ex_wn(SCR *, EXCMD *);
++int ex_wq(SCR *, EXCMD *);
++int ex_write(SCR *, EXCMD *);
++int ex_xit(SCR *, EXCMD *);
++int ex_writefp(SCR *,
++   char *, FILE *, MARK *, MARK *, u_long *, u_long *, int);
++int ex_yank(SCR *, EXCMD *);
++int ex_z(SCR *, EXCMD *);
diff --cc usr.bin/vi/pathnames.h
index f1c706f5ecbd,000000000000..63b667ffacf4
mode 100644,000000..100644
--- a/usr.bin/vi/pathnames.h
+++ b/usr.bin/vi/pathnames.h
@@@ -1,26 -1,0 +1,25 @@@
- 
 +/* Read standard system paths first. */
 +#include <paths.h>
 +
 +#ifndef       _PATH_EXRC
 +#define       _PATH_EXRC      ".exrc"
 +#endif
 +
 +#ifndef       _PATH_MSGCAT
 +#define       _PATH_MSGCAT    "/usr/share/vi/catalog/"
 +#endif
 +
 +#ifndef       _PATH_NEXRC
 +#define       _PATH_NEXRC     ".nexrc"
 +#endif
 +
 +/* On linux _PATH_PRESERVE is only writable by root */
 +#define       NVI_PATH_PRESERVE       "/var/tmp/vi.recover/"
 +
 +#ifndef       _PATH_SYSEXRC
 +#define       _PATH_SYSEXRC   "/etc/vi.exrc"
 +#endif
 +
 +#ifndef       _PATH_TAGS
 +#define       _PATH_TAGS      "tags"
 +#endif
diff --cc usr.bin/vi/version.h
index 000000000000,000000000000..111bb6909b25
new file mode 100644
--- /dev/null
+++ b/usr.bin/vi/version.h
@@@ -1,0 -1,0 +1,1 @@@
++#define VI_VERSION "2.2.2 (2025-10-08)"
diff --cc usr.bin/vi/vi_extern.h
index 000000000000,000000000000..8e145c6318ef
new file mode 100644
--- /dev/null
+++ b/usr.bin/vi/vi_extern.h
@@@ -1,0 -1,0 +1,145 @@@
++int cs_init(SCR *, VCS *);
++int cs_next(SCR *, VCS *);
++int cs_fspace(SCR *, VCS *);
++int cs_fblank(SCR *, VCS *);
++int cs_prev(SCR *, VCS *);
++int cs_bblank(SCR *, VCS *);
++int v_at(SCR *, VICMD *);
++int v_chrepeat(SCR *, VICMD *);
++int v_chrrepeat(SCR *, VICMD *);
++int v_cht(SCR *, VICMD *);
++int v_chf(SCR *, VICMD *);
++int v_chT(SCR *, VICMD *);
++int v_chF(SCR *, VICMD *);
++int v_delete(SCR *, VICMD *);
++int v_again(SCR *, VICMD *);
++int v_exmode(SCR *, VICMD *);
++int v_join(SCR *, VICMD *);
++int v_shiftl(SCR *, VICMD *);
++int v_shiftr(SCR *, VICMD *);
++int v_suspend(SCR *, VICMD *);
++int v_switch(SCR *, VICMD *);
++int v_tagpush(SCR *, VICMD *);
++int v_tagpop(SCR *, VICMD *);
++int v_filter(SCR *, VICMD *);
++int v_ex(SCR *, VICMD *);
++int v_ecl_exec(SCR *);
++int v_increment(SCR *, VICMD *);
++int v_screen_copy(SCR *, SCR *);
++int v_screen_end(SCR *);
++int v_optchange(SCR *, int, char *, u_long *);
++int v_iA(SCR *, VICMD *);
++int v_ia(SCR *, VICMD *);
++int v_iI(SCR *, VICMD *);
++int v_ii(SCR *, VICMD *);
++int v_iO(SCR *, VICMD *);
++int v_io(SCR *, VICMD *);
++int v_change(SCR *, VICMD *);
++int v_Replace(SCR *, VICMD *);
++int v_subst(SCR *, VICMD *);
++int v_left(SCR *, VICMD *);
++int v_cfirst(SCR *, VICMD *);
++int v_first(SCR *, VICMD *);
++int v_ncol(SCR *, VICMD *);
++int v_zero(SCR *, VICMD *);
++int v_mark(SCR *, VICMD *);
++int v_bmark(SCR *, VICMD *);
++int v_fmark(SCR *, VICMD *);
++int v_emark(SCR *, VICMD *);
++int v_match(SCR *, VICMD *);
++int v_buildmcs(SCR *, char *);
++int v_paragraphf(SCR *, VICMD *);
++int v_paragraphb(SCR *, VICMD *);
++int v_buildps(SCR *, char *, char *);
++int v_Put(SCR *, VICMD *);
++int v_put(SCR *, VICMD *);
++int v_redraw(SCR *, VICMD *);
++int v_replace(SCR *, VICMD *);
++int v_right(SCR *, VICMD *);
++int v_dollar(SCR *, VICMD *);
++int v_screen(SCR *, VICMD *);
++int v_lgoto(SCR *, VICMD *);
++int v_home(SCR *, VICMD *);
++int v_middle(SCR *, VICMD *);
++int v_bottom(SCR *, VICMD *);
++int v_up(SCR *, VICMD *);
++int v_cr(SCR *, VICMD *);
++int v_down(SCR *, VICMD *);
++int v_hpageup(SCR *, VICMD *);
++int v_hpagedown(SCR *, VICMD *);
++int v_pagedown(SCR *, VICMD *);
++int v_pageup(SCR *, VICMD *);
++int v_lineup(SCR *, VICMD *);
++int v_linedown(SCR *, VICMD *);
++int v_searchb(SCR *, VICMD *);
++int v_searchf(SCR *, VICMD *);
++int v_searchN(SCR *, VICMD *);
++int v_searchn(SCR *, VICMD *);
++int v_searchw(SCR *, VICMD *);
++int v_correct(SCR *, VICMD *, int);
++int v_sectionf(SCR *, VICMD *);
++int v_sectionb(SCR *, VICMD *);
++int v_sentencef(SCR *, VICMD *);
++int v_sentenceb(SCR *, VICMD *);
++int v_status(SCR *, VICMD *);
++int v_tcmd(SCR *, VICMD *, ARG_CHAR_T, u_int);
++int v_txt(SCR *, VICMD *, MARK *,
++   const CHAR_T *, size_t, ARG_CHAR_T, recno_t, u_long, u_int32_t);
++int v_txt_auto(SCR *, recno_t, TEXT *, size_t, TEXT *);
++int v_ulcase(SCR *, VICMD *);
++int v_mulcase(SCR *, VICMD *);
++int v_Undo(SCR *, VICMD *);
++int v_undo(SCR *, VICMD *);
++void v_eof(SCR *, MARK *);
++void v_eol(SCR *, MARK *);
++void v_nomove(SCR *);
++void v_sof(SCR *, MARK *);
++void v_sol(SCR *);
++int v_isempty(CHAR_T *, size_t);
++void v_emsg(SCR *, char *, vim_t);
++int v_wordW(SCR *, VICMD *);
++int v_wordw(SCR *, VICMD *);
++int v_wordE(SCR *, VICMD *);
++int v_worde(SCR *, VICMD *);
++int v_wordB(SCR *, VICMD *);
++int v_wordb(SCR *, VICMD *);
++int v_xchar(SCR *, VICMD *);
++int v_Xchar(SCR *, VICMD *);
++int v_yank(SCR *, VICMD *);
++int v_z(SCR *, VICMD *);
++int vs_crel(SCR *, long);
++int v_zexit(SCR *, VICMD *);
++int vi(SCR **);
++int v_curword(SCR *);
++int vs_line(SCR *, SMAP *, size_t *, size_t *);
++int vs_number(SCR *);
++void vs_busy(SCR *, const char *, busy_t);
++void vs_home(SCR *);
++void vs_update(SCR *, const char *, const CHAR_T *);
++void vs_msg(SCR *, mtype_t, char *, size_t);
++int vs_ex_resolve(SCR *, int *);
++int vs_resolve(SCR *, SCR *, int);
++int vs_repaint(SCR *, EVENT *);
++int vs_refresh(SCR *, int);
++int vs_column(SCR *, size_t *);
++size_t vs_screens(SCR *, recno_t, size_t *);
++size_t vs_columns(SCR *, CHAR_T *, recno_t, size_t *, size_t *);
++size_t vs_rcm(SCR *, recno_t, int);
++size_t vs_colpos(SCR *, recno_t, size_t);
++int vs_change(SCR *, recno_t, lnop_t);
++int vs_sm_fill(SCR *, recno_t, pos_t);
++int vs_sm_scroll(SCR *, MARK *, recno_t, scroll_t);
++int vs_sm_1up(SCR *);
++int vs_sm_1down(SCR *);
++int vs_sm_next(SCR *, SMAP *, SMAP *);
++int vs_sm_prev(SCR *, SMAP *, SMAP *);
++int vs_sm_cursor(SCR *, SMAP **);
++int vs_sm_position(SCR *, MARK *, u_long, pos_t);
++recno_t vs_sm_nlines(SCR *, SMAP *, recno_t, size_t);
++int vs_split(SCR *, SCR *, int);
++int vs_vsplit(SCR *, SCR *);
++int vs_discard(SCR *, SCR **);
++int vs_fg(SCR *, SCR **, CHAR_T *, int);
++int vs_bg(SCR *);
++int vs_swap(SCR *, SCR **, char *);
++int vs_resize(SCR *, long, adj_t);

Reply via email to