Highlightr هو أداة تمييز IOS & MacOS بناء على ارتفاع مع سريع. يستخدم Aightly.js لأنه جوهر ، يدعم 185 لغة ويأتي مع 89 أنماط.
يأخذ سلسلة عرجاء مع رمز وإرجاع nsattributtedString مع تسليط الضوء على بناء الجملة المناسب.
Cocoapods هو مدير التبعية لمشاريع الكاكاو. يمكنك تثبيته مع الأمر التالي:
$ gem install cocoapods لدمج Highlightr في مشروع Xcode الخاص بك باستخدام cocoapods ، حدده في Podfile الخاص بك:
source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
target '<Your Target Name>' do
pod 'Highlightr'
endثم ، قم بتشغيل الأمر التالي:
$ pod installCarthage هو مدير التبعية اللامركزي الذي يبني تبعياتك ويوفر لك الأطر الثنائية.
يمكنك تثبيت قرطاج مع Homebrew باستخدام الأمر التالي:
$ brew update
$ brew install carthage لدمج Highlightr في مشروع Xcode الخاص بك باستخدام قرطاج ، حدده في Cartfile :
github "raspu/Highlightr"
قم بتشغيل carthage update لإنشاء الإطار وسحب Highlightr.framework المبني في مشروع Xcode الخاص بك. highlightr
يوفر Highlightr فئتين رئيسيتين:
هذه هي نقطة النهاية الرئيسية ، يمكنك استخدامها لتحويل سلاسل التعليمات البرمجية إلى سلاسل nsattributed.
let highlightr = Highlightr ( )
highlightr . setTheme ( to : " paraiso-dark " )
let code = " let a = 1 "
// You can omit the second parameter to use automatic language detection.
let highlightedCode = highlightr . highlight ( code , as : " swift " )
فئة فرعية من NSTextStorage ، يمكنك استخدامها لتسليط الضوء على النص في الوقت الحقيقي.
let textStorage = CodeAttributedString ( )
textStorage . language = " Swift "
let layoutManager = NSLayoutManager ( )
textStorage . addLayoutManager ( layoutManager )
let textContainer = NSTextContainer ( size : view . bounds . size )
layoutManager . addTextContainer ( textContainer )
let textView = UITextView ( frame : yourFrame , textContainer : textContainer ) نعم ، يعتمد Highlightr على iOS & MacOS JavaScriptCore لتحليل الكود باستخدام Aightly.js. هذا في الواقع سريع جدا!
لن يكون أبدًا بالسرعة مثل الحل الأصلي ، لكنه سريع بما يكفي لاستخدامه في محرر الوقت الحقيقي.
إنه يأتي مع محلل HTML المصنوع خصيصًا لإنشاء NSATTributtedStrings ، وهو معالجة السمات المسبقة ويتم التحميل المسبق لمكتبات JS. ونتيجة لذلك ، فإنه يستغرق حوالي 50 مللي ثانية على جهاز iPhone 6S الخاص بي لمعالجة 500 سطر من التعليمات البرمجية.
يمكنك العثور على وثائق لأحدث إصدار على Cocoadocs.
يتوفر Highlightr بموجب ترخيص MIT. انظر ملف الترخيص لمزيد من المعلومات.
تسليط الضوء. js متاح بموجب ترخيص BSD. يمكنك العثور على ملف الترخيص هنا.