XWINDOW SYSTEM 제대로 활용하기

    저자 : 이수준   
     

 

 이번 호에는 지난번에 이어서 X WINDOW를 구성하는 기본 환경의 이해와 X WINDOW에서 쓸 수 있는 유용한 프로그램들에 대해서 알아보기로 한다.

 

X WINDOW 주위 둘러보기

    지난번 글에서는 단순히 X WINDOW를 띄우기 위해 부단히도 노력을 했다. 무사히 X WINDOW를 띄웠다면 이제 남들처럼 이것 저것 쓸만한 프로그램을 깔려고 하지만 막상 쉽지가 않다. Linux 배포판 cd에 있는 프로그램은 대부분 다 자동으로 설치가 되지만, 그것을 고치거나 또 다른 새로운 프로그램을 깔려 한다면 이것저것 손볼 것이 한 두개가 아니다. 단순히 X WINDOW를 구동하는 것만큼 그 주위에서 X WINDOW를 도와주는 여러가지 구성요소를 이해하는 것도 X WINDOW를 좀 더 효율적으로 사용하는데 도움이 될 것이다. 먼저 X WINDOW와 그의 친구들이 둥지를 틀고 있는 디렉토리를 살펴보기로 하자.

    실행파일들이 있는 곳 : /usr/X11R6/bin
    기본적으로 여러분들의 X WINDOW server와 여러가지 기본적인 binary file들이 저장되어 있다.

    프로그래밍을 위한 헤더파일과 라이브러리 : /usr/X11R6/include, /usr/X11R6/lib1
    훗날 여러분들이 X WINDOW 프로그래밍을 할 경우 많이 이용할 디렉토리이다. 이곳엔 X WINDOW 기본 라이브러리인 XLIB, X11, Xt intrinsics, Xaw(3d) 그리고 여러분들이 Motif를 설치했다면 Xm include 및 library 파일들이 이곳에 존재한다.

    조금 특별한 디렉토리 : /usr/X11R6/lib/X11, /var/X11R6/lib
    /usr/X11R6/lib/X11이 바로 /var/X11R6/lib로 link 되어있다. 이곳을 살펴보면 또 여러 개의 디렉토리를 발견할 수 있는데 먼저 app-defaults라는 디렉토리는 바로 여러분들이 실행시키는 여러가지 프로그램들에 대한 리소스 파일(임의의 내부 데이터)들이 지정되어 있다. 그리고 여러분들이 쓰는 윈도우 매니저에 관한 설정파일(hfvwm2등등)이 저장되어 있으며 지역화, 국제화를 위한 locale 데이터도 저장되어 있다.

    글꼴 저장소 : /usr/X11R6/lib/fonts
    X WINDOW와 그 프로그램들에 필요한 글꼴들이 저장되어 있다.

    메뉴얼 페이지 : /usr/X11R6/man
    X WINDOW에 필요한 도움말들 모음

    그러면 X WINDOW가 구동되는 순서를 잠깐 살펴보기로 하자. 여러분들이 X WINDOW를 구동하기 위해서 맨 처음 실행하는 것은 startx라는 명령어이다. 그런데 이 startx는 바이너리 화일이 아니고 하나의 쉘 스크립트이다. 내용을 대충 살펴보면 이것은 xinit를 실행시킨다. 그리고 실행에 필요한 설정들은 모두 xinitrc 파일에서 불러온다. 이것은 자신의 홈 디렉토리나 /usr/X11R6/lib/X11/xinit 디렉토리에 저장해두면 된다. xinitrc 파일에는 X WINDOW 사용자의 사용자 정의 파일인 Xresources 파일 정의와 쓰고자 하는 윈도우 매니저를 지정해 줄 수 있다. 그러면 우리가 정말로 쓰고자 하는 X WINDOW Server는 어디에 지정되어 있는 걸까? /usr/X11R6/bin/X는 /var/X11R6/bin/X로 링크되어 있고 이것은 우리가 실지로 쓰고자 하는 X WINDOW Server와 링크되어 있다. 참고로, 대부분 사용자들이 X WINDOW를 실행시키면 256(8bpp)의 색상을 사용하게 되는데 자신의 그래픽 카드가 그 이상을 지원한다면 여러분의 xinitrc 파일의 serverargs 부분에 serverrgs="-bpp 16"(혹은 32) 이렇게 지정해주면 다음부터는 X WINDOW가 더욱 멋진 색상으로 뜰 것이다.

    #!/bin/sh
    userclientrc=$HOME/.xinitrc
    userserverrc=$HOME/.xserverrc
    sysclientrc=/usr/X11R6/lib/X11/xinit/xinitrc
    sysserverrc=/usr/X11R6/lib/X11/xinit/xserverrc
    clientargs=""
    serverargs="-bpp 16"
    .
    .
    .
    xinit $clientargs - $serverargs
    <startx의 일부분>

    #!/bin/sh
    userresources=$HOME/.Xresources
    usermodmap=$HOME/.Xmodmap
    sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
    sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap
    .
    .
    .
    # start some nice programs
    export NLSPATH=/etc/locale/libc.cat.kr
    xsetroot -solid SteelBlue
    hfvwm2 2> /dev/null
    <xinitrc의 일부분>

    이상으로 X WINDOW의 주변과 실행 과정을 살펴보았다.


X WINDOW 터미널

    X WINDOW 상에서도 일반 콘솔 화면처럼 명령행을 입력할 수 있다. 한텀은 원래 X WINDOW 터미널 에뮬레이터 프로그램인 xterm을 한글화한 것이다. 한텀을 만든 동기는 우습게도 X 터미널에서 한글이 깨지지 않고 채팅할 수 있도록 하기 위해서 였다고 한다. X WINDOW에서 한글을 쓸 수 있는 방법은 한텀과 함께 과거엔 HanX(X library를 한글로 쓸 수 있게 수정한 것)를 많이 썼지만 지금은 KIMS나 벼루, HanIM 등 한글 입력기가 공개되어 이것들을 많이 사용하는 추세다.

    hantrem에서 자주 쓰이는 옵션은 대부분 폰트 조정과 저장될 라인수를 지정하는 것이다. 지정하는 방법은 아래 내용을 참고하기 바란다.

    <.Xresources 파일중 hanterm 지정>
    !─XTerm─
    XTerm*cursorColor: Green
    Hanterm*cursorColor: SeaGreen
    Hanterm*hangulFont:\
    -kaist-philgi-bold-r-normail-\
    -16-160-75-75-c-160-johabs-1
    Hanterm*Scrollbar.Background: #c0c0c0
    Hanterm*saveLines: 2000

    한텀에서 한/영 전환이나 조합/완성형 한글을 선택하려면 마우스를 해당 글자를 클릭해주거나 shift + space키를 누르거나 F2 키를 누르면 된다. 그리고 X 터미널에는 나름대로의 메뉴바를 가지고 있는데 Ctrl 키와 함께 마우스 좌/우 버튼을 눌러보면 그것들이 나타난다.

    <hanterm에서 Ctrl+마우스 버튼 선택시 메뉴들>


      Main Option
      Secure Keyboard
      Allow Send Events          
      Log to File
      Redraw Window
     


      Send STOP Signal
      Send CONT Signal
      Send INT Signal
      Send HUP Signal
      Send TERM Signal
      Send KILL Signal
     


      Quit
     

         


      VT Fonts

      Default                  
     
      Unreadable

      Tiny

      Small

      Medium

      Large

      Huge

     

     

    ▲ top

home으로...