private static int consoleWidth(AnsiString s) { CharSequence plain = s.getPlain(); int n = 0; for (int i = 0; i < plain.length(); i++) { n += max(wcwidth(plain.charAt(i)), 0); } return n; } }
int wcwidth(int ucs, int pos) { if (ucs == '\t') { return nextTabStop(pos); } else if (ucs < 32) { return 2; } else { int w = WCWidth.wcwidth(ucs); return w > 0 ? w : 0; } }
private int fmtPrint(final CharSequence buff, int start, int end, int cursorPos) throws IOException { checkNotNull(buff); for (int i = start; i < end; i++) { char c = buff.charAt(i); if (c == '\t') { int nb = nextTabStop(cursorPos); cursorPos += nb; while (nb-- > 0) { out.write(' '); } } else if (c < 32) { out.write('^'); out.write((char) (c + '@')); cursorPos += 2; } else { int w = WCWidth.wcwidth(c); if (w > 0) { out.write(c); cursorPos += w; } } } cursorOk = false; return cursorPos; }
private static int consoleWidth(AnsiString s) { CharSequence plain = s.getPlain(); int n = 0; for (int i = 0; i < plain.length(); i++) { n += max(wcwidth(plain.charAt(i)), 0); } return n; } }
private static int consoleWidth(AnsiString s) { CharSequence plain = s.getPlain(); int n = 0; for (int i = 0; i < plain.length(); i++) { n += max(wcwidth(plain.charAt(i)), 0); } return n; } }
int wcwidth(int ucs, int pos) { if (ucs == '\t') { return nextTabStop(pos); } else if (ucs < 32) { return 2; } else { int w = WCWidth.wcwidth(ucs); return w > 0 ? w : 0; } }
private static int consoleWidth(AnsiString s) { CharSequence plain = s.getPlain(); int n = 0; for (int i = 0; i < plain.length(); i++) { n += max(wcwidth(plain.charAt(i)), 0); } return n; } }
private static int consoleWidth(AnsiString s) { CharSequence plain = s.getPlain(); int n = 0; for (int i = 0; i < plain.length(); i++) { n += max(wcwidth(plain.charAt(i)), 0); } return n; } }
private int fmtPrint(final CharSequence buff, int start, int end, int cursorPos) throws IOException { checkNotNull(buff); for (int i = start; i < end; i++) { char c = buff.charAt(i); if (c == '\t') { int nb = nextTabStop(cursorPos); cursorPos += nb; while (nb-- > 0) { out.write(' '); } } else if (c < 32) { out.write('^'); out.write((char) (c + '@')); cursorPos += 2; } else { int w = WCWidth.wcwidth(c); if (w > 0) { out.write(c); cursorPos += w; } } } cursorOk = false; return cursorPos; }