From 45d3e5a623ab28089a46d8aea6d38d201a7e1858 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 8 Jan 2017 19:48:30 +0530 Subject: [PATCH] Render the corner box drawing chars --- kitty/fonts/box_drawing.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/kitty/fonts/box_drawing.py b/kitty/fonts/box_drawing.py index 90bc78828..88232b2dc 100644 --- a/kitty/fonts/box_drawing.py +++ b/kitty/fonts/box_drawing.py @@ -87,6 +87,13 @@ def vholes(*a, level=1, num=1): add_vholes(*a, level=level, num=num) +def corner(*a, hlevel=1, vlevel=1, which=None): + wh = 'right' if which in '┌└' else 'left' + half_hline(*a, level=hlevel, which=wh) + wv = 'top' if which in '└┘' else 'bottom' + half_vline(*a, level=vlevel, which=wv) + + box_chars = { '─': [hline], '━': [p(hline, level=3)], @@ -104,8 +111,12 @@ box_chars = { '┇': [p(vholes, num=2, level=3)], '┊': [p(vholes, num=3)], '┋': [p(vholes, num=3, level=3)], + '┌': [p(corner, '┌')], } +for start in '┌┐└┘': + for i, (hlevel, vlevel) in enumerate(((1, 1), (3, 2), (2, 3), (3, 3))): + box_chars[chr(ord(start) + i)] = [p(corner, which=start, hlevel=hlevel, vlevel=vlevel)] is_renderable_box_char = box_chars.__contains__