From a72578cce82bba6ecf0ac714f0b5bb853e922f9a Mon Sep 17 00:00:00 2001 From: jess Date: Sun, 5 Apr 2026 12:08:26 -0700 Subject: [PATCH] draw eval results at right edge of editor, always show line numbers --- src/EditorView.swift | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/EditorView.swift b/src/EditorView.swift index 03bb068..51529ae 100644 --- a/src/EditorView.swift +++ b/src/EditorView.swift @@ -2008,14 +2008,15 @@ class LineNumberTextView: NSTextView { let lineRect = lm.boundingRect(forGlyphRange: lineGlyphRange, in: tc) let y = lineRect.origin.y + origin.y + let numStr = NSAttributedString(string: "\(lineNumber)", attributes: lineAttrs) + let numSize = numStr.size() + numStr.draw(at: NSPoint(x: LineNumberTextView.gutterWidth - numSize.width - 8, y: y)) + if let result = evalResults[lineNumber - 1] { let resultStr = NSAttributedString(string: "\u{2192} \(result)", attributes: resultAttrs) let size = resultStr.size() - resultStr.draw(at: NSPoint(x: LineNumberTextView.gutterWidth - size.width - 4, y: y)) - } else { - let numStr = NSAttributedString(string: "\(lineNumber)", attributes: lineAttrs) - let size = numStr.size() - numStr.draw(at: NSPoint(x: LineNumberTextView.gutterWidth - size.width - 8, y: y)) + let rightEdge = visibleRect.maxX + resultStr.draw(at: NSPoint(x: rightEdge - size.width - 8, y: y)) } lineNumber += 1