Lines Matching refs:eap
22 static void do_filter(linenr_T line1, linenr_T line2, exarg_T *eap, char_u *cmd, int do_in, int do_…
31 do_ascii(exarg_T *eap UNUSED) in do_ascii()
142 ex_align(exarg_T *eap) in ex_align() argument
155 if (eap->cmdidx == CMD_right) in ex_align()
156 eap->cmdidx = CMD_left; in ex_align()
157 else if (eap->cmdidx == CMD_left) in ex_align()
158 eap->cmdidx = CMD_right; in ex_align()
162 width = atoi((char *)eap->arg); in ex_align()
164 if (eap->cmdidx == CMD_left) // width is used for new indent in ex_align()
184 if (u_save((linenr_T)(eap->line1 - 1), (linenr_T)(eap->line2 + 1)) == FAIL) in ex_align()
187 for (curwin->w_cursor.lnum = eap->line1; in ex_align()
188 curwin->w_cursor.lnum <= eap->line2; ++curwin->w_cursor.lnum) in ex_align()
190 if (eap->cmdidx == CMD_left) // left align in ex_align()
195 len = linelen(eap->cmdidx == CMD_right ? &has_tab in ex_align()
201 if (eap->cmdidx == CMD_center) in ex_align()
235 changed_lines(eap->line1, 0, eap->line2 + 1, 0L); in ex_align()
373 ex_sort(exarg_T *eap) in ex_sort() argument
380 size_t count = (size_t)(eap->line2 - eap->line1 + 1); in ex_sort()
398 if (u_save((linenr_T)(eap->line1 - 1), (linenr_T)(eap->line2 + 1)) == FAIL) in ex_sort()
412 for (p = eap->arg; *p != NUL; ++p) in ex_sort()
453 else if (eap->nextcmd == NULL && check_nextcmd(p) != NULL) in ex_sort()
455 eap->nextcmd = check_nextcmd(p); in ex_sort()
507 for (lnum = eap->line1; lnum <= eap->line2; ++lnum) in ex_sort()
556 nrs[lnum - eap->line1].st_u.num.is_number = FALSE; in ex_sort()
557 nrs[lnum - eap->line1].st_u.num.value = 0; in ex_sort()
561 nrs[lnum - eap->line1].st_u.num.is_number = TRUE; in ex_sort()
563 &nrs[lnum - eap->line1].st_u.num.value, in ex_sort()
576 nrs[lnum - eap->line1].st_u.value_flt = -DBL_MAX; in ex_sort()
578 nrs[lnum - eap->line1].st_u.value_flt = in ex_sort()
587 nrs[lnum - eap->line1].st_u.line.start_col_nr = start_col; in ex_sort()
588 nrs[lnum - eap->line1].st_u.line.end_col_nr = end_col; in ex_sort()
591 nrs[lnum - eap->line1].lnum = lnum; in ex_sort()
614 lnum = eap->line2; in ex_sort()
617 linenr_T get_lnum = nrs[eap->forceit ? count - i - 1 : i].lnum; in ex_sort()
641 ml_delete(eap->line1); in ex_sort()
646 deleted = (long)(count - (lnum - eap->line2)); in ex_sort()
649 mark_adjust(eap->line2 - deleted, eap->line2, (long)MAXLNUM, -deleted); in ex_sort()
653 mark_adjust(eap->line2, MAXLNUM, -deleted, 0L); in ex_sort()
656 changed_lines(eap->line1, 0, eap->line2 + 1, -deleted); in ex_sort()
658 curwin->w_cursor.lnum = eap->line1; in ex_sort()
891 exarg_T *eap, in do_bang() argument
896 char_u *arg = eap->arg; // command in do_bang()
897 linenr_T line1 = eap->line1; // start of range in do_bang()
898 linenr_T line2 = eap->line2; // end of range in do_bang()
1031 do_filter(line1, line2, eap, newcmd, do_in, do_out); in do_bang()
1057 exarg_T *eap, // for forced 'ff' and 'fenc' in do_filter() argument
1149 if (itmp != NULL && buf_write(curbuf, itmp, NULL, line1, line2, eap, in do_filter()
1225 eap, READ_FILTER) != OK) in do_filter()
1700 do_fixdel(exarg_T *eap UNUSED) in do_fixdel()
1805 ex_file(exarg_T *eap) in ex_file() argument
1809 if (eap->addr_count > 0 in ex_file()
1810 && (*eap->arg != NUL in ex_file()
1811 || eap->line2 > 0 in ex_file()
1812 || eap->addr_count > 1)) in ex_file()
1818 if (*eap->arg != NUL || eap->addr_count == 1) in ex_file()
1820 if (rename_buffer(eap->arg) == FAIL) in ex_file()
1826 if (*eap->arg == NUL || !shortmess(SHM_FILEINFO)) in ex_file()
1827 fileinfo(FALSE, FALSE, eap->forceit); in ex_file()
1834 ex_update(exarg_T *eap) in ex_update() argument
1837 (void)do_write(eap); in ex_update()
1844 ex_write(exarg_T *eap) in ex_write() argument
1846 if (eap->cmdidx == CMD_saveas) in ex_write()
1849 eap->line1 = 1; in ex_write()
1850 eap->line2 = curbuf->b_ml.ml_line_count; in ex_write()
1853 if (eap->usefilter) // input lines to shell command in ex_write()
1854 do_bang(1, eap, FALSE, TRUE, FALSE); in ex_write()
1856 (void)do_write(eap); in ex_write()
1881 do_write(exarg_T *eap) in do_write() argument
1897 ffname = eap->arg; in do_write()
1910 if (eap->cmdidx == CMD_saveas) in do_write()
1936 || eap->cmdidx == CMD_saveas) in do_write()
1962 || check_readonly(&eap->forceit, curbuf))) in do_write()
1972 if ( (eap->line1 != 1 in do_write()
1973 || eap->line2 != curbuf->b_ml.ml_line_count) in do_write()
1974 && !eap->forceit in do_write()
1975 && !eap->append in do_write()
1984 eap->forceit = TRUE; in do_write()
1995 if (check_overwrite(eap, curbuf, fname, ffname, other) == OK) in do_write()
1997 if (eap->cmdidx == CMD_saveas && alt_buf != NULL) in do_write()
2063 retval = buf_write(curbuf, ffname, fname, eap->line1, eap->line2, in do_write()
2064 eap, eap->append, eap->forceit, TRUE, FALSE); in do_write()
2067 if (eap->cmdidx == CMD_saveas) in do_write()
2078 if (eap->cmdidx == CMD_saveas || name_was_missing) in do_write()
2098 exarg_T *eap, in check_overwrite() argument
2117 if (!eap->forceit && !eap->append) in check_overwrite()
2135 eap->forceit = TRUE; in check_overwrite()
2192 eap->forceit = TRUE; in check_overwrite()
2213 ex_wnext(exarg_T *eap) in ex_wnext() argument
2217 if (eap->cmd[1] == 'n') in ex_wnext()
2218 i = curwin->w_arg_idx + (int)eap->line2; in ex_wnext()
2220 i = curwin->w_arg_idx - (int)eap->line2; in ex_wnext()
2221 eap->line1 = 1; in ex_wnext()
2222 eap->line2 = curbuf->b_ml.ml_line_count; in ex_wnext()
2223 if (do_write(eap) != FAIL) in ex_wnext()
2224 do_argfile(eap, i); in ex_wnext()
2231 do_wqall(exarg_T *eap) in do_wqall() argument
2235 int save_forceit = eap->forceit; in do_wqall()
2237 if (eap->cmdidx == CMD_xall || eap->cmdidx == CMD_wqall) in do_wqall()
2275 else if (check_readonly(&eap->forceit, buf) in do_wqall()
2276 || check_overwrite(eap, buf, buf->b_fname, buf->b_ffname, in do_wqall()
2286 if (buf_write_all(buf, eap->forceit) == FAIL) in do_wqall()
2292 eap->forceit = save_forceit; // check_overwrite() may set it in do_wqall()
2488 exarg_T *eap, // can be NULL! in do_ecmd() argument
2529 if (eap != NULL) in do_ecmd()
2530 command = eap->do_ecmd_cmd; in do_ecmd()
2607 | (eap == NULL ? 0 : CCGD_EXCMD))) in do_ecmd()
2847 if (!oldbuf && eap != NULL) in do_ecmd()
2849 set_file_options(TRUE, eap); in do_ecmd()
2850 set_forced_fenc(eap); in do_ecmd()
3037 if (should_abort(open_buffer(FALSE, eap, readfile_flags))) in do_ecmd()
3040 (void)open_buffer(FALSE, eap, readfile_flags); in do_ecmd()
3255 ex_append(exarg_T *eap) in ex_append() argument
3259 linenr_T lnum = eap->line2; in ex_append()
3266 if (not_in_vim9(eap) == FAIL) in ex_append()
3270 if (eap->forceit) in ex_append()
3274 if (eap->cmdidx != CMD_change && curbuf->b_p_ai && lnum > 0) in ex_append()
3277 if (eap->cmdidx != CMD_append) in ex_append()
3303 if (eap->getline == NULL) in ex_append()
3307 if (eap->nextcmd == NULL || *eap->nextcmd == NUL) in ex_append()
3309 p = vim_strchr(eap->nextcmd, NL); in ex_append()
3311 p = eap->nextcmd + STRLEN(eap->nextcmd); in ex_append()
3312 theline = vim_strnsave(eap->nextcmd, p - eap->nextcmd); in ex_append()
3315 eap->nextcmd = p; in ex_append()
3324 theline = eap->getline( in ex_append()
3326 eap->cstack->cs_looplevel > 0 ? -1 : in ex_append()
3328 NUL, eap->cookie, indent, TRUE); in ex_append()
3377 if (eap->forceit) in ex_append()
3386 curbuf->b_op_start.lnum = (eap->line2 < curbuf->b_ml.ml_line_count) ? in ex_append()
3387 eap->line2 + 1 : curbuf->b_ml.ml_line_count; in ex_append()
3388 if (eap->cmdidx != CMD_append) in ex_append()
3390 curbuf->b_op_end.lnum = (eap->line2 < lnum) in ex_append()
3406 ex_change(exarg_T *eap) in ex_change() argument
3411 if (not_in_vim9(eap) == FAIL) in ex_change()
3414 if (eap->line2 >= eap->line1 in ex_change()
3415 && u_save(eap->line1 - 1, eap->line2 + 1) == FAIL) in ex_change()
3419 if (eap->forceit ? !curbuf->b_p_ai : curbuf->b_p_ai) in ex_change()
3420 append_indent = get_indent_lnum(eap->line1); in ex_change()
3422 for (lnum = eap->line2; lnum >= eap->line1; --lnum) in ex_change()
3426 ml_delete(eap->line1); in ex_change()
3431 deleted_lines_mark(eap->line1, (long)(eap->line2 - lnum)); in ex_change()
3434 eap->line2 = eap->line1; in ex_change()
3435 ex_append(eap); in ex_change()
3439 ex_z(exarg_T *eap) in ex_z() argument
3447 linenr_T lnum = eap->line2; in ex_z()
3451 if (eap->forceit) in ex_z()
3460 x = eap->arg; in ex_z()
3525 else if (eap->addr_count == 0) in ex_z()
3553 print_line(i, eap->flags & EXFLAG_NR, eap->flags & EXFLAG_LIST); in ex_z()
3676 ex_substitute(exarg_T *eap) in ex_substitute() argument
3711 cmd = eap->arg; in ex_substitute()
3719 if (eap->cmdidx == CMD_tilde) in ex_substitute()
3725 if (eap->cmd[0] == 's' && *cmd != NUL && !VIM_ISWHITE(*cmd) in ex_substitute()
3732 if (in_vim9script() && check_global_and_subst(eap->cmd, eap->arg) in ex_substitute()
3761 &eap->arg, NULL, NULL); in ex_substitute()
3773 if (!eap->skip) in ex_substitute()
3793 else if (!eap->skip) // use previous pattern and substitution in ex_substitute()
3819 if (eap->skip) in ex_substitute()
3821 curwin->w_cursor.lnum = eap->line1; in ex_substitute()
3823 eap->flags = EXFLAG_LIST; in ex_substitute()
3825 eap->flags = EXFLAG_NR; in ex_substitute()
3827 eap->flags = EXFLAG_PRINT; in ex_substitute()
3831 joined_lines_count = eap->line2 - eap->line1 + 1; in ex_substitute()
3832 if (eap->line2 < curbuf->b_ml.ml_line_count) in ex_substitute()
3840 ex_may_print(eap); in ex_substitute()
3931 if (i <= 0 && !eap->skip && subflags.do_error) in ex_substitute()
3936 eap->line1 = eap->line2; in ex_substitute()
3937 eap->line2 += i - 1; in ex_substitute()
3938 if (eap->line2 > curbuf->b_ml.ml_line_count) in ex_substitute()
3939 eap->line2 = curbuf->b_ml.ml_line_count; in ex_substitute()
3948 set_nextcmd(eap, cmd); in ex_substitute()
3949 if (eap->nextcmd == NULL) in ex_substitute()
3956 if (eap->skip) // not executing commands, only parsing in ex_substitute()
3992 line2 = eap->line2; in ex_substitute()
3993 for (lnum = eap->line1; lnum <= line2 && !(got_quit in ex_substitute()
4751 curbuf->b_op_start.lnum = eap->line1; in ex_substitute()
4881 ex_global(exarg_T *eap) in ex_global() argument
4896 if (global_busy && (eap->line1 != 1 in ex_global()
4897 || eap->line2 != curbuf->b_ml.ml_line_count)) in ex_global()
4904 if (eap->forceit) // ":global!" is like ":vglobal" in ex_global()
4907 type = *eap->cmd; in ex_global()
4908 cmd = eap->arg; in ex_global()
4912 if (in_vim9script() && check_global_and_subst(eap->cmd, eap->arg) == FAIL) in ex_global()
4951 cmd = skip_regexp_ex(cmd, delim, magic_isset(), &eap->arg, NULL, NULL); in ex_global()
4975 for (lnum = eap->line1; lnum <= eap->line2 && !got_int; ++lnum) in ex_global()
5187 ex_smile(exarg_T *eap UNUSED) in ex_smile()
5218 ex_drop(exarg_T *eap) in ex_drop() argument
5236 set_arglist(eap->arg); in ex_drop()
5251 ex_all(eap); in ex_drop()
5295 eap->cmdidx = CMD_sfirst; in ex_drop()
5296 eap->cmd[0] = 's'; in ex_drop()
5299 eap->cmdidx = CMD_first; in ex_drop()
5300 ex_rewind(eap); in ex_drop()
5387 ex_oldfiles(exarg_T *eap UNUSED) in ex_oldfiles()
5433 eap->arg = p; in ex_oldfiles()
5434 eap->cmdidx = CMD_edit; in ex_oldfiles()
5436 do_exedit(eap, NULL); in ex_oldfiles()