Awesome
<img alt="GitHub" width="80%" src="https://raw.githubusercontent.com/ProxymanApp/CodeMirror-Swift/master/screenshots/logo.png"> <img alt="screenshot" src="https://github.com/ProxymanApp/CodeMirror-Swift/blob/master/screenshots/screenshot.png"> <img alt="GitHub" src="https://img.shields.io/github/license/ProxymanApp/CodeMirror-Swift">CodeMirror-Swift is a lightweight wrapper of CodeMirror for macOS and iOS.
Features
- 🍭 Lightweight CodeMirror wrapper (build 5.52.2)
- ✅ 100% Native Swift 5 and modern WKWebView
- 👑 Support iOS & macOS
- 🎧 Built-in addons
- 🔎 Customizable (Addon, Themes, Modes...)
- 📕 Dozen built-in themes and syntax highlight modes
- ⚡️ Ready to go
Apps that uses CodeMirror-Swift
<img src="https://raw.githubusercontent.com/ProxymanApp/Proxyman/master/screenshots/proxyman_logo.png" alt="Proxyman screenshot" width="50%" height="auto"/>Modern and Delightful HTTP Debugging Proxy for macOS, iOS and Android ⚡️ • 🌎 https://proxyman.io
Installation
SPM
The easiest way to use this package is to add https://github.com/ProxymanApp/CodeMirror-Swift
to your SPM dependency.
Manually
- Manually copy
CodeMirrorWebView.swift
andCodeMirrorView.bundle
to your project. - Customize to fit your need on
index.html
- Set
mode
andContent
let url = Bundle.main.url(forResource: "data", withExtension: "json")!
let content = try! String(contentsOf: url)
codeMirrorView.setMimeType("application/json")
codeMirrorView.setContent(content)
Example
- Run
./examples/CodeMirror-Swift-Example.xcodeproj
How to use addons?
- Read CodeMirror Documentation
- Enable your plugins in
index.html
How to add new themes?
- Download CodeMirrror themes and put it on the folder
Sources/CodeMirrorView.bundle/Contents/Resources/theme
- Load your theme in
index.html
- Change by using
codeMirrorView.setThemeName("material.css")
Credit
- CodeMirror: https://codemirror.net
- CodeMirror-minified: https://www.npmjs.com/package/codemirror-minified
- Pierre-Olivier Latour: https://github.com/swisspol/CodeMirrorView
License
CodeMirror-Swift is copyright 2020 Proxyman and available under MIT license. See the LICENSE file in the project for more information.