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);
