📄 tt.c
字号:
/* tt.c: subroutines for drawing horizontal lines */# include "t.h"intctype(int il, int ic){ if (instead[il]) return(0); if (fullbot[il]) return(0); il = stynum[il]; return(style[ic][il]);}intmin(int a, int b){ return(a < b ? a : b);}intfspan(int i, int c){ c++; return(c < ncol && ctype(i, c) == 's');}intlspan(int i, int c){ int k; if (ctype(i, c) != 's') return(0); c++; if (c < ncol && ctype(i, c) == 's') return(0); for (k = 0; ctype(i, --c) == 's'; k++) ; return(k);}intctspan(int i, int c){ int k; c++; for (k = 1; c < ncol && ctype(i, c) == 's'; k++) c++; return(k);}voidtohcol(int ic){ if (ic == 0) Bprint(&tabout, "\\h'|0'"); else Bprint(&tabout, "\\h'(|\\n(%2su+|\\n(%2su)/2u'", reg(ic, CLEFT), reg(ic - 1, CRIGHT));}intallh(int i){ /* return true if every element in line i is horizontal */ /* also at least one must be horizontl */ int c, one, k; if (fullbot[i]) return(1); if (i >= nlin) return(dboxflg || boxflg); for (one = c = 0; c < ncol; c++) { k = thish(i, c); if (k == 0) return(0); if (k == 1) continue; one = 1; } return(one);}intthish(int i, int c){ int t; char *s; struct colstr *pc; if (c < 0) return(0); if (i < 0) return(0); t = ctype(i, c); if (t == '_' || t == '-') return('-'); if (t == '=') return('='); if (t == '^') return(1); if (fullbot[i] ) return(fullbot[i]); if (t == 's') return(thish(i, c - 1)); if (t == 0) return(1); pc = &table[i][c]; s = (t == 'a' ? pc->rcol : pc->col); if (s == 0 || (point(s) && *s == 0)) return(1); if (vspen(s)) return(1); if (t = barent( s)) return(t); return(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -