CodeEditApp / CodeEditApp/CodeEditSourceEditor

✨ Allow configuring the line number font

オープン 初心者向け
#376 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Swift
スター
719
フォーク
160
PR マージ指標
30日以内にマージされた PR はありません

説明

### Description

`SourceEditorConfiguration.Appearance.font` configures the editor text font, but the line-number gutter replaces it with `font.rulerFont` in `didSetOnController`. There is currently no public API for choosing the exact font and point size used by line numbers.

A use case is an editor configured with Monaco 12 pt that should also render its line numbers in Monaco 12 pt. At present, this requires maintaining a fork and changing:

```swift
controller.gutterView.font = font.rulerFont
```

A backward-compatible API could be:

```swift
public var lineNumberFont: NSFont?
```

The current behavior could remain the default:

```swift
controller.gutterView.font = lineNumberFont ?? font.rulerFont
```

### Alternatives Considered

- Making `GutterView.font` public. Keeping the option in `Appearance` seems preferable because it avoids exposing the view implementation.
- Always using `Appearance.font` for the gutter. This would change the existing default appearance, so an optional override is safer.

### Additional Context

This request is different from #58 and #157: those issues addressed the default ruler font appearance and proportional scaling. This request is specifically about allowing API consumers to override that default.

Observed on current `main` at revision `1fa4d3c`.

### Screenshots

Not applicable.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Start at SourceEditorConfiguration.Appearance.font and its didSetOnController handling, then inspect GutterView.font to understand how the ruler font is assigned. Add the proposed optional lineNumberFont API while preserving font.rulerFont as the default, and verify that consumers can override the gutter font without changing existing appearance behavior.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
swift
領域
desktop-dev
issue の種類
機能追加
難易度
2/5
見積もり時間
1〜3時間
活発さ
活発
明瞭さ
明確に書かれている
初心者へのやさしさ
76/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。