가능한 중복 : 나는 코코아 텍스트 뷰에을 강조 구문에 관심이
Syntax coloring for Cocoa app구문 코코아 TextView에서 강조 표시 하시겠습니까? 경험담? 제안? 아이디어?
. TextView
위임에 textStorageDidProcessEditing
에 대해 일치 flex 패턴을 통해,
- 나는 여러 자원을 발견했다. 이 접근 방식에서는 전체 문자열이 각 입력 이벤트에서 파싱되므로 성능이 저하됩니다.
사용
NSTextStorageDidProcessEditingNotification
, 다음 편집 범위를 얻을, 그냥 거기에 색상을 적용CocoaDev은 own page on the topic of syntax highlighting이 있습니다. 범위는 단어 경계 또는 기타 일 수 있습니다. 이것은 확실히 성능을 향상시킵니다.
여기에서 언급 : 예를 들어, Xcode는 현재 화면에 표시된 텍스트의 색만 지정하고 스크롤 할 때까지 나머지 문서의 색을 유지합니다. 어떻게 구현하나요?
사용
NSLayoutManager
- 전용 화면 그리기에 사용되는 어떠한 방법으로 지속되지 않습니다되는 [] 임시 속성 ...를 통해이 문서가 말한대로,하지만 마지막 편집 범위를 착색하지 않습니다 , 공백 문자가 입력 될 때까지.사용자 지정 도우미 UKSyntaxColoredDocument - 멋지지만 언어 정의는 속성 목록을 통해 이루어집니다. 추가/기존 언어 정의를 사용하는 방법? 접근 방식의
아무도 나에게 정말 확장 또는 강력한 보이지 않는다 (아마 4를 제외하고 ..).
저는 SH의 강력한 기존 라이브러리 인 pygments을 알고 있습니다. PyObjC입니다.
질문 : 기존 라이브러리를 어떻게 사용할 수 있습니까? pygments과 같이 코코아에서 확장 가능하고 실행 가능한 구문 강조 표시를 사용하려면 TextView
?
참고 :이 질문은 매우 광범위하고 (너무 오래 걸린다). 경험과 제안은 물론 솔루션도 환영합니다. 감사.Syntax coloring for Cocoa app
Smultron는 더 이상 오픈 소스가 아니며, 더 이상 소스 코드를 사용할 수 없습니다. – zpasternack
소스는 soureforge 웹 사이트에서 계속 사용할 수 있습니다. 여기를 참조하십시오 : http://sourceforge.net/projects/smultron/files/smultron/3.6b1/ – Daniel
나는 고쳐졌다, 고마워! – zpasternack