This commit is contained in:
Will McGugan
2022-06-08 12:04:18 +01:00
parent 0ff8c7e47c
commit b9e1022f6e
4 changed files with 25 additions and 12 deletions

View File

@@ -104,7 +104,7 @@ Tweet {
.code {
height: 34;
height: auto;
}

View File

@@ -109,7 +109,10 @@ class BasicApp(App, css_path="basic.css"):
content=Widget(
Tweet(TweetBody()),
Widget(
Static(Syntax(CODE, "python"), classes="code"),
Static(
Syntax(CODE, "python", line_numbers=True, indent_guides=True),
classes="code",
),
classes="scrollable",
),
Error(),

View File

@@ -75,6 +75,7 @@ class Widget(DOMNode):
scrollbar-color-active: $accent-darken-1;
scrollbar-size-vertical: 2;
scrollbar-size-horizontal: 1;
}
"""

View File

@@ -12,9 +12,10 @@ def test_line_crop():
Segment("Hello", bold),
Segment(" World!", italic),
]
total = sum(segment.cell_length for segment in segments)
assert line_crop(segments, 1, 2) == [Segment("e", bold)]
assert line_crop(segments, 4, 20) == [
assert line_crop(segments, 1, 2, total) == [Segment("e", bold)]
assert line_crop(segments, 4, 20, total) == [
Segment("o", bold),
Segment(" World!", italic),
]
@@ -27,16 +28,23 @@ def test_line_crop_emoji():
Segment("Hello", bold),
Segment("💩💩💩", italic),
]
assert line_crop(segments, 8, 11) == [Segment(" 💩", italic)]
assert line_crop(segments, 9, 11) == [Segment("💩", italic)]
total = sum(segment.cell_length for segment in segments)
assert line_crop(segments, 8, 11, total) == [Segment(" 💩", italic)]
assert line_crop(segments, 9, 11, total) == [Segment("💩", italic)]
def test_line_crop_edge():
segments = [Segment("foo"), Segment("bar"), Segment("baz")]
assert line_crop(segments, 2, 9) == [Segment("o"), Segment("bar"), Segment("baz")]
assert line_crop(segments, 3, 9) == [Segment("bar"), Segment("baz")]
assert line_crop(segments, 4, 9) == [Segment("ar"), Segment("baz")]
assert line_crop(segments, 4, 8) == [Segment("ar"), Segment("ba")]
total = sum(segment.cell_length for segment in segments)
assert line_crop(segments, 2, 9, total) == [
Segment("o"),
Segment("bar"),
Segment("baz"),
]
assert line_crop(segments, 3, 9, total) == [Segment("bar"), Segment("baz")]
assert line_crop(segments, 4, 9, total) == [Segment("ar"), Segment("baz")]
assert line_crop(segments, 4, 8, total) == [Segment("ar"), Segment("ba")]
def test_line_crop_edge_2():
@@ -49,7 +57,8 @@ def test_line_crop_edge_2():
"─╮",
),
]
result = line_crop(segments, 30, 60)
total = sum(segment.cell_length for segment in segments)
result = line_crop(segments, 30, 60, total)
expected = []
print(repr(result))
assert result == expected