Lines Matching refs:lnum

47 static int checkCloseRec(garray_T *gap, linenr_T lnum, int level);
48 static int foldFind(garray_T *gap, linenr_T lnum, fold_T **fpp);
49 static int foldLevelWin(win_T *wp, linenr_T lnum);
51 static void setFoldRepeat(linenr_T lnum, long count, int do_open);
52 static linenr_T setManualFold(linenr_T lnum, int opening, int recurse, int *donep);
53 static linenr_T setManualFoldWin(win_T *wp, linenr_T lnum, int opening, int recurse, int *donep);
62 static void foldAddMarker(linenr_T lnum, char_u *marker, int markerlen);
64 static void foldDelMarker(linenr_T lnum, char_u *marker, int markerlen);
130 hasFolding(linenr_T lnum, linenr_T *firstp, linenr_T *lastp) in hasFolding() argument
132 return hasFoldingWin(curwin, lnum, firstp, lastp, TRUE, NULL); in hasFolding()
139 linenr_T lnum, in hasFoldingWin() argument
148 linenr_T lnum_rel = lnum; in hasFoldingWin()
175 x = find_wl_entry(win, lnum); in hasFoldingWin()
204 &maybe_small, lnum - lnum_rel); in hasFoldingWin()
225 infop->fi_lnum = lnum - lnum_rel; in hasFoldingWin()
252 foldLevel(linenr_T lnum) in foldLevel() argument
258 else if (lnum == prev_lnum && prev_lnum_lvl >= 0) in foldLevel()
260 else if (lnum >= invalid_top && lnum <= invalid_bot) in foldLevel()
267 return foldLevelWin(curwin, lnum); in foldLevel()
279 lineFolded(win_T *win, linenr_T lnum) in lineFolded() argument
281 return foldedCount(win, lnum, NULL) != 0; in lineFolded()
294 foldedCount(win_T *win, linenr_T lnum, foldinfo_T *infop) in foldedCount() argument
298 if (hasFoldingWin(win, lnum, NULL, &last, FALSE, infop)) in foldedCount()
299 return (long)(last - lnum + 1); in foldedCount()
369 closeFold(linenr_T lnum, long count) in closeFold() argument
371 setFoldRepeat(lnum, count, FALSE); in closeFold()
379 closeFoldRecurse(linenr_T lnum) in closeFoldRecurse() argument
381 (void)setManualFold(lnum, FALSE, TRUE, NULL); in closeFoldRecurse()
398 linenr_T lnum; in opFoldRange() local
401 for (lnum = first; lnum <= last; lnum = lnum_next + 1) in opFoldRange()
403 lnum_next = lnum; in opFoldRange()
407 (void)hasFolding(lnum, NULL, &lnum_next); in opFoldRange()
408 (void)setManualFold(lnum, opening, recurse, &done); in opFoldRange()
412 (void)hasFolding(lnum, NULL, &lnum_next); in opFoldRange()
427 openFold(linenr_T lnum, long count) in openFold() argument
429 setFoldRepeat(lnum, count, TRUE); in openFold()
437 openFoldRecurse(linenr_T lnum) in openFoldRecurse() argument
439 (void)setManualFold(lnum, TRUE, TRUE, NULL); in openFoldRecurse()
456 (void)setManualFold(curwin->w_cursor.lnum, TRUE, FALSE, &done); in foldOpenCursor()
521 if (checkCloseRec(&curwin->w_folds, curwin->w_cursor.lnum, in foldCheckClose()
529 checkCloseRec(garray_T *gap, linenr_T lnum, int level) in checkCloseRec() argument
541 if (level <= 0 && (lnum < fp[i].fd_top in checkCloseRec()
542 || lnum >= fp[i].fd_top + fp[i].fd_len)) in checkCloseRec()
548 retval |= checkCloseRec(&fp[i].fd_nested, lnum - fp[i].fd_top, in checkCloseRec()
725 linenr_T lnum = start; in deleteFold() local
733 while (lnum <= end) in deleteFold()
742 if (!foldFind(gap, lnum - lnum_off, &fp)) in deleteFold()
761 ++lnum; in deleteFold()
765 lnum = found_fp->fd_top + found_fp->fd_len + found_off; in deleteFold()
774 if (last_lnum < lnum) in deleteFold()
775 last_lnum = lnum; in deleteFold()
891 linenr_T lnum; in foldMoveTo() local
912 lnum_found = curwin->w_cursor.lnum; in foldMoveTo()
917 if (!foldFind(gap, curwin->w_cursor.lnum - lnum_off, &fp)) in foldMoveTo()
959 lnum = fp[1].fd_top + lnum_off; in foldMoveTo()
960 if (lnum > curwin->w_cursor.lnum) in foldMoveTo()
961 lnum_found = lnum; in foldMoveTo()
969 lnum = fp[-1].fd_top + lnum_off + fp[-1].fd_len - 1; in foldMoveTo()
970 if (lnum < curwin->w_cursor.lnum) in foldMoveTo()
971 lnum_found = lnum; in foldMoveTo()
981 lnum = fp->fd_top + lnum_off + fp->fd_len - 1; in foldMoveTo()
982 if (lnum > curwin->w_cursor.lnum) in foldMoveTo()
983 lnum_found = lnum; in foldMoveTo()
987 lnum = fp->fd_top + lnum_off; in foldMoveTo()
988 if (lnum < curwin->w_cursor.lnum) in foldMoveTo()
989 lnum_found = lnum; in foldMoveTo()
1001 if (lnum_found != curwin->w_cursor.lnum) in foldMoveTo()
1005 curwin->w_cursor.lnum = lnum_found; in foldMoveTo()
1034 find_wl_entry(win_T *win, linenr_T lnum) in find_wl_entry() argument
1041 if (lnum < win->w_lines[i].wl_lnum) in find_wl_entry()
1043 if (lnum <= win->w_lines[i].wl_lastlnum) in find_wl_entry()
1072 if (hasFolding(start->lnum, &start->lnum, NULL)) in foldAdjustVisual()
1074 if (hasFolding(end->lnum, NULL, &end->lnum)) in foldAdjustVisual()
1076 ptr = ml_get(end->lnum); in foldAdjustVisual()
1093 (void)hasFolding(curwin->w_cursor.lnum, &curwin->w_cursor.lnum, NULL); in foldAdjustCursor()
1138 foldFind(garray_T *gap, linenr_T lnum, fold_T **fpp) in foldFind() argument
1161 if (fp[i].fd_top > lnum) in foldFind()
1164 else if (fp[i].fd_top + fp[i].fd_len <= lnum) in foldFind()
1183 foldLevelWin(win_T *wp, linenr_T lnum) in foldLevelWin() argument
1186 linenr_T lnum_rel = lnum; in foldLevelWin()
1225 setFoldRepeat(linenr_T lnum, long count, int do_open) in setFoldRepeat() argument
1233 (void)setManualFold(lnum, do_open, FALSE, &done); in setFoldRepeat()
1251 linenr_T lnum, in setManualFold() argument
1270 dlnum = diff_lnum_win(curwin->w_cursor.lnum, wp); in setManualFold()
1278 return setManualFoldWin(curwin, lnum, opening, recurse, donep); in setManualFold()
1294 linenr_T lnum, in setManualFoldWin() argument
1319 if (!foldFind(gap, lnum, &fp)) in setManualFoldWin()
1372 lnum -= fp->fd_top; in setManualFoldWin()
1783 foldAddMarker(linenr_T lnum, char_u *marker, int markerlen) in foldAddMarker() argument
1793 line = ml_get(lnum); in foldAddMarker()
1796 if (u_save(lnum - 1, lnum + 1) == OK) in foldAddMarker()
1814 ml_replace(lnum, newline, FALSE); in foldAddMarker()
1847 foldDelMarker(linenr_T lnum, char_u *marker, int markerlen) in foldDelMarker() argument
1857 if (lnum > curbuf->b_ml.ml_line_count) in foldDelMarker()
1859 line = ml_get(lnum); in foldDelMarker()
1879 if (u_save(lnum - 1, lnum + 1) == OK) in foldDelMarker()
1887 ml_replace(lnum, newline, FALSE); in foldDelMarker()
1903 linenr_T lnum, in get_foldtext() argument
1917 || last_lnum > lnum || last_lnum == 0) in get_foldtext()
1933 set_vim_var_nr(VV_FOLDSTART, lnum); in get_foldtext()
1964 last_lnum = lnum; in get_foldtext()
2002 long count = (long)(lnume - lnum + 1); in get_foldtext()
2111 linenr_T lnum; // current line number member
2215 fline.lnum = top - 1; in foldUpdateIEMS()
2227 fline.lnum = top; in foldUpdateIEMS()
2232 fline.lnum = top; in foldUpdateIEMS()
2239 --fline.lnum; in foldUpdateIEMS()
2253 for ( ; !got_int; --fline.lnum) in foldUpdateIEMS()
2277 linenr_T lnum_rel = fline.lnum; in foldUpdateIEMS()
2298 start = fline.lnum; in foldUpdateIEMS()
2307 if (fline.lnum > wp->w_buffer->b_ml.ml_line_count) in foldUpdateIEMS()
2309 if (fline.lnum > end) in foldUpdateIEMS()
2322 && foldFind(&wp->w_folds, fline.lnum, &fp) in foldUpdateIEMS()
2323 && fp->fd_top < fline.lnum)) in foldUpdateIEMS()
2326 && foldLevelWin(wp, fline.lnum) != fline.lvl) in foldUpdateIEMS()
2330 end = fline.lnum; in foldUpdateIEMS()
2338 invalid_top = fline.lnum; in foldUpdateIEMS()
2342 start = fline.lnum; in foldUpdateIEMS()
2346 if (fline.lnum == wp->w_buffer->b_ml.ml_line_count) in foldUpdateIEMS()
2348 ++fline.lnum; in foldUpdateIEMS()
2414 linenr_T firstlnum = flp->lnum; // first lnum we got in foldUpdateIEMSRecurse()
2446 flp->lnum_save = flp->lnum; in foldUpdateIEMSRecurse()
2459 if (flp->lnum > firstlnum in foldUpdateIEMSRecurse()
2463 if (flp->lnum > bot && !finish && fp != NULL) in foldUpdateIEMSRecurse()
2481 ll = flp->lnum - fp->fd_top; in foldUpdateIEMSRecurse()
2490 (void)foldFind(&fp->fd_nested, flp->lnum - fp->fd_top, &fp2); in foldUpdateIEMSRecurse()
2494 else if (fp->fd_top + fp->fd_len <= flp->lnum && lvl >= level) in foldUpdateIEMSRecurse()
2508 || flp->lnum == linecount)) in foldUpdateIEMSRecurse()
2531 && ((lvl < level && fp->fd_top < flp->lnum) in foldUpdateIEMSRecurse()
2592 breakstart = flp->lnum; in foldUpdateIEMSRecurse()
2593 breakend = flp->lnum; in foldUpdateIEMSRecurse()
2688 if (lvl < level || flp->lnum > linecount) in foldUpdateIEMSRecurse()
2707 if (bot < flp->lnum) in foldUpdateIEMSRecurse()
2708 bot = flp->lnum; in foldUpdateIEMSRecurse()
2712 flp->lnum = flp->lnum_save - fp->fd_top; in foldUpdateIEMSRecurse()
2719 flp->lnum += fp->fd_top; in foldUpdateIEMSRecurse()
2723 startlnum2 = flp->lnum; in foldUpdateIEMSRecurse()
2735 flp->lnum = flp->lnum_save; in foldUpdateIEMSRecurse()
2736 ll = flp->lnum + 1; in foldUpdateIEMSRecurse()
2740 prev_lnum = flp->lnum; in foldUpdateIEMSRecurse()
2743 if (++flp->lnum > linecount) in foldUpdateIEMSRecurse()
2751 if (flp->lnum > linecount) in foldUpdateIEMSRecurse()
2756 flp->lnum_save = flp->lnum; in foldUpdateIEMSRecurse()
2757 flp->lnum = ll; in foldUpdateIEMSRecurse()
2771 if (fp->fd_len < flp->lnum - fp->fd_top) in foldUpdateIEMSRecurse()
2773 fp->fd_len = flp->lnum - fp->fd_top; in foldUpdateIEMSRecurse()
2784 flp->lnum - 1 - fp->fd_top); in foldUpdateIEMSRecurse()
2789 if (fp->fd_len != flp->lnum - fp->fd_top) in foldUpdateIEMSRecurse()
2801 fp->fd_len = flp->lnum - fp->fd_top; in foldUpdateIEMSRecurse()
2808 foldSplit(gap, i, flp->lnum, bot); in foldUpdateIEMSRecurse()
2813 fp->fd_len = flp->lnum - fp->fd_top; in foldUpdateIEMSRecurse()
2823 || fp2->fd_top > flp->lnum) in foldUpdateIEMSRecurse()
2825 if (fp2->fd_top + fp2->fd_len > flp->lnum) in foldUpdateIEMSRecurse()
2827 if (fp2->fd_top < flp->lnum) in foldUpdateIEMSRecurse()
2831 (linenr_T)0, (long)(flp->lnum - fp2->fd_top - 1), in foldUpdateIEMSRecurse()
2832 (linenr_T)MAXLNUM, (long)(fp2->fd_top - flp->lnum)); in foldUpdateIEMSRecurse()
2833 fp2->fd_len -= flp->lnum - fp2->fd_top; in foldUpdateIEMSRecurse()
2834 fp2->fd_top = flp->lnum; in foldUpdateIEMSRecurse()
2851 if (bot < flp->lnum - 1) in foldUpdateIEMSRecurse()
2852 bot = flp->lnum - 1; in foldUpdateIEMSRecurse()
3238 linenr_T lnum = flp->lnum + flp->off; in foldlevelIndent() local
3241 s = skipwhite(ml_get_buf(buf, lnum, FALSE)); in foldlevelIndent()
3248 if (lnum == 1 || lnum == buf->b_ml.ml_line_count) in foldlevelIndent()
3254 flp->lvl = get_indent_buf(buf, lnum) / get_sw_value(buf); in foldlevelIndent()
3272 if (diff_infold(flp->wp, flp->lnum + flp->off)) in foldlevelDiff()
3295 linenr_T lnum = flp->lnum + flp->off; in foldlevelExpr()
3301 set_vim_var_nr(VV_LNUM, lnum); in foldlevelExpr()
3306 if (lnum <= 1) in foldlevelExpr()
3367 if (lnum <= 1) in foldlevelExpr()
3372 if (lnum == curbuf->b_ml.ml_line_count) in foldlevelExpr()
3425 s = ml_get_buf(flp->wp->w_buffer, flp->lnum + flp->off, FALSE); in foldlevelMarker()
3494 linenr_T lnum = flp->lnum + flp->off; in foldlevelSyntax()
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()
3658 linenr_T lnum; in foldclosed_both() local
3664 lnum = tv_get_lnum(argvars); in foldclosed_both()
3665 if (lnum >= 1 && lnum <= curbuf->b_ml.ml_line_count) in foldclosed_both()
3667 if (hasFoldingWin(curwin, lnum, &first, &last, FALSE, NULL)) in foldclosed_both()
3705 linenr_T lnum; in f_foldlevel() local
3710 lnum = tv_get_lnum(argvars); in f_foldlevel()
3711 if (lnum >= 1 && lnum <= curbuf->b_ml.ml_line_count) in f_foldlevel()
3712 rettv->vval.v_number = foldLevel(lnum); in f_foldlevel()
3726 linenr_T lnum; in f_foldtext() local
3744 for (lnum = foldstart; lnum < foldend; ++lnum) in f_foldtext()
3745 if (!linewhite(lnum)) in f_foldtext()
3749 s = skipwhite(ml_get(lnum)); in f_foldtext()
3755 && lnum + 1 < (linenr_T)get_vim_var_nr(VV_FOLDEND)) in f_foldtext()
3757 s = skipwhite(ml_get(lnum + 1)); in f_foldtext()
3788 linenr_T lnum; in f_foldtextresult() local
3807 lnum = tv_get_lnum(argvars); in f_foldtextresult()
3809 if (lnum < 0) in f_foldtextresult()
3810 lnum = 0; in f_foldtextresult()
3811 fold_count = foldedCount(curwin, lnum, &foldinfo); in f_foldtextresult()
3814 text = get_foldtext(curwin, lnum, lnum + fold_count - 1, in f_foldtextresult()