글타래: WebKit과 Safari의 설정 항목들
Mac OS X의 시스템 환경 설정 항목들은 ~/Library/Preferences 폴더에 집약되어 있으며, 특정 어플리케이션들을 위한 몇몇 설정 사항들은 감추어져 있습니다. 어떤 것들은 아주 유용하고, 흥미롭기도 하지만, 한편으로는 성가실 수도 있습니다. 여기서 소개될 이러한 설정사항들은 Safari와 WebKit의 기반을 이루는 것들과 관련한 것들입니다.
먼저, 주의 사항부터 말씀드린다면, 여기에 소개된 어떠한 설정 항목들도 이 글이 쓰여진 이후에 적용될 수 있을 것이라고는 장담할 수 없습니다. 실험 목적으로 사용해 보더라도, 차후 Apple에서 제공될 Safari/WebKit의 갱신 내용을 주의 깊게 살펴보시기 바랍니다.
여기서 소개된 모든 설정 항목들은 com.apple.Safari.plist 파일에만 적용되어야 하며, 설정 항목 변경은 터미널의 defaults 명령을 사용하거나, 개발 도구들과 함께 딸려오는 Property List Editor로 쉽게 추가/변경할 수 있습니다.
참고 - defaults 명령의 기본 사용법:
defaults [-currentHost | -host hostname] write domain { 'plist' | key 'value' }
defaults [-currentHost | -host hostname] delete [domain [key]]
CustomUserAgent를 제외하고 Safari의 Debug 메뉴(터미널에서 defaults write com.apple.safari IncludeDebugMenu -bool YES 명령으로 추가할 수 있습니다)에서 설정할 수 있는 것들은 소개되어 있지 않습니다. 또한, 기본 AppKit 관련 설정 사항들(NSNavLastRootDirectory와 같은 NS로 시작되는 것들)도 생략되어 있음을 알려드립니다.
WebKit 설정 항목들
WebKit 설정 항목들은 기타 WebKit 기반 어플리케이션들에게 영향을 끼치지 않기 위해 Safari의 설정 항목에서도 설정될 수 있습니다. 필요하다면 관련 어플리케이션의 설정 항목을 수정하거나, 혹은 전체 시스템에 적용할 수도 있습니다.
안전을 위해서 우선 Safari의 설정 항목들을 시작으로 수정, 실험해 보시기 바랍니다. 아울러, WebKit 전반에 걸친 정보들을 포함한 WebKit 설정 항목들에 관한 자세한 내용은 WebKit Open Source Project를 방문하시기 바랍니다.
- WebKitHistoryItemLimit (number)
이 항목(기본 1000)은 과거에 방문했던 페이지들의 기록을 얼마나 많이 기억하고 있어야 하는지를 결정합니다.
- WebKitHistoryAgeInDaysLimit (number)
과거 방문 기록에 한 항목이 몇 일 동안 저장되어 있고나서 삭제될지를 결정(기본 7 일).
- WebIconDatabaseEnabled (boolean)
웹 싸이트 아이콘을(favicon.ico) 저장할 것인지 결정(기본 YES).
- WebIconDatabaseDirectoryDefaultsKey (string)
웹 싸이트 아이콘을 저장한다면, 어디에 저장할지를 결정. WebKit의 설정은 ~/Library/Icons로 되어 있으나, Safari는 ~/Library/Safari/Icons로 변경해서 설정되어 있습니다.
- BufferTextDrawing (boolean)
일종의 글자 표시 버퍼링 기능을 제공하나, 아직까지는 완전하게 구현되지 않음 (기본 NO).
- WebKitOmitPDFSupport (boolean)
WebKit 안에서 PDF 표시를 꺼줄 때 사용 (기본 NO, 그래서 PDF 지원). 만약 WebKit에 의해 PDF를 다루게 된다면, HTML이 보여지는 공간에 PDF를 표시해 줌. 꺼져 있으면, Safari는 그냥 PDF를 내려받게 됩니다.
- WebKitLogLevel (string)
이것은 숨겨진 값이며, Safari에서는 사용될 수 없음.
- WebKitPageCacheSizePreferenceKey (number)
페이지 캐쉬 크기를 지정; 먼저 한 가지 주지해야 할 것은, 이 값은 컴퓨터에 설치되어 있는 메모리 양에 따라 달라집니다 (1G 혹은 그 이상일 경우, 같은 값이 사용되며; 0.5G에서 1G 사이는, 하나 작은 값이; 0.5G 이하일 경우에는, 두 개가 작은 값이 사용됨). 이 값은 디스크에 저장되는 공간이 아니고 페이지 캐쉬 값이라서 아주 작습니다 (기본 3).
- WebKitObjectCacheSizePreferenceKey (number)
오브젝트 캐쉬 크기를 지정; WebKitPageCacheSizePreferenceKey처럼, 이 값은 시스템 메모리에 따라 달라집니다 (1G 혹은 그 이상은 곱하기 4, 0.5G 아하는 두 배, 그 이하는 그대로). 기본은 8388608 (8M).
- WebKitShouldPrintBackgroundsPreferenceKey (boolean)
YES 값을 주면 (기본 NO), 배경 그림을 사용하는 모든 페이지들은, 인쇄될 때 그림까지 함께 인쇄됨.
- WebKitTextAreasAreResizable (boolean)
아직은 사용 안됨 (기본 NO).
- WebKitAllowAnimatedImagesPreferenceKey (boolean)
아직은 사용 안됨 (기본 YES).
- WebKitAllowAnimatedImageLoopingPreferenceKey (boolean)
아직은 사용 안됨 (기본 YES).
- WebKitBackForwardCacheExpirationIntervalKey (number)
얼마나 오래 동안 캐쉬에 저장된 열람 기록을 통해 페이지 이동을 할지 결정 (기본 1800 초).
- WebKitRespectStandardStyleKeyEquivalents (boolean)
YES일 경우, 특정 자판 단축키들을 사용해서 특정 형태들(bold 그리고 italic과 같은)을 키고/끌 수 있게 허용. WebKit의 기본은 NO이나, Safari는 YES로 설정되어 있음.
- WebKitShowsURLsInToolTips (boolean)
YES로 설정되면, 링크의 URL을 tooltip에서 보여줌; 기본은 NO.
- WebKitPDFDisplayMode (number)
PDF를 표시하는 데 사용되는 모양을 나타내나, 아직은 아무런 효과를 보여주지 않는 듯 함.
- WebKitPDFScaleFactor (number)
PDF를 표시할 때 사용되는 크기 조절 값이지만, 그냥 무시되는 듯 함.
Safari 설정 항목들
이 것은 Safari 만을 위한 것이라서, 다른 WebKit 기반 어플리케이션들에게는 아무런 영향도 주지 않습니다.
- IncludeDebugMenu (boolean)
YES로 설정되면, Debug 메뉴가 추가되어서 Safari의 특정 설정값들을 변경할 수 있음. 기본은 NO.
- Log (boolean)
YES로 설정되면, 실행 로그가 stderr (consol log)에 기록됨. 기본은 NO.
- Log.SPI (boolean)
YES로 설정되면, 더욱 자세한 실행 로그가 stderr (consol log)에 기록됨. 기본은 NO.
- CacheDirectory (string)
Safari가 캐쉬 파일들을 저장하는 곳. 기본은 ~/Library/Caches/Safari. 주의할 것은, 만약 이 값을 변경하면, Safari는 캐쉬 파일을 새로운 지정 위치와 기본 위치 모두에 기록하게 되나, 실제로는 두 곳 어디에도 기록되지 않음.
- DebugShowBuildNumberInWindowTitles (boolean)
YES 값을 주면, 창 제목에 현재 빌드 번호 (예, 'v412.5')를 표시.
- CustomUserAgent (string)
Safari가 자신의 user agent 값을 웹 서버에 무엇으로 전달할지 변경할 수 있도록 함; 기본은 Safari 2.0.1/412.5에서는 "Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-us) AppleWebKit/412.7 (KHTML, like Gecko) Safari/412.5". 이 값은 Debug 메뉴에서도 설정할 수 있으나, 이 설정 항목에서 변경하면 원하는 어떠한 값도 사용할 수 있습니다.
- BackForwardListSizeLimit (number)
방문 기록 항목들의 크기를 조절; 기본은 100. 이 값을 100 이하로 하면 Safari가 오류를 일으킬 수도 있으나, 0 값을 주면 "뒤로" 단추의 기능까지 모두 끄게 됩니다. 100 이상의 값은 사용 가능.
따옴 - MacTechNotes