HOME | EXPERIENCE | GUESTBOOK | ADMIN | ABOUT
 
코드구문 강조를 위한 어플리케이션이다.
초기버젼에서는 HTML로 만들었지만 각 브라우져별로 JS엔진의 파싱수행속도가 달라 범용으로 활용키가 어렵다고 판단
플래시엔진으로 대체 했다.(현재 200k 미만의 코드일 경우 1초내에 convert가 가능하다.)

본 코드구문 강조는 다음과 같은 특징을 가지고 있다.

1.본인의 홈페이지(블로그)에서 페이지 로드시점에 코드강조 처리가 되는 방식이 아닌 본 어플리케이션을 통해서
구문강조를 완료한 HTML코드를 직접 Wysiwyg방식이나 HTML코드편집에 첨부하여 구문강조를 수행하는 방식이다.
(따라서 블로그 설정 편집을 지원하지 않는 서비스형 블로그에도 Code Highlight를 적용할 수 있다. 단, style 태그 및 전체 html태그 지원시)

2.따라서 코드 구문강조를 위한 별도의 수행파일(JS & Serveside) 을 웹에 업로드 하거나 구축할 필요가 없다.
(기존 JS방식의 경우 페이지 onload 시점에서 구문강조를 적용하기 위해  파싱을 수행 하는데 이에대한 처리 부하를 본  코드강조를
통해서 줄일수 있으며, HTML코드가 지원가능한 웹의 모든공간(게시판,블로그)에 게시글 처럼 직접 코드강조를 적용할 수도 있다.)

3.AshCodeHighlighter를 로컬시스템에서 실행하여 처리할수도 있고 별도의 웹계정에 올린후 링크하여 본인의 PC가 아닌
 웹에서 구문강조기를 실행하여 필요에 따라 구문강조를 수행할수 있다.

4.구문강조 키워드를 필요에 따라 추가 및 삭제가 가능하고, 코드강조의 폰트, 색상편집이 용이하다.

5.별도의 CSSName을 통해 기본 구문강조에 대한 추가 스타일을 적용할 수 있다.
(ex background-image pattern)


[스크린샷]



[구문강조 코드 예]

 F   ? 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
Application : AshCodeHighlighter
Author : An.sehan (www.happyfri.com / plandas@naver.com)
Creation Date : 2009.04.01
Last Modified : 2009.05.08
Version : 0.98
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
*/

stop();
import flash.events.Event;
import flash.events.MouseEvent;
import flash.external.ExternalInterface;
import flash.display.DisplayObject;
import flash.net.SharedObject;
import sha3.Sha;
import sha3.ShaEvent;
import sha3.ShaColor;
import sha3.ShaMotioner;
import sha3.events.ShaEventMotion;
import sha3.etc.ShaCodeProcessor;
import sha3.core.ShaDockingManager;

const ASH:* = (function():void {
Sha.global.root = root;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.showDefaultContextMenu = false;
XML.ignoreWhitespace = true;
})();


[다운로드] AshCodeHighlighter 최신버젼(0.98)
AshCodeHighlighter.zip



※단 본 어플리케이션의 단점은 코드강조를 수행하기 위해 매번 어플리케이션을 실행하고 그 결과 코드를 Copy&Paste 해야
한다는 것이다.

ie6 Issue |
ie6에서는 pre태그가 기본 width가 적용되지 않으면 overflow-x 가 오류가 생긴다.
이것은 대부분은 block엘리먼트가 해당되는 부분이기도 하다.
따라서 ie6 브라우져와의 호환성을 위해서 본 구문강조기를 붙여서
실행되는곳에는 다음 코드가 추가되면 이 문제를 해결할 수 있다.
pre { _width:99% }

99% 는 역시 ie6에서 pre엘리먼트의 사이즈가 100%일경우 상위컨테이너의 사이즈보다 더 큰 문제가 발생됨에 따른 조치이다.
EDIT | DELETE
All Articles
  • • 냉풍기는 정말 효과가 있는것인가?
  • • 동반의 강자 VS 터프윈
  • • 확산되는 지자체 부도 그리고 제2의 부자감...
  • • 저역시 반드시 반대를 하는 입장이라기 보단...
  • • 저는 전작권 연기에 찬성하고 있었습니다만....
  • • 사실 공직자로서의 자질론을 따지자면 제가 ...
  • • 타블로의 악플러는 과연 처벌 대상인가?
  • • 타블로는 경고한다 그 입다물라!
  • IE8 inline-block

  • 2008     1
    LINK • SUMMARY