1 public char * saven(constant char *s, size_t n); 2 public char * save(constant char *s); 3 public void out_of_memory(void); 4 public void * ecalloc(size_t count, size_t size); 5 public char * skipsp(char *s); 6 public constant char * skipspc(constant char *s); 7 public size_t sprefix(constant char *ps, constant char *s, int uppercase); 8 public void quit(int status); 9 public int secure_allow(int features); 10 public void raw_mode(int on); 11 public void screen_size_changed(void); 12 public constant char * special_key_str(int key); 13 public void init_win_colors(void); 14 public void get_term(void); 15 public void init_mouse(void); 16 public void deinit_mouse(void); 17 public void init(void); 18 public void deinit(void); 19 public int interactive(void); 20 public void home(void); 21 public void dump_screen(void); 22 public void add_line(void); 23 public void remove_top(int n); 24 public void win32_scroll_up(int n); 25 public void lower_left(void); 26 public void line_left(void); 27 public void check_winch(void); 28 public void goto_line(int sindex); 29 public void vbell(void); 30 public void bell(void); 31 public void clear(void); 32 public void clear_eol(void); 33 public void clear_bot(void); 34 public void init_bracketed_paste(void); 35 public void deinit_bracketed_paste(void); 36 public COLOR_TYPE parse_color(constant char *str, mutable int *p_fg, mutable int *p_bg, mutable CHAR_ATTR *p_cattr); 37 public void at_enter(int attr); 38 public void at_exit(void); 39 public void at_switch(int attr); 40 public lbool is_at_equiv(int attr1, int attr2); 41 public int apply_at_specials(int attr); 42 public void putbs(void); 43 public void WIN32ungetch(int ch); 44 public lbool win32_kbhit2(lbool no_queued); 45 public lbool win32_kbhit(void); 46 public char WIN32getch(void); 47 public void win32_getch_clear(void); 48 public void WIN32setcolors(int fg, int bg); 49 public void WIN32textout(constant char *text, size_t len); 50 public void match_brac(char obrac, char cbrac, int forwdir, int n); 51 public void ch_ungetchar(int c); 52 public void end_logfile(void); 53 public void sync_logfile(void); 54 public int ch_seek(POSITION pos); 55 public int ch_end_seek(void); 56 public int ch_end_buffer_seek(void); 57 public int ch_beg_seek(void); 58 public POSITION ch_length(void); 59 public void ch_resize(void); 60 public POSITION ch_tell(void); 61 public int ch_forw_get(void); 62 public int ch_back_get(void); 63 public void ch_setbufspace(ssize_t bufspace); 64 public void ch_flush(void); 65 public int seekable(int f); 66 public void ch_set_eof(void); 67 public void ch_init(int f, int flags, ssize_t nread); 68 public void ch_close(void); 69 public int ch_getflags(void); 70 public void setfmt(constant char *s, constant char **fmtvarptr, int *attrptr, constant char *default_fmt, lbool for_printf); 71 public void init_charset(void); 72 public lbool binary_char(LWCHAR c); 73 public lbool control_char(LWCHAR c); 74 public constant char * prchar(LWCHAR c); 75 public constant char * prutfchar(LWCHAR ch); 76 public int utf_len(char ch); 77 public lbool is_utf8_well_formed(constant char *ss, int slen); 78 public void utf_skip_to_lead(constant char **pp, constant char *limit); 79 public LWCHAR get_wchar(constant char *sp); 80 public void put_wchar(mutable char **pp, LWCHAR ch); 81 public LWCHAR step_charc(constant char **pp, signed int dir, constant char *limit); 82 public LWCHAR step_char(char **pp, signed int dir, constant char *limit); 83 public lbool is_composing_char(LWCHAR ch); 84 public lbool is_ubin_char(LWCHAR ch); 85 public lbool is_wide_char(LWCHAR ch); 86 public lbool is_combining_char(LWCHAR ch1, LWCHAR ch2); 87 public void cmd_reset(void); 88 public void clear_cmd(void); 89 public void cmd_putstr(constant char *s); 90 public int len_cmdbuf(void); 91 public lbool cmdbuf_empty(void); 92 public void cmd_repaint(constant char *old_cp); 93 public void set_mlist(void *mlist, int cmdflags); 94 public ssize_t save_updown_match(void); 95 public void restore_updown_match(ssize_t udm); 96 public void cmd_addhist(struct mlist *mlist, constant char *cmd, lbool modified); 97 public void cmd_accept(void); 98 public int cmd_char(char c); 99 public int cmd_setstring(constant char *s, lbool uc); 100 public LINENUM cmd_int(mutable long *frac); 101 public constant char * get_cmdbuf(void); 102 public constant char * cmd_lastpattern(void); 103 public void init_cmdhist(void); 104 public void save_cmdhist(void); 105 public void cmd_exec(void); 106 public int in_mca(void); 107 public int norm_search_type(int st); 108 public void screen_trashed_num(int trashed); 109 public void screen_trashed(void); 110 public int is_screen_trashed(void); 111 public void dispversion(void); 112 public void getcc_clear(void); 113 public char getcc(void); 114 public void ungetcc(char c); 115 public void ungetcc_back(char c); 116 public void ungetcc_end_command(void); 117 public void ungetsc(constant char *s); 118 public char peekcc(void); 119 public void start_ignoring_input(); 120 public void stop_ignoring_input(); 121 public lbool is_ignoring_input(int action); 122 public void commands(void); 123 public size_t cvt_length(size_t len, int ops); 124 public int * cvt_alloc_chpos(size_t len); 125 public void cvt_text(mutable char *odst, constant char *osrc, mutable int *chpos, mutable size_t *lenp, int ops); 126 public void expand_cmd_tables(void); 127 public void init_cmds(void); 128 public void add_fcmd_table(unsigned char *buf, size_t len); 129 public void add_ecmd_table(unsigned char *buf, size_t len); 130 public void add_uvar_table(unsigned char *buf, size_t len); 131 public void add_sysvar_table(unsigned char *buf, size_t len); 132 public int fcmd_decode(constant char *cmd, constant char **sp); 133 public int ecmd_decode(constant char *cmd, constant char **sp); 134 public constant char * lgetenv(constant char *var); 135 public constant char * lgetenv_ext(constant char *var, unsigned char *env_buf, size_t env_buf_len); 136 public lbool isnullenv(constant char *s); 137 public int lesskey(constant char *filename, lbool sysvar); 138 public int lesskey_src(constant char *filename, lbool sysvar); 139 public int lesskey_content(constant char *content, lbool sysvar); 140 public int editchar(char c, int flags); 141 public void init_textlist(struct textlist *tlist, mutable char *str); 142 public constant char * forw_textlist(struct textlist *tlist, constant char *prev); 143 public constant char * back_textlist(struct textlist *tlist, constant char *prev); 144 public void close_altpipe(IFILE ifile); 145 public void check_altpipe_error(void); 146 public int edit(constant char *filename); 147 public int edit_ifile(IFILE ifile); 148 public int edit_list(char *filelist); 149 public int edit_first(void); 150 public int edit_last(void); 151 public int edit_next(int n); 152 public int edit_prev(int n); 153 public int edit_index(int n); 154 public IFILE save_curr_ifile(void); 155 public void unsave_ifile(IFILE save_ifile); 156 public void reedit_ifile(IFILE save_ifile); 157 public void reopen_curr_ifile(void); 158 public int edit_stdin(void); 159 public void cat_file(void); 160 public void use_logfile(constant char *filename); 161 public void expand_evars(mutable char *buf, size_t len, struct xbuffer *xbuf); 162 public char * shell_unquote(constant char *str); 163 public constant char * get_meta_escape(void); 164 public char * shell_quoten(constant char *s, size_t slen); 165 public char * shell_quote(constant char *s); 166 public char * dirfile(constant char *dirname, constant char *filename, int must_exist); 167 public char * homefile(constant char *filename); 168 public char * fexpand(constant char *s); 169 public char * fcomplete(constant char *s); 170 public int bin_file(int f, ssize_t *n); 171 public char * readfd(FILE *fd); 172 public char * lglob(constant char *afilename); 173 public lbool is_fake_pathname(constant char *path); 174 public char * lrealpath(constant char *path); 175 public char * open_altfile(constant char *filename, int *pf, void **pfd); 176 public void close_altfile(constant char *altfilename, constant char *filename); 177 public lbool is_dir(constant char *filename); 178 public char * bad_file(constant char *filename); 179 public POSITION filesize(int f); 180 public lbool curr_ifile_changed(void); 181 public constant char * shell_coption(void); 182 public constant char * last_component(constant char *name); 183 public void eof_bell(void); 184 public lbool eof_displayed(lbool offset); 185 public lbool entire_file_displayed(void); 186 public void squish_check(void); 187 public int overlay_header(void); 188 public void forw(int n, POSITION pos, lbool force, lbool only_last, lbool to_newline, int nblank); 189 public void back(int n, POSITION pos, lbool force, lbool only_last, lbool to_newline); 190 public void forward(int n, lbool force, lbool only_last, lbool to_newline); 191 public void backward(int n, lbool force, lbool only_last, lbool to_newline); 192 public int get_back_scroll(void); 193 public lbool get_one_screen(void); 194 public void del_ifile(IFILE h); 195 public IFILE next_ifile(IFILE h); 196 public IFILE prev_ifile(IFILE h); 197 public IFILE getoff_ifile(IFILE ifile); 198 public int nifile(void); 199 public IFILE get_ifile(constant char *filename, IFILE prev); 200 public constant char * get_filename(IFILE ifile); 201 public constant char * get_real_filename(IFILE ifile); 202 public int get_index(IFILE ifile); 203 public void store_pos(IFILE ifile, struct scrpos *scrpos); 204 public void get_pos(IFILE ifile, struct scrpos *scrpos); 205 public void set_open(IFILE ifile); 206 public int opened(IFILE ifile); 207 public void hold_ifile(IFILE ifile, int incr); 208 public int held_ifile(IFILE ifile); 209 public void * get_filestate(IFILE ifile); 210 public void set_filestate(IFILE ifile, void *filestate); 211 public void set_altpipe(IFILE ifile, void *p); 212 public void *get_altpipe(IFILE ifile); 213 public void set_altfilename(IFILE ifile, char *altfilename); 214 public char * get_altfilename(IFILE ifile); 215 public void if_dump(void); 216 public POSITION forw_line_seg(POSITION curr_pos, lbool skipeol, lbool rscroll, lbool nochop, POSITION *p_linepos, lbool *p_newline); 217 public POSITION forw_line(POSITION curr_pos, POSITION *p_linepos, lbool *p_newline); 218 public POSITION back_line(POSITION curr_pos, lbool *p_newline); 219 public void set_attnpos(POSITION pos); 220 public void jump_forw(void); 221 public void jump_forw_buffered(void); 222 public void jump_back(LINENUM linenum); 223 public void repaint(void); 224 public void jump_percent(int percent, long fraction); 225 public void jump_line_loc(POSITION pos, int sline); 226 public POSITION after_header_pos(POSITION pos); 227 public void jump_loc(POSITION pos, int sline); 228 public void init_line(void); 229 public lbool is_ascii_char(LWCHAR ch); 230 public POSITION line_position(void); 231 public void prewind(void); 232 public void plinestart(POSITION pos); 233 public int line_pfx_width(void); 234 public void pshift_all(void); 235 public int pwidth(LWCHAR ch, int a, LWCHAR prev_ch, int prev_a); 236 public void savec(void); 237 public void loadc(void); 238 public lbool is_ansi_end(LWCHAR ch); 239 public lbool is_ansi_middle(LWCHAR ch); 240 public void skip_ansi(struct ansi_state *pansi, LWCHAR ch, constant char **pp, constant char *limit); 241 public struct ansi_state * ansi_start(LWCHAR ch); 242 public ansi_state ansi_step(struct ansi_state *pansi, LWCHAR ch); 243 public osc8_state ansi_osc8_state(struct ansi_state *pansi); 244 public void ansi_done(struct ansi_state *pansi); 245 public int pappend_b(char c, POSITION pos, lbool before_pendc); 246 public int pappend(char c, POSITION pos); 247 public lbool line_is_ff(void); 248 public int pflushmbc(void); 249 public void pdone(lbool endline, lbool chopped, lbool forw); 250 public int col_from_pos(POSITION linepos, POSITION spos, POSITION saved_pos, int saved_col); 251 public POSITION pos_from_col(POSITION linepos, int col, POSITION saved_pos, int saved_col); 252 public void set_attr_line(int a); 253 public void set_status_col(char c, int attr); 254 public int gline(size_t i, int *ap); 255 public lbool should_clear_after_line(void); 256 public void null_line(void); 257 public POSITION forw_raw_line_len(POSITION curr_pos, size_t read_len, constant char **linep, size_t *line_lenp); 258 public POSITION forw_raw_line(POSITION curr_pos, constant char **linep, size_t *line_lenp); 259 public POSITION back_raw_line(POSITION curr_pos, constant char **linep, size_t *line_lenp); 260 public int skip_columns(int cols, constant char **linep, size_t *line_lenp); 261 public void load_line(constant char *str); 262 public int rrshift(void); 263 public int set_color_map(int attr, constant char *colorstr); 264 public constant char * get_color_map(int attr); 265 public void clr_linenum(void); 266 public void add_lnum(LINENUM linenum, POSITION pos); 267 public LINENUM find_linenum(POSITION pos); 268 public POSITION find_pos(LINENUM linenum); 269 public LINENUM currline(int where); 270 public void scan_eof(void); 271 public LINENUM vlinenum(LINENUM linenum); 272 public void lsystem(constant char *cmd, constant char *donemsg); 273 public int pipe_mark(char c, constant char *cmd); 274 public int pipe_data(constant char *cmd, POSITION spos, POSITION epos); 275 public void init_mark(void); 276 public int badmark(char c); 277 public void setmark(char c, int where); 278 public void clrmark(char c); 279 public void lastmark(void); 280 public void gomark(char c); 281 public POSITION markpos(char c); 282 public char posmark(POSITION pos); 283 public void unmark(IFILE ifile); 284 public void mark_check_ifile(IFILE ifile); 285 public void save_marks(FILE *fout, constant char *hdr); 286 public void restore_mark(constant char *line); 287 public void opt_o(int type, constant char *s); 288 public void opt__O(int type, constant char *s); 289 public void opt_j(int type, constant char *s); 290 public void calc_jump_sline(void); 291 public void opt_shift(int type, constant char *s); 292 public void calc_shift_count(void); 293 public void opt_k(int type, constant char *s); 294 public void opt_ks(int type, constant char *s); 295 public void opt_kc(int type, constant char *s); 296 public void opt__S(int type, constant char *s); 297 public void opt_t(int type, constant char *s); 298 public void opt__T(int type, constant char *s); 299 public void opt_p(int type, constant char *s); 300 public void opt__P(int type, constant char *s); 301 public void opt_b(int type, constant char *s); 302 public void opt_i(int type, constant char *s); 303 public void opt__V(int type, constant char *s); 304 public void opt_D(int type, constant char *s); 305 public void set_tabs(constant char *s, size_t len); 306 public void opt_x(int type, constant char *s); 307 public void opt_quote(int type, constant char *s); 308 public void opt_rscroll(int type, constant char *s); 309 public void opt_query(int type, constant char *s); 310 public void opt_match_shift(int type, constant char *s); 311 public void calc_match_shift(void); 312 public void opt_mousecap(int type, constant char *s); 313 public void opt_wheel_lines(int type, constant char *s); 314 public void opt_linenum_width(int type, constant char *s); 315 public void opt_status_col_width(int type, constant char *s); 316 public void opt_filesize(int type, constant char *s); 317 public void opt_intr(int type, constant char *s); 318 public int next_cnum(constant char **sp, constant char *printopt, constant char *errmsg, lbool *errp); 319 public void opt_header(int type, constant char *s); 320 public void opt_search_type(int type, constant char *s); 321 public void opt_nosearch_headers(int type, constant char *s); 322 public void opt_nosearch_header_lines(int type, constant char *s); 323 public void opt_nosearch_header_cols(int type, constant char *s); 324 public void opt_no_paste(int type, constant char *s); 325 public void opt_ttyin_name(int type, constant char *s); 326 public int chop_line(void); 327 public int get_swindow(void); 328 public constant char * propt(char c); 329 public void scan_option(constant char *s, lbool is_env); 330 public void toggle_option(struct loption *o, lbool lower, constant char *s, int how_toggle); 331 public int opt_has_param(struct loption *o); 332 public constant char * opt_prompt(struct loption *o); 333 public constant char * opt_toggle_disallowed(int c); 334 public lbool isoptpending(void); 335 public void nopendopt(void); 336 public int getnumc(constant char **sp, constant char *printopt, lbool *errp); 337 public int getnum(char **sp, constant char *printopt, lbool *errp); 338 public long getfraction(constant char **sp, constant char *printopt, lbool *errp); 339 public void init_unsupport(void); 340 public int get_quit_at_eof(void); 341 public void init_option(void); 342 public struct loption * findopt(int c); 343 public struct loption * findopt_name(constant char **p_optname, constant char **p_oname, lbool *p_ambig); 344 public char * findopts_name(constant char *pfx); 345 public void init_poll(void); 346 public int supports_ctrl_x(void); 347 public ssize_t iread(int fd, unsigned char *buf, size_t len); 348 public int iopen(constant char *filename, int flags); 349 public void intio(void); 350 public time_type get_time(void); 351 public char * errno_message(constant char *filename); 352 public constant char * signal_message(int sig); 353 public uintmax umuldiv(uintmax val, uintmax num, uintmax den); 354 public int percentage(POSITION num, POSITION den); 355 public POSITION percent_pos(POSITION pos, int percent, long fraction); 356 public int os9_signal(int type, RETSIGTYPE (*handler)()); 357 public void sleep_ms(int ms); 358 public void put_line(lbool forw_scroll); 359 public void flush(void); 360 public void set_output(int fd); 361 public int putchr(int ch); 362 public void clear_bot_if_needed(void); 363 public void putstr(constant char *s); 364 public int less_printf(constant char *fmt, PARG *parg); 365 public void get_return(void); 366 public void error(constant char *fmt, PARG *parg); 367 public void ierror(constant char *fmt, PARG *parg); 368 public void ixerror(constant char *fmt, PARG *parg); 369 public int query(constant char *fmt, PARG *parg); 370 public int compile_pattern(constant char *pattern, int search_type, int show_error, PATTERN_TYPE *comp_pattern); 371 public void uncompile_pattern(PATTERN_TYPE *pattern); 372 public int valid_pattern(char *pattern); 373 public lbool is_null_pattern(PATTERN_TYPE pattern); 374 public lbool match_pattern(PATTERN_TYPE pattern, constant char *tpattern, constant char *line, size_t line_len, size_t line_off, constant char **sp, constant char **ep, int nsp, int notbol, int search_type); 375 public constant char * pattern_lib_name(void); 376 public POSITION position(int sindex); 377 public void add_forw_pos(POSITION pos, lbool no_scroll); 378 public void add_back_pos(POSITION pos); 379 public void pos_clear(void); 380 public void pos_init(void); 381 public int onscreen(POSITION pos); 382 public int empty_screen(void); 383 public int empty_lines(int s, int e); 384 public void get_scrpos(struct scrpos *scrpos, int where); 385 public int sindex_from_sline(int sline); 386 public void pos_rehead(void); 387 public void init_prompt(void); 388 public constant char * pr_expand(constant char *proto); 389 public constant char * eq_message(void); 390 public constant char * pr_string(void); 391 public constant char * wait_message(void); 392 public void init_search(void); 393 public int get_cvt_ops(int search_type); 394 public void repaint_hilite(lbool on); 395 public void clear_attn(void); 396 public void undo_search(lbool clear); 397 public void undo_osc8(void); 398 public void clr_hlist(struct hilite_tree *anchor); 399 public void clr_hilite(void); 400 public void clr_filter(void); 401 public void set_header(POSITION pos); 402 public lbool is_filtered(POSITION pos); 403 public POSITION next_unfiltered(POSITION pos); 404 public int is_hilited_attr(POSITION pos, POSITION epos, int nohide, int *p_matches); 405 public void chg_hilite(void); 406 public void osc8_search(int search_type, constant char *param, int matches); 407 public lbool osc8_click(int sindex, int col); 408 public void osc8_open(void); 409 public void osc8_jump(void); 410 public void chg_caseless(void); 411 public int search(int search_type, constant char *pattern, int n); 412 public void prep_hilite(POSITION spos, POSITION epos, int maxlines); 413 public void set_filter_pattern(constant char *pattern, int search_type); 414 public lbool is_filtering(void); 415 public RETSIGTYPE winch(int type); 416 public void init_signals(int on); 417 public void psignals(void); 418 public void cleantags(void); 419 public int gettagtype(void); 420 public void findtag(constant char *tag); 421 public POSITION tagsearch(void); 422 public constant char * nexttag(int n); 423 public constant char * prevtag(int n); 424 public int ntags(void); 425 public int curr_tag(void); 426 public int edit_tagfile(void); 427 public lbool is_lesstest(void); 428 public int open_tty(void); 429 public void open_getchr(void); 430 public void close_getchr(void); 431 public int pclose(FILE *f); 432 public int default_wheel_lines(void); 433 public int getchr(void); 434 public void xbuf_init(struct xbuffer *xbuf); 435 public void xbuf_init_size(struct xbuffer *xbuf, size_t init_size); 436 public void xbuf_deinit(struct xbuffer *xbuf); 437 public void xbuf_reset(struct xbuffer *xbuf); 438 public void xbuf_add_byte(struct xbuffer *xbuf, unsigned char b); 439 public void xbuf_add_char(struct xbuffer *xbuf, char c); 440 public void xbuf_add_data(struct xbuffer *xbuf, constant unsigned char *data, size_t len); 441 public int xbuf_pop(struct xbuffer *buf); 442 public void xbuf_set(struct xbuffer *dst, struct xbuffer *src); 443 public constant char * xbuf_char_data(constant struct xbuffer *xbuf); 444 public lbool help_ckd_add(void *r, uintmax a, uintmax b, int rsize, int rsigned); 445 public lbool help_ckd_mul(void *r, uintmax a, uintmax b, int rsize, int rsigned); 446