XTERM(1)

이름
xterm - X 용 터미날 에뮬레이터

사용법
xterm [-툴킷옵션 ...] [-옵션 ...]

설명
xterm 풀그림은 X 윈도우 시스템을 위한 터미날 에뮬레이터이다. 이것은 윈도우 시스템을 바로 사용할 수 없는 풀그림들을 위해, DEC VT102나 Tektronix 4014 호환 터미날을 제공한다. underlying operating system(?)이 터미날 크기변경 기능을 지원한다면 (예를 들어, 4.3bsd 시스템을 바탕으로 개발된 시스템에서의 SIGWINCH 시그날), xterm은 창 크기가 바뀔 때 마다, 그 창에서 실행중인 풀그림을 알리기위해 편의를 제공한다.

VT102와 Tektronix 4014 터미날은 각각 자신의 창을 가지고 있어, 하나의 창에서 텍스트 편집을 하고, 다른 창에서 그래픽 형식으로 동시에 볼 수 있다. 창의 적당한 가로 세로 비율을 유지하려면, Tektronix 그래픽은 그 창에 채워질 4014의 가로 세로 비율 만큼의 가장 큰 상자로 제한될 것이다. 이 상자는 창의 좌측 상단에 있다.

두 창을 동시에 볼 수는 있지만, 글쇠판 입력과 출력을 위한 창은 그들 중 하나만이 활상화 된다. 활성화 된 창이란 커서가 있는 창을 말한다. 활성화 된 창을 바꾸는 방법은 ctrl글쇠를 누르고 다람쥐 중간 단추를 누르면 VT102 창에서는 "VT Options" 차림표가, 4014 창에서는 "Tek Options" 차림표가 나타나는데, 여기서 활성화된 창을 바꾼다.

EMULATIONS
VT102 에뮬레이션은 거의 완벽하지만, 부드러운 스크롤 기능, VT52 모드, 두배 넓거나, 두배 큰 문자 셋이 아닌 문자들의 깜빡임 속성들은 지원하지 않는다. Termcap(5) 파일에서 xterm이 사용하는 부분은 ``xterm,'' ``vt102,'' ``vt100'' and ``ansi,''이며, 자동으로 ``TERM'' 환경변수와 ``TERMCAP'' 환경 변수를 사용해 적당한 터미날값을 찾는다.

xterm의 특별한 기능들 중 대부분은 풀그림 실행중에, ctrl글쇠를 누른 상태에서 다람쥐 가운데 단추를 눌러 보여지는 차림표 항목에서 바꿀 수 있다. (자세한 이야기는 Xterm Control Sequences 문서를 참조한다.)

Tektronix 4014 에뮬레이션 또한 좋은 편이다. 여기서는 12비트 그래픽 주소 처리와 창 크기 변경 기능도 지원한다. 또한 네가지 다른 글꼴 크기와 다섯가지 다른 줄 형태를 지원하다. 쓰기 금지 기능이나, 백그라운드 실행모드(defacused mode)도 지원한다. Tektronix 텍스트와 그래픽 명령들은 내부적으로 xterm에 의해서 기록되고, "Tek Options" 차림표 항목의 COPY 명령으로 파일로 쓰여질 수 있다. 파일의 이름은 ``COPYyy-MM-dd.hh:mm:ss'' 이런 형태를 가 되며, yy, MM, dd, hh, mm, ss 에는 COPY 명령이 수행될 당시 시스템의 시간이 기록된다. 그 파일의 위치는 xterm을 시작한 그 경로안에 있게 된다.

OTHER FEATURES
xterm은 현재 창이 활성화 되어 있을 경우에는 자동으로 커서에 있는 문자가 역상이되고 비활성화 상태에는 다시 보통 문자로 바뀐다.

VT102 모드에서는, 궁극적인 스크린 버퍼에서 메뉴가 호출되거나, 다시 원상복귀한다. 궁극적인 스크린 버퍼란, 현재 창의 디스플레이 영역 만큼의 크기를 가진 버퍼를 말한다. 메뉴가 호출되면, 현제 스크린은 저정되고, 궁극적인 스크린으로 바뀐다. 일반적인 문서 편집기인 vi (1)를 사용할 때, 문서 편집을 위한 화면 전환을 하도록 하고, vi (1)가 종료되었을 때, 화면을 복귀하도록 처리하는 부분은 termcap(5) 파일 안에 있다.

VT102 모드나, Tektronix 모드에서, 창의 이름을 바꾸는 기능도 제공하고 있다. 자세한 이야기는 Xterm Control Sequences 문서를 참조한다.

OPTIONS
xterm에서는 표준 X 툴킷 명령행 옵션과 함께 다음 옵션들을 사용할 수 있다. (만약, 아래 옵션에서 `-' 대신에, `+' 옵션이 사용되면, 그것은 초기값을 반대로 함을 의미한다.)

-help
    xterm에서 사용할 수 있는 옵션들과 그것에 대한 설명을 보여주고 마친다.

-132
    일반적으로 80칸과 132칸을 전환하는 VT102 DECCOLM 기능을 전환한다. 이 옵션은 DECCOLM 기능을 인식하며, 창 크기는 적당하게 조절된다.

-ah 항상 커서가 위치한 곳의 글자를 역상 시킨다. 이렇게 하면, 창이 활성화 상태건 비활성화 상태건 상관없이 항상 커서가 있는 곳은 역상된다.

+ah 이 옵션은 창이 활성화 되었을 때면 커서가 위치한 곳의 글자를 역상 시킨다.

-b number
    창의 테두리 두께를 지정한 "숫자"의 픽셀만큼으로 지정한다. 초기값은 2이다.

-cb vt100 리소스 cutToBeginningOfLine의 값을 FALSE로 지정한다.

+cb vt100 리소스 cutToBeginningOfLine의 값을 TRUE로 지정한다.

-cc characterclassrange:value[,...]
    This sets classes indicated by the given ranges for using in selecting by words. 아래 CHARACTER CLASSES 부분을 참조한다.

-cn line-mode 선택에서 새 줄이 잘려지지 않게 지정한다.

+cn line-mode 선택에서 새 줄이 짤려지게 지정한다.

-cr color
    텍스트 커서의 색깔을 지정한다. 초기값은 텍스트의 전경색(글자색)이다.

-cu 옛 버전의 curses(3x) 함수를 사용하는 more(1) 에서 한 줄의 길이가 창의 가로 길이와 똑같을 경우와, 첫칸에 탭 문자이 있을 경우 그 라인들을 제대로 못하는 벌레가 있는데, 이런 문제가 발생할 경우 이 옵션을 사용한다.

+cu 이 옵션은 그냥 벌레에 대해서 무시한다.

-e program [ arguments ... ]
    이 옵션은 xterm이 실행될 때 xterm에서 실행될 풀그림을 지정한다. 이러면, 바로 지정한 풀그림이 실행되고, 그 풀그림을 끝내면 xterm도 끝나게 된다. 또한 -n이나, -T 옵션을 사용해서, 창의 이름을 따로 지정할 수도 있다. 이 옵션(-e)은 받드시 명령행의 가장 마지막에 와야한다.

-fb font
    이 옵션은 xterm에서 사용할 굵은 글자의 글꼴을 지정한다. 이 글꼴은 보통 글자 글꼴의 세로, 가로 길이가 같아야한다. 만약, 보통 글꼴이나, 굵은 글꼴 중 하나만을 지정하면, 지정된 그 글꼴은 보통 글자 글꼴로 지정되고, 굵은 글자는 그 글꼴을 확대해서 사용한다. 초기값은 굵은 글자 글꼴을 따로 지정하지 않고, 보통 글자 글꼴을 확대해서 사용한다.

-im useInsertMode 리소스 on

+im useInsertMode 리소스 off

-j  이 옵션은 xterm이 점프 스크롤을 할 수 있게 한다. 보통, 텍스트는 한번에 한 줄씩 스크롤 된다; 이 옵션은 xterm에서 한번에 여러 줄을 스크롤할 수 있게 한다. 이것은 많은 양의 문서를 읽을 때, 해당 부분으로 건더 뛰기 할 때, 보다 빠르게 작동하기 위해서 사용한다. 또한 이 기능은 "VT Options" 차림표에서 실행중에도 직접 제어 할 수 있다.

+j  점프 스크롤 기능을 사용하지 않는다.

-ls 이 옵션은 xterm이 로그인 쉘로써 사용되게 한다. 이 말은 로그인 할 때에 실행되는 .login, .profile 같은 초기화 파일들을 함께 실행한다는 것을 의미한다.

+ls 이 옵션은 로그인 쉘로 사용하지 않고 단지 하위 쉘로 사용할 때 사용된다. (초기값)

-mb 이 옵션은 커서가 줄의 오른쪽 끝에 오게 되면 벨 소리를 나게한다. "VT Options" 차림표에서 이옵션은 제어 할 수 있다.

+mb 이 옵션은 윗 기능을 불가 상태로 한다(초기값).

-mc milliseconds
    다람쥐의 두번 연속 찍기 인식 최대 시간을 지정한다.

-ms color
    다람쥐 커서의 색깔을 지정한다. 초기값은 전경색(글자색)이다.

-nb number
    커서가 줄의 오른쪽 끝에 왔을 때, 소리를 낼 문자의 숫자를 지정한다. -mb 옵션이 지정된 경우, 여기서 지정한 문자를 표준 출력으로 보낸다. 초기값은 10(bell)이다.

-rw reverse-wraparound(?)를 사용 가능 상태로 지시한다. 이것은 커서가 어떤 줄의 첫 칸에 있을 때, 이때, 왼쪽으로 이동하거나, 그 왼쪽 글자를 삭제하는 명령이 있을 경우, 그 윗줄의 맨 끝을 대상으로 이루워지게 한다. 이 옵션은 명령행에서 아주 긴 명령조합을 편집하는데 유용하게 사용된다. 이 옵션은 "VT Option" 차림표에서도 지정할 수 있다.

+rw reverse-wraparound 기능 사용을 금지 한다.

-aw 이 옵션은 자동 줄바꿈 기능 사용을 허용한다. 한 문장의 길이가 화면의 최대 가로길이보다 클 경우, 단어 별로 잘려 나머지는 다음 줄에 표시하게 한다.

+aw 이 옵션은 자동 줄바꿈 기능 사용을 금지 한다.

-s  이옵션은 스크롤을 비동기적으로(asynchronously)으로 하게 한다. 이 말은 화면이 스크롤 되는 동안 계속해서 갱신되지 않게 한다. 이 옵션은 네트워킹에서 사용할 때 유용하게 쓰인다. 즉, 전송속도가 늦을 경우에 전형적으로 쓰인다.

+s  윗 옵션의 반대 기능으로 스크롤을 동기적으로 하게 한다.

-sb 창 한편에 스크롤 막대를 보인다. 지나간 화면은 메모리에 저장되고, 스크롤 막대로 지나간 화면을 볼 수 있다. 이 옵션은 ``VT Options'' 차림표에서 바꿀 수 있다.

+sb 스크롤 막대를 보이지 않게 한다.

-sf 이 옵션은 기능글쇠(Function key)를 위해, Sun 기능글쇠 escape code 가 만들어지도록 한다.

+sf 이 옵션은 기능글쇠(Function key)를 위해, 표준 기능글쇠 escape code 가 만들어지도록 한다.

-si 이 옵션은 자동 스크롤 기능을 금지 시킨다. 화면이 맨 밑에서 글이 나타나더라도 스크롤 되지 않는다. 이 옵션은 "VT Options" 차림표에서도 지정할 수 있다.

+si 이 옵션은 자동 스크롤 기능 사용을 허용한다.

-sk 이 옵션은 스크롤 막대를 사용해 지나간 글을 볼 때, 글쇠가 눌려지면, 자동으로 현재 화면으로 돌아오게 한다.

+sk 이 옵션은 스크롤 막대를 사용해 지나간 글을 볼 때, 글쇠가 눌려져도 화면 이동을 하지 않는다.

-sl number
    스크롤할 때 지나간 화면의 기억량을 줄 수로 지정한다. 초기값은 64줄이다.

-t  이 옵션은 xterm 시작 시, VT102 모드로 시작하는 것이 아니라, Tektronix 모드로 시작하도록 한다. 물론 다람쥐 가운데 단추와 Ctrl 글쇠를 함께 눌러 만들어지는 차림표에서 이 두 모드의 전환이 가능하다.

+t  이 옵션은 xterm 시작 시, VT102 모드로 시작하도록 한다.

-tm string
    이 옵션은 string인 터미날 설정 키워드를 사용해 터미날 환경을 지정한다. 이 옵션은 stty 명령과 비슷한 역활을 한다. 사용할 수 있는 키워드는 intr, quit, erase, kill, eof, eol, swtch, start, stop, brk, susp, dsusp, rprnt, flush, weras, lnext 이다. 제어 문자는 ^글자와 함께 지정된다(예, ^c, ^u). ^?는 delete를 지시하게 될 것이다.

-tn 이름
    이 옵션은 환경 변수 TERM 값을 이름으로 바꾼다. 즉 터미날 형태를 이름으로 지정한 터미날 형태로 바꾼다. 이 이름은 반드시 termcap(5) 파일안에 li# 와 co# 항목에서 정의되어 있는 것이여야 한다.

-ut 이 옵션은 시스템 기록 파일인 /etc/utmp 파일의 기록을 생각하게 한다.

+ut 이 옵션은 시스템 기록 파일인 /etc/utmp 파일의 기록을 하게 한다.

-vb Ctrl-G 문자인 벨 소리를 나게 한다. 즉, ^G 출력 있을 경우 이것을 스피커 소리로 나게 한다.

+vb 벨 소리를 나지 않게 한다.

-wf 이 옵션은 서브프로세스를 시작하기 전에 첫번째로 창이 map되기를(창의 크기와 위치를 정하고 메모리를 할당하는 작업) 기다린다. 그래서, 초기의 터미날 환경과 환경 변수들이 바뀌어진다. 이 옵션은 xterm에서 실행되는 풀그림들이 그 바뀐 터미날의 크기에 대해서 반응하도록 한다.

+wf 서브프로세스를 시작하기 전에 xterm은 기다리지 않는다.

-C  이 옵션은 이 창이 콘솔 출력을 받도록 한다. 이 옵션은 모든 시스템에서 지원되는 것은 아니다. 콘솔 출력을 얻으려면, 먼저 사용자가 콘솔 장치의(/dev/console) 소유주여야하며, 그 장치가 쓰기 권한이 부여되어 있어야한다. 콘솔 화면의 xdm 상태에서 xterm을 실행킨다면, 먼저 세션 startup을 실행해야하고, 콘솔 장치의 파일 권한과 소유주 관계를 다시 정의하는 부분이 있어야한다.

-Sccn
    이 옵션에서 사용되는 앞의 두 글자는 문자형으로 slave 모드에서 사용되는 의사터미날(pseudoterminal)의 이름을 뜻하고, 마지막에 오는 한 글자는 숫자형으로 상속받는 파일 기술자(descriptor)의 번호를 뜻한다. 즉 이옵션의 인자 형식은 ``%c%c%d''이다. 이 옵션은 xterm이 존재하는 풀그림을 위해 입출력 채널로서 사용되는 것을 허락하고, 가끔, 특정 풀그림 안에서 사용할 수 있게 한다.

다음의 명령행 인자들은 옛버전의 호환을 위해서 제공하고 있다. 만일 최신 버전의 X Toolkit에서는 이런 옵션을 지원하지 않을 수도 있다.

%geom
    Tektronix 창의 크기와 위치 지정. ``*tekGeometry'' 리소스로도 지정이 가능하다.

#geom
    아이콘 창의 크기와 위치 지정. ``*iconGeometry'' 리소스로도 지정이 가능하다.

-T string
    윈도우 관리자에서 실행될 경우 창 제목을 string으로 지정한다. 이 옵션은 -title 옵션과 같은 기능을 한다.

-n string
    윈도우 관리자로 xterm을 실행시켜, 아이콘화 했을 경우, 그 아이콘의 이름으로 나타날 것을 string으로 지정한다. ``*iconName'' 리소스로도 이 문자열을 지정할 수 있다. 이 옵션은 아래에서 설명할 -name 툴킷 옵션과는 다르다는 것을 주의. 초기값은 풀그림의 이름을 아이콘 이름으로 사용한다.

-r  글자색과 배경색을 바꾼다(역상시킨다). 이 옵션은 -rv 옵션과 같은 기능을 한다.

-w number
    창의 테두리 폭을 number 픽셀로 지정한다. 이 옵션은 -borderwidth나 -bw 옵션과 같은 기능을 한다. (참고: 윈도우 관리자를 사용할 경우에는 이 옵션은 무시된다 - 옮긴이 말)

다음은 xterm에서 사용되는 일반적인 X 툴킷 옵션들이다:

-bg color
    배경색을 color로 지정. 초기값은 ``white''

-bd color
    창 테두리 색을 color로 지정. 초기값은 ``black.''

-bw number
    창 테두리 넓이를 number 픽셀로 지정.

-fg color
    글자색을 color로 지정. 초기값은 ``black.''

-fn font
    사용할 글꼴을 font로 지정. 초기값은 fixed.

-name name
    실행 파일 이름 대신 사용할 이름을 name으로 지정. name에는 ``.'' 또는 ``*'' 문자를 사용할 수 없다.

-title string
    윈도우 관리자에서 실행될 때 보여질 창 제목을 string으로 지정. 초기값은 실행파일 이름이다. 즉 -e 옵션 다음에 사용될 실행파일 이름이나, 이 옵션을 사용하지 않으면, 이 풀그림의 실행때 사용한 실행파일이름이다.

-rv 전경색(글자색)과 배경색을 바꾼다.

-geometry geometry
    VT102 창 크기와 위치를 geometry로 지정. 자세한 사항은 X(1) 매뉴얼 참조.

-display display
    연결한 X 서버를 display로 지정. 자세한 사항은 X(1) 매뉴얼 참조.

-xrm resourcestring
    사용할 리소스를 resourcestring으로 지정.

-iconic
    윈도우 관리자에서 실행될 경우 아이콘 형식으로 실행되게 한다.

리소스
대부분의 기본 X 툴킷 리소스를 다음과 같이 지원한다:

iconGeometry (class IconGeometry)
    풀그림이 아이콘형태로 실행될 때의 그 크기와 위치. 이값은 모든 윈도우 관리자에서 필요한 것은 아니다.

iconName (class IconName)
    아이콘 이름 지정. 초기값은 풀그림 이름.

termName (class TermName)
    환경변수 TERM 값을 지정한다.

title (class Title)
    이 풀그림이 윈도우 관리자에 의해서 실행될 때 그 창 제목을 지정한다.

ttyModes (class TtyModes)
    명령행 옵션 -tm 기능을 한다. 자세한 이야기는 이 옵션 설명을 참조한다.

useInsertMode (class UseInsertMode)
    TERMCAP 환경 변수 값을 강제로 바꾸어 insert 모드를 사용한다. 이것은 시스템 termcap이 손상되었을 때 유용하게 쓰인다. 초기값은 ``false.''

utmpInhibit (class UtmpInhibit)
    /etc/utmp 파일에 현재 사용을 기록할 것인지를 지정한다.

sunFunctionKeys (class SunFunctionKeys)
    표준 escape 처리 대신에 Sun Function Key escape 코드값을 사용할 것인지를 지정한다.

waitForMap (class WaitForMap)
    하위프로세스를 시작하기 전에 창의 map을 초기화하기 위해 기다릴 것인지를 지정한다. 초기값은 ``false.''

다음 리소스들은 vt100 위젯 (VT100 클래스)에서 사용된다.

allowSendEvents (class AllowSendEvents)
    글쇠가 눌려지는 것이나 다람쥐 단추가 눌려지는 여러 이벤트들이 (X 프로토콜 SendEvent 조사를 사용함으로 생성됨) 외부에 알릴 것인지를 지정한다. 초기값은 ``false.'' 이것은 자체적으로 해결한다는 뜻이다. 이 값은 ``true''로 지정된다면, 심각한 보안상의 위험을 초래할 수도 있다.

alwaysHighlight (class AlwaysHighlight)
    커서가 있는 곳을 항상 밝게 보여줄 것인지를 지정한다. 초기값으로는 xterm 창이 활성화 되거나 입력가능상태일때만, 커서가 밝게 나타난다.

appcursorDefault (class AppcursorDefault)
    이 값이 ``true''면, 커서 키가 원래, 풀그림 모드안에 있게 된다. 초기값은 ``false.''

appkeypadDefault (class AppkeypadDefault)
    이 값이 ``true''면, keypad key가 원래, 풀그림 모드안에 있게 된다. 초기값은 ``false.''

autoWrap (class AutoWrap)
    자동 줄바꿈 기능 지정. 초기값은 "true"

bellSuppressTime (class BellSuppressTime)
    벨 소리가 나기 시작한후 몇초 뒤에 다시 벨 소리를 나게 할 것인가를 지정한다. 단위는 밀리초. 이 말은 연속해서 벨 소리가 날 때, 그 간격을 말한다. 이런 값이 지정되는 이유는 앞의 벨 소리가 미치 나기도 전에 다음 벨 소리가 나고, 또 그다음... 이런 식으로 해서 벨 소리를 제대로 듣지 못하는 것을 방지하기 위해서다.

boldFont (class BoldFont)
    글자 속성이 굵은 문자인 경우 그것을 보여줄 글꼴 지정.

c132 (class C132)
    VT102 DECCOLM escape 처리를 지원할 것인지를 지정한다. 초기값은 ``false.''

cutNewline (class CutNewline)
    false면, 화면을 초과하는 줄일을 보일 때, 줄나눔을 하지 않는다. true면, 줄나눔을 한다. 초기값은 ``true.''

cutToBeginningOfLine (class CutToBeginningOfLine)
    다람쥐 단추를 세번 연속해서 누를 경우, 그 전체를 선택, 복사할 것인지를 지정. false면, 현재 커서가 있는 단어부터 그줄 끝까지만 선택된다. 초기값은 ``true.''

charClass (class CharClass)
    [low-]high:value 형식으로 지정되는 문자 클래스의 쉼표(,)로 나열된 목록을 지정한다. 자세한 이야기는 아래의 CHARACTER CLASSES 부분을 참조한다.

curses (class Curses)
    more (1) 안의 벌레를 무시할 것인지 말 것인지를 지정한다. more (1) 벌레에 대한 자세한 사항은 -cu 옵션에서 다루고 있다. 초기값은 ``false.''

background (class Background)
    창 배경색 지정. 초기값은 ``white.''

foreground (class Foreground)
    글자색(전경색) 지정. 초기값은 ``black.''

cursorColor (class Foreground)
    텍스트 커서의 색깔 지정. 초기값은 ``black.''

eightBitInput (class EightBitInput)
    true면, 글쇠판으로부터 입력되는 메타문자들을 단일문자(1바이트), 8비트로 그대로 처리하고, false면, 메타문자를 ESC 문자를 앞세운 2바이트문자로 처리한다. 초기값은 ``true.''

eightBitOutput (class EightBitOutput)
    8비트 문자 출력 허용 여부를 지정한다. 초기값은 ``true.''

font (class Font)
    보통 글꼴 지정. 초기값은 ``fixed.''

font1 (class Font1)
    첫번째 다른 글꼴 지정.

font2 (class Font2)
    두번째 다른 글꼴 지정

font3 (class Font3)
    세번째 다른 글꼴 지정

font4 (class Font4)
    네번째 다른 글꼴 지정

font5 (class Font5)
    다섯번째 다른 글꼴 지정

font6 (class Font6)
    여섯번째 다른 글꼴 지정

geometry (class Geometry)
    VT102 창의 위치와 크기를 지정.

hpLowerleftBugCompat (class HpLowerleftBugCompat)
    이 값이 ``true''면, HP의 xdb 벌레인 termcap 관련 문제에서 termcap의 지정값을 무시고, 아래 왼쪽으로 이동하기 위해 항상 ESC F를 보낸다. 초기값은 ``false.''

internalBorder (class BorderWidth)
    글자들과 창 테두리 사이의 간격을 픽셀값으로 지정. 초기값은 2

jumpScroll (class JumpScroll)
    점프 스크롤을 할 것인지를 지정한다. 초기값은 ``true.'' 자세한 이야기는 -j 옵션 설명을 참조한다.

loginShell (class LoginShell)
    로그인 쉘로 실행하게 한다. 초기값은 ``false.''

marginBell (class MarginBell)
    창의 오른쪽 경계에 오면 벨 소리를 낼 것인지 지정한다. 초기값은 ``false.''

multiClickTime (class MultiClickTime)
    두번 연속해서 찍기(multi-click) 이벤트로 인식하게 하는 최대 시간값 지정. 초기값은 250 밀리초.

multiScroll (class MultiScroll)
    비동기적으로(asynchronously) 스크롤 할 것인지를 지정한다. 초기값은 ``false.''

nMarginBell (class Column)
    벨 소리를 낼 수 있을 때, 벨 소리를 나게할 오른쪽 경계 칸 숫자를 지정한다.

pointerColor (class Foreground)
    창이 활성화 될 때의 전경색(글자색)을 지정한다. 초기값은 ``XtDefaultForeground.''

pointerColorBackground (class Background)
    창이 활성화 될 때의 배경색을 지정한다. 초기값은 ``XtDefaultBackground.''

pointerShape (class Cursor)
    창이 활성화 될 때의 이름. 초기값은 ``xterm.''

resizeGravity (class ResizeGravity)
    이것은 창 크기가 바뀌었을 때, 창 안에 있는 내용이 어떻게 다시 보여질 것인가에 대해서 지정한다. 사용되는 값은 NorthWest, SouthWest (초기값)인데, NorthWest 인 경우는 창이 줄어들 경우 윗줄이 가려지고, 창이 크질 경우 빈줄이 아래에 추가 된다. SouthWest 인 경우는 창이 줄어들 경우 아랫줄이 가려지고, 창이 크질 경우 윗줄의 내용이 더 보여진다.

reverseVideo (class ReverseVideo)
    역상시킬 것인지를 지정한다. 초기값은 ``false.''

reverseWrap (class ReverseWrap)
    reverse-wraparound 기능을 사용할 것인지를 지정한다. 초기값은 ``false.''

saveLines (class SaveLines)
    스크롤 최대 저장 줄 수. 초기값은 64줄.

scrollBar (class ScrollBar)
    스크롤막대를 보일 것인지 지정. 초기값은 ``false.''

scrollTtyOutput (class ScrollCond)
    지나간 화면을 보는 중에 화면 출력이 있으면, 현재 작업 화면으로 돌아올 것인지를 지정한다. 초기값은 ``true.''

scrollKey (class ScrollCond)
    지나간 화면을 보는 중에 입력이 있으면, 자동으로 현재 작업 화면으로 돌아올 것인지를 지정한다. 초기값은 ``false.''

scrollLines (class ScrollLines)
    scroll-forw, scroll-back 액션으로 스크롤 되는 줄 수. 초기값은 1줄.

signalInhibit (class SignalInhibit)
    시그날 금지. ``Main Options'' 차림표에서 이값을 바꿀 수 있다. 초기값은 ``false.''

tekGeometry (class Geometry)
    Tektronix 창의 크기와 위치 지정.

tekInhibit (class TekInhibit)
    true면 Tektronix 모드 접근을 금지한다. 초기값은 ``false.''

tekSmall (class TekSmall)
    true 면, Tektronix 모드 창이 그 크기와 위치가 지정되지 않았다면, 가장 작은 크기로 보여지게 한다. 이것은 xterm을 작게 보이고자 할 때 유용하게 쓰인다. 초기값은 ``false.''

tekStartup (class TekStartup)
    xterm을 Tektronix 모드로 시작할 것인지 지정. 초기값은 ``false.''

titeInhibit (class TiteInhibit)
    TERMCAP 값에 의해 ti, te 문자열이 사용되면, 이것을 없앨 것인지를 지정한다.

translations (class Translations)
    글쇠와 다람쥐 단추 지정 리소스. 자세한 사항은 아래, ACTIONS 부분을 참조한다.

visualBell (class VisualBell)
    벨 소리 대신 화면 깜빡임을 사용할 것인지를 지정한다. 초기값은 ``false.''

다음 리소스들은 tek4014 위젯에서 사용된다.

width (class Width)
    Tektronix 창의 가로 길이를 픽셀값으로 지정.

height (class Height)
    Tektronix 창의 세로 길이를 픽셀값으로 지정.

fontLarge (class Font)
    Tektronix 창의 큰 글꼴 지정

font2 (class Font)
    두번째 글꼴 지정

font3 (class Font)
    세번째 글골 지정

fontSmall (class Font)
    작은 글꼴 지정.

initialFont (class InitialFont)
    초기값으로 사용될 글꼴 지정. 초기값은 ``large.'' 이 값은 set-tek-text 액션으로 바꿀 수 있다.

ginTerminator (class GinTerminator)
    이 리소스는 GIN 보고나, 상태 보고를 할 때 사용할 문자를 지정하는데, 사용할 수 있는 값은 ``none,'' ``CRonly,'' ``CR&EOT'' 이다. none은 마침 문자 없음, CRonly는 CR만 보냄, CR&EOT는 CR과 EOT 함께 보냄을 의미한다. 초기값은 ``none.''

다음에 오는 리소스들은 xterm 창에서 Ctrl 글쇠를 누르고 다람쥐 단추를 눌렀을 때 나타나는 각종 차림표 항목들과 관련된 것들이다. 자세한 이야기는 Athena SimpleMenu 위젯에서 다루고 있다.

mainMenu 부분:

securekbd (class SmeBSB)
    secure() 액션 호출.

allowsends (class SmeBSB)
    allow-send-events(toggle) 액션 호출.

redraw (class SmeBSB)
    redraw() 액션 호출.

line1 (class SmeLine)
    줄 첨가.

suspend (class SmeBSB)
    job 제어를 지원하는 시스템에서 사용할 수 있는 send-signal(tstp) 액션 호출.

continue (class SmeBSB)
    send-signal(cont) 액션 호출.

interrupt (class SmeBSB)
    send-signal(int) 액션 호출.

hangup (class SmeBSB)
    send-signal(hup) 액션 호출.

terminate (class SmeBSB)
    send-signal(term) 액션 호출.

kill (class SmeBSB)
    send-signal(kill) 액션 호출.

line2 (class SmeLine)
    줄 첨가.

quit (class SmeBSB)
    quit() 액션 호출.

vtMenu 부분:

scrollbar (class SmeBSB)
    set-scrollbar(toggle) 액션 호출.

jumpscroll (class SmeBSB)
    set-jumpscroll(toggle) 액션 호출.

reversevideo (class SmeBSB)
    set-reverse-video(toggle) 액션 호출.

autowrap (class SmeBSB)
    set-autowrap(toggle) 액션 호출.

reversewrap (class SmeBSB)
    set-reversewrap(toggle) 액션 호출.

autolinefeed (class SmeBSB)
    set-autolinefeed(toggle) 액션 호출.

appcursor (class SmeBSB)
    set-appcursor(toggle) 액션 호출.

appkeypad (class SmeBSB)
    set-appkeypad(toggle) 액션 호출.

scrollkey (class SmeBSB)
    set-scroll-on-key(toggle) 액션 호출.

scrollttyoutput (class SmeBSB)
    set-scroll-on-tty-output(toggle) 액션 호출.

allow132 (class SmeBSB)
    set-allow132(toggle) 액션 호출.

cursesemul (class SmeBSB)
    set-cursesemul(toggle) 액션 호출.

visualbell (class SmeBSB)
    set-visualbell(toggle) 액션 호출.

marginbell (class SmeBSB)
    set-marginbell(toggle) 액션 호출.

altscreen (class SmeBSB)
    이 부분은 현재 사용불가 상태이다.

line1 (class SmeLine)
    줄 삽입.

softreset (class SmeBSB)
    soft-reset() 액션 호출.

hardreset (class SmeBSB)
    hard-reset() 액션 호출.

clearsavedlines (class SmeBSB)"
    clear-saved-lines() 액션 호출.

line2 (class SmeLine)
    줄 삽입.

tekshow (class SmeBSB)
    set-visibility(tek,toggle) 액션 호출.

tekmode (class SmeBSB)
    set-terminal-type(tek) 액션 호출.

vthide (class SmeBSB)
    set-visibility(vt,off) 액션 호출.

fontMenu 부분:

fontdefault (class SmeBSB)
    set-vt-font(d) 액션 호출.

font1 (class SmeBSB)
    set-vt-font(1) 액션 호출.

font2 (class SmeBSB)
    set-vt-font(2) 액션 호출.

font3 (class SmeBSB)
    set-vt-font(3) 액션 호출.

font4 (class SmeBSB)
    set-vt-font(4) 액션 호출.

font5 (class SmeBSB)
    set-vt-font(5) 액션 호출.

font6 (class SmeBSB)
    set-vt-font(6) 액션 호출.

fontescape (class SmeBSB)
    set-vt-font(e) 액션 호출.

fontsel (class SmeBSB)
    set-vt-font(s) 액션 호출.

tekMenu 부분:

tektextlarge (class SmeBSB)
    set-tek-text(l) 액션 호출.

tektext2 (class SmeBSB)
    set-tek-text(2) 액션 호출.

tektext3 (class SmeBSB)
    set-tek-text(3) 액션 호출.

tektextsmall (class SmeBSB)
    set-tek-text(s) 액션 호출.

line1 (class SmeLine)
    줄 삽입.

tekpage (class SmeBSB)
    tek-page() 액션 호출.

tekreset (class SmeBSB)
    tek-reset() 액션 호출.

tekcopy (class SmeBSB)
    tek-copy() 액션 호출.

line2 (class SmeLine)
    줄 삽입.

vtshow (class SmeBSB)
    set-visibility(vt,toggle) 액션 호출.

vtmode (class SmeBSB)
    set-terminal-type(vt) 액션 호출.

tekhide (class SmeBSB)
    set-visibility(tek,toggle) 액션 호출.

Athena Scrollbar 위젯을 위한 유용한 리소스들:

thickness (class Thickness)
    스크롤 막대의 가로 길이 픽셀값 지정.

background (class Background)
    스크롤 막대의 배경색 지정.

foreground (class Foreground)
    스크롤 막대의 전경색 지정. Xaw일 경우는 이 전경색과 배경색이 서로 섞겨서 스크롤 막대의 색이 된다.

다람쥐 사용법

xterm의 VT102 창에서는 그 창에 보여지는 내용들(글자들)을 선택하고, 복사해서 다른 창에 붙히기를 할 수 있다.

선택 기능은 다람쥐를 사용할 때 글쇠 조합을 하지 않고 사용할 때나, ``shift'' 글쇠를 사용할 때 호출된다. 이런 각 글쇠나 다람쥐 단추의 그 기능별 지정은 리소스 데이터베이스를 통해 바꿀 수 있다. 자세한 이야기는 ACTIONS 부분에서 하고 있다.

다람쥐 왼쪽 단추는 텍스트를 cut 버퍼로 저장하는데 사용된다. 영역의 선택은 다람쥐 왼쪽 단추를 눌러 끌어 놓기를 하면된다. 이렇게 하면, 끌려진 부분은 역상으로 보여지며, 그 부분이 버퍼에 저장된다. 왼쪽 단추 두번 연속해서 누르면, 한 단어가 선택, 복사되고, 세번 연속해서 누르면 다람쥐 커서가 있는 그줄 전체가 선택, 복사된다. 연속 누름인지 판단하는 것은 그 연속해서 누르는 시간에 의해서 정해진다. 이런 부분에 대한 자세한 이야기는 X (3) 매뉴얼 페이지를 참조한다. 이렇게 선택되어 역상으로 보여지는 부분은 다른 선택 영역이 지정되기 전까지 그대로 유지된다.

다람쥐 가운데 단추는 선택 영역의 내용을 입력 부분에서 그대로 복사한다. 즉, 마치 직접 사용자가 그 내용을 입력한것 처럼 할 수 있다.

다람쥐 오른쪽 단추는 현재 영역을 확장하는데 사용된다. 눈에 보이지는 않지만, 다람쥐 왼쪽 단추가 처음 한번 눌려진 장소가 선택 영역의 시작점이 된다. 그리고, 다람쥐 오른쪽 단추가 눌려지는 장소가 선택 영역의 마지막 점이 된다. 즉, 이미 선택 영역이 있다면, 그 선택영역의 확장이나 축소하는데, 다람쥐 오른쪽 단추를 사용할 수 있다.

이런 선택, 복사, 붙히기 기능은 텍스트 기반으로 하는 각종 다른 풀그림에서도 사용되어 질 수 있다. 굳이 같은 창이 아니어도 된다. 즉, 한쪽 창에서의 출력 글과를 다람쥐로 사용해서 선택 복사한 후, 그것을 다른 쪽 창에서 편집기를 열어, 그곳에 붙힐 수 있다. 이때 줄 바꿈 문자(일반적으로 Enter)도 그대로 복사, 붙히기가 된다. 이말은 한 명령이 텍스트에 보여질 때, 줄 바꿈 문자로 끝나게 된다면, 그 줄바꿈 문자까지 복사를 해서 쉘 프롬프트 상에서 붙히기를 하면, 그대로 실행될 수 있다는 이야기다.

그러면, 하나의 팁으로 이미 스크롤 되어 화면에 보여지지 않는 내용부터 현재까지의 내용을 모두 복사해서 텍스트 파일로 저장하는 방법을 구현해 보자.

먼저 스크롤 막대를 다람쥐로 눌러 스크롤 영역의 시작점으로 간뒤, 그 부분의 첫줄 컷칸에 다람쥐 왼쪽 단추를 한번만 누른다.

다음 스크롤 막대를 움직여 다시 현재 화면으로 돌아온 후, 다람쥐 오른쪽 단추를 한번만 누르면, 스크롤 전제 영역이 선택된다. (이때 주의할 점은 왼쪽 단추를 한번 누른 후 다시 다른 곳에서 왼쪽 다르면 그 선택 영역의 시작점이 바뀌어 버린다.)

다음 편집기를 열어서 그곳에서 다람쥐 가운데 단추를 누르면, 스크롤의 전체 영역이 편집기에 나타난다.

Tektronix 창에서는 VT102 창과 달리, 이 선택, 복사, 붙히기 기능을 제공하지 않는다. 이것은 Tektronix GIN 모드를 허락하고, 이 모드에서는 다람쥐 커서가 화살표로 보여진다. 이 창에서는 다람쥐의 단추가 각각 `l', `m', `r' 문자로 처리되고, `shift'를 누르고 단추를 누르면, 각각 대문자로 처리된다. 그런데, 일반 글쇠와 다람쥐 단추 누름으로 생성되는 문자들의 구분은 최상위 비트로 판단한다. 하지만, Tektronix 터미날 모드에서는 사용될 수 없기에 이런 기능을 제공하지 못한다. 자세한 이야기는 tty(4) 매뉴얼을 참조한다.

차림표

Xterm에서는 mainMenu, vtMenu, fontMenu, tekMenu 이름을 가진 네개의 차림표를 제공하고 있다. 각 차림표는 Ctrl 글쇠와 각 다람쥐 단추를 함께 누름으로 호출된다. 대부분의 항목들은 xterm의 환경들을 전환(On/Off)하는 기능을 하고 있으며, mainMenu의 항목목들은 VT102, Tektronix 창 모두에서 사용된다. The Secure Keyboard 모드는 보안이 보장되지 않는 환경에서 비밀번호나, 기타 비밀이 보장되어야 하는 내용을 입력할 때 사용된다. 자세한 이야기는 아래 보안 부분을 참조. Allow SendEvents 모드는 xterm에서 발생하는 각종 이벤트들을 외부에 알릴 것인지를 지정한다. 다음에 나는 Continue, Suspend, Interrupt, Hangup, Terminate, Kill 항목들은 각각 SIGCONT, SIGTSTP, SIGINT, SIGHUP, SIGTERM, SIGKILL 시그날을 xterm을 상위 프로세스 그룹으로한 각각의 하위 프로세스들에게 보낸다. Continue(SIGCONT) 기능은 프로세스 보류기능인 Ctrl-Z 가 눌려져 현재 보류되고 있는 프로세스를 다시 진행하는데 유용하게 쓰인다.

vtMenu 차림표에서는 VT102 에뮬래이션에 대한 각종 기능들을 제어할 수 있다. 이 차림표는 Ctrl 글쇠를 누르고 다람쥐 가운데 단추를 누름으로 호출된다. 이 차림표에 있는 각종 기능들은 xterm에서 실행되는 각 풀그림들에 따라 자주 바뀌어야 하는 하는 기능들을 제공하고 있다. 가령, 어떤 풀그림에서는 역상(reverse) 일때가 보다 보기 좋고, 어떤 풀그림에서는 보통일 때가 보기 좋을 때가 있다. 이럴 때, xterm 실행 도중에 언제든지 이 값을 바꿀 수 있도록 여기서 제공하고 있다.

fontMenu 차림표에서는 VT102 창에서 사용할 글꼴을 바꿀 수 있다. 이 차림표는 Ctrl 글쇠를 누르고 다람쥐 오른쪽 단추를 누름으로 호출 된다.

tekMenu 차림표에서는 Tektronix 에뮬래이션에서 사용할 수 있는 각종 기능들을 제어할 수 있다. 이 차림표는 Ctrl 글쇠를 누르고 Tektronix 창에서 다람쥐 가운데 단추를 누름으로 호출된다. 차림표 안의 PAGE 항목은 화면을 깨끗이 지우는데 사용된다.

보안

X 시스템에서는 보안문제에 대해서 개념이 약간 다르다. xdm으로 돌아가는 대부분의 서버는 권한 부여에 대해서 ``magic cookie''라는 것을 사용하는데, 이것은, 많은 사람들을 위한 각각의 보안 차별화를 부여할 수 있다. 만약에 서버의 접근을 제어하기 위한 host-based mechanism(?) 만을 사용한다면(xhost(1) 매뉴얼 참조), 그리고, 현재 사용자도 현재 호스트에 접근이 가능하고, 다른 사용자도 같은 호스트에서 클라이언트를 실행시킬 수 있는 권한이 있다면, 다른 사용자가, 현재 자신이 X 프로토콜로 보내는 신호를 훔쳐볼 수 있게 된다. 이런 상태에서 비밀번호나, 아니면, 보안상의 문제가 있는 내용을 입력해야 할 경우에, xterm에서는 이런 문제를 자체적으로 해결해서, 다른 사용자가 자신의 글쇠입력을 훔쳐보지 못하게 할 수 있다.

xterm 차림표에는 (위의 차림표 참조) Secure Keyboard 항목이 있는데, 이것이 사용가능 상태가 되어 있으면, 글쇠 입력의 내용은 GrabKeyboard protocol 조사를 사용해서, 자체적으로 모든 것을 해결한다. 한 풀그림을 실행한 상태에서 비밀번호를 물어본다든지, 아니면, 보안상의 내용을 입력해야 할 경우에, Secure Keyboard 항목을 선택하고, 그 내용을 입력하고, 다시 Secure Keyboard 항목을 선택해서 이 기능을 사용불가 상태로 만들어 놓아야한다. 만약 이 기능을 계속 사용가능 상태로 해 놓고, 사용하게 된다면, X 서버와 통신을 하지 않는 상태가 되기 때문에, 제대로 동작되지 않을 경우가 발생하기 한다. 이 기능이 사용가능 상태가 되면, 화면은 역상이 된다(전경색과 배경색이 바뀜). 만약에 역상으로 되지 않는다면, 일단 이 기능이 제대로 작동되지 않는다고 의심할 필요가 있다. 이런 경우에는 창을 아이콘으로 만든 후 다시 원래대로 해서 실행해 보기 바란다.

Secure Keyboard 모드는 xterm이 아이콘화 되었을 경우에는 자동으로 사용불가 상태가 된다. 또한 다시 원래 창 크기로 바뀌면, 지정한 대로 그 값이 지정된다. (이것은 xterm에서도 어쩔 수 없는 X 프로토콜의 기능이기 때문이다)

CHARACTER CLASSES
다람쥐 왼쪽 단추를 연속해서 두번 찍으면, 초기값으로, 하나의 단어가 선택된다. - 이 말은 공백문자나, 구두점같은 것이 없는 상태의 연속하는 문자열만을 선택한다는 뜻이다. 그런데, 사용자마다 이 두번찍기로 해서 선택하고자 하는 것이 다를 것이다. 예를 들어, 파일이름에서 이런 공백문자나, 구두점같은 것이 있을 경우, 어떤 사람은 그 파일 전체 이름의 일부분만, 선택되기를 원하고, 또 어떤 사람은 파일 전체가 선택되기를 원할 것이다. 바로 이런 것을 지정하는 것이 charClass 리소스이다.

이 리소스의 값은 range:value 형식으로, 쉼표를 구분해서 여러개 지정할 수 있다. range에는 하나의 숫자나, 시작숫자-끝숫자 형식이 올 수있으며, 여기서 사용될 수 있는 숫자는 ASCII 코드값과 관련이 있다. (아래 테이블 참조) value에는 하나의 숫자가 사용되는데, 이것은 range에서 지정한 문자들과 함께 처리될 문자를 지정한다. (일반적으로 알파벳만을 지정한다.)

초기값으로 지정된 테이블은 다음과 같다.

static int charClass[128] = {
/* NUL  SOH  STX  ETX  EOT  ENQ  ACK  BEL */
    32,   1,   1,   1,   1,   1,   1,   1,
/*  BS   HT   NL   VT   NP   CR   SO   SI */
     1,  32,   1,   1,   1,   1,   1,   1,
/* DLE  DC1  DC2  DC3  DC4  NAK  SYN  ETB */
     1,   1,   1,   1,   1,   1,   1,   1,
/* CAN   EM  SUB  ESC   FS   GS   RS   US */
     1,   1,   1,   1,   1,   1,   1,   1,
/*  SP    !    "    #    $    %    &    ' */
    32,  33,  34,  35,  36,  37,  38,  39,
/*   (    )    *    +    ,    -    .    / */
    40,  41,  42,  43,  44,  45,  46,  47,
/*   0    1    2    3    4    5    6    7 */
    48,  48,  48,  48,  48,  48,  48,  48,
/*   8    9    :    ;    <    =    >    ? */
    48,  48,  58,  59,  60,  61,  62,  63,
/*   @    A    B    C    D    E    F    G */
    64,  48,  48,  48,  48,  48,  48,  48,
/*   H    I    J    K    L    M    N    O */
    48,  48,  48,  48,  48,  48,  48,  48,
/*   P    Q    R    S    T    U    V    W */
    48,  48,  48,  48,  48,  48,  48,  48,
/*   X    Y    Z    [    \    ]    ^    _ */
    48,  48,  48,  91,  92,  93,  94,  48,
/*   `    a    b    c    d    e    f    g */
    96,  48,  48,  48,  48,  48,  48,  48,
/*   h    i    j    k    l    m    n    o */
    48,  48,  48,  48,  48,  48,  48,  48,
/*   p    q    r    s    t    u    v    w */
    48,  48,  48,  48,  48,  48,  48,  48,
/*   x    y    z    {    |    }    ~  DEL */
    48,  48,  48, 123, 124, 125, 126,   1};

예를 들어, ``33:48,37:48,45-47:48,64:48'' 이런 값이 지정된다면, 문자(알파벳)와 함께, !, %, -, ., /, @ 기호들도 함께 선택된다. 이것은 파일이름이나, e-mail 주소 같은 것을 선택하는데 유용하다. (참고로, 아쉽게도 한글 코드에 대한 지정이 없다. 한글에서도 이런 두번찍기 기능이 제대로 작동되려면, 소스를 수정하던지, 아니면, 로케일 문제에 대한 근본적인 해결책이 있어야 할 것 같다 - 옮긴이 말)

ACTIONS
액션이라는 xterm 안에서 일어나는 각종 반응들에 대한 것을 설명한다. 이 액션의 글쇠지정을 바꿈으로 단출글쇠나 다람쥐 단추를 바꿀 수 있으며, 자신만의 고유한 xterm을 꾸밀 수도 있다. 다음에 나오는 액션들은 vt100, tek4014, 변환 리소스에서 사용되어 진다:

bell([percent])
    벨 소리를 냄(^G 문자를 출력한다)

ignore()
    이벤트를 무시하지만, escape 처리의 특별 포인터 위치를 검사한다.

insert()
    문자나, 글쇠가 눌려져 조합되는 문자열을 삽입.

insert-seven-bit()
    insert()와 같은 역활을 하지만 7bit 문자로 처리.

insert-eight-bit()
    8bit 문자로 삽입. 이 액션은 eightBitInput 리소스값에 따라, 다르게 동작할 수도 있다.

insert-selection(sourcename [, ...])
    지정한 cutbuffer의 내용을 삽입. 선택영역으로 사용할 영역은 주로 PRIMARY, SECONDARY, CLIPBOARD 값이 사용되고, cutbuffer의 이름은 주로 CUT_BUFFER0에서 CUT_BUFFER7 값을 가진다.

keymap(name)
    글쇠지정. name 값이 None이면, 초기값으로 되돌림.

popup-menu(menuname)
    차림표 호출. menuname에 사용할 수 있는 값은, mainMenu, vtMenu, fontMenu, tekMenu.

secure()
    mainMenu에서 지정한는 Secure Keyboard 모드를 토클한다.

select-start()
    현재 포인터를 선택영역의 시작으로 지정.

select-extend()
    선택영역 확장. 이 액션은 다람쥐가 움직이고 있을 때 가능하다.

select-end(destname [, ...])
    현재 포인터를 선택영역의 끝으로 지정. 그리고 선택 영역을 destname으로 cut 버퍼에 저장한다.

select-cursor-start()
    select-start와 비슷하나, 여기서는 텍스트 커서가 있는 곳을 시작으로 한다.

select-cursor-end(destname [, ...])
    select-start와 비슷하나, 여기서는 텍스트 커서가 있는 곳을 선택의 끝으로 하고, destname으로 cut 버퍼에 저장한다.

set-vt-font(d/1/2/3/4/5/6/e/s [,normalfont [, boldfont]])
    VT102 창에서 사용할 글꼴 지정. 첫번째 인자는 글꼴 번호. D, 또는 d는 초기값. 1-6이 지정되면, 리소스에서 지정된 각각의 글꼴을 이용한다. E 또는 e는 보통 글씨의 글꼴과 굵은 글씨의 글꼴을 직접 지정해 준다. S 또는 s는 xfontsel(1)과 같은 직접 글꼴 고르기 풀그림을 실행시켜 글꼴을 고른다.

start-extend()
    select-start 액션과 비슷하나, 그 시작점을 현재 포인터 위치로 확장한다.

start-cursor-extend()
    select-start 액션과 비슷하나, 그 시작점을 현재 텍스트 커서가 있는 위치로 확장한다.

string(문자열)
    문자열을 삽입한다. 문자열 사이 공백문자가 있다면, 따움표로 묶어준다. 문자열이 ``0x'' 글자로 시작한다면, 그것은 16진수로 처리된다.

scroll-back(count [,units])
    화면을 count 단위만큼 스크롤 한다. units 인자가 그 단위인데, 여기서 사용할 수 있는 값은, page, 또는 halfpage, pixel, line 이다.

scroll-forw(count [,units])
    scroll-back 액션과 같은 기능을 하나, 그 방향이 반대이다. scroll-back 액션은 이전(위, 뒤)으로 스크롤하며, scroll-forw 액션은 다음(아래, 앞)으로 스크롤 한다.

allow-send-events(on/off/toggle)
    allowSendEvents 리소스 값을 토클시킴.

redraw()
    mainMenu 안의 redraw 항목이 호출 될 때 실행할 화면 갱신.

send-signal(signame)
    시그날 보내기. signame 값으로 사용될 수 있는 것은. suspend, continue, interrupt, hangup, terminate, kill 이다.

quit()
    SIGHUP 시그날을 보내서 하위 풀그림을 종료시킨다.

set-scrollbar(on/off/toggle)
    scrollbar 리소스 값을 지정하거나 전환한다.

set-jumpscroll(on/off/toggle)
    jumpscroll 리소스 값을 지정하거나 전환한다.

set-reverse-video(on/off/toggle)
    reverseVideo 리소스 값을 지정하거나 전환한다.

set-autowrap(on/off/toggle)
    자동 줄 바꿈 기능을 지정하거나 전환한다.

set-reversewrap(on/off/toggle)
    reverseWrap 리소스 값을 지정하거나 전환한다.

set-autolinefeed(on/off/toggle)
    자동으로 linefeed 문자를 삽입하는 기능을 지정하거나 전환한다.

set-appcursor(on/off/toggle)
    Application Cursor Key mode 값을 지정하거나 전환한다.

set-appkeypad(on/off/toggle)
    Application Keypad mode 값을 지정하거나 전환한다.

set-scroll-on-key(on/off/toggle)
    scrollKey 리소스 값을 지정하거나 전환한다.

set-scroll-on-tty-output(on/off/toggle)
    scrollTtyOutput 리소스 값을 지정하거나 전환한다.

set-allow132(on/off/toggle)
    c132 리소스 값을 지정하거나 전환한다.

set-cursesemul(on/off/toggle)
    curses 리소스 값을 지정하거나 전환한다.

set-visual-bell(on/off/toggle)
    visualBell 리소스 값을 지정하거나 전환한다.

set-marginbell(on/off/toggle)
    marginBell 리소스 값을 지정하거나 전환한다.

set-altscreen(on/off/toggle)
    지난 화면과 현재 화면 사이를 전환한다.

soft-reset()
    스크롤 영역을 재 설정한다. 이 기능은 vtMenu의 softreset 항목에서도 호출될 수 있다.

hard-reset()
    스크롤 영역, 탭, 창크기, 커서 글쇠를 재설정하고, 화면을 모두 지운다. 이 기능은 vtMenu의 hardreset 항목에서도 호출될 수 있다.

clear-saved-lines()
    hard-reset() 액션과 같은 기능을 하지만, 스크롤 영역에 남아 내용까지 모두 지워버린다. 이 기능은 vtMenu의 clearsavedlines 항목에서도 호출될 수 있다.

set-terminal-type(type)
    터미날 형태를 지정하는 것으로 type 값에는 vt 또는 tek 값이 사용된다. 이 기능은 vtMenu의 tekmode 항목이나, tekMenu의 vtmode 항목에서 호출된다.

set-visibility(vt/tek,on/off/toggle)
    vt 또는 tek 창을 보일 것인지를 지정한다. vtMenu의 tekshow, vthide 항목과 tekMenu의 vtshow, tekhide 항목에서 호출된다.

set-tek-text(large/2/3/small)
    Tektronix 창에서 사용할 글꼴을 지정한다. 이것은 tektextlarge, tektext2, tektext3 리소스 값들을 각각 바꾼다. 이 액션은 Tektronix 창만을 대상으로 하고 있다.

tek-page()
    Tektronix 창 화면을 모두 지운다. 이 기능은 tekMenu의 tekpage 항목에서도 호출 될 수 있다.

tek-reset()
    Tektronix 창을 재설정한다.

tek-copy()
    현재 창에 나타난 내용을 현재 경로에서 COPY라는 이름으로 시작하는 파일로 저장한다. (위의 EMULATIONS 부분 참조)

visual-bell()
    창 화면을 반짝인다. 이것은 벨 소리를 나게하는 것 대신에, 화면을 깜박거리게 한다.

Tektronix 창에서는 다음의 액션을 사용할 수 있다:

gin-press(l/L/m/M/r/R)
    그래픽 입력 코드를 보낸다.

VT102 창에서의 글쇠지정 초기값은 다음과 같다:

 Shift <KeyPress> Prior:	scroll-back(1,halfpage) \n\
  Shift <KeyPress> Next:	scroll-forw(1,halfpage) \n\
Shift <KeyPress> Select:	select-cursor-start() \
	select-cursor-end(PRIMARY, CUT_BUFFER0) \n\
Shift <KeyPress> Insert:	insert-selection(PRIMARY, CUT_BUFFER0) \n\
        ~Meta<KeyPress>:	insert-seven-bit() \n\
         Meta<KeyPress>:	insert-eight-bit() \n\
       !Ctrl <Btn1Down>:	popup-menu(mainMenu) \n\
  !Lock Ctrl <Btn1Down>:	popup-menu(mainMenu) \n\
       ~Meta <Btn1Down>:	select-start() \n\
     ~Meta <Btn1Motion>:	select-extend() \n\
       !Ctrl <Btn2Down>:	popup-menu(vtMenu) \n\
  !Lock Ctrl <Btn2Down>:	popup-menu(vtMenu) \n\
 ~Ctrl ~Meta <Btn2Down>:	ignore() \n\
   ~Ctrl ~Meta <Btn2Up>:	insert-selection(PRIMARY, CUT_BUFFER0) \n\
       !Ctrl <Btn3Down>:	popup-menu(fontMenu) \n\
  !Lock Ctrl <Btn3Down>:	popup-menu(fontMenu) \n\
 ~Ctrl ~Meta <Btn3Down>:	start-extend() \n\
     ~Meta <Btn3Motion>:	select-extend() \n\
                <BtnUp>:	select-end(PRIMARY, CUT_BUFFER0) \n\
              <BtnDown>:	bell(0)

Tektronix 창에서의 글쇠지정 초기값은 다음과 같다:

      ~Meta<KeyPress>: 	insert-seven-bit() \n\
       Meta<KeyPress>: 	insert-eight-bit() \n\
     !Ctrl <Btn1Down>: 	popup-menu(mainMenu) \n\
!Lock Ctrl <Btn1Down>: 	popup-menu(mainMenu) \n\
     !Ctrl <Btn2Down>: 	popup-menu(tekMenu) \n\
!Lock Ctrl <Btn2Down>: 	popup-menu(tekMenu) \n\
Shift ~Meta<Btn1Down>:	gin-press(L) \n\
      ~Meta<Btn1Down>:	gin-press(l) \n\
Shift ~Meta<Btn2Down>:	gin-press(M) \n\
      ~Meta<Btn2Down>:	gin-press(m) \n\
Shift ~Meta<Btn3Down>:	gin-press(R) \n\
      ~Meta<Btn3Down>:	gin-press(r)

다음은 keymap() 기능의 사용법과 상용구(commonly-typed works) 지정에 대한 예제이다:

*VT100.Translations: #override <Key>F13: keymap(dbx)
*VT100.dbxKeymap.translations: \
	<Key>F14:	keymap(None) \n\
	<Key>F17:	string("next") string(0x0d) \n\
	<Key>F18:	string("step") string(0x0d) \n\
	<Key>F19:	string("continue") string(0x0d) \n\
	<Key>F20:	string("print ") insert-selection(PRIMARY, CUT_BUFFER0)

환경변수
Xterm에서는 창의 모양에 대한 "TERM", "TERMCAP" 환경 변수를 제공하고, 창을 어디서 사용할 것인가에 대한 "DISPLAY" 변수를 제공하고, xterm 창의 ID를 위해서 "WINDOWID" 변수를 제공한다.

관련 항목
resize(1), X(1), pty(4), tty(4)
Xterm Control Sequences

벌레

Large pastes 기능은 어떤 시스템에서는 작동되지 않는다. 이것은 xterm의 버그가 아니라, 그 시스템의 pseudo 터미날 드라이버 벌레이다. xterm은 pty그 그 처리할 수 있는 데이타 처리 속도만큼만 large pastes를 pty에 공급한다. 이때, 어떤 pty 드라이버는 그 자료를 성공적으로 기록했는지에 대한 충분한 정보를 리턴하지 못한다.

많은 옵션은 xterm이 실행된 후에는 다시 지정되지 못한다.

사용할 수 있는 글꼴은 fixed-width, character-cell 형태의 글꼴 뿐이다.

이 풀그림은 아직 고칠점이 많다. 각 함수(섹션, 루틴)들이 보다 세분화 되어야하며, 여러가지 터미날들을 위젯 수준으로 지원해야할 것이다. 가장 이상적인 형태는 여러 터미날 흉네내기를 위젯 수준으로 하나의 리소스 지정으로 그 터미날을 구현 할 수 있도록 하는 것일 것이다.

Tek 복사 파일 이름 지정을 하는 대화상자가 필요하다.

만든이
아랫 사람들 외에도 많은 사람들이 이 풀그림 제작에 참가했다:

Loretta Guarino Reid (DEC-UEG-WSL), Joel McCormack (DEC-UEG-WSL), Terry Weissman (DEC-UEG-WSL), Edward Moy (Berkeley), Ralph R. Swick (MIT-Athena), Mark Vandevoorde (MIT-Athena), Bob McNamara (DEC-MAD), Jim Gettys (MIT-Athena), Bob Scheifler (MIT X Consortium), Doug Mink (SAO), Steve Pitschke (Stellar), Ron Newman (MIT-Athena), Jim Fulton (MIT X Consortium), Dave Serisky (HP), Jonathan Kamens (MIT-Athena)

한텀 이야기
hanterm도 xterm을 기반으로 만들어졌기에, 거의 모든 옵션과 리소스와 액션을 그대로 사용할 수 있다. 단지 차이점이라면,

Tektronix 창 기능이 없다는 것과,
한글 폰트를 위한 -hfn 옵션과 hangulFont 리소스가 추가되었고,
한글 자판을 위한 hangulKeyboard 리소스가 추가되었다. 이 리소스의 인자는 2(두벌식)또는 3(세벌식)이다.