A code syntax highlight library using Highlight.js
Clone or download
Latest commit c452fc8 Jul 21, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
HighlightJS 1.1.0 Jul 21, 2017
Sample 1.1.0 Jul 21, 2017
.gitignore 1.0.0 Jul 21, 2017
HighlightJS.podspec 1.1.0 Jul 21, 2017
LICENSE 1.0.0 Jul 21, 2017
README.md Update README.md Jul 21, 2017

README.md

HighlightJS.swift

What's this?

HighlightJS.swift is a code syntax highlight library using Highlight.js.

Supports 169 languages and 80 themes.

preview

preview

Requirements

  • iOS 8.0+
  • macOS 10.11+
  • tvOS 9.0+
  • Xcode 8 with Swift 3

Installation

CocoaPods

pod 'HighlightJS'

Contribution

You are welcome to fork and submit pull requests.

License

HighlightJS.swift is open-sourced software, licensed under the MIT license.

Usage

HighlightJS

let textStorage = HighlightJSAttributedString()

let layoutManager = NSLayoutManager()
textStorage.addLayoutManager(layoutManager)

let textContainer = NSTextContainer(size: CGSize.zero)
layoutManager.addTextContainer(textContainer)

let textView = UITextView(frame: rect, textContainer: textContainer)
view.addSubview(textView)

var highlighter = textStorage.highlightJS

textStorage.language = HighlightJS.LanguageName.rawValue // "swift"
textStorage.highlightJS.setTheme(to: HighlightJS.ThemeName.rawValue) // "solarized-light"

textView.text = "func test() {}"

HighlightView (1.1.0+, iOS only)

let h = HighlightView(frame: rect)
view.addSubview(h)
h.language = .swift
h.theme = .solarizedLight
h.text = "func test() {}"

Checkout the sample project for more detail.