S c i T E 문 서 |
자주 묻는 질문 스크립팅 정규 표현식 |
5.3.7 버전 한글판 johnsonj 230726
SciTE에서 텍스트 편집은 대부분의 매킨토시나 윈도우즈 편집기와 유사하게 작동한다. 거기에다 자동 구문 강조 기능이 추가되어 있다. SciTE는 여러 줄 파일을 메모리에 한 번에 적재할 수 있지만 오직 한 파일만 볼 수 있다. SciTE에서 텍스트를 네모지게 선택하려면 윈도우즈에서는 Alt 키를 누르거나 GTK+라면 Ctrl 키를 누르면서 그 위를 마우스로 끌면 된다. GTK+에서 사용되는 수식 키는 rectangular.selection.modifier 특성으로 바꿀 수 있다.
SciTE에는 편집판과 출력판 두 개의 판이 있다. 출력판은 편집판의 오른쪽이나 아래에 위치한다. 처음에는 크기가 0이지만, 편집판과의 사이에 있는 꼭지쇠를 끌면 크게 할 수 있다. 옵션 | 수직 분할 명령어를 사용하면 출력판을 편집판 아래로 옮길 수 있다.
SciTE는 소스 파일을 컴파일하거나 실행하는 명령어를 수행할 수 있다. 그리고 이런 명령어의 출력을 출력판으로 방향전환할 수 있다.
예를 들어, 파이썬이 설치되어 있다면, 새로 문서를 열고 다음을 타자해 보자:
print "Hi"
단 한 줄만 입력한다.
이제 문서를 printhi.py로 저장하자.
print
"hi"
도구 | 실행 명령어를 실행하자.
>python -u printhi.py
hi
>Exit code: 0
첫 파란 줄은 SciTE에서 프로그램을 실행하는데 사용될 명령어를 보여준다. 까만 줄은 파이썬 프로그램을 실행하고 나온 출력이다. 마지막 파란 줄은 SciTE에서 프로그램이 종료 코드를 보여주면서 완료되었다는 것을 보여준다. 종료 코드가 0이면 실행에 성공했다는 뜻이다. SciTE는 Python, GCC, Visual C++, Borland C++, PHP 기타 도구들이 만들어 내는 에러 메시지를 부분적으로 이해한다. 이와 같은 포맷을 사용하는데 이를 보려면 'mistake'를 파이썬 파일 두 번째 줄에 추가해 보자:
print
"hi"
mistake
도구 | 실행 명령어를 실행하자. 그 결과는 다음과 같다:
>python -u printhi.py hi Traceback (innermost last): File "printhi.py", line 2, in ? mistake NameError: mistake >Exit code: 1
이런 단순한 경우는 문제가 무엇인지 쉽게 알 수 있지만, 파일이 커지면 도구 | 다음 메시지 명령어를 이용해야 에러 보고를 하나하나 볼 수 있다. 도구 | 다음 메시지 명령어를 실행하면, 출력판의 첫 에러 메시지는 노란 배경색으로 강조되고 에러 표시자가 편집판의 해당 줄에 표시된다. 캐럿은 이 줄로 이동하고 판은 필요하면 스크롤되어 그 줄을 보여준다. SciTE는 이제 다음과 같이 보인다:
SciTE는 대부분의 경우 에러 메시지에서 파일 이름과 줄 번호를 이해한다. 그래서 에러를 야기한 (헤더 파일 같이) 또다른 파일을 열 수 있다. 이 특징은 파일이름이 복잡하게 공백이나 ".."으로 구성되어 있으면 작동하지 않을 수 있다.
명령어 실행이 실패하고 너무 오래 걸리면 도구 | 실행 중지 명령어를 사용하면 된다.
도구는 다양한 모드로 실행할 수 있다. 이를 "하위시스템(subsystems)"이라고 부른다. 다양한 하위시스템이 Windows와 GTK+에서 지원된다. 기본 하위시스템은 0이다.
Windows | ||
0 | console | 명령어 줄 프로그램 GUI 프로그램에 사용되지 않으므로 창은 보이지 않는다. |
1 | windows | 자신의 창을 만드는 프로그램 |
2 | shellexec | ShellExecute를 사용하여 실행 HTML 파일류를 여는 좋은 방법. 마치 사용자가 쉘에서 파일을 연 것처럼 처리한다. |
3 | lua director | 내부 확장 또는 디렉터 확장 |
4 | htmlhelp | HtmlHelp 프로그램에서 열기 !로 갈라서 두 부분으로 구성된 명령어. 앞 부분은 검색할 주제이고 뒷 부분은 도움말 파일의 이름이다. |
5 | winhelp | WinHelp 함수로 열기 하위시스템 4와 비슷하게 두 부분으로 구성된 명령어 |
7 | immediate | 큐에 대기시키는 대신 곧바로 실행되는 내부 스크립트 |
GTK+ | ||
0 | console | 도구를 실행하고 완료될 때까지 기다린다 |
2 | shellexec | 배경에서 실행한다 |
3 | lua director | 내부 확장 또는 디렉터 확장 |
7 | immediate | 큐에 대기하는 대신 바로 실행되는 내부 스크립트 |
SciTE의 명령어 줄 인자에는 파일 이름, 명령어와 특성이 포함된다. 명령어와 특성은 앞에 "-"를 두고 그 사이에 ':'를 두어 구별된다. 첫 문자는 알파벳이어야 하며 '.'이 되면 안된다. 특성은 특성 집합 파일에 사용되는 구문을 사용하고 그 파일의 특성을 덮어쓴다. 특성에 아무 값도 주지 않으면, 1로 설정된다. 인자 안에 공간이 있다면 겹따옴표를 인자에 두를 수 있지만, 단순히 파일 이름이 아니라, 전체 인자를 둘러야 한다. 그래서 "-open:x y.txt"는 작동하지만 -open:"x y.txt"는 작동하지 않는다. 리눅스에서 표준 쉘 인용부호 처리가 가능하다. "-p" 인자를 주면 SciTE는 파일을 인쇄하고 종료한다.
윈도우즈에 대하여:
명령어 줄 인자에서 (따옴표 없이) "-" 그리고 "--"는 표준입력 스트림을 최근 버퍼 ("-")나 출력판 ("--")으로 읽어 들인다는 점에서 특별하다.
명령어 줄 인자 (따옴표 없이) "-@"는 파일 이름을 표준입력에서 읽어서 연다는 점에서 특별하다.
주의: 표준입력을 출력판으로 읽어 들일 때, split.vertical 특성이 0이면, 출력판이 최대 높이까지 증가한다. split.vertical 특성이 1이면, 출력판은 화면 너비의 거의 절반까지 커진다.
주의: 표준입력(stdin)이 방향전환되지 않으면, 이런 인자들은 무시되어 효과가 없다.
예를 들어,
명령어 | 인자 |
---|---|
close: | |
cwd: | 작업 디렉토리 바꾸기 |
find: | 텍스트 검색 |
goto: | 줄 번호 [,열 번호] |
open: | 파일 이름 |
loadsession: | 파일 이름 |
quit: | |
replaceall: | 텍스트 검색\000텍스트 교체 |
saveas: | 파일 이름 |
피신 연속열 | 의미 |
---|---|
\\ | 역사선 |
\a | 벨 |
\b | 백스페이스 |
\f | 한장 넘김 |
\n | 새줄 |
\r | 줄접음 |
\t | 탭 |
\v | 수직탭 |
\<ooo> | 세자리로 지정되는 8진수 |
\x<hh> | 두자리로 지정되는 16진수 |
명령어 줄 인자는 왼쪽에서 오른쪽으로 평가된다. 두 단계로 평가되는데 그 이유는 파일을 열려면 사용자 인터페이스가 사용가능해야 하고 또 그를 화면에 보여주기 전에 어떤 특성들을 설정할 필요도 있기 때문이다. 첫 단계는 첫 파일 이름이 열리기 바로 전까지 인자를 처리한다. 두 번째 단계는 나머지 인자를 처리한다.
그래서, 파일에 find: 또는 goto: 명령어를 수행하려면, 파일이름 다음에 명령어를 배치해야 한다. 그래야 SciTE가 명령어를 수행하기 전에 파일을 열 수 있다.
윈도우즈에서:
명령어 줄에 파일 이름이 디렉토리 이름과 일치하면, 파일 열기 대화상자가 나타난다 - 이 행위는 "open.dialog.in.file.directory" 특성에 의존한다.
"buffers" 특성이 2 이상이고 파일 이름이 기존의 파일에 일치하거나 만능문자 검색에 의하여 여러 파일에 일치한다면, 그에 부합하는 파일들이 "buffers" 특성에 번호별로 적재된다. 이 경우 디렉토리는 부합한 것으로 간주되지 않는다
파일 이름이 확장자라면, 선택적으로 경로가 앞에 있고, 그런 간단한 파일 이름이 존재하지 않는다면, 주어진 확장자를 여과기로 하여 파일 열기 대화상자가 나타난다.
파일 이름에 확장자가 없다면, "source.default.extensions" 특성에서 기존의 파일에 파일 이름을 맞추어 볼 기본 확장자를 찾는다.
SciTE는 파일 하나당 한 개씩 100 개의 버퍼를 사용할 수 있다. 기본값은 1이며 버퍼를 끄는 효과가 있다. 버퍼가 여러개 사용되면 버퍼 메뉴를 사용해서 그 사이를 돌아다닐 수 있다. 파일 이름을 선택하거나 뒤로(F6) 앞으로(Shift+F6) 명령어를 사용하면 된다. 탭 바에서 각 버퍼마다 탭이 표시된다. 이 옵션은 보기| 탭바 명령어로 끌 수 있다. 탭을 닫으려면 거기에 마우스 가운데 버튼을 클릭하면 된다. 버퍼를 너무 많이 설정하면 문제가 생길 수 있으므로 어떤 메뉴는 길이가 고정되고 그리하여 그 길이를 넘어서면 접근할 수 없다.
버퍼에 파일이 모두 찰 경우, 새로 파일을 열면 버퍼를 재사용하게 된다. 이 때문에 파일을 저장할 필요가 있다. 이 경우 주의 대화상자가 나타나 사용자에게 파일을 저장할지 물어본다.
세션은 파일 이름 목록이다. 나중에 빨리 적재할 수 있게 현재 열린 버퍼들을 모두 세션으로 저장할 수 있다. 세션은 확장자가 ".session"인 특성 파일로 저장된다.
파일 | 세션 적재 그리고 파일 | 세션 저장을 사용하여 세션을 적재/저장 한다. "최근 세션 자동적재" 기능을 끄려면 "save.session" SciTE 특성 변수를 사용한다.
"buffers" 변수가 "0"이면 세션 관리가 꺼진다.
이전에 저장된 세션을 적재하면 현재 열린 버퍼가 닫힌다. 그렇지만 편집중인 것을 잃어 버리지 않는데, 저장되지 않은 버퍼는 먼저 저장할지 물어보기 때문이다.
명령어 줄에서 특정한 파일을 열면 "save.session" 변수 상태를 덮어 쓴다. 명령어 줄에서 특정한 파일을 적재하면서 SciTE를 시작하면 "save.session" 변수가 "1"로 설정되어 있더라도 최근 세션은 복구되지 않는다. 이 때문에 "save.session"을 사용해도 안전하다 - 딱 한 파일만 열려고 한다면 절대 그 파일만 열린다.
"session.bookmarks"과 "session.folds" 변수를 설정하면 현재 열린 버퍼의 책갈피와 접기 상태가 세션 파일에 저장되고 세션이 적재될 때 복구된다
SciTE는 현재 다음 언어들을 구문 강조할 수 있다 (*는 접기를 지원한다는 뜻이다):
이런 언어들에 대하여 명령어를 실행하고 구축하는 것은 미리 준비되어 있지만 많은 사람들이 사용할 수 있도록 수정되어 있는지 먼저 점검을 해 둘 필요가 있다.
메뉴를 합리적인 길이 만큼 유지하기 위하여 일부 언어만 포함시켰다. 그러나 다른 언어를 포함하려면 전역 옵션에서 주석 처리를 제거할 필요도 있다. 이렇게 하려면 '#' 주석 문자를 제거하면 된다.
언어 설정은 파일 확장자를 보고 결정하지만 언어 메뉴에서 다른 언어를 선택해도 변경할 수 있다. 언어 메뉴는 menu.language 특성으로 바꿀 수 있다.
대화상자나 줄입력기를 사용하여 찾고 바꿀 수 있다. 기본값은 대화상자를 사용하는 것이다. 줄입력기는 웹 브라우저의 찾기와 비슷해서, 창 하단에 나타나고 대화상자보다 작아서 산만하지 않다. find.use.strip 특성과 replace.use.strip 특성에 지정한다.
SciTE는 검색에서 단어별, 정규 표현식, 대소문자 일치, 반대로 찾기, 문서의 끝에서 되돌리기에 관한 옵션을 허용한다. 명령어 줄 인자 섹션에 나열된 C 스타일의 역사선 피신을 사용하여 제어 문자를 검색하고 교체할 수 있다. 교체는 현재 선택된 구역 내 또는 전체 파일에 수행할 수 있다. 정규 표현식을 사용할 때, 태그가 붙은 하위표현식을 교체 텍스트에 사용할 수 있다. 정규 표현식은 줄 끝을 가로질러 부합하지 않는다.
SciTE 는 태그와 함께 기본 정규 표현식을 지원한다.
윈도우즈에서는 초점이 텍스트 입력 필드에 있을 때 Shift+Enter를 누르면 검색이 현재 방향의 반대로 진행되는데, 그래서 보통 거꾸로 검색이 이루어진다.
SciTE의 키보드 명령어는 주로 Windows와 GTK+ 관례를 따른다. 모든 이동 키는 (화살표, 페이지업/다운, 홈과 엔드) 쉬프트 키를 누른 채로 스트림 선택을, 쉬프트와 알트 키를 누른채로 사각 구역을 선택한다. 국가에 따라 어떤 키들은 사용할 수 없다. 즉, GTK+의 창 관리자와 같은 시스템이 점유하기 때문이다. user.shortcuts 설정은 키를 기능에 할당하는데 사용된다. 홈 키의 행위는 vc.home.key 옵션으로 바꾼다. 메뉴 명령어를 키보드로 수행하려면 메뉴에 나열되어 있으니 참고하자. macOS 키는 다른 플랫폼과 다르다. Windows와 GTK+가 Ctrl 키를 사용하는 곳에 명령어 키 ⌘를 사용한다. 메뉴에 없고 잘 사용되지 않는 명령어들은 다음과 같다:
Command | Key | macOS Key ⇧ shift ⌃ control ⌥ option ⌘ command |
---|---|---|
텍스트 크기 증가. | Ctrl+Keypad+ | Trackpad expand gesture |
텍스트 크기 감소. | Ctrl+Keypad- | Trackpad reduce gesture |
텍스트 크기를 정상으로 복구. | Ctrl+Keypad/ | |
최근 파일을 순회. | Ctrl+Tab | F6 |
블럭 들여쓰기. | Tab | tab |
블럭 내어쓰기. | Shift+Tab | ⇧tab |
단어의 처음까지 삭제. | Ctrl+BackSpace | ⌘delete |
단어의 끝까지 삭제. | Ctrl+Delete | fn⌘delete |
줄 처음까지 삭제. | Ctrl+Shift+BackSpace | ⇧⌘delete |
줄 끝까지 삭제. | Ctrl+Shift+Delete | fn⇧⌘delete |
문서의 처음으로 가기. | Ctrl+Home | ⌘↑ |
문서의 처음까지 선택. | Ctrl+Shift+Home | ⇧⌘↑ |
현재 줄의 처음으로 가기. | Alt+Home | fn⌥← |
문서의 끝으로 가기. | Ctrl+End | ⌘↓ |
문서의 끝까지 선택. | Ctrl+Shift+End | ⇧⌘↓ |
현재 줄의 끝으로 가기. | Alt+End | fn⌥→ |
접기 지점을 확대하거나 수축한다. | Ctrl+Keypad* | |
책갈피를 만들거나 삭제한다. | Ctrl+F2 | |
다음 책갈피로 가기. | F2 | |
다음 책갈피까지 선택. | Alt+F2 | |
선택 검색. | Ctrl+F3 | |
반대로 선택 검색. | Ctrl+Shift+F3 | |
말아 올림. | Ctrl+Up | |
말아 내림. | Ctrl+Down | |
줄 잘라내기. | Ctrl+L | ⌘L |
줄 복사. | Ctrl+Shift+T | ⇧⌘T |
줄 삭제. | Ctrl+Shift+L | ⇧⌘L |
앞줄과 줄 바꾸기. | Ctrl+T | ⌘T |
선택 복제. | Ctrl+D | ⌘D |
전처리기 조건식에 부합하는 것을 찾는다. 내포된 조건식은 무시한다. | Ctrl+K | |
전처리기 조건식에 부합하는 것을 선택한다. | Ctrl+Shift+K | |
전처리기 조건식에 부합하는 것을 역방향으로 찾는다. 내포된 조건식은 무시한다. | Ctrl+J | |
전처리기 조건식에 부합하는 것을 역방향으로 선택한다. | Ctrl+Shift+J | |
앞 문단. 쉬프트 키와 함께 누르면 선택이 확장된다. | Ctrl+[ | ⌘[ |
다음 문단. 쉬프트 키와 함께 누르면 선택이 확장된다. | Ctrl+] | ⌘] |
앞 단어. 쉬프트 키와 함께 누르면 선택이 확장된다. | Ctrl+Left | ⌃← |
다음 단어. 쉬프트 키와 함께 누르면 선택이 확장된다. | Ctrl+Right | ⌃→ |
이전 단어 부분. 쉬프트 키와 함께 누르면 선택이 확장된다. | Ctrl+/ | ⌘/ |
다음 단어 부분. 쉬프트 키와 함께 누르면 선택이 확장된다. | Ctrl+\ | ⌘\ |
사각 블록 선택. | Alt+Shift+Movement | ⇧⌥Movement |
사각 구역 선택을 줄의 처음까지 확장한다. | Alt+Shift+Home | |
사각 구역 선택을 줄의 끝까지 확장한다. | Alt+Shift+End |
윈도우즈에서 반대 방향으로 검색하려면 찾기 또는 바꾸기 대화상자에서 Shift+Enter를 사용하면 된다.
약어를 사용하려면, 약어를 타자하고 약어 확대 명령어 또는 Ctrl+B 키를 사용하면 된다. 약어는 약어 파일에 정의된 확장구로 교체된다. 옵션 메뉴에서 명령어로 약어 파일을 열어 약어를 추가할 수 있다. 기본 약어 파일이 있지만 다른 약어 파일도 특별한 확장자를 주어 설정할 수 있다.
파일에서 각 줄은 형태가 "약어=확장구"와 같다.
약어 이름은 어떤 문자도 된다 (단, CR과 LF와 같은 제어 문자는 당연히 안된다). 고위 Ascii 문자 (악센트 붙은 문자들)도 가능하다.
이름은 특성 파일의 제한을 가진다: 샵(#)이나 공간문자 또는 탭문자로 시작하면 안된다 (그러나 안에 공백문자는 있어도 된다); 안에 '=' 문자가 있으면 안된다.
약어 이름은 길이가 32 문자로 제한된다. 그 정도면 약어로서 충분하리라 생각한다...
확장구에서 새줄 문자는 '\n'로 표현되고 캐럿 위치는 '|' 문자로 표현된다. 기호상수로 '|' 문자를 포함시키려면 '||'를 사용하자.
배포된 약어 파일에 간단한 예들을 실어 두었다.
확대할 때, 이름은 앞 텍스트와 분리할 필요가 없다. 즉, 'é'를 'é'로 정의하면, 단어 안에서 그것을 확대할 수 있다.
약어 이름이 여러개 부합하면, 가장 긴 이름이 확대된다 (한 이름이 또다른 이름의 끝과 같다면, 긴 이름에 맞게 확대된다. 즉, 'ring'과 'gathering'을 정의하면, 'gathering'에서 오직 'gathering'에 맞게 확대되는 것을 볼 것이다).
SciTE는 많은 언어들에 접기를 지원한다 (더 자세한 정보는 SciTE가 이해하는 언어 목록을 살펴보자.) 접기 지점은 파이썬이라면 들여쓰기에 그리고 다른 언어들은 괄호 세기에 기반한다.
접기 지점 표식을 (접기 여백에) 클릭하면 접기가 확장되거나 수축된다. 보통 클릭하면 자손 접기 지점의 상태는 바뀌지 않는다; 부모가 수축되면 당연히 자손은 감추어진다. 그러나 부모가 다시 확장되더라도 각 자손은 여전히 전과 같이 접힌 상태로 있다.
접기 지점에 Ctrl+Click 하면 토글되며 모든 자손도 똑 같이 토글된다.
접기 지점에 Shift+Click하면 거기만 접기가 토글되는게 아니라, 자손 접기가 모두 확장된다.
접기 여백을 Ctrl+Shift+Click 하면 최상위 수준이 모두 확장되거나 수축된다. 보기 메뉴에서 "모든 접기 토글"을 선택해도 같다; 최상위 수준만 접힐 뿐이다.
팁: 그의 모든 자손이 접혀져 있는 거대한 코드 블록을 열려면, 그 블록을 Ctrl+Click으로 접은 다음, 보통 클릭으로 열자. 그러면 자손 접기가 열리면서 손자 접기가 여전히 닫혀 있는 것을 볼 수 있다; '손자' 접기를 열고 싶다면, 그 손자 접기를 Shift+Click 하자.
SciTE의 행위는 대부분 특성 파일을 편집하여 바꿀 수 있다.
네가지 특성 파일이 사용된다:
지역 특성 파일, 디렉토리 특성 파일, 사용자 특성 파일, 전역 특성 파일을 순서대로 덮어쓴다. 즉, 지역 특성 파일이 제일 우선 순위가 있다. 환경 변수도 특성으로 사용가능하고 특성 파일 중 하나에 명시적으로 설정하면 덮어 씌어진다.
디렉토리 특성 파일은 프로젝트 옵션 파일로 사용한다. 프로젝트는 하위디렉토리에서 사용자 명령어와 컴파일 그리고 빌드 명령어가 같은 방식으로 작동해야 하기 때문이다. 하위 디렉토리의 지역 특성 파일을 프로젝트의 루트에 위치한 하나의 특성 파일로 교체할 수 있다는 장점이 있다. 디렉토리 특성 파일의 평가는 기본으로 비활성이다. 활성화하려면 사용자 또는 전역 특성 파일에서 properties.directory.enable 변수를 1로 설정해야 한다.
사용자 특성 파일은 목적이 SciTE에 배포되는 기본 옵션을 전역 특성 파일에 그대로 두고 사용자에게 선택권을 주기 위해서이다. 지역 특성 파일의 목적은 한 디렉토리의 파일들에 대해서 컴파일과 빌드 그리고 실행 효과를 바꾸는 것이다. 예를 들어, 대부분의 작업에 자바 개발 키트의 javac 컴파일러를 사용한다면, SciTEGlobal.properties 파일에 .java 파일을 "javac"로 컴파일하도록 설정한다. 그리고 한 디렉토리의 파일들에 대해서는 jvc 컴파일러를 사용하고 싶다면, 그 디렉토리에 SciTE.properties 파일을 두고 안에 "jvc" 컴파일 명령어를 설정하자.
전역 특성 파일(global.properties)은 배포본마다 교체되기 때문에 사용자가 수정하면 안된다. 대신에 사용자 특성 파일(user.properties)로 새로 하나 복사한 다음 거기에다 변경해야 한다.
윈도우즈에서 전역 특성 파일은 실행파일이 있는 디렉토리에 위치한다. 사용자 특성 파일은 USERPROFILE 환경 변수에 설정된 사용자 프로파일 디렉토리에서 찾는다. USERPROFILE이 설정되어 있지 않다면 실행 파일이 있는 디렉토리에서 찾는다. GTK+에서 사용자 특성 파일은 사용자의 홈 디렉토리에 있고 전역 특성 파일은 구축 시간에 설정된 디렉토리에 있다 - 보통 그 위치는 /usr/share/scite이다.
(3.6.6 도입) 두 개의 환경 변수 "SciTE_HOME"과 "SciTE_USERHOME"이 있다. 사용자는 이 변수로 전역/사용자 특성 파일의 표준 위치를 오버라이드할 수 있다. (다음은 Windows와 GTK에 적용된다):
옵션 메뉴에 특성 파일을 여는 명령어가 있다.
파일은 자바 특성 파일과 거의 형태가 같다. 단순한 텍스트 포맷이다. 줄이 '#'로 시작하거나 완전히 빈 줄이면 주석이다. 다른 줄은 다음과 형태가 같다.
변수=값
값이 길 경우, '\' 문자를 줄 끝에 두면 값이 다음 줄에 계속된다. 공간 문자도 값에 의미가 있지만 변수 이름에서 앞이나 뒤에 오는 공간문자는 그렇지 않다. 그래서 " x =1"라고 정의하면 "x"라는 변수를 정의하는 셈이다. $(변수이름)을 사용하면 값에 다른 변수를 넣을 수 있다.
"=" 함수는 (";"로 구분된) 문자열을 비교하여 같으면 "1"을 다르면 "0"을 돌려준다. "Status"의 같이 "2"인지 알아보려면 다음과 같이 한다: $(= $(Status);2)
[3.62] "스타" 기능을 사용하면 특정한 접두사로 시작하는 모든 변수의 값을 모을 수 있다. all.languages=$(star language.)는 "language."으로 시작하는 변수를 모든 찾아 all.languages에 할당한다. 언어 메뉴와 같은 사용자 인터페이스에 대하여 많은 파일로부터 설정을 조합하는 데 이것을 사용할 수 있다. 특성 파일 수준 안에서 (지역, 디렉토리, 사용자, 전역) 변수이름의 알파벳 순서이다. 덕분에 어느 정도 순서를 제어할 수 있다. 표준 배포본에 사용되는 접두사는 "*filter.", "*language.", 그리고 "*source.patterns."이다. 앞에 처음으로 "*"를 두는 관례는 변수를 스타 기능에 사용할 목적이라는 뜻이다. 이 스타 변수들은 "정의된 변수들" 섹션에서 자세하게 다룬다.
색은 HTML의 '#' 다음에 6자리나 8 자리의 16진수 처럼 정의된다. #RRGGBB 또는 #RRGGBBAA처럼 그 색의 빨강, 초록, 파랑 그리고 알파값으로 정의된다. 알파값은 투명도로서 00이면 완전히 투명하고 FF이면 완전히 불투명하다. 6 자리 색상이면 완전히 불투명이라고 간주된다. 현재 투명한 8-자리 값으로는 몇 가지 설정만 가능하다.
윈도우즈에서, 현재 화면의 인치당 도트 설정을 이용하도록 값을 바꿀 수 있다. 좀 더 많은 픽셀을 사용하므로 고해상도 화면에서 크기가 합리적으로 보인다. margin.width=$(scale 16)과 같이 설정하면 정상적인 화면에서는 여백을 16 픽셀 너비로 만들고 화면이 200%로 설정되면 32 픽셀로 넓어진다.
현재 파일의 이름에 접근하기 위해 어떤 변수들은 환경에서 설정하기도 한다:
이름 | 의미 |
---|---|
FilePath | 현재 파일의 완전한 경로 |
FileDir | 뒤에 사선없이 현재 파일의 디렉토리 |
FileName | 현재 파일의 기본 이름 |
FileExt | 현재 파일의 확장자 |
FileNameExt | $(FileName).$(FileExt) |
RelativePath | 현재 파일에 대하여 특성 파일에 이르는 상대 경로 |
Language | 현재 파일에 대한 어휘분석기(lexer)의 이름 |
SessionPath | 현재 세션의 완전한 경로 |
CurrentSelection | 현재 선택된 텍스트의 값 |
CurrentWord | 캐럿이 안에 있거나 가까이 있는 단어의 값 |
Replacements | 최근 교체 명령어로 교체된 횟수 |
SelectionStart | 선택이 시작되는 위치 (0-기반 바이트 단위). |
SelectionStartColumn | 선택이 시작되는 컬럼 |
SelectionStartLine | 선택이 시작되는 줄 |
SelectionEnd | 선택이 끝나는 위치(0기반 바이트 단위) |
SelectionEndColumn | 선택이 끝나는 컬럼 |
SelectionEndLine | 선택이 끝나는 줄 |
CurrentMessage | 가장 최근에 선택된 출력창 메시지 |
SciteDefaultHome | 전역 옵션 파일이 발견된 디렉토리 |
SciteUserHome | 사용자 옵션 파일이 발견된 디렉토리 |
SciteDirectoryHome | 디렉토리 옵션 파일이 발견된 디렉토리 |
APIPath | api.filepattern으로부터 API 파일의 완전한 경로 목록 |
AbbrevPath | 약어 파일의 완전한 경로 |
ScaleFactor | 화면 확대 비율. 기본 값은 100 |
Appearance | 시스템이 사용하는 테마 번호. 백색(0) 또는 흑색(1) |
Contrast | 1이면 시스템이 고대비 모드이고 0이면 그 반대 |
어떤 특징들은 파일 이름 패턴을 이용하여 어느 변수를 사용할지 알아본다. 예를 들어, lexer 변수는 특정 파일에 대하여 특화가 가능하다. 또는 만능 문자 일치에 기반하여 파일 그룹에 특화할 수 있다. 그래서:
lexer.makefile=makefile는 "makefile"이라고 부르는 어휘분석기가 "makefile"이라고 부르는 파일에 사용되어야 한다고 지정한다.
lexer.*.cxx=cpp는 확장자가 "cxx"인 파일에 "cpp"라는 어휘분석기가 사용되어야 한다는 것을 나타낸다.
변수 교체는 파일 패턴 할당의 왼쪽에서 가능하다. 모양은 다음과 같다:
file.patterns.html=*.html;*.htm;*.asp;*.shtml
command.go.$(file.patterns.html)=file://$(FilePath)
만능 문자 '?'는 문자 하나에 일치하고 '*'는 여러 문자에 일치한다. 그래서 "*.mak"는 "proj.mak"에 부합하고 "Makefile*"은 "Makefile.in"에 부합하며 "*.x?l"은 "data.xml"과 "transform.xsl"에 부합한다.
특성 파일은 특정한 인코딩을 가지고 있다고 간주되지 않는다. 그렇지만 개별 특성 값은 인코딩이 있다고 간주된다. 파일 이름과 명령어 그리고 사용자 인터페이스 텍스트에 대하여, 인코딩은 UTF-8이며 그래서 코딩 쿠키(coding cookie)를 삽입하면 특성 파일을 UTF-8로 더 쉽게 편집할 수 있다. 나중에 설명드리겠다. (word.characters.filepattern와 같은) 다른 특성은 바이트 연속열로 간주된다. 또는 (문서 인코딩에 부합하는 keywords.filepattern 같이) 묵시적 인코딩으로 간주한다. 그래서 이런 설정들은 비-UTF-8 인코딩을 사용하여 편집하는 편이 더 좋다. UTF-8 값과 비-UTF-8 값이 모두 필요한 경우, 각기 다른 인코딩으로 두 파일을 사용할 수 있다. 반입 서술문으로 다른 인코딩 파일을 포함할 수 있다.
'반입(import)' 서술문은 마치 텍스트가 그 지점에서 줄지어 들어 서있는 것처럼 특성 파일을 포함한다. 반입된 특성 파일은 기본 파일에 상대적이거나 절대적이다. 그리고 확장자는 '.properties'이라고 간주한다. 그러므로 c:\os\scite\bin\SciTEGlobal.properties 파일 안에서 "import Lua" 서술문은 c:\os\scite\bin\Lua.properties 파일을 반입한다. 반입된 파일 안에서 import 서술문들은 모두, 현재 파일이 아니라, 원래 파일이 있는 디렉토리에 상대적이다.
한 디렉토리에 있는 특성 파일을 모두 반입할 수 있다. "import *"를 사용하면 되지만 사용자 특성 파일이나 약어 파일같은 범용 특성 파일은 반입하지 않는다. 반입할 파일들을 집합으로 나누어 통제할 수 있다. 반입 허용은 imports.include 그리고 반입 제외는 imports.exclude를 사용한다.
반입된 파일들은 영역으로 보호되지 않는다: 특성은 다른 파일에서 재정의될 수 있다. 그러므로, 파일에 "import cplusplus", "import java", 그리고 "style.cpp.1=fore:$(comment.colour)"이 모두 들어 있는 경우 cplusplus.properties에는 "comment.colour=#800000"이 들어 있고 java.properties에는 "comment.colour=#008000"이 들어 있다면, 가장 마지막 정의가 승리하고 기본 파일에 있는 정의는 물론이고 cplusplus.properties 와 java.properties에 있는 정의에 대해서도 활성화된다.
'if' 서술문은 이 특성 집합 파일이나 기본 특성 집합에 이미 정의된 심볼이나 표현식을 인자로 하나 받는다. 그 심볼이 '0'으로 평가되면 테스트는 실패한다. 빈 문자열이나 존재하지 않는 심볼은 0으로 평가된다. 0이나 빈 것으로 평가된 표현식은 실패한다. 최상위 특성 집합에 값이 '1'인 'PLAT_GTK'이나 값이 '1'인 'PLAT_WIN' 또는 값이 '1'인 'PLAT_MAC'중 하나가 삽입된다. PLAT_GTK와 PLAT_MAC 모두에 대하여 값이 '1'인 'PLAT_UNIX'가 삽입된다. 시스템 특성 Appearance 그리고 Contrast도 표현식에 사용할 수 있다. 테스트가 성공하면 다음의 들여쓰기된 서술문들이 실행된다. 들여쓰기되지-않은 서술문이 있으면 if 절이 끝난다. if 절에는 단순한 집합 서술문들만 허용된다. if 서술문의 평가는 평가 시간이 아니라, 읽기 시간에 일어난다. 시스템 특성이 하나라도 변경되면 강제로 다시 읽어들인다.
로컬 특성과 디렉토리 특성 파일을 현재 파일의 값을 테스트해 볼 수 있다. "if" 안에 $(FilePath), $(FileDir), $(FileName), $(FileExt), $(FileNameExt), 그리고 $(RelativePath)를 넣어 테스트해 볼 수 있다.
"match" 서술문은 "if"와 비슷하지만 묵시적으로 $(RelativePath) 패턴에 부합한다. 와일드 카드 *, ?를 사용할 수 있다; [a-z%]를 설정할 수 있고; 대안으로 {cpp,cxx,ixx}을 사용할 수 있다. 유닉스 스타일의 "/" 디렉토리 구분자는 "\"를 사용할 수도 있다. 패턴 안에 "/"이 없다면 "**/"을 앞에 두어 하위 디렉토리에 부합시킨다. 패턴과 "match" 사이에 정확하게 공백이 하나 있어야 한다. 뒤에 오는 공백은 제거된다.
[3.61] 'module' 서술문은 단일 실행 파일 Sc1에 사용하는 데 목적이 있다. Sc1에서는 모든 표준 .properties 파일의 하나로 결합되어 실행 파일 안에 자원으로 들어간다. module 서술문은 각 세그먼트의 파일이 원래 어디로부터 왔는지 표식을 단다. 그래서 mports.include 특성과 imports.exclude 특성은 Sc1과 잘 작동할 것이다. 그리고 원치 않는 특성은 활성화되지 않는다. 구문은 "module <name>"이다. 그 효과는 다음 module 서술문까지 그 이름이 imports.include에 있는가 아니면 imports.exclude에 있는가에 따라 모든 텍스트를 처리하거나 무시하는 것이다.
SciTE는 매개변수를 바꾸어 가면서 명령어를 실행할 수 있다. 사용되는 특성은 $(1) .. $(4) 네 가지가 있다. 매개변수 값을 설정하려면, 보기 | 매개변수 명령어를 사용한다. 그러면 독점 (modal) 매개변수 대화상자를 보여준다. 이 대화상자는 이런 매개변수들의 현재 값을 보여주고 새로운 값을 설정할 수 있다. 메인 창에 대한 가속 키들은 이 대화상자가 표시되어 있는 동안에도 여전히 활성화 상태이다. 그래서 다른 매개변수들을 가지고 명령어를 여러 번 빠르게 실행하는 데 사용할 수 있다. 다른 방법으로, '*'로 시작하는 명령어로 실행될 때 양식 매개변수 대화상자를 화면에 보여주도록 명령어를 만들 수 있다. 그렇지 않으면 무시된다. 양보 (modeless) 매개변수 대화상자가 이미 떠 있다면, '*'는 무시된다.
SciTE는 바이트 순서 표식(Byte Order Mark (BOM))으로 시작하는 유니코드 파일의 인코딩 체계를 자동으로 탐지한다. UTF-8 인코딩과 UTF-16 인코딩을 인지한다. 물론 UTF-16의 변형인 작은값 종료형(Little Endian)과 큰값 종료형(Big Endian)도 인지한다.
앞 두 줄 안에 코딩 쿠키가 있으면 UTF-8 파일도 인지한다. 코딩 쿠키 "coding: utf-8"와 형태가 비슷하다 ("coding" 다음에 ':'이나 '='이 오고, 선택적으로 공백, 선택적으로 인용부호, "utf-8"이 온다). 보통 주석 안에 들어 있다:
다른 인코딩이라면 code.page와 character.set 특성을 설정하자.
어떤 특성들은 Windows나 GTK+ 또는 macOS 아니면 Windows & macOS나 Windows & GTK+에서만 사용가능하다.
position.left position.top position.width position.height position.maximize |
최초 창 크기와 위치를 설정한다. 이 변수들이 생략되면 환경의 기본 값이 사용된다. 높이나 너비가 -1이거나 position.maximize 특성이 설정되어 있으면 창이 최대화된다. | ||||||||||||||||||||||||||||||||||||||||
position.tile | 또다른 SciTE가 열려 있으면, 최초 창 위치가 왼쪽 position.left + position.width에 위치하도록 설정해서 두 사본을 중첩되지 않고 볼 수 있도록 해 두자. position.left가 0으로 설정되어 있고 position.width가 화면의 절반 크기로 설정되어 있으면 잘 작동한다. | ||||||||||||||||||||||||||||||||||||||||
buffers |
많은 버퍼를 구성하려면 1에서 100사이의 숫자를 선택하자. 이 범위를 넘어선 값은 충돌을 일으킨다. 기본값은 1이며 버퍼와 관련된 UI 특징들을 끈다 이 값은 시작 시간에 그리고 전역 특성 파일에서만 한 번만 읽는다. 그래서 그 값을 변경하면 SciTE를 재시작해야 효과를 볼 수 있다. |
||||||||||||||||||||||||||||||||||||||||
buffers.zorder.switching | 이 설정은 Ctrl+Tab이 눌릴 때 전환하는 버퍼의 순서를 선택한다. 1로 설정되어 있으면 버퍼는 순서대로 선택된다. 그렇지 않으면 버퍼 번호에 기반하여 버퍼가 선택된다. | ||||||||||||||||||||||||||||||||||||||||
are.you.sure are.you.sure.for.build |
고전적인 GUI 질문 대화상자이다. 보통, SciTE가 파일을 저장하지 않은 채로 닫으려고 할 때 이런 귀찮은 질문을 물어온다. 질문을 끄려면, set are.you.sure를 0으로 설정하자. 사용자를 괴롭히지 않고 파일이 자동으로 저장된다. 파일 편집을 그만 두려면 New 명령어를 사용하자. New는 언제 "확실한가요?"라고 물어서 그 파일을 저장하지 않을 기회를 제공한다. 파일을 실행하거나 빌드할 때, 대부분은 먼저 파일이 저장되기를 바랄 것이다. 컴파일이나 빌드 또는 실행 명령어를 수행하는데 확인 대화상자를 활성화하려면, are.you.sure.for.build=1로 설정하자. |
||||||||||||||||||||||||||||||||||||||||
save.all.for.build | SciTE는 보통 컴파일이나 빌드 또는 실행 명령어를 수행할 때 현재 버퍼를 저장한다. 모든 버퍼를 저장하려면 save.all.for.build=1로 설정하자 | ||||||||||||||||||||||||||||||||||||||||
view.whitespace view.indentation.whitespace |
view.whitespace를 1로 설정하면 SciTE는 공백문자를 보여주며 시작한다. view.indentation.whitespace를 0으로 설정하면 들여쓰기 안의 공백문자가 보이지 않는다. view.indentation.whitespace를 1로 설정하면 들여쓰기 안의 공백 문자가 보인다 view.indentation.whitespace를 2로 설정하면 들여쓰기 안의 공백 문자만 보인다 |
||||||||||||||||||||||||||||||||||||||||
whitespace.fore whitespace.back |
공백문자를 보여줄 때 사용할 색깔을 설정한다. 이는 어휘분석기가 적용한 스타일도 덮어쓴다. | ||||||||||||||||||||||||||||||||||||||||
view.indentation.guides view.indentation.examine view.indentation.examine.filepattern highlight.indentation.guides |
view.indentation.guides를 1로 설정하면 공백으로 구성된 indent.size 크기 만큼의 컬럼마다 들여쓰기를 나타내는 수직 점선을 보여준다. view.indentation.examine을 1로 설정하면 진짜 공간문자로만 구성된 들여쓰기 가이드를 보여준다, 2로 설정하면 다음 비어있지 않은 줄에 맞추어 보여주고 (파이썬에 좋음) 또는 3으로 설정하면 이전과 다음의 비어있지 않은 줄에 맞추어 가이드를 보여준다 (대부분의 언어에 좋음). highlight.indentation.guides 설정이 1이면 괄호가 강조될 때 그 괄호와 연관된 들여쓰기 가이드가 강조된다. |
||||||||||||||||||||||||||||||||||||||||
whitespace.size |
공간문자를 화면에 표시하는 데 사용되는 크기를 설정한다. 특히, whitespace.fore가 미세하게 설정되어 있다면 적용된다. | ||||||||||||||||||||||||||||||||||||||||
view.eol | 1로 설정하면 SciTE는 줄 끝을 구성하는 문자들을 보여준다. 이 문자들은 (CR), (LF), 또는 (CR)(LF)와 같다. 이는 다른 운영체제에서 만들어진 파일을 줄끝에 민감한 소프트웨어에 사용할 때 유용하다. | ||||||||||||||||||||||||||||||||||||||||
eol.mode |
기본 EOL 모드는 (줄 끝을 구성하는 문자) 플랫폼마다 다르다. 이 행위를 덮어쓰려면 다음과 같이 특성을 설정하면 된다
LF 유닉스 형식 그리고 macOS
보시다시피, 윈도우즈는 두 세계가 결합되어 있다 ;-)
CR macOS 이전의 매킨토시 형식 CRLF DOS/Windows 형식 |
||||||||||||||||||||||||||||||||||||||||
eol.auto | 이 설정은 eol.mode 값을 덮어쓰고 줄 끝 문자를 파일이 열릴 때 현재 내용에 근거하여 결정한다. 파일에서 제일 많이 사용되는 줄 끝이 선택된다. | ||||||||||||||||||||||||||||||||||||||||
blank.margin.left blank.margin.right output.blank.margin.left |
텍스트의 양쪽에 빈 여백이 있다. 기본 텍스트의 배경색으로 그려진다. 기본값은 왼쪽 오른쪽에 각각 1 픽셀이지만 이 설정으로 바꿀 수 있다. output.blank.margin.left가 설정되어 있으면 출력 판에서는 blank.margin.left보다 우선한다. |
||||||||||||||||||||||||||||||||||||||||
margin.width | 이 특성에 숫자를 설정하면 SciTE는 선택 여백을 텍스트의 왼쪽에 보여준다. 값은 픽셀 수로서 선택 여백의 너비가 된다. 줄 표식은 선택 여백 구역에 나타난다. | ||||||||||||||||||||||||||||||||||||||||
full.screen.hides.menu | 1이면 윈도우즈에서 전화면 명령어가 사용될 때 메뉴 막대가 숨는다. GTK+에서는 언제나 메뉴 막대가 보인다. | ||||||||||||||||||||||||||||||||||||||||
minimize.to.tray | 1로 설정하면 SciTE기 태스크 막대가 아니라 시스템 트레이로 최소화된다. | ||||||||||||||||||||||||||||||||||||||||
line.margin.visible line.margin.width |
SciTE는 줄 번호를 선택 여백의 왼쪽에 보여줄 수 있다. line.margin.visible을 1로 설정하면 시작시에 이 컬럼을 보여준다. line.margin.width 특성은 줄 번호에 얼마나 많은 공간을 예약할지 제어한다. 화면에 보여줄 줄 번호의 자리수를 고려한다. 더 큰 줄 번호를 수용하기 위하여 여백이 확대되도록 지정하려면,line.margin.width=3+와 같이 자리수 뒤에 '+'를 추가한다. | ||||||||||||||||||||||||||||||||||||||||
tabbar.visible tabbar.hide.one |
tabbar.visible을 1로 설정하면 윈도우즈에서 시작시에 탭 막대가 보인다. 버퍼 특성은 이 옵션을 작동시키려면 1보다 더 큰 값으로 설정해야 한다. tabbar.hide.one를 1로 설정하면 탭이 2개 이상 되기 전까지는 탭 막대가 숨는다. | ||||||||||||||||||||||||||||||||||||||||
tabbar.multiline | tabbar.multiline를 설정하면 탭 막대에 여러 줄을 사용할 수 있다 | ||||||||||||||||||||||||||||||||||||||||
toolbar.visible | 1이면 도구 막대가 시작시에 보이게 된다. | ||||||||||||||||||||||||||||||||||||||||
toolbar.large | 1로 설정하면 툴바가 더 커지고 큰 아이콘을 사용한다. | ||||||||||||||||||||||||||||||||||||||||
toolbar.detachable (삭제)
|
1로 설정하면 도구 막대를 메인 창에서 분리할 수 있다.
|
||||||||||||||||||||||||||||||||||||||||
toolbar.usestockicons | SciTE는 도구막대에 대하여 내장 아이콘 집합이 있다. 이를 1로 설정하면 SciTE는 GNOME 데스크탑에 더욱 깊숙히 박힌다. GNOME의 현재 테마에서 제공하는 아이콘을 사용하기 때문이다. | ||||||||||||||||||||||||||||||||||||||||
pathbar.visible | 경로 막대는 탭 바 아래에서 현재 선택된 탭의 완전한 경로를 보여주는 한 줄의 텍스트이다. pathbar.visible이 1이면 GTK+에서 경로 막대가 보인다. | ||||||||||||||||||||||||||||||||||||||||
menubar.detachable (삭제)
|
설정이 1이면 메뉴 바를 메인 창에서 떼어 낼 수 있다.
|
||||||||||||||||||||||||||||||||||||||||
pathbar.selectable | 1로 설정하면 GTK에서 경로 바를 선택할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
undo.redo.lazy | 1로 설정하면 도구 막대 버튼을 활성화거나 비활성화할 때를 결정하는데 사용되는 테크닉을 좀 둔감하게 바꾼다. 느린 머신에서 수행성능이 개선될 수 있다. | ||||||||||||||||||||||||||||||||||||||||
change.history marker.reverted.to.origin marker.saved marker.modified marker.reverted.to.modified indicator.reverted.to.origin.insertion indicator.reverted.to.origin.deletion indicator.saved.insertion indicator.saved.deletion indicator.modified.insertion indicator.modified.deletion indicator.reverted.to.modified.insertion indicator.reverted.to.modified.deletion |
변경 이력 특성은 문서 변경 사항을 여백에 표식이나 본문안에 표시자로 보여줄지 말지를 제어한다.
비트 플래그 집합이다 (1=활성화, 2=여백 표식자, 4=본문의 표시자). 그래서 그럴 듯한 조합은 0=비활성화; 3=여백 표식자로 활성화, 또는 7=여백 표식자와 본문 표시자로 활성화가 된다. 이 특징에 대하여 기본 모습의 세트가 있지만 marker.* 그리고 indicator.* 특성으로 바꿀 수 있다. 변경 이력은 파일이 최초의 상태일 때만 화성화할 수 있고, 이 특성은 파일 하나가 적재될 때문 효과가 있다. |
||||||||||||||||||||||||||||||||||||||||
statusbar.visible | 1로 설정하면 시작시에 상태 막대가 보인다. | ||||||||||||||||||||||||||||||||||||||||
statusbar.minimum.height | macOS에서 상태바를 끄더라도 4픽셀 높이는 기본 값으로 여전히 보여준다. 스크롤할 때 창 모서리가 깨져 보이는 버그를 보상하기 위한 것이다. 나름대로 설정해서 모서리가 깨져 보이지 않는다면 0으로 설정해도 좋다. | ||||||||||||||||||||||||||||||||||||||||
statusbar.number statusbar.text.number |
statusbar.text.1 옵션에는 기본값으로 모든 플랫폼에서 상태 막대에 보여줄 정보를 정의한다. $() 구문을 사용하여 특성 값을 이 텍스트에 사용할 수 있다. 보통 사용되는 특성은 다음과 같다: ReadOnly, EOLMode, BufferLength, NbOfLines (in buffer), SelLength (chars), SelHeight (lines). 상태 막대에 정의되는 특성을 추가하면 LineNumber, ColumnNumber, 그리고 OverType이 있다. 이 값은 상태에 따라 "OVR"이거나 아니면 "INS"이다. 파일 특성을 사용할 수도 있다. 위의 특성들과는 다르게 키가 눌릴 때마다 갱신되지는 않는다: FileName 또는 FileNameExt, FileDate과 FileTime 그리고 FileAttr이 있고 또 CurrentDate와 CurrentTime이 있다. 윈도우즈에서만 statusbar.text.2 ..로 텍스트를 더 설정할 수 있다. 그리고 이 상태는 상태 막대를 클릭할 때마다 순환된다. statusbar.number 옵션은 몇개의 텍스트가 순환되어야 하는지 정의한다. |
||||||||||||||||||||||||||||||||||||||||
use.palette 삭제
|
1로 설정하면 SciTE는 팰리트를 사용하여 8 비트 화면에 더 많은 색깔을 보여줄 수 있다. 이 옵션이 없으면 SciTE는 사용가능한 색깔만 보여준다. 보통 윈도우즈 시스템 팰리트는 20가지 색이 있다. 이 옵션을 켜면 창이 활성화될 경우 약간 번쩍거리는 단점이 있다. 언제나 팰리트를 사용하는 GTK+ 시스템에서는 아무 효과가 없다.
|
||||||||||||||||||||||||||||||||||||||||
buffered.draw |
0으로 설정하면 SciTE는 화면에 직접 그린다. 기본값인 1이면 먼저 버퍼 비트맵에 그린 다음 화면에 그린다. 버퍼 그리기는 깜박거림을 줄이지만 더 느리다.
기본값인 0 대신에 1로 설정하면 SciTE는 출력을 먼저 비트맵 버퍼에 그린 다음 화면에 출력한다. 예전 플랫폼과 좀 특이한 모드에서는 이 덕분에 깜빡거림이 감소하지만, 느려질 수 있다.이 설정은 이제 오직 윈도우즈의 GDI 그리기에만 영향을 미친다. macOS와 GTK+는 언제나 윈도우즈의 Direct2D 그리기와 똑같이 버퍼 그리기를 한다. macOS에는 아무 효과가 없다. 다른 플랫폼에서는 효과가 없을 수도 있고 테크놀로지 선택을 바꾸더라도 아무 영향을 미치지 않을 수 있다. |
||||||||||||||||||||||||||||||||||||||||
phases.draw two.phase.draw |
여러 단계로 텍스트 영역이 그려질 수 있다. 속도와 교환 관계가 있으며 다른 요소들과 중첩될 경우에도 텍스트의 모든 픽셀이 보여질 수 있도록 할 수 있다. 버퍼 그리기가 켜어 있지 않으면 더 많은 단계를 가진 플랫폼에서는 깜박거릴 가능성도 있다. 단일단계 그리기 (phases.draw=0)는 연이은 문자들을 한 스타일로 배경과 함께 그린다. 2 단계 그리기가 텍스트를 그리기에 더 좋지만 더 느린 방법이다. 단일 단계 그리기에서는 한 스타일로 문자 하나를 그릴 때마다 그의 배경색과 함께 그린다. "V_"와 같이 문자 하나가 맨 마지막에 걸리면, "V"가 "_"과 스타일이 다른 경우, 이 때문에 "V"의 오른쪽이 "_"의 배경색으로 덮여 그려진다. 그래서 보이지 않게 된다. 2 단계 그리기는 이점을 수정했다. 모든 배경을 먼저 그린다음 텍스트를 투명 모드에서 그린다. 버퍼 그리기가 켜있지 않는 한 2 단계 그리기는 단일 단계 그리기보다 더 깜박거린다. 2단계 그리기 (phases.draw=1)는 먼저 모든 배경을 그린다음 텍스트를 투명 모드에서 그려서 이 문제를 해결한다. 줄은 따로따로 그려진다. 어떤 줄도 서로 중첩이 허용되지 않는다. 그래서 문자에 덧붙은 상단부와 하단부와 같이 서로 중첩되는 픽셀들은 잘려 나간다. 다단계 그리기 (phases.draw=2)는 전체 영역을 각각의 특징에 맞게 한 번씩 여러 번 그리면서, 한겹씩 모습을 만들어 올라간다. 모든 줄에 대하여 색상을 입힌 배경은 텍스트보다 먼저 그려지고 다음 이 위에 투명 모드로 모든 텍스트가 그려지기 때문에 텍스트가 줄 경계에서 잘리지 않는다. 이 모드에서 중첩되는 상단부와 하단부는 인접한 줄들로 넘쳐 흘러 그려진다. 이 모드는 buffered.draw와 호환되지 않는다. 그래서 bufferd.draw=1이면 phases.draw=1로 취급해야 한다. 그리기 기본값은 2 단계 그리기이다. two.phase.draw 특성은 다단계 그리기가 추가되기 이전에 사용되었다. 이제 phases.draw로 교체해야 한다. |
||||||||||||||||||||||||||||||||||||||||
technology | 윈도우즈 비스타 이상에서 이 값을 1이나 2 또는 3으로 설정할 수 있다. Direct2D와 DirectWrite API를 사용하므로 더 고품질의 안티앨리어싱 그리기를 한다. 0이라면 기존의 GDI를 사용한다. 기본값은 1이다. 값이 2이면 보여준 다음 프레임이 유지되므로 몇몇 카드와 드라이버에서 그리기에 실패할 가능성을 막아 준다. 값 3도 그리기 실패를 막아주지만, 속도가 더 느리다. | ||||||||||||||||||||||||||||||||||||||||
load.on.activate save.on.deactivate |
load.on.activate 특성이 켜져 있으면 SciTE는 활성화될 때마다 현재 파일이 다른 프로세스에 의하여 갱신되었는지 점검한다. WYSIWYG HTML 편집기 같이 다른 편집기가 SciTE와 함께 사용되고 있을 경우에 유용하다. save.on.deactivate 특성은SciTE 어플리케이션이 초점을 잃을 때마다 파일이 저장된다. 웹 페이지를 개발할 때 브라우저에서 그 페이지의 모습을 확인하고 싶을 때 유용하다. |
||||||||||||||||||||||||||||||||||||||||
are.you.sure.on.reload | 이 옵션과 load.on.activate 옵션이 모두 1로 설정되어 있으면, SciTE는 수정된 파일을 정말 재적재하고 싶은지 물어서 파일을 그대로 유지할 기회를 준다. 기본값으로 이 특성은 비활성화되어 있고, SciTE는 물어보지 않고 파일을 재적재한다. | ||||||||||||||||||||||||||||||||||||||||
save.on.timer | save.on.timer 특성을 설정하면 SciTE는 지정된 초 개수 만큼의 시간 동안 아무 변경이 없더라도 편집중인 파일을 저장한다. 0이 기본값이고, 그러면 파일은 자동으로 저장되지 않는다 | ||||||||||||||||||||||||||||||||||||||||
reload.preserves.undo | 1로 설정되면, 파일을 재적재할 때 언두 히스토리가 지워지지 않는다. 필터 명령어와 함께 load.on.activate 옵션이 사용될 경우 유용하다. | ||||||||||||||||||||||||||||||||||||||||
check.if.already.open | 이 옵션은 새로운 실체를 열지 않고 기존의 SciTE 실체에 파일을 연다. 이 옵션이 설정되어 있고 SciTE가 시작하면, 이미 다른 SciTE 실체들이 열려 있는지 확인한다. 다른 실체가 열려 있다면, 그 실체가 그 파일을 열고 활성화된다. 그리고 새 실체는 종료한다. 윈도우즈에서는 옵션 | 여기에 파일 열기 메뉴 항목이 체크되어 있는 실체가 파일을 연다. GTK+에서는 임의의 실체가 파일을 연다. | ||||||||||||||||||||||||||||||||||||||||
read.only | 이 옵션이 설정되어 있으면 문서가 처음에 읽기 전용으로 열린다. 새 파일 명령은 이 설정에 영향을 받지 않는다. | ||||||||||||||||||||||||||||||||||||||||
read.only.indicator | 이 옵션이 설정되어 있으면, 버퍼가 읽기 전용일 경우, 버퍼 메뉴와 탭 바에 있는 파일 이름 옆에 "파이프"-문자 (|)를 추가해 보여준다. | ||||||||||||||||||||||||||||||||||||||||
background.open.size background.save.size |
이 설정은 파일을 읽고 쓰는 동안 사용자 인터페이스를 방해하지 않고 입출력이 이루어질지 제어한다. 바이트 단위로 주어진 크기보다 더 큰 파일은 배경에서 읽고 쓰기가 되며 이 보다 작은 파일은 직접 읽고 쓰기되므로 SciTE는 파일 접근이 완료되기 전까지 응답하지 못한다. 기본값은 -1이며 모든 파일에 대하여 배경 처리를 한다. 저장하기 위하여, 사용되는 크기는 바이트 단위로 메모리 크기이다. UTF-16 인코딩이 사용되면 디스크 크기와 다르다. | ||||||||||||||||||||||||||||||||||||||||
file.size.large | 이 설정은 '대용량 모드(large mode)'라고 부르는 2 기가바이트를 넘는 파일을 작업 모드로 열지 말지 결정한다. 주어진 바이트 크기를 파일이 초과하면 대용량 모드로 열린다. 이 설정이 없으면 SciTE는 메모리를 덜 사용하겠지만 파일을 열 때나 편집할 때 2기가 바이트를 넘어가면 문제를 일으킬 것이다. | ||||||||||||||||||||||||||||||||||||||||
file.size.no.styles |
대단히 큰 파일은 스타일을 완전히 처리하려면 시간이 많이 걸린다. 이 때문에 편집이 너무 느릴 수 있다. 주어진 바이트 크기보다 파일이 더 크면 스타일 처리를 하지 않고 열린다. 열릴 때의 파일 크기만 고려 대상이다 - 편집 중에 파일 크기가 변하면 스타일링 처리를 끄거나 켠다.
기본 값은 1000000이므로 파일이 1,000,000 바이트를 초과하면 스타일링 처리 없이 열린다.
대용량 코드는 64비트 SciTE에서만 작동한다. scintilla.org에서는 32-비트 빌드만 내려받을 수 있다. |
||||||||||||||||||||||||||||||||||||||||
temp.files.sync.load |
윈도우즈에서 SciTE에 떨어뜨린 파일들은 보통 비동기적으로 열린다. 목록이 길 수 있기 때문이다. 그렇지만, 7-Zip과 같은 프로그램에서 끌어온 파일은 오직 한 순간 동안만 임시 디렉토리에 존재하며 떨구기가 일어나는 순간 삭제되어 버릴 수 있다. 1로 설정하면 SciTE는 직접 임시 디렉토리에 떨구어진 파일을 연다. |
||||||||||||||||||||||||||||||||||||||||
quit.on.close.last | 이 옵션이 설정되어 있으면, SciTE는 파일/닫기로 마지막 버퍼가 닫힐 때 함께 닫힌다 (기본으로, 이 옵션이 설정되어 있지 않으면 마지막 버퍼가 닫혀도 SciTE는 여전히 열린채로 있으며 새로 빈 문서를 만들어 낸다.) | ||||||||||||||||||||||||||||||||||||||||
highlight.current.word | 1로 설정하면, 선택된 단어가 모두 highlight.current.word.colour에 정의된 색깔로 강조된다 . 기본값은 비활성 상태이다. (참조 indicators.alpha 그리고 indicators.under) | ||||||||||||||||||||||||||||||||||||||||
highlight.current.word.indicator |
설정하면, 현재 단어의 강조색의 모습을 정의한다.
이것은 여러개의 속성을 가진 구조화된 특성(structured property)으로서 다음과 같은 모습이다:
highlight.current.word.indicator=
style:roundbox,colour:#0080FF,under,outlinealpha:140,fillalpha:80 |
||||||||||||||||||||||||||||||||||||||||
highlight.current.word.colour |
highlight.current.word.colour 옵션에는 강조색을 정의한다. 기본 값은 #A0A000이다. 이 값보다 highlight.current.word.indicator가 우선한다. |
||||||||||||||||||||||||||||||||||||||||
highlight.current.word.by.style | highlight.current.word.by.style 옵션이 설정되면, 스타일이 같은 단어들만 색깔 강조된다 (예, 이 단어를 주석에서 선택하면, 주석에 나타나는 단어들만 선택된다). | ||||||||||||||||||||||||||||||||||||||||
spell.ignore.filepattern |
특정 파일패턴에서 철자 실수로 취급하면 안되는 단어 목록을 지정한다.
예를 들어, HTML에서 태그 이름이 단어가 아닌 경우가 많다. 그래서 다음과 같이 철자 강조를 끄는 것이 좋다:
spell.ignore.*.html=br ul toc valign blockquote kbd thead tr th tbody colspan
한 파일패턴에 대하여 철자 점검을 완전히 끄려면 * 값을 사용하자.
|
||||||||||||||||||||||||||||||||||||||||
spell.mistake.indicator |
설정하면, 철자 실수의 모습을 정의한다.
이것은 여러 개의 속성을 가진 구조적 특성(structured property)으로서 다음과 같은 모습이다:
spell.mistake.indicator=style:squigglepixmap,colour:#FF0000
|
||||||||||||||||||||||||||||||||||||||||
rectangular.selection.modifier |
GTK+에서 사각 선택을 하는데 사용되는 수식 키는 이 특성으로 설정할 수 있다. 유효한 옵션은 2 (Ctrl), 4 (Alt) 또는 8 (Super)이다. Super는 종종 윈도우즈 키보드에서 윈도우즈/시작 키에 할당되고 맥 키보드에서는 Command 키에 할당된다.
Alt 키는 창 관리자가 창을 이동하는데 자주 사용하므로, SciTE와 조합해서 사용하지 않는 편이 좋다. Metacity(GNOME 데스크탑 관리자)에 이렇게 할 수 있다. gconf-편집기를 이용하여 /apps/metacity/general/mouse_button_modifier를 수정하면 된다. 여기에서 유효한 값은 <Super>이다. |
||||||||||||||||||||||||||||||||||||||||
selection.fore selection.back selection.alpha |
선택된 텍스트를 보여주는데 사용되는 색깔을 설정한다. 이 중에 하나가 설정되어 있지 않으면 선택에 대하여 그 속성값은 변경되지 않는다. 기본값은 배경색을 밝은 회색으로 바꾸어서 선택을 보여주는 것이다. 전경색은 선택되지 않았을 때와 같이 그대로 둔다. 선택의 투명도는 selection.alpha로 설정한다. 알파가 256이면 투명도가 꺼진다. | ||||||||||||||||||||||||||||||||||||||||
caret.fore caret.additional.fore |
메인 캐럿과 추가 캐럿에 사용되는 색깔을 설정한다. | ||||||||||||||||||||||||||||||||||||||||
selection.additional.fore selection.additional.back selection.additional.alpha |
selection.fore, selection.back, selection.alpha와 비슷하다. 다중 선택과 사각 선택이 활성화 되어 있을 때 추가로 선택한 것을 보여주는데 사용될 색깔을 설정한다. | ||||||||||||||||||||||||||||||||||||||||
caret.additional.blinks | 모든 캐럿이 깜박일지 설정한다. 0은 오직 메인 캐럿만 깜박인다는 뜻이다. 기본값은 1이다. | ||||||||||||||||||||||||||||||||||||||||
selection.secondary.fore selection.secondary.back |
selection.fore 그리고 selection.back와 비슷하다. 또다른 창이 프라이머리 선택을 가지고 있을 경우에 선택을 보여주는데 사용할 색을 설정한다. | ||||||||||||||||||||||||||||||||||||||||
selection.inactive.fore selection.inactive.back |
selection.fore 그리고 selection.back과 비슷하다. 초점이 없기 때문에 창이 비활성화될 때 선택을 보여주는데 사용되는 색을 설정한다. | ||||||||||||||||||||||||||||||||||||||||
selection.always.visible | 1로 설정하면 선택을 색깔로 보여준다. SciTE가 활성화되어 있지 않더라도 항상 보여준다. 기본값은 0이다. | ||||||||||||||||||||||||||||||||||||||||
caret.line.back caret.line.back.alpha |
캐럿이 포함된 줄에 사용되는 배경색과 투명도를 설정한다. 투명도의 범위는 완전히 투명한 0에서부터 완전히 불투명한 255까지이다. 256이면 투명 그리기 코드를 사용하지 않으므로 더 빠르다. | ||||||||||||||||||||||||||||||||||||||||
caret.period | 캐럿이 깜박이는 비율을 설정한다. 값은 1000분의 1초 단위로 캐럿이 보이는 시간을 설정한다. 다시 나타나기 전까지 같은 시간 동안 보이지 않는다. 값이 0이면 캐럿이 깜박이지 않는다. | ||||||||||||||||||||||||||||||||||||||||
caret.style | 캐럿 스타일을 설정한다. 가능한 값은 SCI_SETCARETSTYLE을 참조. | ||||||||||||||||||||||||||||||||||||||||
caret.width | 캐럿의 너비를 픽셀 단위로 설정한다. 값은 1, 2, 또는 3만 작동한다. | ||||||||||||||||||||||||||||||||||||||||
selection.rectangular.switch.mouse | 마우스로 선택하는 동안 사각 선택 모드로 전환할지(1) 말지(0) 설정한다. 기본값은 0이다. | ||||||||||||||||||||||||||||||||||||||||
selection.multiple selection.additional.typing selection.multipaste |
콘트롤 키를 누르면서 마우스로 여러 구간을 선택하려면 selection.multiple을 설정한다. selection.additional.typing이 1이면 사각 선택 구역의 각 줄을 포함하여 타자, 백스페이스 그리고 삭제가 모든 선택에 영향을 미친다. 0으로 설정되면, 타자는 메인 선택에만 영향을 미친다. selection.multipaste를 1로 설정하면 모든 선택마다 붙여 넣는다. 0으로 설정하면 마지막 선택에만 붙여 넣기 된다. |
||||||||||||||||||||||||||||||||||||||||
virtual.space | 캐럿이 가상 공간으로 이동할지 결정한다. 다시 말해, 줄끝 문자를 넘어서 이동할 수 있다. 1로 설정하면 사각 구역을 선택할 때 가상 공간을 허용한다. 2이면 화살표 키나 마우스 클릭으로 캐럿을 가상 공간으로 이동시킬 수 있고, 3이면 둘 다 허용한다. 4이면 왼쪽 화살표키를 막아 줄넘기기 모드에서 이전 줄로 이동하지 못하게 한다. | ||||||||||||||||||||||||||||||||||||||||
caret.policy.xslop caret.policy.width caret.policy.xstrict caret.policy.xeven caret.policy.xjumps caret.policy.yslop caret.policy.lines caret.policy.ystrict caret.policy.yeven caret.policy.yjumps |
slop이 설정되어 있으면, slop 값을 정의할 수 있다: xslop에 너비를, yslop에 줄을 정의할 수 있다.
strict가 설정되어 있다면, 그 정책이...엄격하게 강제된다.
jumps가 설정되어 있으면, 화면은 좀 더 강력하게 움직인다. 그래서 캐럿은 정책이 다시 적용되기 전에 같은 방향으로 더 멀리 이동할 수 있다.
even이 설정되어 있지 않으면, 대칭적인 UZ를 사용하는 대신에, 왼쪽 UZ와 바닥쪽 UZ가 각각 오른쪽과 위쪽 UZ까지 확대된다.
아래의 테이블에서 어떻게 이 설정들이 상호작용하는지 살펴보자. |
||||||||||||||||||||||||||||||||||||||||
visible.policy.strict visible.policy.slop visible.policy.lines |
Go to 명령어 또는 Find나 Next Message와 같이 그에 상당하는 명령어를 수행한 후 화면 구역이 어떻게 보일지 결정한다. 옵션은 caret.policy.*와 비슷하다. | ||||||||||||||||||||||||||||||||||||||||
edge.mode edge.column edge.colour |
긴 줄을 나타낸다. 기본 edge.mode는 0이고, 긴 줄을 나타내지 않는다. edge.mode가 1이면 수직 라인을 사용하여 지정된 컬럼을 나타내고 edge.mode가 2이면 그 컬럼을 넘어서는 문자들이 배경색이 바뀐다. 가변비례폭 폰트는 edge.mode가 1보다 2인 것이 더 유용하다. | ||||||||||||||||||||||||||||||||||||||||
control.char.symbol | 제어 문자를 나타내는데 사용할 문자를 설정한다. 설정되어 있지 않으면, 제어 문자는 연상기호로 보여준다. | ||||||||||||||||||||||||||||||||||||||||
error.marker.fore error.marker.back |
편집판과 출력판에서 에러와 경고 줄을 나타내는데 사용되는 색깔은 이 두 값으로 설정한다. 판에 여백이 있다면 그 여백에 심볼을 보여준다. 출력판에 에러 메시지나 편집판에 에러 메시지를 야기하는 줄을 가리키는 심볼이 여백에 표시된다. error.marker.back은 그 심볼의 채우기 색깔로 사용된다. error.marker.fore는 윤곽 색깔로 사용된다. 여백이 없다면 그 줄의 배경색이 error.marker.back 색깔로 설정된다. | ||||||||||||||||||||||||||||||||||||||||
error.inline style.error.0 style.error.1 style.error.2 style.error.3 |
소스 코드 여기 저기에 흩어진 에러 메시지들을 보려면, error.inline=1으로 설정한다. 엄격도에 따라 서로 다른 시각적 스타일이 사용된다: style.error.0는 기본값이다; style.error.1는 경고에; style.error.2는 에러에; and style.error.3은 치명적 에러에 사용된다. 엄격도는 메시지에서 "warning", "error", 또는 "fatal"이라는 텍스트를 찾아 추론한다. |
||||||||||||||||||||||||||||||||||||||||
bookmark.fore bookmark.back bookmark.alpha bookmark.stroke.width |
여백에 책갈피를 표시하는데 사용되는 색깔. bookmark.fore가 설정되어 있지 않으면 파란 구가 사용된다. 여백이 꺼져 있으면, 책갈피는 그 줄의 배경색을 bookmark.alpha에 설정된 투명도로 바꾸어 보여준다. 심볼의 스트로크 너비는 bookmark.stroke.width로 한 픽셀의 백분단위로 설정할 수 있다. 고해상도 DPI 디스플레이 또는 폰트가 크면 bookmark.stroke.width를 200으로 설정해 볼 가치가 있다. | ||||||||||||||||||||||||||||||||||||||||
find.mark.indicator |
설정하면, 찾기 대화상자의 Mark All 명령어가 발견한 문자열마다 표시를 한다. 이것은 여러개의 속성을 가진 구조화된 특성으로서 다음과 같은 모습이다:
find.mark.indicator=style:roundbox,colour:#0080FF,under,outlinealpha:140,fillalpha:80
|
||||||||||||||||||||||||||||||||||||||||
find.mark |
설정하면, 찾기 대화상자의 Mark All 명령어가 발견한 문자열마다 투명한 상자를 두를 것이다. (indicators.alpha 그리고 indicators.under 참조) find.mark.indicator가 우선한다. |
||||||||||||||||||||||||||||||||||||||||
indicators.alpha | 이 특성은 표시자(indicators)에 대하여 투명도를 정의한다 (기본값은 30이다). 투명도는 범위가 0 (완전 투명)에서 255 (완전 불투명)까지 이다. 이 범위를 벗어나는 값은 무시되며 기본 값이 사용된다. | ||||||||||||||||||||||||||||||||||||||||
indicators.under | 설정되면, 표시자가 텍스트 아래에 그려진다 (기본값은 over이다). | ||||||||||||||||||||||||||||||||||||||||
error.select.line | 명령이 실행되고 에러 메시지가 나올 때, F4 키로 부합하는 소스 줄들을 찾아 보기 위해, 이 옵션은 에러가 발생한 줄을 선택한다. 에러 메시지에 에러가 일어난 컬럼도 포함되어 있으면 아주 유용하다. 선택이 에러가 일어난 그 컬럼에서 시작하기 때문이다. 에러 메시지에 그 컬럼이 있어야 SciTE가 이해한다 (현재는 HTML Tidy만 지원한다). 올바르게 컬럼을 보고하기 위해 탭 크기는 외부 도구가 가정하는 소스 파일의 탭 크기에 일치해야 한다. | ||||||||||||||||||||||||||||||||||||||||
openpath.filepattern | 파일 메뉴에서 Open Selected Filename 명령어에 대하여 경로를 정의한다. 선택된 파일이름에 절대 경로가 없거나 파일이 문서 디렉토리에서 발견되지 않으면 이 경로가 검색된다. openpath에 설정하는 디렉토리는 윈도우즈에서는 ';'로 GTK+에서는 ':'로 가른다. openpath 설정은 다음과 같은 모습이다:
openpath.*.txt=c:\dos\;f:\;
openpath.$(file.patterns.cpp)=$(cpp_includes) |
||||||||||||||||||||||||||||||||||||||||
open.suffix.filepattern | 파일 메뉴에서 선택된 파일이름 열기 명령어에 대하여 선택된 파일 이름에 추가할 접미사를 정의한다. 파일에 접근할 때 접미사가 주어지지 않는 언어에 사용된다. 파이썬을 예로 들면 "import xlib"는 대부분 "xlib.py"라고 부르는 파일에서 반입하라는 뜻이다. open.suffix 설정의 다음과 같다: open.suffix.*.py=.py
|
||||||||||||||||||||||||||||||||||||||||
strip.trailing.spaces strip.trailing.spaces.filepattern |
저장할 때 파일에서 뒤에 따르는 공간문자들을 걷어낸다. 전역 strip.trailing.spaces 특성은 지정한 파일 패턴에 부합하는 파일들에서는 덮여 씌여질 수 있다:
strip.trailing.spaces.*.yaml=0
또는 strip.trailing.spaces.$(file.patterns.yaml)=0 |
||||||||||||||||||||||||||||||||||||||||
ensure.final.line.end | 저장할 때 줄끝으로 파일이 끝나는지 확인한다. | ||||||||||||||||||||||||||||||||||||||||
ensure.consistent.line.ends | 저장할 때 모든 줄들이 현재의 줄끝 문자로 끝나는지 확인한다. | ||||||||||||||||||||||||||||||||||||||||
abbreviations.filepattern |
특정한 언어에 대하여 약어 파일을 적재한다. 기본 약어 파일을 오버라이드한다. 예를 들어,
abbreviations.*.c=$(SciteUserHome)/c_abbrev.properties
|
||||||||||||||||||||||||||||||||||||||||
api.filepattern |
특정 언어에 대한 API 파일 집합을 적재한다. API 파일이 여럿이라면 파일 이름은 ';'로 가른다. API 파일에는 줄마다 하나씩 식별자와 함수 프로토타입이 정렬되어 리스트로 들어 있다. 여러 파일이 있다면 각 파일은 줄끝 문자로 끝나고 다음 파일의 첫 줄은 앞 파일의 마지막 줄과 병합된다. "Complete Symbol" 명령어는 캐럿 앞에 있는 문자들을 찾아 보고 API 파일에서 그 문자열로 시작되는 부분 집합을 화면에 보여준다. 여는 괄호가 타자되면, 파일을 검색해서 캐럿 앞의 텍스트를 찾는다. 함수 원형이 발견되면 그것이 콜팁으로 화면에 표시된다.
예를 들어 다음 설정은
api.*.c=w.api
다음의 내용을 가지는 w.api과 함께 사용하면
fclose(FILE* fileClose)
C 파일 함수에 대하여 자동완성과 콜팁을 제공할 수 있다. API 파일에 완전한 경로를 사용하는 것이 제일 좋다. 그렇지 않으면 현재 디렉토리가 사용된다. 만드는 방법은 API 파일 만들기 섹션을 참고하자.
FILE fopen(const char* szFileName, const char* szMode) fpos_t fread(void* buf, size_t size, size_t count, FILE* file) fseek(FILE* file, long lnOffset, int nOrigin) |
||||||||||||||||||||||||||||||||||||||||
autocomplete.choose.single | 설정이 1일 경우 자동완성 목록이 요청되고 그 목록 안에 오직 원소가 하나만 있다면 그 원소가 자동으로 선택된다. 일치된 그 원소가 삽입되고 리스트는 화면에 표시되지 않는다는 뜻이다. | ||||||||||||||||||||||||||||||||||||||||
autocomplete.lexer.ignorecase autocomplete.*.ignorecase |
설정이 1이면 API 파일을 대소문자에 민감하게 검색하여 자동완성 목록의 원소들을 찾는다. 그렇지 않으면 대소문자도 일치해야 일치가 일어난다. 어휘분석기에 종속적인 설정이 없다면 * 형태가 사용된다. | ||||||||||||||||||||||||||||||||||||||||
autocomplete.lexer.start.characters autocomplete.*.start.characters |
이 설정이 비어 있지 않으면, 문자를 타자하자 마자 자동완성이 시작된다. 예를 들어, autocomplete.python.start.characters=. 이고 파이썬용 API 파일에 "string.rjust" 그리고 "string.replace"가 들어 있다면 "string."를 타자하면 자동으로 두 식별자 모두 화면에 보여진다. 어휘분석기에 종속적인 설정이 없다면 * 형태가 사용된다. | ||||||||||||||||||||||||||||||||||||||||
autocomplete.lexer.fillups autocomplete.*.fillups |
이 설정이 비어 있지 않으면, 문자를 타자하면 자동완성이 완료된다. 예를 들어 autocomplete.python.fillups=( 그리고 파이썬용 API 파일 안에 "string.replace" 문자열이 들어 있다면 "string.r("를 타자하는 순간 "string.replace("이 삽입된다. 어휘분석기에 종속적인 설정이 없다면 * 형태가 사용된다. | ||||||||||||||||||||||||||||||||||||||||
autocomplete.fore autocomplete.back autocomplete.selected.fore autocomplete.selected.back |
자동완성 리스트에 사용할 색을 지정한다. 기본값은 플랫폼과 시스템 설정에 따라 달라진다. | ||||||||||||||||||||||||||||||||||||||||
autocomplete.lexer.typesep autocomplete.*.typesep |
자동완성 선택 항목을 유형 아이콘 ID와 분리하는 문자를 설정한다. 기본값은 '?'이다. | ||||||||||||||||||||||||||||||||||||||||
autocompleteword.automatic | 이 설정이 1이면 단어를 타자할 때, 문서에서 오직 한 단어만 그 문자열로 시작한다면 그 단어만 가지고 자동완성 목록이 화면에 나타난다. 그래서 탭을 눌러 선택할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
calltip.lexer.ignorecase calltip.*.ignorecase |
1로 설정하면 API 파일을 대소문자에 민감하게 검색하여 그 함수를 찾아서 그의 시그너처를 콜팁으로 화면에 보여준다. 어휘분석기에 종속적인 설정이 없다면 * 형태가 사용된다. | ||||||||||||||||||||||||||||||||||||||||
calltip.lexer.use.escapes calltip.*.use.escapes |
1로 설정하면 API 파일에 C 스타일 역사선 피신문자를 담을 수 있다. 피신문자는 명령어 줄 인자 섹션에 나열되어 있다. 특정한 어휘분석기가 없다면* 형태가 사용된다. setting. | ||||||||||||||||||||||||||||||||||||||||
calltip.lexer.word.characters calltip.*.word.characters |
식별자를 결정하여 콜팁을 찾기위해, 이 집합에 있는 문자들을 식별자에 포함시켜 검색한다. word.characters에 대해서도 같은 설정이 사용될 수 있다. 종종 추가 문자를 허용하기도 한다. 예를 들어, 파이썬에서 텍스트를 선택할 때'.'는 보통 단어의 일부라고 간주되지 않는다. 그러나 "string.replace"가 콜팁을 보여주도록 허용하는 것이 좋다. 그래서 calltip.python.word.characters=._$(chars.alpha)이 합리적인 설정이다. 어휘분석기에 종속적인 설정이 없다면 * 형태가 사용된다. | ||||||||||||||||||||||||||||||||||||||||
calltip.lexer.parameters.start calltip.lexer.parameters.end calltip.lexer.parameters.separators calltip.*.parameters.start calltip.*.parameters.end calltip.*.parameters.separators |
매개변수의 시작과 끝 그리고 가름자를 위한 문자들을 지정할 수 있다. 대부분의 언어에 대하여, 보통 시작은 여는 괄호이고 끝은 닫는 괄호이며 가름자는 쌍반점이다. 예를 들어, CSS는 시작에 쌍점, 가름자에 공백, 끝에는 아무것도 사용하지 않는다. 각 특성에 더 많은 문자를 지정할 수 있다. 어휘분석기에 종속적인 설정이 없다면 * 형태가 사용된다. | ||||||||||||||||||||||||||||||||||||||||
calltip.lexer.end.definition calltip.*.end.definition |
API 파일은 함수 정의 다음에 설명 텍스트가 포함될 수 있다. 보조 줄에 설명을 보여주려면, 이 특성을 정의 부분의 마지막에 사용되는 문자로 설정하면 된다. 대부분의 언어에서 이것은 ')'이다. 어휘분석기에 종속적인 설정이 없다면 * 형태가 사용된다. | ||||||||||||||||||||||||||||||||||||||||
xml.auto.close.tags | XML과 HTML에 대하여, 이 특성을 1로 설정하면 시작 태그를 끝내기 위해 '>'를 타자하는 순간 그에 상응하는 끝 태그가 자동으로 삽입된다. "<td>"를 타자하면 그 결과로 "<td></td>"이 되고 캐럿은 태그 사이에 위치한다. | ||||||||||||||||||||||||||||||||||||||||
asp.default.language | ASP 코드의 스크립트는 처음에 JavaScript일 것이라고 가정한다. 이를 VBScript로 바꾸려면 asp.default.language로 2로 설정한다. 파이썬이면 3으로 설정한다. | ||||||||||||||||||||||||||||||||||||||||
fold.abl.comment.multiline | 이 특성을 1로 설정하면 fold.comment=1일 때 여러 줄 주석을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.abl.syntax.based | 이 특성이 1이면 구문 기반으로 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.asm.comment.explicit | 이 옵션은 Asm 어휘분석기를 사용할 때 명시적인 접기 점들을 접을 수 있게 해준다. 명시적인 접기점에 또 추가로 접을 수 있는데 접을 구역의 시작에 ;{ 주석을 그리고 끝에 ;}를 배치하면 된다. | ||||||||||||||||||||||||||||||||||||||||
fold.asm.comment.multiline | 이 특성을 1로 설정하면 여러-줄 주석을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.asm.explicit.anywhere | 이 특성이 1이면 명시적인 접기점들을 단지 인라인 주석 안에서만이 아니라, 어느 곳에서든지 접을 수있다. | ||||||||||||||||||||||||||||||||||||||||
fold.asm.explicit.end | 명시적인 접기 점의 끝을 나타내는 데 사용할 문자열, 표준인 ;}를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.asm.explicit.start | 명시적인 접기 점의 시작을 나타내는데 사용할 문자열, 표준인 ;{를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.asm.syntax.based | 이 특성을 0으로 하면 구문 기반의 접기가 비활성화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.at.else | 이 옵션으로 if 서술문의 "} else {" 줄에서 C++ 접기가 가능하다. | ||||||||||||||||||||||||||||||||||||||||
fold.baan.keywords.based | 이 특성이 1이면 키워드 기반의 접기가 활성화된다. 각각 다음의 키워드에 기반하여 접는다: for, if, on (case), repeat, select, while and fold ends based on endfor, endif, endcase, until, endselect, endwhile. | ||||||||||||||||||||||||||||||||||||||||
fold.baan.syntax.based | 이 특성이 1이면 구문 기반으로 접는다. 즉 '{' & '('에 기반하여 접는다. | ||||||||||||||||||||||||||||||||||||||||
fold.basic.comment.explicit | 이 옵션은 Basic 어휘분석기를 사용할 때 명시적인 접기 점들을 접을 수 있게 해 준다. 명시적인 접기점에 다 또 접을 수 있는데 접을 구역의 처음에 ;{ (BB/PB)이나 '{ (FB) 주석을 그리고 끝에다 ;} (BB/PB)나 '} (FB)를 두면 된다. | ||||||||||||||||||||||||||||||||||||||||
fold.basic.explicit.anywhere | 이 특성이 1이면 명시적인 접기 점들을 인라인 주석만이 아니라, 어느 곳에서든지 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.basic.explicit.end | 명시적인 접기 점의 끝에 사용할 문자열, 표준인 ;} (BB/PB)이나 '} (FB)를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.basic.explicit.start | 명시적인 접기 점의 시작에 사용할 문자열, 표준인 ;{ (BB/PB)이나 '{ (FB)를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.basic.syntax.based | 이 특성이 0이면 구문 기반의 접기가 비활성화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.cil.comment.multiline | 0으로 설정하면 fold.comment=1인 경우 여러줄 주석을 접지 않는다. | ||||||||||||||||||||||||||||||||||||||||
fold.comment | 이 옵션은 C++ 어휘분석기를 사용할 때 명시적인 접기 점과 여러-줄 주석을 접는다. 명시적인 접기 점은 추가로 접을 수 있다. 접을 구역의 시작에 //{를 끝에 //}를 추가하면 명시적으로 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.comment.python | 이 옵션은 파이썬 어휘분석기를 사용할 때 여러-줄 주석을 접는다. | ||||||||||||||||||||||||||||||||||||||||
fold.cpp.comment.explicit | fold.comment=1 일때 이 특성을 0으로 설정하면 명시적인 접기점을 접지 않는다. | ||||||||||||||||||||||||||||||||||||||||
fold.cpp.comment.multiline | 이 특성이 0이면 fold.comment=1일 때 여러-줄 주석 접기가 비활성화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.cpp.explicit.anywhere | 이 특성이 1이면 명시적인 접기 점이 인라인 주석만 아니라, 어느 곳이든 가능하다. | ||||||||||||||||||||||||||||||||||||||||
fold.cpp.explicit.end | 명시적인 접기 점의 끝을 나타내는데 사용할 문자열, 표준인 //}를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.cpp.explicit.start | 명시적인 접기 점의 시작을 가리키는 문자열, 표준인 //{를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.cpp.preprocessor.at.else | 전처리기에서 #if statement 서술문의 #else 또는 #endif 줄을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.cpp.syntax.based | 이 특성이 0이면 구문 기반의 접기가 불가능하다. | ||||||||||||||||||||||||||||||||||||||||
fold.d.comment.explicit | 이 특성이 0이면 fold.comment=1일 때 명시적인 접기 점들을 접을 수 없다. | ||||||||||||||||||||||||||||||||||||||||
fold.d.comment.multiline | 이 특성이 0이면 fold.comment=1일 때 여러-줄 주석을 접을 수 없다. | ||||||||||||||||||||||||||||||||||||||||
fold.d.explicit.anywhere | 이 특성이 1이면 명시적인 접기점이 인라인 주석 뿐만 아니라, 어느 곳이든 가능하다. | ||||||||||||||||||||||||||||||||||||||||
fold.d.explicit.end | 명시적인 접기 점의 끝을 위한 문자열, 표준인 //}를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.d.explicit.start | 명시적인 접기 점의 시작을 나타내는 문자열, 표준인 //{를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.d.syntax.based | 이 특성이 0이면 구문 기반의 접기가 비활성화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.dataflex.compilerlist | 1로 설정하면 *.prn 파일에서 코드 접기가 활성화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.gdscript.quotes | GDScript 렉서를 사용할 때 인용부호로 둘러 싼 여러-줄 문자열을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.haskell.imports | 1로 설정하면 import 선언을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.html | 이 옵션으로 HTML과 XML 파일에 대하여 접기를 활성화한다. 반드시 접기 옵션이 켜 있어야 접기가 일어난다. | ||||||||||||||||||||||||||||||||||||||||
fold.html.preprocessor | 이 옵션으로 HTML 파일에 내장된 스크립트에 대하여 접기를 활성화한다. 기본값은 켜져 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.hypertext.comment | HTML에 내장된 스크립트의 주석에 대하여 접기를 활성화한다. 기본값은 꺼져 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.hypertext.heredoc | HTML에 내장된 스크립트의 heredocs를 접는다. 기본값은 off이다. | ||||||||||||||||||||||||||||||||||||||||
fold.julia.docstring | 보통 함수나 유형을 문서화하는데 사용되는 여러 개의 삼중-겹따옴표 문자열을 접는다. | ||||||||||||||||||||||||||||||||||||||||
fold.julia.syntax.based | 0으로 설정하면 구문 기반의 접기를 비활성화한다. | ||||||||||||||||||||||||||||||||||||||||
fold.perl.at.else | 이 옵션은 Perl에서 if 서술문의 "} else {" 줄을 접을 수 있게 해준다. | ||||||||||||||||||||||||||||||||||||||||
fold.perl.comment.explicit | 0으로 설정하면 명시적인 접기가 비활성화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.perl.package | 펄 어휘분석기를 사용할 때 패키기를 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.perl.pod | 펄 어휘분석기를 사용할 때 포드 블럭을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.preprocessor | C++ 구문 분석기를 사용할 때 전처리기 지시어들을 접을 수 있다. 여기에는 C#'의 명시적인 #region 그리고 #endregion 접기 지시어들이 포함된다. | ||||||||||||||||||||||||||||||||||||||||
fold.quotes.python | 파이썬 어휘분석기를 사용할 때 여러-줄 인용부호 문자열을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.rust.comment.explicit | 이 특성이 0이면 fold.comment=1일 때 명시적인 접기 지점들을 접을 수 없다 | ||||||||||||||||||||||||||||||||||||||||
fold.rust.comment.multiline | 이 특성이 0이면 fold.comment=1일 때 여러-줄 주석을 접을 수 없다. | ||||||||||||||||||||||||||||||||||||||||
fold.rust.explicit.anywhere | 이 특성이 1이면 줄 주석은 물론이고, 어느 곳이든 명시적인 접기 점들을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.rust.explicit.end | 명시적인 접기 끝 지점에 사용할 문자열, 표준인 //}을 교체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.rust.explicit.start | 명시적인 접기 시작 점들에 사용할 문자열, 표준인 //{을 대체한다. | ||||||||||||||||||||||||||||||||||||||||
fold.rust.syntax.based | 이 특성이 0이면 구문 기반의 접기가 불능화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.sql.exists 삭제
|
"DROP TABLE IF EXISTS"에서 "IF"로 시작하듯이 "EXISTS"로 접기를 끝낸다.
|
||||||||||||||||||||||||||||||||||||||||
fold.sql.at.else | 이 옵션을 설정하면 IF 서술문 다음 "ELSE"와 "ELSIF" 줄에서 SQL 접기를 할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
html.tags.case.sensitive | XML과 HTML에 대하여, 이 특성을 1로 설정하면 태그가 대소문자를 구별해 일치한다. 이 행위는 XML과 XHTML에서 예상하는 행위이다. | ||||||||||||||||||||||||||||||||||||||||
lexer.as.comment.character | 기본 주석 문자를 오버라이드한다 (';' 또는 '#'). | ||||||||||||||||||||||||||||||||||||||||
lexer.asm.comment.delimiter | COMMENT 지시어의 구분자로 사용될 문자열, 표준인 "~"를 대체한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.allow.dollars | 0으로 설정하면 cpp 어휘분석기에서 식별자에 '$' 문자를 허용하지 않는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.baan.styling.within.preprocessor | Baan 코드에 대하여, 모든 전처리기 코드를 전처리기 스타일로 (기본값인 0으로) 처리할지 아니면 처음의 #부터 명령어의 끝까지만 처리할지 결정한다(1). | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.backquoted.strings | 1로 설정하면 역따옴표 날 문자열을 강조한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.escape.sequence | 1로 설정하면 문자열에서 피신 연속열을 강조한다 | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.hashquoted.strings | 1로 설정하면 해시-인용부호(hash-quoted) 처리된 문자열을 강조할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.track.preprocessor | 1로 설정하면 #if/#else/#endif를 비활성화된 회색 코드로 처리한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.triplequoted.strings | 1로 설정하면 세겹-따옴표(triple-quoted) 문자열을 강조할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.update.preprocessor | 1로 설정하면 #define이 발견될 경우 전처리기 정의를 갱신한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.cpp.verbatim.strings.allow.escapes | 1로 설정하면 날 문자열에 피신 연속열을 담을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.css.hss.language | Set to 1 for HSS (.hss) | ||||||||||||||||||||||||||||||||||||||||
lexer.css.less.language | Set to 1 for Less CSS (.less) | ||||||||||||||||||||||||||||||||||||||||
lexer.css.scss.language | Set to 1 for Sassy CSS (.scss) | ||||||||||||||||||||||||||||||||||||||||
lexer.d.fold.at.else | 이 옵션은 D에서 if 서술문의 "} else {" 줄을 접는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.edifact.highlight.un.all | 0으로 설정하면 UNA 구역만 강조한다. 1이면 모든 UNx 구역을 강조한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.errorlist.escape.sequences | 1로 설정하면 피신 연속열을 통역해준다. | ||||||||||||||||||||||||||||||||||||||||
lexer.errorlist.value.separate | 출력판에서 GCC-스타일의 진단이나 파일에서 찾기에 일치한 줄들에 대하여, 그 경로와 줄 번호를 나머지 줄과 다르게 21번 스타일로 처리한다. 이렇게 하면 부합된 텍스트의 위치가 보다 쉽게 구별된다. | ||||||||||||||||||||||||||||||||||||||||
lexer.flagship.styling.within.preprocessor | 하버(Harbour-Clipper의 오픈소스 버전, C Compiler를 사용하는 메타 컴파일러) 코드에 대하여, 모든 전처리기 코드를 전처리기 스타일(0)로 처리할지 아니면 최초 #에서부터 그 명령어 단어의 끝까지만 처리할지를 결정한다 (기본값은 1이다). 또 텍스트와 덤프 그리고 비활성화된 코드를 보여주는 법도 결정한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.gdscript.keywords2.no.sub.identifiers | 활성화되어 있으면 보조-인식자로 사용되는. keywords2 항목을 스타일처리 하지 않는다. 예제: 설정되어 있으면 "open"이 keywords2 항목일 경우 "foo.open"을 강조하지 않는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.gdscript.literals.binary | 0이면 이진 팔진 상수들을 인식하지 않는다: 0b1011 0o712. | ||||||||||||||||||||||||||||||||||||||||
lexer.gdscript.strings.over.newline | 1로 설정하면 문자열을 새줄 문자를 넣어 늘릴 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.gdscript.unicode.identifiers | 0으로 설정하면 유니코드를 식별자로 인식하지 않는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.gdscript.whinge.level | GDScript 코드에 대하여, 들여쓰기에 일관성이 있는지 점검한다. 기본 값으로 0은 들여쓰기 점검을 끈다. 1이면 각 줄마다 잠재적으로 윗줄과 일관성이 있는지 점검하고, 2이면 들여쓰기에 탭문자 앞에 공백문자가 있는지 점검한다, 3이면 들여쓰기에 공백이 있는지 점검한다. 4이면 들여쓰기에 탭문자가 있는지 검검한다. 1 정도면 사용하기에 좋은 수준이다. | +||||||||||||||||||||||||||||||||||||||||
lexer.haskell.allow.hash | 0이면 하스켈 어휘분석기에서 식별자와 기호상수의 끝에 '#' 문자를 허용하지 않는다 (GHC -XMagicHash extension) | ||||||||||||||||||||||||||||||||||||||||
lexer.haskell.allow.questionmark | 1이면 하스켈 어휘분석기에서 식별자와 기호상수의 끝에 '?' 문자를 허용한다 (GHC & Hugs -XImplicitParams extension) | ||||||||||||||||||||||||||||||||||||||||
lexer.haskell.allow.quotes | 0이면 Template Haskell 이름 인용 그리고 재촉 구성자(promoted constructors)를 강조하지 않는다 (GHC -XTemplateHaskell and -XDataKinds extensions) | ||||||||||||||||||||||||||||||||||||||||
lexer.haskell.cpp | 0이면 C-전처리기를 강조하지 않는다 (-XCPP extension) | ||||||||||||||||||||||||||||||||||||||||
lexer.haskell.import.safe | 0이면 반입문(imports)에 "safe" 키워드를 허용하지 않는다 (GHC -XSafe, -XTrustworthy, -XUnsafe extensions) | ||||||||||||||||||||||||||||||||||||||||
lexer.html.django | 1이면 django 템플리트 언어를 사용할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.html.mako | 1이면 mako 템플릿 언어를 사용할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.julia.highlight.lexerror | 구문 에러를 문자 정의나 숫자 정의로 강조한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.julia.highlight.typeannotation | :: 뒤의 유형을 유형 주석으로 강조한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.markdown.header.eolfill | 1로 설정하면 ATX 헤더 텍스트를 모두 강조한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.nim.raw.strings.highlight.ident | 1로 설정하면 범용 날 문자열 식별자를 강조하다. 범용 날 문자열 식별자에 r (또는 R)은 제외된다. | ||||||||||||||||||||||||||||||||||||||||
lexer.props.allow.initial.spaces | 특성 파일에 대하여, 0으로 설정하면 공백으로 시작하는 모든 줄을 기본 스타일로 처리한다. 이 방법은 흐름제어에 들여쓰기를 사용하지만 RFC2822 텍스트에 사용할 수 있는 SciTE .properties 파일에 맞지 않는다. RFC2822 텍스트는 줄을 연속하는데 들여쓰기를 이용한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.decorator.attributes | 1로 설정하면 파이썬 장식자를 인지한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.identifier.attributes | 1로 설정하면 파이썬 식별자를 인식한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.keywords2.no.sub.identifiers | 설정하면 keywords2 항목을 스타일 처리하지 않는다. 파이썬에서 하위-식별자로 사용되기 때문이다. 예를 들어: "open"이 keywords2 항목일 경우 "foo.open"을 강조처리 하지 않는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.literals.binary | 0으로 설정하면 파이썬 3 이진 기호상수와 8진 기호상수를 인식하지 않는다: 0b1011 0o712. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.strings.b | 0으로 설정하면 파이썬 3 바이트 기호상수 b"x"를 인식하지 않는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.strings.f | 0으로 설정하면 파이썬 3.6 f-문자열 기호상수를 인식하지 않는다: f"var={var}". | ||||||||||||||||||||||||||||||||||||||||
lexer.python.strings.over.newline | 1로 설정하면 문자열이 새줄 문자를 사이에 두고 늘어날 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.strings.u | 0으로 설정하면 파이썬 3 이전에 사용되던 유니코드 기호상수 u"x"를 인식하지 않는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.python.unicode.identifiers | 0으로 설정하면 파이썬 3 유니코드 식별자를 인식하지 않는다. | ||||||||||||||||||||||||||||||||||||||||
lexer.r.escape.sequence | 1로 설정하면 문자열에서 피신 문자열이 강조된다. | ||||||||||||||||||||||||||||||||||||||||
lexer.rust.fold.at.else | 이 옵션은 Rust 언어의 if 서술문에서 "} else {" 줄의 접기를 활성화한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.sql.allow.dotted.word | 설정이 1이면 인지한 단어들에 점점이 색깔을 입힌다 (Oracle PL/SQL 객체에 권장). | ||||||||||||||||||||||||||||||||||||||||
lexer.sql.numbersign.comment | 0으로 설정하면 '#'로 시작하는 줄은 주석이 아니다. | ||||||||||||||||||||||||||||||||||||||||
lexer.vb.strings.multiline | 1로 설명하면 문자열을 줄넘김할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.vb.strings.multiline | 1로 설정하여 문자열을 줄 끝을 넘겨 지속할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.verilog.allupperkeywords | 1로 설정하면 모두 대문자인 식별자들을 문서화 키워드처럼 스타일 처리할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.verilog.fold.preprocessor.else | 이 옵션으로 `else 와 `elsif 전처리 지시자들을 접을 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.verilog.portstyling | 1로 설정하면 표준 키워드와 다르게 입력과 출력 그리고 입출력 포트를 스타일 처리할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.verilog.track.preprocessor | 1로 설정하면 `if/`else/`endif를 해석해서 활성화되지 않은 코드를 회색처리할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.verilog.update.preprocessor | 1로 설정하면 `define이나 `undef, 또는 `undefineall이 발경될 때 전처리 정의를 갱신할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
lexer.visualprolog.backquoted.strings | 1로 설정하면 활성화되어 역따옴표 (``)를 사용하여 문자열을 구분한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.visualprolog.verbatim.strings | 0으로 설정하면 강조가 비활성화되어 사실상 '@'를 사용하여 문자열과 같다. | ||||||||||||||||||||||||||||||||||||||||
lexer.xml.allow.scripts | 0이면 XML에서 스크립트를 사용할 수 없다. | ||||||||||||||||||||||||||||||||||||||||
sql.backslash.escapes | SQL에서 역사선을 피신 문자로 사용할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
styling.within.preprocessor | C++ 코드에 대하여, 전처리기 코드를 전부 스타일 처리할지 (0이며 기본값) 아니면 최초의 #에서부터 명령어 단어의 끝까지 처리할지(1) 결정한다. | ||||||||||||||||||||||||||||||||||||||||
tab.timmy.whinge.level | 파이썬 코드에 대하여, 들여쓰기가 일관성이 있는지 점검한다. 기본값은 0이며 들여쓰기를 점검하지 않는다. 1은 각 줄이 잠재적으로 앞 줄과 일관성이 있는지 점검하고, 2는 들여쓰기에서 탭 문자 앞에 공간 문자가 있는지 점검하며, 3은 들여쓰기에 공간문자를 사용했는지 점검한다. 그리고 4는 들여쓰기에 탭 문자가 있는지 점검한다. 1이 사용하기에 좋은 수준이다. | ||||||||||||||||||||||||||||||||||||||||
user.shortcuts |
명령어를 수행하는 키를 정의한다. 키와 명령어가 '|'로 구분된 리스트이다. 명령어는 문자열이나 숫자 ID이다. 2000이 넘는 숫자 ID는 Scintilla 명령어로서 초점이 있는 판으로 전송된다. 2000 이하의 숫자 ID와 이름 ID는 SciTE 메뉴 명령어이다. 수식자는 Ctrl, Shift, Alt 그리고 Super이고 이름있는 키로는 Left, Right, Up, Down, Insert, End, Home, Enter, Space, Tab, KeypadPlus, KeypadMinus, KeypadMultiply, KeypadDivide, Escape, Delete, PageUp, PageDown, Slash, Question, Equal, Win이 있다.
macOS에서 명령어 키는 수식자 Ctrl+를 사용하고 이 때문에 쉽게 플랫폼마다 따로 설정할 수 있다. 그리고 제어 키는 수식자 Control+를 사용한다. Super 수식자는 GTK+에서만 사용할 수 있다.
user.shortcuts=\
이 특성은 기동시에만 읽힌다.
Ctrl+Shift+I|IDM_OPEN|\ Ctrl+Shift+Left|IDM_CLOSE| |
||||||||||||||||||||||||||||||||||||||||
user.context.menu |
문맥 메뉴에 대하여 추가 명령어를 정의한다. 메뉴 항목과 명령어가 '|'로 구분된 리스트이다. 명령어는 user.shortcuts에 정의된다. 빈 항목은 가름선(separator)을 만든다.
user.context.menu=\
||\ Next File|IDM_NEXTFILE|\ Prev File|IDM_PREVFILE| |
||||||||||||||||||||||||||||||||||||||||
magnification output.magnification |
출력판과 편집판의 최초 확대 비율을 설정한다. 텍스트의 크기를 전역적으로 바꾸고 싶을 때 유용하다. 예를 들어 화면 해상도를 바꾸고 난 후 스타일 설정에 손댈 필요가 없다. 0이 기본값이고, 음수 값이면 크기가 작아지고 양수 값이면 커진다. | ||||||||||||||||||||||||||||||||||||||||
split.vertical output.horizontal.size output.vertical.size output.initial.hide |
split.vertical이 1이면 출력판이 편집판의 오른쪽에 위치한다. 0이면 출력판은 편집판의 아래에 위치한다. output.*.size 설정은 출력판의 최초 크기를 결정한다. output.initial.hide이 1이면, SciTE가 처음 시작할 때 output.*.size가 설정되어 있더라도 출력판이 숨는다; 그렇지 않으면 출력판은 시작부터 보인다. | ||||||||||||||||||||||||||||||||||||||||
clear.before.execute | 1로 설정되어 있으면 도구 명령어가 실행되기 전에 출력판이 지워진다. | ||||||||||||||||||||||||||||||||||||||||
horizontal.scrollbar horizontal.scroll.width horizontal.scroll.width.tracking output.horizontal.scrollbar output.horizontal.scroll.width output.horizontal.scroll.width.tracking output.scroll end.at.last.line |
horizontal.scrollbar가 0으로 설정되면 편집판의 수평 스크롤바가 숨는다. horizontal.scroll.width는 스크롤에 예상되는 문서 너비이다. 비슷하게, output.horizontal.scrollbar 그리고 output.horizontal.scroll.width는 출력판의 수평 스크롤바를 제어한다. 수평 스크롤바의 너비는 필요한 만큼 자동으로 늘어나서 모든 줄이 horizontal.scroll.width.tracking 그리고 output.horizontal.scroll.width.tracking으로 완전히 스크롤 되어 보인다. 출력판이 자동으로 스크롤되지 못하도록 하려면, output.scroll을 0으로 설정하면 된다. 출력판을 스크롤하고 다시 실행 명령어가 있는 줄로 돌아 오려면 output.scroll을 1로 설정하면 된다. 출력판이 스크롤되고 실행 후에 그대로 아래에 있게 하고 싶다면 output.scroll을 2로 설정하자. 수직 스크롤 범위는 보통 최대 스크롤 위치가 뷰의 제일 아래쪽 마지막 줄이 되도록 설정된다. end.at.last.line을 0으로 설정하면 마지막 줄 아래로 한 페이지를 스크롤할 수 있다. |
||||||||||||||||||||||||||||||||||||||||
wrap output.wrap |
wrap이 1로 설정되면 편집판에서 동적으로 줄이 넘어간다. output.wrap이 1로 설정되면 출력판에서 줄이 동적으로 넘어간다. 이 옵션들은 텍스트의 양에 비례하여 수행성능이 저하되므로 느린 머신에서 거대한 문서를 다룬다면 꺼두는 편이 좋다. | ||||||||||||||||||||||||||||||||||||||||
wrap.style | 단어 단위로 넘길지 (기본값으로 1) 문자 단위로 넘길지 (2) 선택한다. 문자 단위 넘기기는 단어 사이에 공간이 없는 아시아 언어에 좋은 선택이다. | ||||||||||||||||||||||||||||||||||||||||
wrap.visual.flags | 넘긴 줄의 처음과 끝에 표식을 보여주어 시각적으로 식별하기 위한 플래그. 0이면 표식을 보여주지 않는다 (기본값). 1로 설정되면 표식을 넘긴 줄 끝에 보여주고 2로 설정되면 표식을 넘긴 줄의 앞에 보여주며 3이면 앞과 뒤에 모두 보여준다. | ||||||||||||||||||||||||||||||||||||||||
wrap.visual.flags.location | 화면 표식의 위치를 설정하는 플래그. 텍스트 근처에 설정할지 아니면 테두리 근처에 설정할지 결정한다. 설정이 0이면 테두리 근처에 시작표식과 끝 표식을 둔다 (기본값). 설정이 1이면 텍스트 근처에 끝 표식을 두고, 2이면 텍스트 근처에 시작 표식을 두며, 그리고 3이면 텍스트 근처에 두 표식을 모두 둔다. | ||||||||||||||||||||||||||||||||||||||||
wrap.indent.mode | 넘겨진 하위줄들은 최초의 하위줄에 상대적으로 다양한 방식으로 들여쓰기 된다. 기본 모드는 0이고 하위줄들을 창의 왼쪽에 wrap.visual.startindent 만큼 들여쓰기 한다. 모드 1은 첫 하위줄에 맞추어 하위줄들을 정렬한다. 모드 2는 하위줄들을 첫 하위줄보다 한 수준 높여서 들여쓰기 하여 정렬한다. | ||||||||||||||||||||||||||||||||||||||||
wrap.visual.startindent | 넘겨진 줄들이 계속 이어지면 시각적으로 넘기기가 식별될 수 있도록 들여쓰기를 설정한다. 기본값은 0이다 (들여쓰기 없음). wrap.visual.flags가 2 또는 3이면 (시작 표식이 보여짐) 그 줄은 최소 1만큼 들여쓰기 된다. wrap.visual.startindent이 여전히 0이라고 할지라도 말이다. | ||||||||||||||||||||||||||||||||||||||||
wrap.aware.home.end.keys | 이 특성은 동적인 줄 넘기기가 켜져 있을 때 home 키와 end 키의 행위를 바꾼다. 0 (기본값)이면, 줄이 화면에 여러 줄에 걸쳐서 넘겨지든 말든, Home 키와 End 키는 캐럿을 '논리적' 줄의 맨처음/맨끝으로 보낸다. 이 특성이 1로 설정되면, End 키를 한 번 누르면 캐럿은 현재 '화면' 줄의 끝으로 이동한다. 다시 End 키를 누르면 '논리적' 줄의 맨끝으로 이동한다. 마찬가지로 Home 키는 '화면' 줄의 처음으로 이동하고, 계속해서 줄의 맨끝으로 이동한다. 동적인 줄-접기가 비활성화된 판에서는, 이 설정이 영향을 미치지 않는다. | ||||||||||||||||||||||||||||||||||||||||
idle.styling output.idle.styling |
기본 값 (0)으로, 먼저 현재 보이는 모든 텍스트에 대하여 구문 스타일 처리를 한 다음 보여준다. 아주 큰 파일이라면 이 때문에 느리게 스크롤될 수 있다. idle.styling=1로 설정하면, 먼저 작은 부분만 스타일 처리한 다음 보여주고 다음에 배경에서 점진적으로 남은 스타일 처리를 한다. 이 결과로 텍스트는 처음에 색 없이 나타났다가 잠시 후에 색이 입혀진다. 2로 설정하면 현재 보이는 부분 다음의 텍스트를 배경에서 처리한다. 3으로 설정하면 텍스트를 보여주기 앞 뒤로 모두 스타일 처리를 배경에서 할 수 있다. output.idle.styling에 대한 설정은 output pane에 적용된다. | ||||||||||||||||||||||||||||||||||||||||
cache.layout output.cache.layout |
편집기에서 사용하는 대부분의 시간은 그리는 것이 아니라 텍스트를 배치하는데 사용된다. 이 정보는 다시 그리는 동안 그대로 유지된다. 그래서 이런 설정으로 캐쉬할 수 있다. 캐쉬는 네 수준으로 나뉜다. 0은 캐시가 없고, 1이면 캐럿이 있는 줄을 캐쉬하고, 2이면 캐럿은 물론이고 보이는 페이지를 캐쉬하며, 그리고 3이면 전체 문서를 캐쉬한다. 캐쉬가 많을 수록 메모리가 더 많이 사용된다. 3이면 방대한 메모리를 사용하는 것이며, 문서 텍스트 크기의 7 배이다. 그렇지만 3 수준이면 놀랍도록 속도가 빠르다. 거대한 파일에서 대략 25배 빠르게 접는다. 그래서 접기가 켜져 있고 메모리가 충분하다면 아주 좋은 옵션이다. | ||||||||||||||||||||||||||||||||||||||||
threads.layout | 긴 줄을 레이아웃할 때 얼마나 많은 쓰레드를 사용할지 지정한다.. 수행성능이 대폭 개선된다. - 4 코어 프로세서라면 레이아웃 시간이 4분의 1로 줄어든다. 하드웨어의 병행능력에 달려 있다. | ||||||||||||||||||||||||||||||||||||||||
open.filter |
파일 유형을 결정하는데 사용되는 복잡한 표현식이다. 파일 열기 대화상자에 사용된다. 각 파일 유형에 대하여 설명 텍스트가 붙는다. '|'가 하나 있고 파일 패턴이 있고 또 '|' 문자로 구성된다.
배포되는 SciTEGlobal.properties 파일에서 '\' 문자로 계속되는 줄은 이런 항목들을 한 줄당 하나씩, 늘려 배치하는데 사용된다. 이런 파일 유형은 "파일 유형:" 풀다운 리스트에 나타난다. 첫 항목이 기본값이고, 그래서 자주 여는 파일 유형을 포함하도록 바꾸는 것이 좋다. 이 파일 유형은 "Files of type:" 풀다운 메뉴에 나타난다. 첫 항목이 기본 값이다. 그래서 첫 항목에 자주 사용하는 파일 유형을 포함시키는 것이 좋다. 이 설정의 기본값은 모든 *filter 설정과 함께 "모든 소스 파일" 그리고 "모든 파일"에 대한 특정한 조합으로 구성된다. "모든 소스 파일" 항목은 모든 *source.patterns 설정을 조합한 파일 패턴 집합을 사용한다. GTK+에서 이 옵션은 GTK+ 2.4 이상에서만 작동한다. |
||||||||||||||||||||||||||||||||||||||||
save.filter |
파일 유형을 결정하는데 사용되는 복잡한 표현식이다. 파일 저장 대화상자에서 사용된다. 특성의 형식은 open.filter와 같다. GTK+에서는 작동하지 않는다. |
||||||||||||||||||||||||||||||||||||||||
*source.patterns.name | 값을 파일 확장자 집합에 포함도록 설정한다. 확장자 집합은 파일 열기 대화상자의 풀다운 메뉴에서 "모든 소스 파일"에 사용된다. open.filter에 대한 기본값으로 사용된다. 예를 들어, *source.patterns.ruby=*.rb;*.rbw;는 파일 패턴 *.rb and *.rbw를 소스 확장자 집합에 추가한다. | ||||||||||||||||||||||||||||||||||||||||
*filter.name | 파일 열기 대화상자의 파일 유형 풀다운 메뉴에 값을 포함하도록 설정한다. open.filter에 기본값으로 사용한다. 예를 들어, *filter.ruby=Ruby (rb rbw)|*.rb;*.rbw|는 "Ruby" 항목을 파일 유형 풀다운 메뉴에 추가한다. 그 항목을 선택하면 *.rb and *.rbw 패턴에 부합하는 파일들이 보일 것이다. 설정에 반드시 두 개의 '|' 문자가 있어야 한다. | ||||||||||||||||||||||||||||||||||||||||
max.file.size | 느린 매체에 거대한 파일을 적재하는 실수를 피하기 위해, 또는 확실하게 SciTE가 오직 인간이 읽을 수 있는 코드만 편집하도록 만들려면, 사용자는 max.file.size 특성에 지정하여 파일 적재를 제한할 수 있다. 설정이 없거나 0으로 설정되어 있으면, 한계가 없다. 바이트 단위로 크기가 주어져 있고 적재될 파일이 그 한계를 초과하면, 사용자에게 파일을 적재해도 좋은지 물어본다. 수락하면, 파일을 정상적으로 읽는다. 거부하면 아무 조치도 없다 (파일 적재 안됨, 버퍼 생성 안됨). | ||||||||||||||||||||||||||||||||||||||||
save.deletes.first | 저장을 위해 파일을 열기전에 먼저 삭제한다. 윈도우즈에서 대소문자가 다른 상황에서 저장할 경우 그냥 조용히 예전의 이름을 사용하기 보다 파일 이름을 확실하게 바꾸는데 사용할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
save.check.modified.time | save.check.modified.time=1이라면, 저장할 때 그 파일이 다른 프로세스에 의하여 수정되었을 경우, 현재 내용으로 덮어쓸지 점검한다. | ||||||||||||||||||||||||||||||||||||||||
save.session save.recent save.position save.find |
save.session을 설정하면, 종료될 때 세션 파일에 현재 열린 버퍼의 리스트가 저장된다. (명령어 줄에서 파일 이름을 지정하여) 다음에 SciTE를 시작하면 마지막 세션이 자동으로 복구된다. GTK+에서는 이름이 ".SciTE.session"이고 위치는 SciTE_HOME 환경 변수에 지정된 디렉토리이다. 설정되어 있지 않다면, HOME 환경 변수의 값이 사용되고, 그 마저도 설정되어 있지 않다면, 최상위 디렉토리에 위치한다. 윈도우즈에서 파일은 이름이 "SciTE.session"이고 위치는 SciTE_HOME 환경 변수에 지정된 디렉토리이다. 설정되어 있지 않다면, USERPROFILE 환경 변수의 값이고 그 마저도 설정되어 있지 않다면 SciTE 실행파일이 있는 디렉토리다. (3.6.5 변경) GTK+에 대하여 파일 이름은 ".SciTE.session"이고 SciTE_USERHOME 환경 변수에 주어진 디렉토리에 있다. 설정되어 있지 않으면 SciTE_HOME 환경 변수의 디렉토리가 사용되고 역시 설정되어 있지 않으면 HOME 환경 변수의 디렉토리가 사용된다. 이 마저도 설정되어 있지 않으면 최상위 디렉토리가 사용된다. Windows에 대하여 파일이름은 "SciTE.session"이고 SciTE_USERHOME 환경 변수에 주어진 디렉토리에 있다. 설정되어 있지 않으면 SciTE_HOME 환경 변수의 디렉토리가 사용되고 역시 설정되어 있지 않으면 USERPROFILE 환경 변수의 디렉토리에 있다. 이 마저도 설정되어 있지 않으면 SciTE 실행파일이 있는 디렉토리가 사용된다. save.recent를 설정하면 가장 최근에 사용된 파일 리스트를 종료할 때 세션 파일에 저장하고 시작할 때 읽어 들인다. save.position을 설정하면 SciTE 창의 위치가 종료시에 세션 파일에 저장되고 기동시에 복구된다. save.find가 설정되면 "찾기"와 "바꾸기"가 세션 파일에 저장된다. |
||||||||||||||||||||||||||||||||||||||||
session.bookmarks session.folds |
session.bookmarks를 설정하면 책갈피가 세션 파일에 저장된다. session.folds를 설정하면 접기 상태가 세션 파일에 저장된다. 세션 파일을 적재하면 책갈피 접기가 복구된다. fold.on.open이 설정되어 있으면 접기 상태가 복구된다. | ||||||||||||||||||||||||||||||||||||||||
open.dialog.in.file.directory |
open.dialog.in.file.directory를 설정하면 열기 대화상자가 현재 파일과 같은 디렉토리를 처음으로 보여준다. 설정되어 있지 않으면 시스템 기본값이 사용된다. 윈도우즈 XP에서는 SciTE의 한 실체에서 열기 대화상자로 최근 방문한 디렉토리가 기본값이다. SciTE의 실체가 여럿이라면 이 설정은 사용하기가 쉽지 않다. 어떤 GTK+ 버전은 예상치 못한 디렉토리를 설정하기도 한다. |
||||||||||||||||||||||||||||||||||||||||
0으로 설정하면 "찾기" 버튼을 눌러도 찾기 널쪽 대화상자가 자동으로 닫히지 않고
1로 설정하면 무조건 닫힌다. 2로 설정하면 발견했을 경우에만 자동으로 닫힌다.
그러면 실수를 할 경우 옵션을 바꾸어서 문자열을 검색할 수 있다. 기본 값은 1이다. | |||||||||||||||||||||||||||||||||||||||||
find.replace.matchcase find.replace.regexp find.replace.wrap find.replace.escapes |
이 특성들은 찾기와 바꾸기 명령어에 대하여 초기 조건을 정의한다. find.replace.matchcase 특성은 "대소문자 구분 일치" 옵션, find.replace.regexp는 "정규 표현식" 옵션, find.replace.wrap는 "넘기기" 옵션 그리고 find.replace.escapes는 "역사선 표현 변환" 옵션을 바꾼다. | ||||||||||||||||||||||||||||||||||||||||
find.replacewith.focus | find.replacewith.focus 특성이 설정되어 있으면, 찾을 문자열이 비어 있지 않을 경우 바꾸기 대화상자에서 바꿀 문자열 입력 상자에 초점이 잡힌다. | ||||||||||||||||||||||||||||||||||||||||
find.replace.regexp.posix | 정규표현식의 검색 행위를 바꾼다. 0 (기본값)이면, '('와 ')' 문자는 '\'로 피신시켜서 정규표현식의 메타문자로 행동하도록 만든다. 설정이 1이면, 이 문자들은 그 자체로 메타문자이다. | ||||||||||||||||||||||||||||||||||||||||
find.replace.regexp.cpp11 | 0으로 설정하면 (기본값) SciTE 고유의 정규 표현식이 사용된다. 1로 설정하면 C++ 정규 표현식 라이브러리가 사용된다. SciTE의 정규 표현식 코드보다 더 많은 특징을 제공한다. | ||||||||||||||||||||||||||||||||||||||||
find.use.strip replace.use.strip |
검색이나 교체 명령어를 수행하는데 대화상자를 사용하지 않고 한줄짜리 창을 사용한다. | ||||||||||||||||||||||||||||||||||||||||
find.strip.incremental replace.strip.incremental |
찾기 바꾸기 박스에서 타자하면서 점진적으로 검색한다. 1로 설정하면 점진 검색을 활성화하고 2이면 점진 검색과 더불어 부합것들을 모두 강조해 준다. 모든 부합을 강조하면 (2) 느릴 수 있으므로 큰 파일이라면 꼭 필요할 경우에만 활성화하는게 좋다. | ||||||||||||||||||||||||||||||||||||||||
find.indicator.incremental |
find.strip.incremental=2 또는 replace.strip.incremental=2에 사용할 표시자를 설정한다.
이 값은 구조적 특성으로서 다음과 같이 여러 속성을 가진다:
find.indicator.incremental=style:compositionthick,colour:#FFB700,under
|
||||||||||||||||||||||||||||||||||||||||
filter.match.indicator |
필터 뷰에 부합하는 것들을 표식하기 위해 사용될 표시자를 설정한다.
이것은 여러 값이 있는 구조화된 특성으로서 다음과 같다:
filter.match.indicator=style:roundbox,colour:#00FFDF,under
|
||||||||||||||||||||||||||||||||||||||||
filter.match.back |
필터 뷰에 부하하는 줄들에 사용된 알파 배경색. 6-자리 RGB 또는 8-자리 RGBA 값이다.
filter.match.back=#0000FF20
|
||||||||||||||||||||||||||||||||||||||||
filter.context |
문맥 모드에서 필터 뷰 각 줄 둘레마다 보여줄 줄의 갯수.
filter.context=3
|
||||||||||||||||||||||||||||||||||||||||
strip.button.height | GTK+에서 종종 버튼에 공간이 남아돈다. 그 때문에 스트립이 너무 공간을 많이 차지한다. 이 설정은 버튼의 높이를 제한한다. 값이 23이나 24이면 잘 작동한다. | ||||||||||||||||||||||||||||||||||||||||
strip.shortcuts.enable | macOS에서 기본 행위는 찾기 바꾸기 널쪽에서 단축키의 사용을 허용한다. 예를 들어 ⌘W는 "단어에 온전하게 부합"을 켜거나 끈다. 이렇게 하면 ⌘W로 파일을 닫을 수 없다. 그래서 단축키가 널쪽에 작동하지 못하도록 하려면 이 특성을 0으로 설정하면 된다. 이 특성은 시작시에 한 번만 읽힌다 | ||||||||||||||||||||||||||||||||||||||||
find.replace.advanced | 버퍼에서 교체 명령어와 이 스타일에서만 검색 체크박스가 활성화된다. 활성화되면, 검색이 특정한 스타일로 제한된다 (예, 문자열). | ||||||||||||||||||||||||||||||||||||||||
find.indicator | macOS에서 생동감 넘치는 황금색 일치 표시자를 제어한다. 기본값은 1이고 찾기 표시자를 생동감있게 보여준 다음 서서히 사라지게 해서 둘러싼 텍스트가 선명하게 보일 수 있도록 해준다. 값을 0으로 하면 비활성화되고 값이 2이면 계속해서 찾기 표시자를 화면에 그대로 둔다. | ||||||||||||||||||||||||||||||||||||||||
find.command find.option.wholeword.0 find.option.wholeword.1 find.option.matchcase.0 find.option.matchcase.1 find.input |
파일에서 찾기 명령어는 명령어를 빌드하는 방식과 비슷하게 작동한다. 명령어 줄 도구를 실행하고 출력을 출력판에 방향전환한다. grep이 그런 것처럼, 그 명령어가 생산한 출력을 에러 출력 단계중 하나가 이해하면, F4와 Shift+F4 키를 사용하여 부합된 것들을 방문할 수 있다. $(find.what)과 $(find.files) $(find.directory) 변수는 파일에서 찾기 대화상자의 값에 사용된다. 여기와 여기에 펄로 이 특징을 구현한 스크립트가 있다. grep 보다 더 좋다. 다음 명령어 줄은 Cygwin 설치 디렉토리에 맞도록 수정하여 윈도우즈 위의 Cygwin에서 작동한다:
find.command=cmd /c
윈도우즈에서 인용부호 해석 문제를 피하기 위하여 찾기 명령어에 검색 문자열을 표준 입력 스트림을 통하여 건넬 수 있다. 이렇게 하려면 find.input이 검색 문자열 $(find.what)이 되도록 지정하자.
c:\cygwin\bin\find "$(find.directory)" -name "$(find.files)" -print0 | c:\cygwin\bin\xargs -0 fgrep -G -n "$(find.what)" find.command가 비어 있으면 SciTE의 독자적인 검색 코드가 사용된다. 이 코드는 정규 표현식 없이 단순한 검색만 수행하며 외부 프로그램을 실행하는 것보다 빠르다. find.command를 정의할 때, "match case" 옵션의 값을 지정하려면 $(find.matchcase)를 사용하고, "whole word" 옵션의 값을 지정하려면 $(find.wholeword)를 사용한다. 또 찾기에 사용하는 명령어의 매개변수에 맞추어 주기 위해 find.option.matchcase.0 특성과 find.option.matchcase.1 특성 그리고 find.option.wholeword.0 특성과 find.option.wholeword.1의 특성을 지정해야 한다.
find.option.wholeword.0=
find.option.wholeword.1=-w find.option.matchcase.0=-i find.option.matchcase.1= find.command=cmd /c c:\cygwin\bin\find "$(find.directory)" -name "*" -print0 | c:\cygwin\bin\xargs -0 grep $(find.wholeword) $(find.matchcase) -G -n "$(find.what)" |
||||||||||||||||||||||||||||||||||||||||
find.files |
찾기 명령어를 사용하여 검색할 기본 파일 집합이다. find.files 특성은 '|'로 분리된 파일 리스트만 담을 수 있다. "*.cxx *.h|*.py *.pyw|*.html"와 같은 형태이다. 세 항목을 히스토리에 추가하고 첫 항목을 기본값으로 사용한다. 이 설정을 평가하는 것은 특성 파일의 값에 있는 엔트리가 히스토리의 끝에 추가된다는 점에서 좀 특이하다. 그 엔트리가 아직 존재하지 않더라도 말이다. 이는 다른 디렉토리에서 파일을 열면 결과적으로 find.files의 지역 설정이 리스트에 추가될 것이라는 뜻이다. |
||||||||||||||||||||||||||||||||||||||||
find.in.dot | find.in.dot이 1이면 파일에서 검색 명령어는 '.'으로 시작하는 디렉토리를 검색한다. 기본 행위는 Subversion이 .svn 하위디렉토리에 보관하는 수정되지 않은 버전의 파일을 SciTE가 찾지 못하도록 한다. | ||||||||||||||||||||||||||||||||||||||||
find.in.binary | find.in.binary가 1이면 파일에서 찾기가 이진 파일에서 일치된 것을 보여준다. 파일에서 찾기에 대하여 이진 파일은 파일에서 읽은 첫 64K 블록 안에 NUL 바이트가 포함된 파일이다. | ||||||||||||||||||||||||||||||||||||||||
find.exclude |
파일 찾기에서 검색하지 말아야 할 파일 패턴이다. 파일 이름과 디렉토리 이름 모두 여기에 나타날 수 있다.
find.exclude=*.bak *.pyc debug release
|
||||||||||||||||||||||||||||||||||||||||
find.in.directory | 설정하면 파일에서 찾기에 사용되는 디렉토리 앞에 이 값이 붙는다. 설정하지 않으면 현재 파일의 디렉토리가 앞에 채워지다. | ||||||||||||||||||||||||||||||||||||||||
find.in.files.close.on.find | 0으로 설정하면 "찾기" 버튼이 눌려도 파일에서 찾기 대화상자가 닫히지 않는다. | ||||||||||||||||||||||||||||||||||||||||
code.page output.code.page |
한국어 같은 DBCS 언어를 지원하기 위해 코드 페이지를 설정할 수 있다. 이렇게 하면 2 바이트 문자가 언제나 한 단위로 취급되며 그래서 캐럿이 그 사이에 끼는 일이 없다.
이 특성은 1 바이트 문자 집합을 설정할 수 없다. output.code.page가 설정되어 있으면 편집판에 일치하는 출력판에 사용된다. |
||||||||||||||||||||||||||||||||||||||||
character.set |
이 설정은 폰트를 설정할 때 요구되는 문자 집합을 바꿀 수 있다. 모든 값이 모든 플랫폼에서 작동하는 것은 아니다.
|
||||||||||||||||||||||||||||||||||||||||
ime.interaction | 창으로 입력하든지 아니면 직접 입력할 수 있다. 0이면 창입력이고 1이면 직접 입력이다. 아무것도 설정하지 않으면 플랫폼과 로케일에 따라 다르게 모드가 선택된다. | ||||||||||||||||||||||||||||||||||||||||
ime.autocomplete | 1로 설정하면 IME 입력에서 자동완성을 활성화시킨다. 자동완성 창과 콜팁 창을 보려면, autocomplete.*.start.characters와 calltip.*.word.characters를 지정해야 한다. ime 문자에 calltip.parameters.* 와 같은 것들은 지원하지 않는다. 기본값은 0으로, 비활성화 상태이다. | ||||||||||||||||||||||||||||||||||||||||
accessibility | GTK+에서 편집판과 출력판의 접근성을 불능화하려면 accessibility를 0으로 설정하면 된다. 접근성을 비활성화하면 메모리 사용과 수행성능에 좀 개선이 있을 수 있다.. 이 속성은 맞춤 접근성 구현에만 영향을 미친다. 타자되어 들어오는 문자들을 읽어 주는 것과 같은 시스템이 제공하는 기능에는 영향을 주지 않는다. 기본값은 1로서 활성화되어 있다. | ||||||||||||||||||||||||||||||||||||||||
imports.include imports.exclude |
이 설정은 import 서술문으로 반입할 파일들을 제어한다. imports.include 특성은 반입할 특성 파일의 이름이 정의된다. 오직 fortran과 lisp의 사용에만 관심이 있다면, 사용자 특성 파일에, 다음과 같이 설정하면 된다
imports.include=fortran lisp
imports.exclude 특성은 오직 imports.include 특성이 비었거나 없을 경우에만 참조된다.
이 특성은 지명된 파일들이 반입되지 못하도록 막는다.
이 특성으로 SciTE에 배포되는 다음 특성 파일들을 포함하거나 배제할 수 있다: abaqus ada asciidoc asl asm asn1 au3 ave avs baan blitzbasic bullant caml cil cmake cobol coffeescript conf cpp csound css d dataflex ecl eiffel erlang escript flagship forth fortran freebasic fsharp gap haskell hex html inno json kix latex lisp lot lout lua markdown matlab maxima metapost mmixal modula3 nim nimrod nncrontab nsis opal oscript others pascal perl pov powerpro powershell ps purebasic python r raku rebol registry ruby rust sas scriptol smalltalk sorcins specman spice sql tacl tal tcl tex txt2tags vb verilog vhdl visualprolog yaml. |
||||||||||||||||||||||||||||||||||||||||
command.discover.properties |
이 특성은 파일이 적재될 때 파일 인코딩과 기타 특성들을 결정하기 위해서 프로그램을 실행하는데 사용할 수 있다. 프로그램은 설정하고 싶은 각 특성마다 property=value으로 이루어진 줄들을 인쇄해야 한다. 특성 파일과 형식이 같다.
command.discover.properties=python /home/user/FileDetect.py "$(FilePath)"
특별한 태그를 인지하는 간단한 파이썬 스크립트이다. 해당 파일이 한국어 코드 페이지 949임을 알려준다:
import sys
if "Language:Korean" in open(sys.argv[1]).read(): print('code.page=949') print('character.set=129') |
||||||||||||||||||||||||||||||||||||||||
comment.block.lexer comment.block.at.line.start.lexer comment.stream.start.lexer comment.stream.end.lexer comment.box.start.lexer comment.box.middle.lexer comment.box.end.lexer |
이 설정들은 편집 메뉴의 주석 명령어를 위한 것이다. 어휘분석기마다 따로따로 정의된다. 모든 언어가 스트림과 블록 주석을 모두 지원하는 것은 아니다. 블록 주석은 특정한 문자열로 시작해서 줄 끝까지 계속되는 주석이다. comment.block 특성은 블록 주석 처리와 취소 명령이 수행되면 지정 문자열을 선택된 줄의 시작에 삽입되거나 삭제되도록 설정한다. 이미 주석과 기타 코드가 포함된 일정 범위의 텍스트에 이 명령어를 합리적으로 수행하려면, 그 문자열에 실제 주석에서 사용되지 않는 '~'와 같은 문자를 포함하도록 정의할 수 있다. comment.block.at.line.start를 "1"로 설정하면 블록 주석 심볼을 공백 아닌 첫 문자 바로 앞이 아니라 줄의 처음에 둘 수 있다. 스트림 주석은 특정한 문자열로 시작하고 또다른 특별한 문자열로 끝난다. 여러 줄에 걸쳐서 계속될 수 있다. 스트림 주석은 comment.stream.start 그리고 comment.stream.end로 정의된다. 상자 주석은 스트림 주석의 한 형태이다. 여러 줄을 받고 그 범위 안의 처음과 끝 그리고 나머지 줄들에 각각 다른 문자열을 사용한다. 상자 주석은 comment.box.start와 comment.box.middle 그리고 comment.box.end로 정의된다. |
||||||||||||||||||||||||||||||||||||||||
preprocessor.symbol.filepattern preprocessor.start.filepattern preprocessor.middle.filepattern preprocessor.end.filepattern |
이 설정들은 전처리 조건 이동과 선택 명령어를 작동시킨다. 전처리기 줄을 정의하는 문자는 preprocessor.symbol로 정의된다. 전처리기 키워드는 나머지 세 특성에 정의된다. 전처리기 조건 구문은 시작 (if), 중간 (else), 그리고 끝 (endif)으로 구성된다. 각각에 대하여 여러 값이 있을 수 있다. 예를 들어 C는 "if", "ifdef", 그리고 "ifndef"를 사용하여 전처리기 조건구문을 시작한다. | ||||||||||||||||||||||||||||||||||||||||
lexer.filepattern |
어휘분석기는 파일을 구문적으로 분해한다. SciTE는 이 조각들을 다른 스타일로 보여준다. Python, Java, C/C++, JavaScript 그리고 VB 같이 유명한 언어들을 위해 많은 어휘분석기가 SciTE에 포함되어 있다. 종종 여러 파일 확장자가 (.cpp, .cc, .h) 한 언어에 (C++) 연관될 수 있다. 그래서 어휘분석기는 하나다. 이런 설정은 파일 이름을 어휘분석기와 연관지어 준다. SciTE에 포함된 어휘분석기는 C++로 작성되었고 SciTE 실행파일 안으로 컴파일되어 들어간다. 어휘분석기는 Lua 스크립트로 작성해도 된다. 아니면 scintillua를 사용하여 Lua LPeg 어휘분석기로 작성할 수도 있다. |
||||||||||||||||||||||||||||||||||||||||
shbang.command | 유닉스에서 명령어 파일은 종종 확장자가 없고 대신에 인터프리터에게 "#!"로 시작하는 첫 줄을 보고 그 파일을 실행하도록 지정한다. 어휘분석기를 결정할 수 없고 파일이 "#!"으로 시작하면, 그 첫 줄은 단어들로 분할되고 각 단어는 앞에 "shbang."이 배치된다. 이 이름을 가진 특성이 있으면 그 파일의 확장자로 취급된다. 예를 들어, shbang.python=py는 첫 줄 #!/usr/bin/env python에 의하여 촉발되므로 그 파일은 파이썬 파일로 취급된다. | ||||||||||||||||||||||||||||||||||||||||
keywords.filepattern keywords2.filepattern keywords3.filepattern keywords4.filepattern keywords5.filepattern keywords6.filepattern keywords7.filepattern keywords8.filepattern keywords9.filepattern keywordclass.lexer |
대부분의 어휘분석기는 이름과 키워드를 구분하고 그러기 위해 키워드 변수를 사용한다. 한 언어에 여러 파일 확장자가 사용되는 경우, 파일 확장자마다 키워드 리스트를 반복하지 않기 위하여 배포 특성 파일에 keywordclass 변수가 정의 되어 있다. 그렇지만 이것은 그냥 관례일 뿐이다. 어떤 어휘분석기는 기본 키워드 집합에 대하여 다른 스타일로 화면에 표시될 키워드 보조 집합을 정의한다. HTML 어휘분석기에서 HTML 태그와 속성과 다르게 자바스크립트 키워드는 다른 스타일로 보여준다. 키워드는 접두사를 기반으로 이름지어진다. 그래서 ^GTK_는 GTK_로 시작하는 모든 단어들을 키워드로 취급한다. |
||||||||||||||||||||||||||||||||||||||||
default.file.ext | 파일이 이름을 갖기 전에 사용될 언어 모드를 정의한다. 예를 들어 default.file.ext=.py 이라면, 새로 명령어를 사용하여 새 파일을 만들 경우 파이썬 구문 스타일이 사용된다. | ||||||||||||||||||||||||||||||||||||||||
word.characters.filepattern | 어느 문자가 단어에 포함되는지 정의한다. 여기에서 기본값은 알파벳과 숫자 그리고 밑줄이다. 밑줄 문자는 C++ 같은 언어에 합리적인 값이다. | ||||||||||||||||||||||||||||||||||||||||
whitespace.characters.filepattern | 어느 문자들이 공백문자로 간주되는지 정의한다. 기본값은 처음부터 Scintilla에 설정되어 있는데, 공간 문자와 0x20보다 작은 모든 문자들이다. 이 특성을 설정하면 커서를 이동하는 동안 Scintilla에게 다른 문자들 (구두점 등)을 공백문자로 간주하도록 강제할 수 있다 (ctrl+left/right). | ||||||||||||||||||||||||||||||||||||||||
style.*.stylenumber style.lexer.stylenumber |
어휘분석기는 예를 들어, 키워드나 주석 또는 숫자와 같이 각 구문 유형에 스타일 번호를 정의한다. 이 설정들은 어휘분석기의 각 스타일 번호에 사용될 시각적 스타일을 정의한다. 각 설정의 값은 ','로 구분된 속성의 집합이다. 어떤 속성은 ':'의 뒤에 하위값을 가진다. 속성은 다음과 같다. font, size, fore, back, italics, notitalics, bold,
notbold, weight, eolfilled, noteolfilled, underlined, notunderlined, case,
visible, notvisible, invisiblerepresentation, changeable, 그리고 notchangeable
"fore:#FF0000,font:Courier,size:14" 값은 14 포인트, 빨간색 Courier체 텍스트를 나타낸다. 전역 스타일은 style.*.stylenumber를 사용하여 설정할 수 있다. 전역 스타일로 설정된 스타일 옵션은 오버라이드되지 않는 한 각 어휘분석기에 상속된다. GTK+ 2에서, 폰트 이름 앞에 "!"를 두면 "font:!Sans"와 같이 Pango 안티-엘리어스 폰트를 선택할 수 있다. |
||||||||||||||||||||||||||||||||||||||||
style.lexer.32 style.lexer.33 style.lexer.34 style.lexer.35 style.lexer.36 style.lexer.37 style.lexer.38 |
어휘분석기가 생성한 스타일 뿐만 아니라, 번호붙은 스타일도 사용된다. Style 32는 기본 스타일이다. 그리고 그의 특징은 오버라이드되지 않는 한 다른 모든 스타일이 상속받는다. Style 33은 여백에 줄 번호를 보여주는 데 사용된다. Styles 34와 35는 각각 일치하는 괄호와 일치하지 않는 괄호를 보여주는데 사용된다. Style 36은 제어 문자를 나타내는데 사용된다. 이 스타일은 완전하지 않다. 제어 문자의 배경색과 전경색은 이 스타일이 아니라 구문 분석 상태에 의하여 결정되기 때문이다. Style 37은 들여쓰기 가이드를 보여주는데 사용된다.오직 전경과 배경만 사용된다. 스타일 38은 콜팁을 보여주는데 사용된다. 오직 글꼴과 크기 그리고 전경색과 배경색만 사용된다. 어휘분석기 대신에 *를 사용하면 전역 스타일 설정을 나타낸다. |
||||||||||||||||||||||||||||||||||||||||
substyles.lexer.stylenumber |
하위스타일은 주로 식별자 집합을 구별지어 보여주는데 사용된다.
특정한 라이브러리와 작업할 때, 그 라이브러리에 있는 함수를 호출하는 함수들을 운영 체제 호출이나 자신의 함수와는 다르게 강조하고 싶을 수 있다.
하위스타일은 하나의 스타일을, 주로 식별자 스타일을, 여러 그룹으로 나눈다.
몇몇 어휘분석기만 이를 지원하고 또 한 어휘분석기 안에서도 오직 몇몇 스타일만 지원한다.
현재 cpp 어휘분석기는 식별자(11)와 주석 문서 키워드(17)에 대하여 하위스타일을 허용하며,
그리고 파이썬 어휘분석기는 식별자(11)에 대하여 하위스타일을 허용한다.
언어 특성 파일에 분리될 스타일을 지정한다. 이런식으로 얼마나 많은 하위스타일이 특정한 주 스타일에 대하여 할당되어 있는지 정의한다. C++에서 식별자에 대하여 따로 2 개의 스타일을 더 허용하려면 :
substyles.cpp.11=2
|
||||||||||||||||||||||||||||||||||||||||
substylewords.mainstyle.substyle.filepattern |
이 특성은 어떤 단어들이 특정한 하위스타일로 스타일 처리될지 정의한다. keywords를 처리하는 방식과 비슷하다.
예를 들어, C++ 표준 라이브러리의 식별자 "std", "map", "string", 그리고 "vector"에 대하여 첫번째 하위스타일을 사용하려면:
substylewords.11.1.$(file.patterns.cpp)=std map string vector
|
||||||||||||||||||||||||||||||||||||||||
style.lexer.mainstyle.substyle |
이 특성은 하위스타일의 시각적 모습을 정의한다.
예를 들어, 식별자(11)의 첫 번째 하위스타일을 분홍색으로 보여주려면:
style.cpp.11.1=fore:#EE00AA
|
||||||||||||||||||||||||||||||||||||||||
font.quality |
이 설정은 Windows와 macOS에서 다른 방식으로 텍스트를 그릴 수 있게 해준다. 겉모습은 플랫폼 설정 그리고 윈도우즈에서, 기술적 설정에 따라 다르다. 이 설정은 현재 GTK+에 아무 영향을 미치지 못한다.
|
||||||||||||||||||||||||||||||||||||||||
font.locale | 언어 로케일을 설정함으로써 언어에 부합하는 문자의 모양을 결정한다. 한국어에 대해서는 "ko" 일본어는 "ja", 간체 중국어는 "zh-Hans", 번체 중국어는 "zh-Hant"이 그 값이 된다. 기본 설정값은 영어로서 "en-us"이다. 설정은 오직DirectWrite (technology=1)가 지원되는 윈도우즈에서만 적용된다. | ||||||||||||||||||||||||||||||||||||||||
braces.check braces.sloppy style.lexer.34 style.lexer.35 braces.lexer.style |
괄호 강조는 캐럿이 그 안에 위치해 있을 때 괄호의 범위를 보여주는 특징이다. 복잡하게 괄호가 내포되어 있을 경우 특히 유용하다. 다음 문자 '(', ')', '[', ']', '{', 그리고 '}'가 괄호로 간주된다. braces.check가 1로 설정되어 있지 않는 한 이 특징은 (커서 이동이 느려지기 때문에) 기본값이 비활성 상태이다. braces.sloppy가 1로 설정되어 있을 경우, 캐럿 앞에 괄호가 없다면 그 캐럿 뒤의 문자가 점검된다. 서로 일치하는 괄호가 없다면 괄호를 스타일 번호 34 또는 35로 보여주므로서 강조가 수행된다. 이 스타일은 완전하지만, 괄호를 부분적으로 보여주는 것을 피하기 위해서는 전경색과 배경색에서만 이 스타일을 표준 스타일의 괄호와 차별화하는 것이 좋다. 오직 braces.lexer.style에 설정된 스타일의 괄호만 (기본값은 0이다) 괄호 일치 강조의 후보이다. | ||||||||||||||||||||||||||||||||||||||||
font.monospace | 모노스페이스 폰트 사용 명령이 수행될 때 사용할 폰트 이름과 크기를 정의한다. 구문은 스타일 특성과 같다. | ||||||||||||||||||||||||||||||||||||||||
command.compile.filepattern command.compile.subsystem.filepattern command.build.filepattern command.build.subsystem.filepattern command.build.directory.filepattern command.clean.filepattern command.clean.subsystem.filepattern command.go.filepattern command.go.subsystem.filepattern |
이 설정들은 컴파일이나 빌드 또는 실행 메뉴 항목이 선택되면 사용할 명령어를 결정한다. subsystem 옵션은 Windows에서 그 도구들이 명령어 줄(0), 창(1), ShellExecute(2), 또는 감독관 인터페이스(3)를 통하여 실행될지 결정한다. 소스 파일이 빌드되어야 할 디렉토리와 다른 디렉토리에 있을 때, command.build.directory 특성은 빌드를 수행하기 전에 특별한 디렉토리로 변경되도록 설정할 수 있다. |
||||||||||||||||||||||||||||||||||||||||
font.monospaced.list |
ASCII 문자에 대하여 ';'로 구분된 고정폭 폰트 이름 리스트. 'a'-'z', 'A'-'Z', '0'-'9', ' ', 그리고 일반 구두점 기호를 포함한다.
값이 '*'이면 폰트마다 고정폭인지 확인해 본다. 이 리스트에 든 폰트들은 실제로 고정폭 폰트인 경우 속도와 메모리 이용을 위해 최적화된다.
font.monospaced.list=Noto Mono;Menlo;Lucida Console
|
||||||||||||||||||||||||||||||||||||||||
command.go.needs.filepattern command.go.needs.subsystem.filepattern |
파일은 실행하기 전에 먼저 컴파일하거나 빌드해야 하는 경우가 많다. 이런 경우라면, 이 설정은 그 파일을 실행하기 전에 컴파일이나 빌드 단계를 수행하기 위하여 어떤 명령어를 실행할 필요가 있는지 가리킨다. 파일이 컴파일될 때, 컴파일 된다고 고지하고 앞으로 실행하면 컴파일이나 빌드를 수행하지 않을 것이다. .c 파일에 대하여 '컴파일하고 실행' 명령어를 만들고 싶다면:
command.go.*.c=$(FileName)
command.go.needs.*.c=g++ $(FileNameExt) -o $(FileName) |
||||||||||||||||||||||||||||||||||||||||
command.name.number.filepattern command.number.filepattern command.is.filter.number.filepattern command.subsystem.number.filepattern command.save.before.number.filepattern command.input.number.filepattern command.replace.selection.number.filepattern command.quiet.number.filepattern command.mode.number.filepattern command.shortcut.number.filepattern |
명령어를 도구 메뉴에 추가할 수 있다. 예를 들어 'astyle' 들여쓰기를 포함시키고 싶다면, 특성 파일에 다음 코드를 담으면 된다
command.name.0.*.cc=Indent
첫 줄은 도구 메뉴에 나타날 문자열을 정의한다 ('실행' 메뉴 바로 아래에 있다). 두 번째 줄은 명령어 문자열로서, 컴파일과 빌드 실행 명령어와 같다. 선택적인 command.is.filter 특성은 명령어가 현재 파일을 수정하고 있으므로 load.on.activate이 설정되어 있다면 그 명령어를 수행한 후에 읽을 필요가 있다는 뜻이다.command.0.*.cc=astyle -taO $(FileNameExt) command.is.filter.0.*.cc=1 command.save.before가 1로 설정되어 있으면, SciTE는 실행 전에 파일을 자동으로 저장한다. 2이면, SciTE는 파일을 저장하지 않는다. 그렇지 않으면 SciTE가 여러분에게 물어본다. 윈도우즈에서 선택적인 command.input 특성은 명령어로 파이프 처리되어 들어갈 텍스트를 지정한다. 이 특성은 다른 특성을 참조할 수도 있다; 예를 들어, command.input.0.*.cc=$(CurrentSelection)는 현재 선택을 명령어 프로세스에 파이프 처리해 넣는다. command.input 특성은 오직 subsystem 0만 지원한다 (명령어 줄 프로그램). 선택적인 command.replace.selection 특성은 명령어 출력이 현재 선택을 교체하라고 (또는 선택이 없다면, 커서 위치에 삽입하라고) 지정하는데 사용된다. 이 특성은 세가지 설정이 있다: 기본값인 0은 선택을 교체하지 말라는 뜻이다. 1은 명령어가 끝나면 선택을 교체하라는 뜻이다. 2는 명령어가 종료 코드 0으로 완료될 경우에만 선택을 교체하라는 뜻이다. 사용자가 "도구 / 실행 중지" 도구를 통하여 명령을 취소하면, 선택은 모드가 1이라도 교체되지 않는다. 명령어는 비동기적으로 실행된다는 점에 주목하자. 그래서, 방해 받지 않고 문서를 수정할 수 있다. 심지어 명령어가 실행 되는 동안 버퍼를 전환할 수도 있다. 그렇지만, 명령어가 끝나면 command.replace.selection는 출력을 활성 창에 보낸다는 것을 꼭 명심하자. 마지막 명령어 특성은 command.quiet이다. 값이 1이면 명령 I/O가 출력판에 전송되면 안된다는 것을 가리킨다. 이 특성은 command.input 그리고 command.replace.selection과 조합해 사용하면 유용하다. command.mode 특성은 쉼표로-분리된 플래그/설정 리스트이다. 각 모드 설정은 인자를 하나 가질 수 있으며, 설정 이름과 쌍점으로 분리된다. 이것들은 대부분 인자 부분이 선택적이다; 설정 이름이 인자 없이 나타나면, 이는 "setting:yes"와 똑같이 작동한다. 설정이 command.mode에 포함되어 있을 뿐만 아니라 따로 명령어 특성으로도 나타나면, 그 모드 특성은 오버라이드된다. 비슷하게, 단일한 설정이 인자만 다르게 여러 번 나타나면, 마지막으로 유효한 인자가 우선 순위를 가진다. 지원되는 command.mode 설정은 다음과 같다:
filter - 키워드 인자와 yes 그리고 no를 받는다
현재, groupundo를 제외하고 모든 것은 이름이 비슷한 개별 특성에 기반한다. 그래서 여기에서는 따로 설정하지 않는다. groupundo 설정은 subsystem 3과 작동하며 (lua / director), SciTE가 명령어에 의한 변경을 단 한개의 언두 조치로 취급해야 한다는 것을 나타낸다. groupundo 설정을 사용하는 명령어는 편집기에서 활성 상태인 버퍼에 영향을 미치지 않는다.quiet - 키워드 인자와 yes 그리고 no를 받는다 replaceselection - yes, no, 그리고 auto를 받는다 savebefore - yes, no, 그리고 prompt를 받는다 subsystem - console, windows, shellexec, lua, director, winhelp, htmlhelp groupundo - yes 또는 no command.shortcut 특성으로 그 명령어에 대하여 키보드 단축키를 지정할 수 있다. 기본값으로, 0에서 9까지의 명령어는 각각 단축키 Ctrl+0에서부터 Ctrl+9까지를 가진다. 그러나 이것을 덮어쓸 수 있다. 9가 넘는 명령어는 기본 설정된 단축키가 없다. 단축키를 지정하는데 사용되는 표기법은 user.shortcuts 특성에 대한 표기법과 같다. 명령어의 텍스트가 '*'으로 시작하면 매개변수 대화상자가 화면에 나타나 명령어를 실행하기 전에 매개변수를 넣기를 재촉한다. 제일 앞의 '*'는 실행될 명령어에 포함되지 않는다. 명령어 번호는 범위가 0부터 49이다. 0에서 9까지의 명령어 번호는 Ctrl+숫자 단축키에 할당되어 있다. 내부적으로 이런 명령어들은 1100 (IDM_TOOLS)부터 시작하는 아이디를 사용한다. 이 범위의 명령어들은 user.shortcuts 그리고 user.context.menu에 사용할 수 있다: user.context.menu=Indent|1100|
command.name이 비어 있다면 어떤 항목도 도구 메뉴에 추가되지 않는다. 이것은 문맥 메뉴나 사용자 단축키에만 있는 명령어에 사용될 수 있다.
참조 :명령어 리스트 |
||||||||||||||||||||||||||||||||||||||||
command.help.filepattern command.help.subsystem.filepattern |
F1을 눌러서 도움말을 요청하면 실행될 명령어를 정의한다. 윈도우즈에서 이 특성은 위에 기술한 바와 같이 종종 subsystem 4를 사용한다. 리눅스에서는 man이나 브라우저를 실행하는 것이 통상적으로 도움말을 보여주는 방식이다. 커서 위치의 단어가 $(CurrentWord)로 복사되고 이것은 종종 도움말 어플리케이션에 건넬 좋은 인자이다. subsystem 특성은 다른 명령어에 작동하는 방식과 똑같이 작동한다. | ||||||||||||||||||||||||||||||||||||||||
command.scite.help command.scite.help.subsystem |
SciTE 프로그램에 대한 도움말에 실행될 명령어를 정의한다. 보통 이 파일을 브라우저에 보여준다. | ||||||||||||||||||||||||||||||||||||||||
command.print.filepattern command.print.subsystem.filepattern |
GTK+ 2에서 인쇄가 요청되면 실행될 명령어를 정의한다. 윈도우즈와 GTK+ 3.x에서는 SciTE가 직접 인쇄를 수행한다. | ||||||||||||||||||||||||||||||||||||||||
time.commands | 명령어가 완료되면, 그에 걸린 시간을 초단위로 인쇄한다. | ||||||||||||||||||||||||||||||||||||||||
print.magnification | 인쇄는 보통 화면과 설정이 같다. 더 크게 또든 더 작게 인쇄하려면, print.magnification 설정에 인쇄될 때 폰트의 크기를 추가한다. 텍스트를 적절하게 축소하려면, print.magnification을 -4로 설정하자. | ||||||||||||||||||||||||||||||||||||||||
print.colour.mode | 화면에서는 검정 배경에 하얀 텍스트를 선호하지만 종이에서는 하얀 배경에 검정 텍스트를 선호하는 사람이 있다. print.colour.mode가 1로 설정되면 각 색깔은 보색화되어 인쇄된다. 2로 설정되면 흰색 배경에 검정 텍스트로 인쇄된다. 설정이 3이면 배경을 흰색으로 만들고 4이면 기본 배경색을 흰색으로 만든다. | ||||||||||||||||||||||||||||||||||||||||
print.margins | 윈도우즈에서 프린터에 기본 여백을 좌 우 상 하 순서로 지정한다. 단위는 로케일에 따라 다르다. 밀리미터의 100분의 1이나 인치의 1000분의 1이 사용된다. 페이지 설정 대화상자에서 어느 단위가 사용되는지 볼 수 있다.이 특성은 시작할 때만 읽는다. | ||||||||||||||||||||||||||||||||||||||||
print.header.format print.footer.format |
이 설정은 헤더와 푸터로 무엇이든 있다면 무엇을 인쇄할지 결정한다. 특성 설정은 $(property) 구문을 사용하여 값으로 교체할 수 있다. 인쇄하는 동안 설정되는 특성이 또 있다: CurrentPage, FileTime, FileDate, CurrentDate, 그리고 CurrentTime (인쇄가 시작될 때). 헤더와 푸터에 공통으로 사용될 특성은 FileNameExt과 FilePath이다. 헤더 설정은 다음과 같다:
print.header.format=$(FileNameExt) - Printed on $(CurrentDate),$(CurrentTime) - Page $(CurrentPage)
|
||||||||||||||||||||||||||||||||||||||||
print.header.style print.footer.style |
이 설정은 SciTE의 다른 스타일과 같은 형식을 사용하여 헤더와 푸터의 스타일을 결정한다. 오직 fore, back, font, size, bold, italics, 그리고 underlined 속성만 지원된다. | ||||||||||||||||||||||||||||||||||||||||
export.keep.ext | 이 특성은 반출할 때 적절한 반출 형식 확장자를 포함시키기 위하여 어떻게 파일 이름이 변형되어야 하는지 결정한다 (예를 들어, LineMarker.cxx) - HTML이라면 .html 그리고 RTF에는 .rtf. 기본값으로 export.keep.ext이 0이면, 현재 확장자가 교체된다 (LineMarker.html). 설정이 1이면, 반출 포맷 확장자가 추가된다 (LineMarker.cxx.html). 설정이 2이면 마지막 '.'이 '_'로 교체되고 반출 포맷 확장자가 추가된다 (LineMarker_cxx.html). | ||||||||||||||||||||||||||||||||||||||||
export.html.wysiwyg export.html.tabs export.html.folding export.html.styleused export.html.title.fullpath |
export.html.wysiwyg이 0이면 HTML 파일을 반출할 경우 파일은 더 작지만 완전히 지정되지 않기 때문에 화면에는 모습이 좀 다를 수 있다.
export.html.tabs이 1이고 export.html.wysiwyg이 0이면 파일 안의 탭 문자는 공간 문자 연속이 아니라 탭 문자로 반출된다. export.html.folding을 1로 설정하면 반출된 파일은 CSS를 잘 지원하는 브라우저에서 접을 수 있다 (Mozilla 그리고 Internet Explorer). export.html.styleused 설정이 1이면 실제로 사용되는 스타일만 반출한다. export.html.title.fullpath가 1이면 파일 이름 대신에 완전한 파일 경로가 제목에 보여진다. |
||||||||||||||||||||||||||||||||||||||||
export.rtf.wysiwyg export.rtf.tabs export.rtf.font.face export.rtf.font.size export.rtf.tabsize |
export.rtf.wysiwyg 설정이 0이면 RTF 파일로 반출할 경우 파일은 더 작게 생성되지만 완전히 지정이 되지 않기 때문에 화면에 보이는 것과 좀 다르게 보인다. export.rtf.tabs이 1로 설정되 있고 export.rtf.wysiwyg가 0으로 설정되어 있으면 파일 안의 탭 문자들이 공간 문자 연속이 아니라 탭 문자로 반출된다. export.rtf.font.face와 export.rtf.font.size는 반출되는 RTF 파일에 특정한 폰트와 크기를 선택하는데 사용할 수 있다. export.rtf.tabsize는 탭크기 설정에 정의된 크기와 다르게 다양한 탭 크기를 설정하는데 사용할 수 있다. |
||||||||||||||||||||||||||||||||||||||||
export.pdf.magnification export.pdf.font export.pdf.pagesize export.pdf.margins |
export.pdf.magnification는 사용중인 기본 화면 스타일의 폰트 크기에 추가되는 값이다. 양수 값은 PDF 문서의 폰트 크기가 커지고, 음수 값은 그 반대다. export.pdf.font는 기본 PDF 폰트 중 하나인 한-단어 매개변수를 받는다: Courier, Helvetica 또는 Times. Helvetica가 기본값이다. Helvetica 그리고 Times는 줄이 접히지 않고, Courier는 줄이 접힌다. export.pdf.pagesize는 문서 페이지 크기를 설정하는데 사용한다. 포인트 (1인치의 1/72)를 단위로 사용한다. 예를 들어, Letter paper (8.5 inch x 11 inch)는 612,792 값을 사용하여 지정한다. export.pdf.margins은 페이지 여백의 너비를 설정한다. 여백은 기본값이 72 포인트, 즉 1 인치이다. PDF 반출기는 어쩔 수 없이 규격에 제한이 있다. 왜냐하면 PDF는 문서 저장 포맷이기 때문이다. 완전하게 규격을 지원하려면 SciTE가 터져 버릴 것이다. 복잡하게 폰트를 배치하고 비율을 조정하지 않는 한 적절하게 Helvetica나 Times를 싸넣는 일은 불가능하다. 생산된 PDF는 WinAnsiEncoding을 사용한다. 그래서 확장 문자를 사용하고 싶다면, 미리-인코딩이 완료되어야 비로서 PDF로 반출할 수 있다. |
||||||||||||||||||||||||||||||||||||||||
export.tex.title.fullpath | export.tex.title.fullpath 설정이 1이면 그 파일 이름만 아니라 파일의 완전한 경로 이름이 제목에 보여진다. | ||||||||||||||||||||||||||||||||||||||||
export.xml.collapse.spaces export.xml.collapse.lines |
이 두 특성은 어떻게 연속되는 빈 줄과 공간 문자들이 XML로 변환되어야 할지 제어하는 플래그이다. 1이면 활성화된다. 탭 문자는 언제나 탭크기 특성에 맞추어 공간문자로 XML 반출기에 의하여 변환된다. | ||||||||||||||||||||||||||||||||||||||||
fold | fold=1이면 접기 활성화. | ||||||||||||||||||||||||||||||||||||||||
fold.symbols | fold.symbols 설정은 접기를 보여주는 네가지 방식중 하나를 선택한다. 설정이 0 (기본값)이면 MacOS 스타일 화살표로 수축 (위로 향함) 팽창 (아래로 향함)을 나타낸다; 설정이 1이면 수축 접기는 "+"로 팽창은 "-"로 보여준다; 2로 설정하면 둥근 헤더와 둥근 접합부를 가진 수축 트리 콘트롤을 보여준다; 설정이 3이면 사각 헤더를 가진 수축 트리 콘트롤을 보여준다. | ||||||||||||||||||||||||||||||||||||||||
fold.fore fold.back |
접기에 색깔을 설정한다. fold.fore는 윤곽선에 색깔을 설정하고 fold.back은 내부에 색을 채운다. 8-자리 값은 투명도도 설정한다: #FF00007F라면 반투명 빨강색이다. | ||||||||||||||||||||||||||||||||||||||||
fold.stroke.width | 접기 심볼의 스트로크 너비를 한 픽셀의 백분단위로 설정한다. 기본 값은 100으로서 표준 디스플레이에 적당하지만, 고해상도 DPI 디스플레이라면 200이 더 좋을 수도 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.margin.width | 접기 여백의 너비를 설정한다. | ||||||||||||||||||||||||||||||||||||||||
fold.margin.colour fold.margin.highlight.colour |
이 두 특성은 접기 여백 색깔과 접기 여백 강조 색깔을 정의한다. (왼쪽에 주석 처리되어) 정의되어 있지 않으면 접기 여백에 대한 색깔은 합리적인 한 쌍의 색깔이 기본값이 된다. 윈도우즈에서는 접기 여백을 스크롤바의 배경처럼 보이도록 만들기 위해 시스템 색깔이 사용된다. 예를 들어, fold.margin.colour=#FF0000 그리고 fold.margin.highlight.colour=#0000FF이라면, 접기 여백은 빨강과 파랑의 혼합색이다. | ||||||||||||||||||||||||||||||||||||||||
fold.on.open | 적재되면 자동으로 파일을 접으려면 fold.on.open을 1로 설정한다. | ||||||||||||||||||||||||||||||||||||||||
fold.flags | 실제로는 문서화 되어 있지 않음 ;) 비트 플래그로서 제거될 가능성이 있다. 2, 4, 8, 그리고 16은 확대되거나 축소될 때 접힌 줄들 위와 아래에 줄을 그리는 것을 제어한다. 64로 설정하면 여백에 16진수로 접기 수준을 보여주기 때문에 접기를 디버그하는데 도움을 줄 수 있다. | ||||||||||||||||||||||||||||||||||||||||
fold.line.colour | fold.flags으로 지정된 줄들에 색을 설정한다. 6자지수 색상 (#FF3020) 그리고 8 자리 컬러와 알파 (#FF302040)를 지원한다. | ||||||||||||||||||||||||||||||||||||||||
fold.compact |
HTML, XML, Lua 그리고 C++ 종류의 파일들에 대해서, 이 옵션을 켜면 한 원소 다음에 빈 줄이 오면 그 원소를 접는다. 기본 값은 활성 상태이다. | ||||||||||||||||||||||||||||||||||||||||
fold.highlight |
1로 설정하면 현재 접힌 구역을 강조할 수 있다 (캐럿이 있는 가장 작은 구역). 기본값은 비활성 상태이다. 주의 : 강조는 오직 fold.symbols가 2 (동그라미) 또는 3 (네모)일 경우에만 활성화된다. | ||||||||||||||||||||||||||||||||||||||||
fold.highlight.colour |
강조색을 정의한다. 기본 값은 빨간색이다 (#FF0000). 8-자리 값은 투명도도 설정할 수 있다. | ||||||||||||||||||||||||||||||||||||||||
title.full.path | 제목 막대에 파일이름이 표시되는 방법을 선택한다. 0 (기본값)이면 파일 이름이 표시된다. 1이면 완전한 경로가 표시된다. 2이면 창 제목에 "파일이름 in 디렉토리" 형태로 표현된다. | ||||||||||||||||||||||||||||||||||||||||
title.show.buffers | 1로 설정되면 현재 버퍼 번호가 제목 막대에 나타난다. | ||||||||||||||||||||||||||||||||||||||||
tabsize tab.size.filepattern indent.size indent.size.filepattern use.tabs use.tabs.filepattern indent.auto tab.indents backspace.unindents |
기본 스타일 정의에 있는 공간 문자 크기의 배수로 탭의 크기를 설정한다. 들여쓰기 크기는 자동 들여쓰기를 수행할 때 사용할 크기이다. 탭 크기와 다를 수 있다. 많은 사람들이 탭 크기를 8로 사용하지만 들여쓰기는 4 문자이다. 들여쓰기를 할 때, use.tabs가 들여쓰기를 순수하게 공간 문자로 구성할지 아니면 가능하면 탭을 많이 사용하여 탭과 공간문자를 섞어서 구성할지 결정한다. 전역적인 tabsize, indent.size, 그리고 use.tabs 특성은 파일 패턴에 부합하는 파일에 대하여 오버라이드가 가능하다:
indent.size.*.pas=3
indent.auto가 설정되어 있으면 indent.size와 use.tabs가 열린 문서의 내용에 맞추어 설정된다.특성 파일 설정은 새로 열린 파일에 적용되지만 일단 그 파일이 열리면 들여쓰기 설정 바꾸기 대화상자로 바꾸지 않는 한 여전히 유지된다. tab.indents가 설정되어 있으면 들여쓰기 공간 안에서 탭을 누를 경우 탭 문자를 삽입하는 것이 아니라 indent.size 크기 만큼 들여쓰기 된다. backspace.unindents가 설정되면 들여쓰기 공간 안에서 백스페이스를 누를 경우 캐럿 앞의 문자를 지우는 것이 아니라 indent.size 크기 만큼 내어쓰기 된다. |
||||||||||||||||||||||||||||||||||||||||
indent.automatic indent.opening indent.closing indent.maintain.filepattern |
자동 들여쓰기의 모습을 결정한다. 자동 들여쓰기는 indent.automatic=1로 켜진다.
복합 서술문이 시작된 후 괄호 줄을 들여쓰기 하려면 indent.opening=1로 설정하고, 닫기 괄호도 마찬가지로 설정한다. 그래서 둘 모두 0으로 설정하면:
if (c)
그리고 둘 모두 1로 설정하면:
{ s; }
if (c)
indent.maintain.filepattern=1로 설정하면 자동 들여쓰기는 어떤 파일들에 대해서 앞 줄의 들여쓰기를 단순히 반복하도록 바꿀 수도 있다. 이 설정은 언어 종속적인 다른 설정을 오버라이드한다.
{ s; } |
||||||||||||||||||||||||||||||||||||||||
statement.indent.filepattern statement.end.filepattern statement.lookback.filepattern block.start.filepattern block.end.filepattern |
이 설정들은 스타일 번호로 시작하고 단어나 문자 집합에서 그 특징을 인식하는 법을 정의한다. 설정에서 두 번째 공간 문자가 있으면 그것은 단어 집합이고, 그렇지 않으면 문자 집합이다. 복합 서술문의 시작을 알리는데 사용되는 키워드 집합은 statement.indent에 정의된다. 예를 들어:
statement.indent.$(file.patterns.cpp)=5 if else while
위 문장은 C++에 대하여 "if"와 "else" 그리고 "while" 단어가 키워드 스타일 5번으로 복합 서술문을 시작한다는 뜻이다. 다른 요인이 영향을 미치지 않는 다면 다음 줄이 들여쓰기 된다. 그렇지만 서술문 끝이 같은 줄에서 발견되면 다음 줄은 들여쓰기 되지 않는다. C++에 대하여 서술문 끝은 연산자 스타일의 쌍반점이다. 그래서 다음과 같이 정의된다:
statement.end.$(file.patterns.cpp)=10 ;
들여쓰기를 결정하기 위해 살펴보는 줄의 개수는 statement.lookback으로 설정할 수 있다. 이 특성은 이 작업에 사용되는 시간의 양을 제한하는데 사용되거나 들여쓰기에 마지막 줄만 조사하라고 지정하는데 사용된다.block.start와 block.end 특성은 서술문 그룹을 괄호치는데 사용되는 언어 요소를 정의한다. C++에서 이런 요소는 '{' 그리고 '}'이다. |
||||||||||||||||||||||||||||||||||||||||
indent.python.colon | 파이썬에서, 앞 줄이 ':'으로 끝나면 자동으로 한 단계 만큼 들여쓰기 된다. 주석과 공백문자들은 무시한다. 그렇지 않으면 앞 줄과 같은 수준에 들여쓰기 된다. 이 특성은 다른 들여쓰기 설정들을 덮어쓴다. | ||||||||||||||||||||||||||||||||||||||||
os.x.home.end.keys | Home 키와 End 키에 대하여 표준 macOS 행위를 선택한다. 이 키들은 파일의 처음 또는 끝으로 가는데 사용된다. 이 설정은 vc.home.key 보다 우선순위가 높다. | ||||||||||||||||||||||||||||||||||||||||
vc.home.key | Home 키와 Shift+Home 키의 행위를 선택한다. 1은 기본값으로서 마치 Visual C++처럼 캐럿을 줄 들여쓰기의 처음으로 이동시킨다. 줄 들여쓰기가 아직 없다면 캐럿을 줄의 처음으로 이동시킨다. 0은 줄의 처음으로 이동한다. | ||||||||||||||||||||||||||||||||||||||||
warning.findwrapped warning.notfound warning.wrongfile warning.executeok warning.executeko warning.nootherbookmark |
윈도우즈에서 특정한 사건이 일어나면 소리를 연주하고 창을 번쩍거리게 할 수 있다. 값은 ','로 분리된 세 가지 항목으로 구성된다: 플래시 지속시간과 소리 그리고 소리 지속시간이 그것이다. 소리가가 숫자이면 그 숫자는 피치로 간주되고 그 만큼의 밀리초 동안 연주된다. 그렇지 않으면 연주되는 소리 파일에 대한 경로로 취급한다. 플래시를 원하지 않으면, 0을 플래시 지속시간에 설정하자.
예를 들어
warning.wrongfile=0,C:\Windows\Media\SFX\Glass.wav
열 파일 이름을 잘못 주면 Glass.wav가 연주된다. findwrapped 경고는 찾기 연산이 파일의 끝을 넘어설 때 일어난다. notfound 경고는 찾기나 전처리기 조건 이동 명령어가 일치를 발견하지 못하면 일어난다. executeok는 빌드 같은 명령어가 성공적으로 실행되면 일어난다. executeko 경고는 명령어가 실패할 때 일어난다. nootherbookmark 경고는 책갈피가 하나도 발견되지 않으면 일어난다.
|
||||||||||||||||||||||||||||||||||||||||
fileselector.width fileselector.height |
GTK+ 버전에서 열기 그리고 저장 명령어로 요청되는 파일 선택 대화상자의 초기 크기를 결정한다. 윈도우즈에서는 설정해 봐야 효과가 없다. | ||||||||||||||||||||||||||||||||||||||||
fileselector.show.hidden | GTK+ 설정에서 1로 설정되면 열기 명령어로 요청되는 파일 선택 대화상자가 숨은 파일을 자동으로 보여준다. | ||||||||||||||||||||||||||||||||||||||||
locale.properties |
지역화 파일의 이름을 설정한다. 다중-사용자 설치를 위하여 이 설정으로 각 사용자는 선호하는 사용자 인터페이스 언어를 설정할 수 있다.
macOS에서, 언어들에 대한 지역화 파일은 사용자 홈 디렉토리 밑의 하위 translations 디렉토리에 설치된다. 예를 들어 독일어에 대한 사용자 인터페이스는 다음과 같이 설정한다.
locale.properties=$(SciteUserHome)/translations/locale.de.properties |
||||||||||||||||||||||||||||||||||||||||
translation.missing | 지역화된 버전을 사용할 때, locale.properties 번역 파일에서 용어가 발견되지 않으면 대신에 translation.missing의 값을 사용한다. 이를 "***"와 같은 표식으로 설정하면 어느 곳에서 용어에 대한 번역이 제공되지 않는지 쉽게 알 수 있다. | ||||||||||||||||||||||||||||||||||||||||
menu.language |
언어 메뉴의 항목과 그에 연관된 파일 확장자를 정의한다. 각 메뉴 항목은 세개의 요소로 정의된다. 언어 이름과 확장자 그리고 선택적인 키보드 동등물로 구성된다. 각 요소는 '|'으로 끝난다. 예를 들어: H&ypertext|html|F12| 메뉴 항목은 이름 앞에 '#'로 주석 처리할 수 있다. 이 설정에 대한 기본 값은 모든 *language 설정을 조합해 구성된다. 이 값은 SciTE가 시작할 때 한 번만 읽는다. 그래서 변경하려면 SciTE를 다시 시작해야 한다. |
||||||||||||||||||||||||||||||||||||||||
*language.name | 언어 메뉴에 값이 포함되도록 설정한다. menu.language의 기본값으로 사용된다. 예를 들어, *language.ruby=Ruby|rb|F9|는 "Ruby" 항목을 언어 메뉴에 추가한다. 이것은 "rb" 파일 확장장에 짝지어지고 F9 키로 선택할 수 있다. 하나 이상의 언어를 변수 하나에 정의해도 된다. 설정에 반드시 세 개의 '|' 문자가 여러 벌 있어야 한다. | ||||||||||||||||||||||||||||||||||||||||
menukey.* |
menukey.* 설정으로 사용자는 메뉴에 대한 가속 키를 재정의할 수 있다. 힘들여서 SciTE 소스 코드를 수정할 필요가 없다. 설정 구문은 아래와 같다:
menukey.menu_title.menu_name=<modifier>key
예를 들어, File | Exit 명령어 가속키는 다음과 같이 지정할 수 있다:
menukey.file.exit=<control>Q
메뉴 타이틀과 이름에서 공간문자는 반드시 밑줄로 변환하고 뒤에 붙는 생략기호는 제거해야 한다는 것에 주목하자. 예를 들어 "File | Save As...."라면 "menukey.file.save_as"로 가리킨다.
수식자를 여럿 지정해도 된다. 각 수식자는 물론 옆꺽쇠로 둘러 싸야 한다. 인식되는 수식자는 위에 기술한 user.shortcuts 설정에 대한 것과 같다. 인식하는 이름 키도 user.shortcuts와 같다. "none"을 추가하면 가속키가 특정 메뉴에 정의되지 않음을 가리킨다. |
||||||||||||||||||||||||||||||||||||||||
source.default.extensions |
명령어 줄에 지정된 이름이 디렉토리나 파일에서 발견되지 않으면 - 만능 문자 검색을 포함하여, 특성의 내용이 파일 이름을 찾는데 사용될 기본 확장자로 취급된다. 예를 들어: .cxx|.cpp|.c|.hxx|.hpp|.h|.bat|.txt|.lua win32\SciTEWin를 열려고 하면 win32\SciTEWin.cxx이 열린다. 왜냐하면 win32\SciTEWin.h 보다 먼저 부합하기 때문이다. 특성에 Bar.cxx|.cxx와 같은 엔트리가 들어 있고 win32\SciTEWin을 열려고 시도하면, ScTEWinBar.cxx이 열리는데 그 이유는 제일 처음 부합하기 때문이다. |
||||||||||||||||||||||||||||||||||||||||
ext.lua.startup.script ext.lua.auto.reload ext.lua.reset extension.filepattern |
ext.lua 특성은 SciTE Lua 스크립팅 확장에 종속된다. extension.filepattern 특성은 범용 SciTE 확장 인터페이스에 포함되지만 현재는 루아 스크립트 확장에서만 사용된다.
ext.lua.startup.script 특성은 SciTE가 시작할 때 루아를 위한 전역 상태를 설정하기 위하여 적재될 루아 스크립트의 이름을 정의한다. 기본값은 $(SciteUserHome)/SciTEStartup.lua이다. 이 특성에는 절대 경로를 사용해야 한다. 그러나 $(SciteDefaultHome) 또는 $(SciteUserHome) 특성을 참조할 수 있다. 전역 이벤트 처리자와 명령어 함수 뿐만 아니라 기타 함수와 객체는 여기에서 정의할 수 있다. ext.lua.auto.reload 특성은 SciTE 안에서 기동 스크립트를, 또는 현재 작동중인 확장 스크립트를 저장하면 무슨 일이 일어나는지 결정한다. 0으로 설정되어 있으면, 기동 스크립트는 오직 시작 시간에만 또는 (ext.lua.reset의 설정 상태에 따라) 버퍼를 전환할 경우에만 적용된다. 그리고 확장 스크립트를 변경하면 오직 버퍼를 전환할 때만 적용된다. ext.lua.auto.reload가 1로 설정되어 있으면 (기본값), SciTE는 스크립트가 SciTE 안에서 저장되는 즉시 전역 영역을 재-초기화한다. ext.lua.auto.reload가 활성화되어 있더라도, SciTE는 현재 SciTE 실체의 바깥에서 파일이 변했는지 눈치채지 못한다. 그에 관해서는 아래의 ext.lua.reset을 참고하자. ext.lua.reset 특성은 주로 디버깅을 위한 것이다. ext.lua.reset이 0이면 (기본값), 그 기동 스크립트 특성은 오직 한 번만 점검된다 - SciTE가 시작할 때. ext.lua.reset이 1로 바뀌면, SciTE는 버퍼를 전환할 때마다 기동 스크립트 특성을 점검하고, 새로운 기동 스크립트를 재적재한다. 그리하여, ext.lua.auto.reload와는 다른 (더 큰) 부작용이 있다. 어떤 상황에서는 auto.reload와 reset이 모두 활성화되어 있는 것이 맞지만, 보통은 ext.lua.auto.reload 만으로도 충분하다. ext.lua.startup.script 말고도, extension.filepattern 특성은 주어진 파일 유형에 종속적인 함수와 이벤트 처리자를 추가로 적재하는 방법을 제공한다. 확장 특성 값이 .lua로 끝나고 존재하는 파일을 부르면, 루아 확장은 버퍼가 활성화되어 있는 동안 그 스크립트에 정의된 이벤트 처리자와 명령어를 사용할 수 있도록 그 스크립트를 평가한다. ext.lua.startup.script를 통하여 정의된 함수와 객체는 덮여 씌여지지 않는 한, 여전히 접근 가능하다. extension 특성은 또한 주어진 디렉토리에 종속적인 행위를 정의할 수 있다. extension 특성에 파일이름만 (경로 없이) 지정하면, SciTE는 지역 디렉토리에서 시작하여, 표준 특성 파일 위치에서 파일을 찾는다. 이 특성은 지역 SciTE.properties 파일과 함께 사용하면 유용하다. 참조 : 루아 API, 널쪽 사용방법, 루아 스크립팅, 루아 시작 스크립트 |
||||||||||||||||||||||||||||||||||||||||
caret.sticky | 줄에서 캐럿의 최종 위치가 언제 변경될지 제어한다. 1로 설정되면, 문자나 탭을 타자할 때, 클립보드 내용을 붙이거나 백스페이스를 누를 때 마지막 위치가 수정되지 않는다. 기본값은 0이고 이 특징이 꺼져 있다. | ||||||||||||||||||||||||||||||||||||||||
properties.directory.enable | 디렉토리 특성 파일의 평가를 활성화하거나 비활성화한다. 기본값은 0이고 평가는 비활성화된다. 다른 값들은 이 특성 파일을 활성화한다. | ||||||||||||||||||||||||||||||||||||||||
editor.config.enable | 다음의 EditorConfig 정의를 따라 .editorconfig 파일의 정의와 평가를 활성화한다 기본값은 0이며 평가를 비활성화한다. | ||||||||||||||||||||||||||||||||||||||||
save.path.suggestion |
이름없는 파일을 새로 만들 때 "Save" 명령어에 대하여 설정된 이름과 디렉토리를 제시해 준다.
디렉토리는 반드시 존재해야 한다. (이 설정은 "Save As (다른 이름으로 저장)" 명령어에 영향을 미치지 않는다).
save.path.suggestion 설정은 다음과 같이 $(SciteUserHome) 경로에 상대적으로 정의하거나 아니면 전체 경로를 정의할 수 있다:
save.path.suggestion=$(SciteUserHome)\Notes\note_$(TimeStamp).txt
디렉토리 구분자로서 정사선("/")과 역사선("\")을 모두 받는다.$(TimeStamp)를 지정하면 14문자 짜리의 실제 시간도장으로 교체된다. |
caret.policy.{x|y}<param> 상호작용:
slop | strict | jumps | even | 캐럿이 여백으로 갈 수 있는가 | 한계에 도달할 때 (보이지 않게 될 때 즉, UZ로 들어가면) 화면은... |
---|---|---|---|---|---|
0 | 0 | 0 | 0 | 가능 | 캐럿이 우/상에 배치되도록 이동한다. |
0 | 0 | 0 | 1 | 가능 | 한 위치씩 이동한다 |
0 | 0 | 1 | 0 | 가능 | 캐럿이 우/상에 배치되도록 이동한다. |
0 | 0 | 1 | 1 | 가능 | 캐럿이 중앙에 온다 |
0 | 1 | - | 0 | 캐럿은 언제나 화면의 위/오른쪽에 위치한다 | - |
0 | 1 | - | 1 | 불가, 캐럿은 언제나 가운데에 위치한다 | - |
1 | 0 | 0 | 0 | 가능 | 비대칭적 UZ의 밖에 캐럿이 위치하도록 이동한다 |
1 | 0 | 0 | 1 | 가능 | 캐럿이 UZ를 벗어나도록 이동한다 |
1 | 0 | 1 | 0 | 가능 | 캐럿이 오른쪽 여백이나 상단의 3UZ 거리만큼 떨어지게 이동한다 |
1 | 0 | 1 | 1 | 가능 | 캐럿이 여백의 3UZ 거리만큼 떨어지도록 이동한다 |
1 | 1 | - | 0 | 캐럿은 언제나 위/오른쪽 여백의 UZ에 위치한다. | - |
1 | 1 | 0 | 1 | 불가, UZ 밖으로 밀려난다 | 한 위치씩 이동한다 |
1 | 1 | 1 | 0 | 불가, UZ 밖으로 밀려난다 | 캐럿이 여백의 3UZ 거리만큼 떨어지도록 이동한다 |
표시자를 정의하는 특성들은 모습이 다음과 같다
구조적으로 속성 사이에는 쉼표를 사용하고 속성의 이름과 값 사이에는 반점을 사용한다:
속성 | 값 | 기본값 |
---|---|---|
style | 순서대로 plain, squiggle, tt, diagonal, strike, hidden, box, roundbox, straightbox, dash, dots, squigglelow, dotbox, squigglepixmap, compositionthin, compositionthick, textfore, gradient, gradientcentre, point, pointcharacter, 또는 pointtop 중. |
plain |
colour 또는 color | #008020과 같이 앞에 '#'이 오는 16진 색상 값. | black |
fillalpha | roundbox와 straightbox 그리고 dotbox를 채울 색 투명도. 범위는 완전 투명한 0에서 부터 완전 불투명한 255까지이다. | 30 |
outlinealpha | roundbox와 straightbox 그리고 dotbox를 그릴 외곽선의 투명도범위는 완전 투명한 0에서 부터 완전 불투명한 255까지이다. | 50 |
under | 표시자가 텍스트 아래에 그려진다. | no |
notunder | 표시자가 텍스트 위에 그려진다. | yes |
샘플:
표식자를 정의하는 특성은 다음과 같은 모습이다.
속성 | 값 | 기본값 |
---|---|---|
style | 다음 circle, roundrect, arrow, smallrect, shortarrow, empty, arrowdown,
minus, plus, vline, lcorner, tcorner, boxplus, boxplusconnected,
boxminus, boxminusconnected, lcornercurve, tcornercurve,
circleplus, circleplusconnected, circleminus, circleminusconnected,
background, dotdotdot, arrows, fullrect, leftrect,
underline, bookmark, verticalbookmark, 또는 bar 중 하나이다. |
circle |
colour or color or fore | 앞에 '#'가 붙는 16진 알파 값, 예 #008020. | black |
back | 앞에 '#'가 붙는 16진 알파 값, 예 #008020. | white |
기존에 지원되는 언어와 아주 비슷한 언어라면, 사용되는 키워드와 같이 아주 사소한 특징만 다르다면, 기존의 어휘분석기를 재사용할 수 있는 경우가 많다. 키워드 집합은 새로운 언어에 맞도록 바꿀 수 있다. 자바와 자바스크립트는 C++ 어휘분석기를 상당부분 재사용할 수 있다. 자바 어휘분석기에는 문서 주석만 추가되었을 뿐이다.
기존의 어휘분석기를 적용할 수 없는 언어라면, C++로 새로 구문 분석기를 코드할 수 있다. Lexilla 안으로 구축해 넣거나, 아니면 외부 모듈로 두고 SciTE가 실행되면 적재할 수 있다. lexilla.path를 참조하라.
open.filter를 수정하여 새로운 언어에 사용되는 파일 확장자를 포함시키고 그 언어에 대하여 command.compile, command.build, command.go 그리고 command.go.needs에 엔트리를 추가해야 한다.
.api 파일은 손수 만들거나 프로그램으로 만들 수 있다. 내려 받아서 바로 쓸 수 있는 .api 파일도 있다.
C/C++ 헤더에 대하여 API 파일을 만들 수 있다. ctags를 사용한 다음 그 태그 파일에 tags2api 파이썬 스크립트를 적용해서 (C/C++ 소스라고 가정함) 완전한 다중 라인 함수 원형 목록을 얻으면 된다. __P 마크로로 매개변수 리스트를 둘러싸는 헤더가 있으며 그 안에 주석이 있을 수 있다. 이런 파일에는 cleanapi 유틸리티를 사용할 수 있다.
파이썬 모듈을 위하여 API 파일을 만들려면, gen_python 스크립트가 있다.
자바 클래스용 API 파일을 만들려면 ApiBuilder.java 프로그램이 있다.
이 명령어는 편집판이나 출력판에서 선택된 파일 이름을 연다. 현재 선택을 사용하거나 캐럿 주위를 검색하여 경로에 보통 사용되고 있는 문자들에 기반하여 파일 이름을 찾는다. 확장자가 없으면 open.suffix 특성을 사용하여 현재 파일에서 확장자를 추론한다. 기본값은 .properties 파일의 .properties이다. 파일 이름 다음에 숫자가 따라오면 (ctags, grep 출력, 또는 Visual Studio 메시지와 형태가 비슷함) 열린 파일에 그 줄이 표시된다. 파일 이름이 절대 경로이면 곧바로 열리고 그렇지 않으면 현재 디렉토리를 먼저 찾고, 다음으로 openpath 특성에 지정된 디렉토리에서 찾는다. 윈도우즈에서, web와 ftp 그리고 mail과 뉴스 URL은 연관된 어플리케이션을 열어서 처리한다.
SciTE는 다른 언어로 번역할 수 있으며 번역되어 있다.
SciTE를 빌드하고 설치하는 절차는 scite 디렉토리에 있는 README 파일에 기술되어 있다.
SciTE에 대하여 공식 확장 인터페이스가 두 가지 있다. SciTE 확장 인터페이스는 코드를 SciTE 실행화일 안으로 컴파일 해 넣어 SciTE를 확장하기 위한 것이고 SciTE 디렉터 인터페이스는 윈도우즈에서 다른 어플리케이션에서 SciTE를 조작하기 위한 것이다.