Safari 5.1에서 한글 입력이 되지 않는 현상

Mac OS X 10.7 Lion에 포함된 Safari 5.1 (7534.48.3) 빌드에서 가끔 한글 입력(CJK Input)이 되지 않는 현상이 발생하고 있습니다. 이 버그는 Lion의 GM 버전부터 계속 방치되어 왔는데, 버그 수정을 위해 버그를 다시 발생 (Reproduce) 시키기 위한 조건의 과정을 사용자들이 알기가 쉽지 않았습니다.

어제 이 문제를 WebKit.org의 버그질라에 등록을 했고 얼마 후에 버그에 대한 답변을 들을 수 있었는데, 이미 같은 문제로 버그가 등록되어서 버그픽스 되었다고 하더군요. 버그가 수정된 내용은 여기에서 확인 할 수 있습니다.

이 버그는 사용자가 Adobe Flash와 같은 Plug-in Content를 클릭하고 난 다음에 발생하게 됩니다. 버그를 다시 발생시키기 위한 단계는 다음과 같습니다.

  1. youtube.com을 방문한다.
  2. 동영상을 클릭한다. HTML5가 아닌 Adobe Flash Player인지 확인한다.
  3. 동영상의 재생/정지를 클릭한다.
  4. 뒤로가기 버튼을 클릭한다.
  5. 검색 필드에 타이핑을 해본다.

결과적으로 이 버그는 사용자 클릭에 의해서 Adobe Flash와 같은 플러그인에 Focus가 지정되었으나, 페이지가 이동한 후에도 플러그인에게 떠난 것을 알려주지 못해서 발생한 문제였습니다.

Mac OS X 10.7에 기본으로 설치된 Safari 5.1에서 Adobe Flash와 같은 Plug-in Content를 사용했을 때 페이지를 이동하기 전에 HTML 페이지 영역을 클릭 또는 선택하여 Focus를 다시 되돌릴 수 있지만, 이런 방법은 사용자가 정확하게 인지하기 어렵고 매우 번거로운 일이기 때문에 Apple의 Safari 업데이트가 배포되기 전까지는 버그가 수정된 WebKit Nightly Build를 이용하는 것으로 이 문제에서 벗어날 수 있습니다.

Mac OS X 10.7 Lion에서 Shift-Space로 한영 전환하기

Keyboard Shortcuts Panel

Mac OS X 10.7에서 Shift-Space로 한영 전환하는 방법은 10.6과 같다. 하지만 Keyboard Shortcuts에서 기존 방법대로 Shift-Space를 Select the previous input source에 전환 키를 지정하면 화면 가운데에 Input source indicator가 표시되면서 전환 과정에 지연시간이 발생하므로, 한영 전환 키를 Select next source in Input menu에 지정하여 Indicator가 표시되지 않도록 하여 전환 지연시간이 없도록 변경한다.

값을 바꾸어줄 com.apple.symbolichotkeys.plist 파일의 위치는 아래와 같으며, App Store에서 미리 Xcode를 내려받아서 설치해야만 편집이 가능하다.

~/Library/Preferences/

또는 시스템 전체 사용자에게 적용하려면 다음의 경로에서 plist 파일을 수정한다.

/Library/Preferences/

Shift-Space 키를 Select next source in Input menu 항목에 입력하는 것 처럼 다음 위치에서 Command-Option의 키 코드이자 기본값으로 지정된 1572864을 Shift의 키 코드인 131072으로 수정한다.

AppleSymbolicHotKeys > 61 > value > parameters > item 2

Option-Shift-Space 키를 Select the previous input source 항목에 지정하려면 다음 위치에서 Command 키의 코드인 1048576을 Option-Shift 키의 값인 655360으로 수정한다.

AppleSymbolicHotKeys > 60 > value > parameters > item 2

Mac OS X 10.7 Lion에서 숨겨진 Library 폴더 보는 방법

Mac OS X 10.7 Lion부터 사용자 Home의 Libary 폴더가 숨겨져 있는데, 이는 서드파티 애플리케이션 개발자가 사용자의 Library 폴더를 사용하지 말라는 것으로 해석할 수 있다. 어쨌거나 있던 것이 없으면 본인같은 사용자는 불편하기 마련이기에 Terminal에서 다음과 같은 명령어를 입력하여 Finder에서 Library 폴더를 보이도록 바꿀 수 있다.

chflags nohidden ~/Library/

만약 특정 사용자의 Library 폴더만 보이도록 바꾸고 싶다면 다음과 같이 명령어를 입력한다.

chflags nohidden /Users/<Username>/Library

Safari 5.1에서 마지막 웹 페이지 열기를 끄는 방법

Mac OS X 10.7 Lion에 포함된 Safari 5.1은 다시 실행했을 때 이전 웹 페이지의 창과 탭을 다시 열어주는 기능이 포함되어있다. 사실 이 기능은 Safari 5.1만의 기능이 아닌 Mac OS X 10.7 Lion에 새롭게 추가된 Resume 기능에 의한 것이다

마찬가지로 Preview와 같은 Apple의 애플리케이션이 이전에 열었던 것들을 다시 보여주는 것과 같은 것이다. 애플리케이션을 실수라도 종료하기 이전에 열람했던 내용을 다시 확인하기에 더할 나위 없는 기능이지만 특정인에게는 귀찮게 느껴질 수 있다.

Resume 기능의 비활성활를 위해서 Apple은 System Preferences > General > Restore windows when quitting and re-opening apps의 체크를 끄는 것이 제공되지만 제대로 동작하지 않는 것 같다.

Safari와 같은 특정 애플리케이션에 적용되는 Resume 기능을 비활성화하기 위해서는 Terminal에서 다음과 같은 명령어를 입력하면 된다.

defaults write com.apple.Safari NSQuitAlwaysKeepsWindows -int 0

다시 Safari에 대한 Resume 기능을 활성화 하고 싶다면 명령어 마지막의 0을 1로 바꾸어서 명령어를 입력한다.

defaults write com.apple.Safari NSQuitAlwaysKeepsWindows -int 1

눈여겨 보면 알겠지만 Safari가 아닌 Preview와 같은 다른 애플리케이션에 적용되는 Resume 기능을 비활성화하고 싶다면 명령어의 Safari를 원하는 애플리케이션 이름으로 바꾸어서 적용할 수 있다.

defaults write com.apple.Preview NSQuitAlwaysKeepsWindows -int 0

Snow Leopard에서 Shift-Space로 한영 전환하기

Mac OS X 10.6에서 Shift-Space 키로 한영 전환을 하려면 ~/Library/Preferences/ 경로의 com.apple.symbolichotkeys.plist 파일을 열고 AppleSymbolicHotKeys > 60 > value > parameters > item 2 항목에서 기본값으로 설정되어 있는 Command 키 값인 1048576을 Shift 키 값인 131072으로 변경하고 저장한 다음 로그아웃한다.

Snow Leopard의 X11에서 복사와 붙여넣기가 동작하지 않는 경우

Mac OS X 10.6의 X11을 사용하는 FontForge와 같은 어플리케이션에서 복사와 붙여넣기 기능이 동작하지 않는 것은 Mac OS X의 Pasteboard와 X11의 클립보드가 제대로 동기화되지 않아서이다. 아마도 OS X 10.6의 Pasteboard에 대한 API가 변경되어 버퍼에 입력되지 않아서 그럴 것이다.

해결 방법은 간단하게 X11 Preferences > Pasteboard > Enable syncing의 체크를 해제하면 된다.

X11 Preferences

Snow Leopard에서 LG전자 GP08LU10 외장 DVD 드라이브가 인식이 안되는 문제

내 MacBook Pro를 포맷해야 하는데 거의 쓰지 않았음에도 어느날 아무 이유없이 돌연사한 SuperDrive 때문에 회사 동료에게 LG전자의 GP08LU10을 빌렸다.

하지만, LG전자의 신문 기사와 제품 설명서에도 Mac 지원을 강조하고 있는데도 불구하고 마운트 자체가 아예 되지를 않는다. 구글링 해보니 이러한 사례가 많은데, Apple Discussions에 보면 Snow Leopard에서 Firewire를 포함한 외장 드라이브 인식이 안되는 경우의 이야기가 많다.

최후의 수단으로 내 SuperDrive의 펌웨어 업데이트를 해봤지만 물리적으로 고장이 났는지 여전히 디스크를 뱉어내는 현상도 마찬가지라서, 아무래도 GSA-S10N 벌크 제품을 사서 직접 교체할 수 밖에 없을거 같다. :(

새로운 TextMate 전용 한글 글꼴

TextMate 2가 언제 릴리즈될지는 알 수 없기에 (Duke Nukem Forever 처럼은 아니겠지만) 그 동안 사용하기 위한 용도로 이전의 폰트와 다르게 다시 만들었습니다.

영문은 Dejavu Sans Mono 2.30, 한글은 나눔고딕 코딩글꼴, 일본어 및 한자는 Meiryo를 사용하여 글꼴을 조합했습니다. 각각의 글꼴마다 라이센스가 다르기 때문에, 혹시라도 문제가 될 소지가 있다면 코멘트 또는 이메일로 알려주십시오.

Download TextMate Sans Mono

Safari 4 설치시 ScreenSaver가 Crash되는 Bug

어제 Safari 4 Developer Preview를 설치하고 나서 잠시 자리를 비운 사이에 돌아와 보니 화면이 계속 꺼졌다 켜졌다를 반복하고 있었다. 무슨 일인가 싶어서 System Preference의 스크린세이버 탭을 클릭하자 이미 선택되어 있었던 스크린세이버가 제대로 동작되질 못하니 에러를 내뿜으면서 바로 Crash Report 창이 떴다. 이것 때문에 선택된 특정 스크린세이버가 동작을 못하고 System Preference 프로세스가 죽어버리니 그런 현상이 발생한 것이었다.

~/Library/Preferences의 plist를 지우면서 확인해봐도 plist의 문제는 아니었다. 구글링을 해보니 Safari 4의 문제였던 것으로 보였다. 사파리 4는 버전 3.x에 비해서 더욱 빨라진 성능을 보여주지만 아직 완성된 빌드가 아닌데다, 내심 찜찜한 것도 있고 해서 그냥 Uninstall 하는 걸로 간단히 해결했다.