web2011. 4. 14. 00:32
#177
크롬에서 세로 스크롤이 나타나요.
https://bitbucket.org/alexg/syntaxhighlighter/issue/177/superfluous-vertical-scrollbars-in-chrome
패치 자체 적용 완료.

#251
https://bitbucket.org/alexg/syntaxhighlighter/issue/251/major-bug-found-and-fixed-solves-many
흥미로운 버그인데, C 언어에서는 또 문제가 안 된다. 자바스크립트 brush의 경우 string을 찾은 뒤, comment를 찾지만, C brush는 그 반대이기 때문인 것 같다.
// http://jmrware.com/articles/2011/sh-bug/SyntaxHighlighterBug.html
// Commenting won't get you anywhere
'single' line with more 'single' line with more 'single' line with more
"double" line with more "double" line with more "double" line with more

#?
#define asdf sdfsdf\
                   adfsdfas
int main()
{
return 0;
}
정규식으로 패턴을 찾는 방식이라, 정규식이 완벽하지 않으면 문제가 발생한다. 바로 위의 예제 같은 경우 <와 > 사이에 \가 들어가는 건 또 제외해야 하는 것으로 알고 있다. 이처럼 하지만 완벽하게 만드는 것은 쉬운일이 아니다.

참고로 vim에서는 syntax/c.vim이 300 lines가 넘고, shBrushCpp.js는 100 lines 정도이다. 흠, vim의 synstax를 조금만 수정해서 가져다 쓰는 것이 가능하면 좋을 것 같은데...

########################################
비록 버그가 조금 있지만, 자바스크립트로 이 정도라도 만든 것이 어딘가! 버그를 고칠 실력이나 시간이 부족하다면, 그냥 "제작자님 감사요"하고 가져다 쓰자.
Posted by asdfzxcv