✨ Custom ruler view to support advanced requirements

Open
#127 2 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
30/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
swift
Domain
desktop

Research direction

Start by inspecting the existing STTextView ruler implementation and the CodeEditTextView entry point to understand the current ruler behavior. Encapsulate an NSRulerView subclass in CodeEditTextView and preserve the basic ruler functionality that exists today; the listed preference, line-number, folding, and comparison enhancements are explicitly out of scope.

Written by the indexing model from the issue text.

Description

Description

The vertical ruler (NSRulerView) has a number of requirements that no longer can be efficiently met by STTextView's implementation.

The recommendation is for an NSRulerView subclass to instead be encapsulated within CodeEditTextView, to provide easier workflows for contributors to customize and enhance it. See the bottom of this description for a list of proposed enhancements after this port is complete.

The goal of this enhancement should be to provide basic RulerView functionality aligned with what exists today in the project. It is not to implement the enhancements listed below!

Future enhancements will likely include

  • support for the same preferences available in Xcode's preferences:
    image
  • toggle line numbers on/off without hiding other RulerView features
  • A code folding ribbon
    image
  • Code comparison controls
    image
Dominant language
Swift
Stars
720
Forks
162
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from CodeEditApp/CodeEditSourceEditor

All issues in CodeEditApp/CodeEditSourceEditor

Similar issues

More Swift issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.