Lines Matching refs:wp
46 static void newFoldLevelWin(win_T *wp);
49 static int foldLevelWin(win_T *wp, linenr_T lnum);
50 static void checkupdate(win_T *wp);
53 static linenr_T setManualFoldWin(win_T *wp, linenr_T lnum, int opening, int recurse, int *donep);
59 static void checkSmall(win_T *wp, fold_T *fp, linenr_T lnum_off);
65 static void foldUpdateIEMS(win_T *wp, linenr_T top, linenr_T bot);
66 static void parseMarker(win_T *wp);
308 foldmethodIsManual(win_T *wp) in foldmethodIsManual() argument
310 return (wp->w_p_fdm[3] == 'u'); in foldmethodIsManual()
318 foldmethodIsIndent(win_T *wp) in foldmethodIsIndent() argument
320 return (wp->w_p_fdm[0] == 'i'); in foldmethodIsIndent()
328 foldmethodIsExpr(win_T *wp) in foldmethodIsExpr() argument
330 return (wp->w_p_fdm[1] == 'x'); in foldmethodIsExpr()
338 foldmethodIsMarker(win_T *wp) in foldmethodIsMarker() argument
340 return (wp->w_p_fdm[2] == 'r'); in foldmethodIsMarker()
348 foldmethodIsSyntax(win_T *wp) in foldmethodIsSyntax() argument
350 return (wp->w_p_fdm[0] == 's'); in foldmethodIsSyntax()
358 foldmethodIsDiff(win_T *wp) in foldmethodIsDiff() argument
360 return (wp->w_p_fdm[0] == 'd'); in foldmethodIsDiff()
474 win_T *wp; in newFoldLevel() local
479 FOR_ALL_WINDOWS(wp) in newFoldLevel()
481 if (wp != curwin && foldmethodIsDiff(wp) && wp->w_p_scb) in newFoldLevel()
483 wp->w_p_fdl = curwin->w_p_fdl; in newFoldLevel()
484 newFoldLevelWin(wp); in newFoldLevel()
492 newFoldLevelWin(win_T *wp) in newFoldLevelWin() argument
497 checkupdate(wp); in newFoldLevelWin()
498 if (wp->w_fold_manual) in newFoldLevelWin()
503 fp = (fold_T *)wp->w_folds.ga_data; in newFoldLevelWin()
504 for (i = 0; i < wp->w_folds.ga_len; ++i) in newFoldLevelWin()
506 wp->w_fold_manual = FALSE; in newFoldLevelWin()
508 changed_window_setting_win(wp); in newFoldLevelWin()
820 foldUpdate(win_T *wp, linenr_T top, linenr_T bot) in foldUpdate() argument
832 if (wp->w_folds.ga_len > 0) in foldUpdate()
835 (void)foldFind(&wp->w_folds, top, &fp); in foldUpdate()
836 while (fp < (fold_T *)wp->w_folds.ga_data + wp->w_folds.ga_len in foldUpdate()
844 if (foldmethodIsIndent(wp) in foldUpdate()
845 || foldmethodIsExpr(wp) in foldUpdate()
846 || foldmethodIsMarker(wp) in foldUpdate()
848 || foldmethodIsDiff(wp) in foldUpdate()
850 || foldmethodIsSyntax(wp)) in foldUpdate()
856 foldUpdateIEMS(wp, top, bot); in foldUpdate()
1183 foldLevelWin(win_T *wp, linenr_T lnum) in foldLevelWin() argument
1191 gap = &wp->w_folds; in foldLevelWin()
1210 checkupdate(win_T *wp) in checkupdate() argument
1212 if (wp->w_foldinvalid) in checkupdate()
1214 foldUpdate(wp, (linenr_T)1, (linenr_T)MAXLNUM); // will update all in checkupdate()
1215 wp->w_foldinvalid = FALSE; in checkupdate()
1259 win_T *wp; in setManualFold() local
1266 FOR_ALL_WINDOWS(wp) in setManualFold()
1268 if (wp != curwin && foldmethodIsDiff(wp) && wp->w_p_scb) in setManualFold()
1270 dlnum = diff_lnum_win(curwin->w_cursor.lnum, wp); in setManualFold()
1272 (void)setManualFoldWin(wp, dlnum, opening, recurse, NULL); in setManualFold()
1293 win_T *wp, in setManualFoldWin() argument
1311 checkupdate(wp); in setManualFoldWin()
1316 gap = &wp->w_folds; in setManualFoldWin()
1338 if (level >= wp->w_p_fdl) in setManualFoldWin()
1384 wp->w_fold_manual = TRUE; in setManualFoldWin()
1386 changed_window_setting_win(wp); in setManualFoldWin()
1389 else if (donep == NULL && wp == curwin) in setManualFoldWin()
1492 win_T *wp, in foldMarkAdjust() argument
1506 foldMarkAdjustRecurse(&wp->w_folds, line1, line2, amount, amount_after); in foldMarkAdjust()
1709 win_T *wp, in checkSmall() argument
1728 count += plines_win_nofold(wp, fp->fd_top + lnum_off + n); in checkSmall()
1902 win_T *wp, in get_foldtext() argument
1916 if (last_wp != wp || last_wp == NULL in get_foldtext()
1925 if (*wp->w_p_fdt != NUL) in get_foldtext()
1950 curwin = wp; in get_foldtext()
1951 curbuf = wp->w_buffer; in get_foldtext()
1954 text = eval_to_string_safe(wp->w_p_fdt, in get_foldtext()
1965 last_wp = wp; in get_foldtext()
2110 win_T *wp; // window member
2147 foldUpdateIEMS(win_T *wp, linenr_T top, linenr_T bot) in foldUpdateIEMS() argument
2160 if (wp->w_foldinvalid) in foldUpdateIEMS()
2164 bot = wp->w_buffer->b_ml.ml_line_count; in foldUpdateIEMS()
2165 wp->w_foldinvalid = FALSE; in foldUpdateIEMS()
2168 setSmallMaybe(&wp->w_folds); in foldUpdateIEMS()
2173 if (foldmethodIsDiff(wp)) in foldUpdateIEMS()
2185 if (top > wp->w_buffer->b_ml.ml_line_count) in foldUpdateIEMS()
2186 top = wp->w_buffer->b_ml.ml_line_count; in foldUpdateIEMS()
2189 fline.wp = wp; in foldUpdateIEMS()
2200 if (foldmethodIsMarker(wp)) in foldUpdateIEMS()
2205 parseMarker(wp); in foldUpdateIEMS()
2212 level = foldLevelWin(wp, top - 1); in foldUpdateIEMS()
2233 if (foldmethodIsExpr(wp)) in foldUpdateIEMS()
2241 else if (foldmethodIsSyntax(wp)) in foldUpdateIEMS()
2244 else if (foldmethodIsDiff(wp)) in foldUpdateIEMS()
2273 garray_T *gap = &wp->w_folds; in foldUpdateIEMS()
2301 if (start > end && end < wp->w_buffer->b_ml.ml_line_count) in foldUpdateIEMS()
2307 if (fline.lnum > wp->w_buffer->b_ml.ml_line_count) in foldUpdateIEMS()
2319 && foldFind(&wp->w_folds, end, &fp) in foldUpdateIEMS()
2322 && foldFind(&wp->w_folds, fline.lnum, &fp) in foldUpdateIEMS()
2326 && foldLevelWin(wp, fline.lnum) != fline.lvl) in foldUpdateIEMS()
2340 end = foldUpdateIEMSRecurse(&wp->w_folds, in foldUpdateIEMS()
2346 if (fline.lnum == wp->w_buffer->b_ml.ml_line_count) in foldUpdateIEMS()
2355 foldRemove(&wp->w_folds, start, end); in foldUpdateIEMS()
2358 if (fold_changed && wp->w_p_fen) in foldUpdateIEMS()
2359 changed_window_setting_win(wp); in foldUpdateIEMS()
2366 if (wp->w_redraw_top == 0 || wp->w_redraw_top > top) in foldUpdateIEMS()
2367 wp->w_redraw_top = top; in foldUpdateIEMS()
2368 if (wp->w_redraw_bot < end) in foldUpdateIEMS()
2369 wp->w_redraw_bot = end; in foldUpdateIEMS()
2417 linenr_T linecount = flp->wp->w_buffer->b_ml.ml_line_count - flp->off; in foldUpdateIEMSRecurse()
2664 flp->wp->w_fold_manual = TRUE; in foldUpdateIEMSRecurse()
2671 flp->wp->w_fold_manual = TRUE; in foldUpdateIEMSRecurse()
3240 buf = flp->wp->w_buffer; in foldlevelIndent()
3245 if (*s == NUL || vim_strchr(flp->wp->w_p_fdi, *s) != NULL) in foldlevelIndent()
3255 if (flp->lvl > flp->wp->w_p_fdn) in foldlevelIndent()
3257 flp->lvl = flp->wp->w_p_fdn; in foldlevelIndent()
3272 if (diff_infold(flp->wp, flp->lnum + flp->off)) in foldlevelDiff()
3299 curwin = flp->wp; in foldlevelExpr()
3300 curbuf = flp->wp->w_buffer; in foldlevelExpr()
3312 n = eval_foldexpr(flp->wp->w_p_fde, &c); in foldlevelExpr()
3388 parseMarker(win_T *wp) in parseMarker() argument
3390 foldendmarker = vim_strchr(wp->w_p_fmr, ','); in parseMarker()
3391 foldstartmarkerlen = (int)(foldendmarker++ - wp->w_p_fmr); in parseMarker()
3416 startmarker = flp->wp->w_p_fmr; in foldlevelMarker()
3425 s = ml_get_buf(flp->wp->w_buffer, flp->lnum + flp->off, FALSE); in foldlevelMarker()
3498 flp->lvl = syn_get_foldlevel(flp->wp, lnum); in foldlevelSyntax()
3500 if (lnum < flp->wp->w_buffer->b_ml.ml_line_count) in foldlevelSyntax()
3502 n = syn_get_foldlevel(flp->wp, lnum + 1); in foldlevelSyntax()
3516 static int put_foldopen_recurse(FILE *fd, win_T *wp, garray_T *gap, linenr_T off);
3524 put_folds(FILE *fd, win_T *wp) in put_folds() argument
3526 if (foldmethodIsManual(wp)) in put_folds()
3529 || put_folds_recurse(fd, &wp->w_folds, (linenr_T)0) == FAIL in put_folds()
3535 if (wp->w_fold_manual) in put_folds()
3536 return put_foldopen_recurse(fd, wp, &wp->w_folds, (linenr_T)0); in put_folds()
3575 win_T *wp, in put_foldopen_recurse() argument
3595 if (put_foldopen_recurse(fd, wp, &fp->fd_nested, in put_foldopen_recurse()
3611 level = foldLevelWin(wp, off + fp->fd_top); in put_foldopen_recurse()
3612 if ((fp->fd_flags == FD_CLOSED && wp->w_p_fdl >= level) in put_foldopen_recurse()
3613 || (fp->fd_flags != FD_CLOSED && wp->w_p_fdl < level)) in put_foldopen_recurse()