양치질 하다가 문득 아이디어가 떠올라서 테스트 코드를 작성해 봤는데, 괜찮게 동작해서 팁으로 올립니다. ^^ (양치질 하다가 떠오르다니... 약간 문제가 있다고 생각되네요.. ㅡ_ㅡa.. 코딩을 좀 쉬어야 할지도...)
아이디어는 간단합니다. 스프링노트에서 보낸 코드는 OL 태그와 함께 class 속성으로 code를 담고 있습니다. 즉 아래와 같이 되어있다는 것이지요. ^^
이것을 자바 스크립트를 이용해서 class 속성은 cpp와 같은 언어 타입으로 바꿔 넣어주고, name 속성을 추가해주면 나머지는 Syntax Highlighter가 알아서 해줍니다. 물론 ol 태크가 먹도록 수정된 Syntax Highlighter가 있어야 한다는 전제가 있습니다. ^^;;;;
shCore.js 파일을 수정하면 되는데 수정할 부분은 아래와 같습니다.
스프링노트와 티스토리를 연동하는게 점점 편리해 지는군요. ^^ 티스토리 만세~!!!
아이디어는 간단합니다. 스프링노트에서 보낸 코드는 OL 태그와 함께 class 속성으로 code를 담고 있습니다. 즉 아래와 같이 되어있다는 것이지요. ^^
-
<ol name=code>
코드....
</ol>
이것을 자바 스크립트를 이용해서 class 속성은 cpp와 같은 언어 타입으로 바꿔 넣어주고, name 속성을 추가해주면 나머지는 Syntax Highlighter가 알아서 해줍니다. 물론 ol 태크가 먹도록 수정된 Syntax Highlighter가 있어야 한다는 전제가 있습니다. ^^;;;;
shCore.js 파일을 수정하면 되는데 수정할 부분은 아래와 같습니다.
-
FindTagsByName(elements,name,'pre');
FindTagsByName(elements,name,'textarea');
FindTagsByName(elements,name,'ol'); // 추가
- //highlighter.Highlight(element[propertyName]));
highlighter.Highlight(element[propertyName].replace( /
/gi, '\n').replace(/<\/?[^>]+>/gi, '')); // 이렇게 수정
-
<!-- kkamagui 추가 Syntax Highliter -->
<script class="javascript">
<!-- kkamagui 추가 Stringnote 지원 -->
var tags = document.getElementsByTagName( 'ol' )
for( var i = 0 ; i < tags.length; i++ )
{
if( tags[ i ].attributes['class'].value == 'code' )
{
// cpp로 일단 고정함
tags[ i ].attributes['class'].value = 'cpp';
tags[ i ].setAttribute( 'name', 'code' )
}
}
</script>
스프링노트와 티스토리를 연동하는게 점점 편리해 지는군요. ^^ 티스토리 만세~!!!
'프로그래밍(Programming)' 카테고리의 다른 글
02 CSS(Cascading Style Sheet)-Part1 (2) | 2007.11.30 |
---|---|
메뉴 또는 버튼에 좋은 이름을 지어야 하는 이유~ (4) | 2007.11.30 |
압축된 자바스크립트 소스 예쁘게 보기 (5) | 2007.11.24 |
DICOM에 대한 문서가 잘 정리되어있는 사이트 (0) | 2007.11.24 |
구글 문법 하일라이터(Syntax Highlighter)를 패치하여 스프링노트 코드 지원하기 (4) | 2007.11.22 |