- Syntax Highlighter 2.0용 x86 어셈블리 브러쉬 공개
- 컴퓨터야그/블로그 관련
- 2009. 9. 8. 04:51
Visual Studio 계열 쉬프트(>>) 연산 버그의 원인이라는 뻘포스팅을 하면서 보니 Syntax Highlighter에 어셈블리 브러쉬가 없더라. 워낙 기본적인 언어라 있을 것 같기도 한데 참...
아뭏든, 하나 있으면 좋을 것 같아 만들어봤다.
일단, 아래 파일을 다운받아 압축을 풀고 올리고 나서
아래의 내용을 HTML 헤더에 추가한 뒤에
아래와 같이 적으면 된다.
brush 명은 asm 또는 x86을 사용하면 된다.
기타 자세한 설명은 기존 포스팅을 참고. (어짜피 이거 쓰려는 분들은 뭔지 잘 아실 것이니 자세한 설명은 생략)
적용한 화면은 아래와 같다.
그런데, 문제가 있다.
당연한 얘기지만, SH의 브러쉬는 거대한 정규식 덩어리다.
주석 역시 정규식으로 지정되어 있는데, 하필 어셈블러의 주석은 애매하기 짝이 없는 세미콜론(;)이다.
이건 단독으로는 평범한 문자이지만, 와 같이 사용될 때는 의미를 갖기 때문에 정규식으로 구성하기가 너무 어렵다.
현재는 아래와 같이 애매하게 지정해뒀다.
즉, 행의 맨 처음이거나 바로 앞에 공백이 있는 경우만 주석으로 처리하는 것이다.
이게 문제가 될 수 있는 것이 mov ecx, 32;00000020H 처럼 쓰는 경우엔 주석으로 인식을 못 하는 거다.
정규식으로 &문자열; 의 포맷이 아닌 경우를 찾는 방법을 못 찾아 미봉책만 쓴 것이다.
혹시 이런 경우에 사용할 수 있는 정규식을 아시는 고수분 계시면 한 수 가르침 부탁드린다.
아뭏든, 하나 있으면 좋을 것 같아 만들어봤다.
일단, 아래 파일을 다운받아 압축을 풀고 올리고 나서
아래의 내용을 HTML 헤더에 추가한 뒤에
<script type="text/javascript" src="scripts/shBrushAsm.js"></script>
아래와 같이 적으면 된다.
<pre class="brush: asm;">어셈블러 코드</pre>
brush 명은 asm 또는 x86을 사용하면 된다.
기타 자세한 설명은 기존 포스팅을 참고. (어짜피 이거 쓰려는 분들은 뭔지 잘 아실 것이니 자세한 설명은 생략)
적용한 화면은 아래와 같다.
그런데, 문제가 있다.
당연한 얘기지만, SH의 브러쉬는 거대한 정규식 덩어리다.
주석 역시 정규식으로 지정되어 있는데, 하필 어셈블러의 주석은 애매하기 짝이 없는 세미콜론(;)이다.
이건 단독으로는 평범한 문자이지만, 와 같이 사용될 때는 의미를 갖기 때문에 정규식으로 구성하기가 너무 어렵다.
현재는 아래와 같이 애매하게 지정해뒀다.
{ regex: /^;.*$/gm, css: 'comments' }, // one line comments
{ regex: /\s\;.*$/gm, css: 'comments' }, // one line comments
즉, 행의 맨 처음이거나 바로 앞에 공백이 있는 경우만 주석으로 처리하는 것이다.
이게 문제가 될 수 있는 것이 mov ecx, 32;00000020H 처럼 쓰는 경우엔 주석으로 인식을 못 하는 거다.
정규식으로 &문자열; 의 포맷이 아닌 경우를 찾는 방법을 못 찾아 미봉책만 쓴 것이다.
혹시 이런 경우에 사용할 수 있는 정규식을 아시는 고수분 계시면 한 수 가르침 부탁드린다.
'컴퓨터야그 > 블로그 관련' 카테고리의 다른 글
JW Player 도우미 2.1 업뎃: PDF/PPT 임베딩 기능 추가! (12) | 2009.09.28 |
---|---|
티스토리/텍스트큐브 태그를 손쉽게 정리하자! (9) | 2009.09.25 |
블로그 하단에 퍼블리콘(publicon) 부착! (2) | 2009.09.05 |
오직 IE6만을 위한 iNove스킨 패치 (젠장!) (5) | 2009.08.27 |
IE6 No More에 동참! (64) | 2009.08.12 |
Recent comment