Skip to content

Latest commit

 

History

65 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

STTextView Source Code Syntax Highlighting with TreeSitter and Neon.

Notepad.exe.mp4

Installation

Add the plugin package as a dependency of your application, then register/add it to the STTextView instance:

import STPluginNeon

textView.addPlugin(
    NeonPlugin(
        theme: .default,
        language: .swift
    )
)

SwiftUI:

import SwiftUI
import STTextViewUI
import STPluginNeon

struct ContentView: View {
    @State private var text: AttributedString = ""
    @State private var selection: NSRange?
    var body: some View {
        STTextViewUI.TextView(
            text: $text,
            selection: $selection,
            options: [.wrapLines, .highlightSelectedLine],
            plugins: [NeonPlugin(theme: .default, language: .swift)]
        )
        .textViewFont(.monospacedDigitSystemFont(ofSize: NSFont.systemFontSize, weight: .regular))
        .onAppear {
            loadContent()
        }
    }

    private func loadContent() {
        // (....)
        self.text = AttributedString(string)
    }
}

About

Source Code Syntax Highlighting

Topics

Resources

Stars

56 stars

Watchers

2 watching

Forks

Releases

Contributors

Languages