[질문] 임의의 스크립트에 대한 코드 하이라이팅 사용하기

seungje의 이미지

아래처럼 일련의 명령어와 파라미터들을 입력하는 스크립트가 있습니다.

////////////////////////////////////////////////////
//        Magnet circuit Design - Seungje Choi    //
////////////////////////////////////////////////////
 
ANALYSIS OPTION=ACTIVATE PROGRAM=TOSCAMAGN
ANALYSISDATA OPTION=SET PROGRAM=TOSCAMAGN LINEAR=NO NLITERTYPE=NEWTON NITERATIONS=21 TOLERANCE=1.0E-03 HX=0 HY=0 HZ=0 RHS=ADAPTIVE POTENTIALCUT=YES 
BACKGROUND OPTION=SET SHAPE=BLOCK SCALEX=4 SCALEY=4 SCALEZ=5 RXY=NONE RYZ=NONE RZX=NONE ROTZTYPE=NONE BCRIGHT=NORMMAGN BCLEFT=NORMMAGN BCTOP=NORMMAGN BCBOTTOM=NORMMAGN BCFRONT=TANGMAGN  
BCBACK=TANGMAGN 
 
// B-H curve
BHDATA OPTION=LOAD LABEL=1018 FILE='G:/Opera/BH curve/1018.BH'
BHDATA OPTION=LOAD LABEL=10T FILE='G:/Opera/BH curve/10T_01.BH'
BHDATA OPTION=LOAD LABEL='NdFeB N50M T35' FILE='G:/Opera/BH curve/NdFeB N50M_temperature_35_new.bh'
BHDATA OPTION=LOAD LABEL='NdFeB N50M tangential' FILE='G:/Opera/BH curve/NdFeB N50M_X_kriss.bh'
BHDATA OPTION=LOAD LABEL=PL9 FILE='G:/Opera/BH curve/PL9.BH'
 
// If non-linear convergence of the solution is slow, try using an asymmetric matrix by setting the variable #USEFULLMATRIX to 1.
// VARIABLE OPTION=ModelDimension NAME=#USEFULLMATRIX VALUE=1 DESCRIPTION=tip
 
// Cell parameter
// Level
VARIABLE OPTION=ModelDimension NAME=#Lv_Yoke VALUE=90 DESCRIPTION=Level
VARIABLE OPTION=ModelDimension NAME=#Lv_Column VALUE=80 DESCRIPTION=Level
VARIABLE OPTION=ModelDimension NAME=#Lv_ColumnTip VALUE=83 DESCRIPTION=Level
VARIABLE OPTION=ModelDimension NAME=#Lv_Magnet VALUE=100 DESCRIPTION=Level
VARIABLE OPTION=ModelDimension NAME=#Lv_Pole VALUE=75 DESCRIPTION=Level

이 스크립트에 코드 하이라이트 기능을 넣어 편집하고 싶어서 여러가지 검색을 해보았는데, 정말 모르겠더군요.

원하는 것은 반복되서 나오는 명령어(대부분 첫번째 단어)와 입력한 파라미터(대부분 = 이후에 나오는 숫자 또는 '....'), 그리고 주석에 색깔을 넣어 스크립트 읽는 것을 편하게 하는 것입니다.
(폴딩 기능까지는 원하지도 않습니다. 물론 된다면 정말 좋겠죠.)

제 생각에는,
사용자가 명령어(예약어) 등을 미리 지정해주면, 스크립트(코드)에서 그것을 찾아 지정된 색상을 넣어주는 편집기가 있을 법도 한데, 정말 못 찾겠더군요.

혹시 이런 기능이 구현된 에디터가 있다면 소개 좀 부탁드립니다.

감사합니다.

lazycoder의 이미지

emacs에서 불러들인 다음 M-x conf-unix-mode 하시면 됩니다.

feedseaotter의 이미지

vim에서 syntax 만들어서 써도 됩니다.