mirror of
https://github.com/ilyakooo0/helix.git
synced 2024-12-01 11:23:10 +03:00
Fix last line number being drawn in the status bar.
This commit is contained in:
parent
e462f32723
commit
1a9ae72fcb
@ -330,7 +330,16 @@ impl EditorView {
|
|||||||
// document or not. We only draw it if it's not an empty line.
|
// document or not. We only draw it if it's not an empty line.
|
||||||
let draw_last = text.line_to_byte(last_line) < text.len_bytes();
|
let draw_last = text.line_to_byte(last_line) < text.len_bytes();
|
||||||
|
|
||||||
for (i, line) in (view.first_line..=last_line).enumerate() {
|
// This is a little confuding: We can't use the `last_line` variable for
|
||||||
|
// our iteration below, because there's a mismatch between the
|
||||||
|
// inclusive/exclusiveness of the screen-based last line and the
|
||||||
|
// text-based last line. So we compute what we actually need specially here.
|
||||||
|
let last_line_number = std::cmp::min(
|
||||||
|
view.first_line + view.area.height.saturating_sub(1) as usize,
|
||||||
|
doc.text().len_lines(),
|
||||||
|
);
|
||||||
|
|
||||||
|
for (i, line) in (view.first_line..last_line_number).enumerate() {
|
||||||
use helix_core::diagnostic::Severity;
|
use helix_core::diagnostic::Severity;
|
||||||
if let Some(diagnostic) = doc.diagnostics().iter().find(|d| d.line == line) {
|
if let Some(diagnostic) = doc.diagnostics().iter().find(|d| d.line == line) {
|
||||||
surface.set_stringn(
|
surface.set_stringn(
|
||||||
|
Loading…
Reference in New Issue
Block a user