다음 이전 차례

6. 윈도 매니저 설정하기

이제는 윈도 매니저 설정에 대한 방법에 대해 이야기 하도록 하자. 물론 윈도 매니저에 따라 매우 다양한 세팅방법이 있겠지만, 여기서는 FVWM2를 대상으로 사용자가 변경 가능한 선에서 알아보도록 하겠다. .fvwm2rc를 편집해 보도록 하자.

6.1 기본적인 FVWM2 설정

초기의 FVWM의 설정파일은 무척 특이하고, 복잡하였다. 그러나 최근의 버전에서는 복잡하지 않게 많이 개선되었으므로 그리 긴자하지 말기 바란다. 내가 아는 바로는 메뉴 설정하는 부분만 좀 복잡하다 생각될 뿐이다. 여기에 ㅐ해서는 추후 논의하도록 하겠다. FVWM2를 설치하면 기본적인 예제 설정파일이 있을 것이다. /var/X11R6/lib/fvwm2/system.fvwm2rc 정도에서 찾을 수 있다. 이 파일은 시스템의 기본 설정이다. 이 파일을 홈 디렉토리에 .fvwm2rc로 복사해 놓고 시작하는 것은 무척 괜찮은 생가기다. 즉 FVWM2가 시작될 때 홈 디렉토리를 살펴 .fvwm2rc가 있다면 이 파일을 읽고 이 파일이 없다면 시스템의 기본 설정파일을 읽는 방식이다. 자 그렇다면 지금 홈디렉토리에 .fvwm2rc가 있거나 복사했다는 가정하에 이 파일을 편집하도록 하자. 만일 X 상에서 이 작업을 한다면 설정 파일과 눈에 보이는 것과의 관계를 쉽게 알 수 있을 것이다. 몇몇 설정을 바꾸어 좀 더 좋은 모습을 보이도록 하자. 아마 첫 설정사항(#으로 묶여서 주석처리된 라인 이외의 첫 엔트리)은 윈도 폰트 설정일 것이다. 폰트 설정에 대한 사항은 X 폰트와 색 섹션을 참고 하기 바란다.

6.2 개선된 FVWM2설정

사실 FVWM2의 설정은 미묘한 부분까지 포함하고 있기 때문에 종종 매우 복잡해 지곤한다. 이런 문제의 해결책으로 모듈화 방법이 쓰이고 있다. 아래의 예는 fvwm2gnome을 위한 .fvwm2rc의 설정파일이다.


 # import config files
 
 Echo -Styles- 
 Read .fvwm2gnome/config/styles/app.styles
 Read .fvwm2gnome/config/styles/window.styles
 
 Echo -Buttons & Keys-
 Read .fvwm2gnome/config/buttons.config

이 예제에서 보면 다른 설정파일을 읽어오는 명령이 있다. 이런 방법을 이용하여 자칫 설정파일이 엄청나게 커져버릴지 모르는 상황을 적절히 모듈화 시켜 관리할 수 있게 해 준다. 모듈화 된 설정은 바꾸거나 디버깅하는데 용이하며 테마 작성을 쉽게 해 준다. 테마에 대한 것은 곧 설명하게 될 것이다.

6.3 FVWM2 설정을 더 쉽게 하기

사실 개개의 설정 사항을 여기에 설명하는 것은 무리이다.(프로그램과 함께 제공되는 문서파일을 참고하기 바란다.) 게다가 설정에 익숙해 있는 사람일지라도 자칫 실수하거나 혼돈을 이르키기도 한다. 따라서 FVWM2를 비롯한 FVWM, bash등 다양한 설정파일을 작성하는데 잇어서 도트파일 제네레이터(Dotfile Generator)를 사용하는 것은 많은 작업을 쉽고 간단하게 해준다. 제스퍼 K. 페테르슨(Jesper K. Pedersen)이 Tcl/Tk를 이용하여 제작하였으며 http://www.imada.ou.dk/~blackie/dotfile/ 에서 구할 수 있다. (물론 지금 쓰려는 컴퓨터에 Tcl/Tk가 올바르게 설치되어 있어야 한다. 아마 대부분의 리눅스 배포본이라면 설치되어 있을 것이다.) 이 프로그램은 기존의 설정파일을 부르거나 기본 초기값을 가지고 사용자가 원하는 여러 옵션이나 메뉴를 설정해 준다. Tcl/Tk 프로그램이기 때문에 어느정도 느린 것은 감수해야 한다. 그러나 직접 아무것도 없는 설정파일에서부터 메뉴를 설정할 수 있기 바란다. 이것이 흔히 말하는 (Do it yourself)라는 Unix의 방식일 뿐 아니라 세밀하고 사소한 부분까지도 스스로 알고 제어할 수 있게 해 준다. 어떤 방법을 선호할 지는 모르겠지만 기존의 설정파일을 가지고 시작하는 사람도 많이 있다.

6.4 FVWM2 테마

FVWM2의 새로운 기능 중 하나가 흔히 테마라 불리우는 것이다. 테마라 함은 아주 간다하게 한번에 모든 윈도의 기본적인 모습을 바꿀 수 있다는 것이다. 이미 윈도 매니저에서 제공하는 기능과 애플리케이션에서 제공하는 기능을 구분해 낼 수 있다면 윈도 매니저의 테마라는 것은 개개 어플리케이션의 겉모습과 내부적인 행동 방식에는 변화를 주지 않는 것을 알 수 있을 것이다. 그러나 통합환경을 제공하는 KDE나 GNOME은 전반적인 어플리케이션에 까지 일정한 겉모습과 행동양식을 부여해 줄 수 있다. GNOME과 KDE는 이런 면에서 매우 유용하다 할 수 있다. 테마를 만들기 위해서는 역시 .fvwm2rc를 편집해야 한다. 아래 예제는 나의 .fvwm2rc 파일의 Style 섹션 이후에 추가한 테마 설정이다.


 # Blue Theme
 DestroyDecor Blue
 AddToDecor Blue
 + WindowFont -b&h-lucida-bold-r-*-*-*-140-*-*-*-*-*-*
 + TitleStyle ActiveDown (Solid DarkSteelBlue) ActiveUp (Solid
SteelBlue) Inactive (Solid Grey)
 + HilightColor white blue
 + ButtonStyle 1 -- UseBorderStyle
 Style Blue UseDecor Blue, BorderWidth 5, HandleWidth 5, MWMborder,
MWMbuttons
 
 # Function to change all windows to a new style.
 DestroyFunc ChangeStyle
 AddToFunc ChangeStyle
 + "I" Style $0 $1
 + "I" Recapture

이것은 상당히 많은 내용을 포함하고 있다. 기본적으로 맨 위에 우리는 "Blue"라 불리우는 테마를 선언하고 있다. 이것을 기본으로 삼아 다른 테마 작성에 유용하게 이용할 수 있다. 물론 실제 테마에서는 이것보다 더 많은 내용을 포함할 수 있으며 충분히 다른 테마와 구분될 수 있는 많은 차이점을 둘 수 있다. 이런 많은 기능을 이용해 다른 컴퓨터에서 한번도 보지 못한 새로운 윈도 스타일을 만들 수도 있다.

위의 예제에 보면 새로운 테마를 생성하기 전에 제거하는 것을 주의하여 보기 바란다. 이것은 FVWM2를 여러 다른 스타일로 재시작할 때 좀더 부드러운 시작을 할 수 있게 해 준다. 우리가 제작한 테마를바꾸기 위해서는 일반적인 인터페이스를 통해 이루어 질 수 있다. 메뉴를 통해 바꾸는 것은무척 쉽고, 편리하다. 다음의 예제를 통해 우리가 제작한 테마나 이미 제작된 테마로의 변환을 쉽게 해 주는 메뉴를 만들 수 있다.


 DestroyMenu "Themes"
 AddToMenu "Themes"
 + "Choose a theme..." Title
 + "" Nop
 + "Blue" ChangeStyle "*" "UseStyle Blue"
 + "Mwm" ChangeStyle "*" "UseStyle Mwm"
 + "Flat" ChangeStyle "*" "UseStyle Flat"

좀 더 다양한 메뉴설정을 위해서는 프로그램과 함께 제공되는 예제 설정 파일이나 시스템에서 이미 쓰이고 있는 설정파일을 참고하면 될 것이다. 위의 예에서는 ChangeStyle 이라는 펑션을 이용하였다. 이 펑션을 이용하여 사용중인 스타일에서 다른 스타일로의 변경을 하고 있다. 아까 우리가 집어 넣었던 '생성 이전에 제거'라는 기능을 이용한 것이 무척 유용했다는 것을 확인해보기 바란다. 이제 변경한 메뉴를 적용하기 위해 FVWM2를 재시자하면 테마를 변경할 수 있는 메뉴항목이 나오는 것을 볼 수 있다. 이미 제작된 FVWM2 테마를 얻고 싶다면 다음 사이트에서 구할 수 있다. http://www.vis.colostate.edu/~scriven/Linux/fvwm/index.html


다음 이전 차례