Mac OS X Snow Leopard

พิมพ์ตัวเปลี่ยนเสียงสระไวไว

ใช้แมคในเยอรมัน บางทีเราก็อยากจะรีบๆ พิมพ์ภาษาเยอรมันไวไวเหมือนกัน แต่การจะต้องไล่สลับ Keyboard layout ไปมาเป็นภาษาเยอรมันดูช่างเป็นเรื่องที่น่าวุ่นวายเสียจริงๆ (บางทีผมก็ตั้งใจพิมพ์ผิดไปเลยนะเพราะขี้เกียจสลับ) มาเจอคำแนะนำหนึ่งจาก Macosxhints ก็พบว่าใช้ได้ดีเลยทีเดียวแถมไม่ต้องดัดแปลงระบบอะไรให้วุ่นวายด้วย

วิธีคือ แค่เราตั้ง Keyboard layout เป็น US International PC แทนที่ US แบบเดิม แล้วก็จำไว้แค่ว่า

  • ตัว ' จะกลายเป็นขีดเอียงขวา (Acute)
  • ตัว ` จะกลายเป็นขีดเอียงซ้าย (Grave Accent)
  • ตัว " จะกลายเป็น Umlaut
  • ตัว ~ จะกลายเป็นตัวหนอนบนตัวอักษร (Tilde)
  • ตัว ^ จะกลายเป็นตัวหมวกบนตัวอักษร (Hachek)

กดตัวอักษรข้างบนแล้วตามด้วยตัวสระอักษรลาติน (a, e, i, o, u) ก็จะได้ตัวเปลี่ยนเสียงอย่างที่เราต้องการทันที แต่ก็เหมือนยังขาดบางตัวเหมือนกัน

สำหรับ HTML ก็มีตัวอักษรพิเศษเหมือนกัน ตัว Diacritics พวกนี้ดูอ้างอิงได้จากที่นี่ สำหรับตัวอักษรแต่ละตัวดูที่นี่ มีข้อสังเกตคือสามารถใช้ &_… โดย _ คือตัวอักษร (ใหญ่หรือเล็กก็ได้) และ เป็นตัว Diacritics ที่จะใช้

Why is iTunes binary a 32-bit application?

For 7 months since a release of Snow Leopard in August 2009, not all bundled applications are 64-bit capability. One of that is a flagship application, iTunes. iTunes is an all-in-one application for iDevice syncing (iPod, iPhone, and iPad), media management, and media purchasing via iTunes Store.

So what is wrong with that? The problem is iTunes user interface that still uses Carbon. Because Apple has deprecated 64-bit Carbon user interface in Leopard. iTunes depends on a lot of Carbon user interface elements, ie. Apps list in iPhone Apps tab. I don't know design decision, why not moving to Cocoa. One of possible reasons is for platform compatibility because iTunes runs on Tiger, Leopard, and Snow Leopard. Cocoa in Tiger is outdated comparing with Leopard and Snow Leopard. Creating user interface elements with an outdated Cocoa may be difficult when comparing with Carbon. It may be too complex even Apple doesn't want to refactor it!

I hope a future version of iTunes will be a 64-bit application. I don't know why should it be but iTunes uses more and more resources. It is too big when comparing with the original iTunes.

ล้าง Extended Attribute ใน Mac OS X Leopard และ Snow Leopard

เมื่อเราใช้คำสั่ง ls -l ใน Mac OS X Leopard เราจะพบกับ permission bits ตามปกติ แต่เราอาจจะเจอสัญลักษณ์พิเศษด้านหลังคือ @ เช่น

-rw-r--r--@

(บิทแรกเป็นบอกชนิด ถ้าเป็น d คือ Directory, l คือ Symbolic link)

ทีนี้ปัญหากวนใจที่ผมพบเมื่อเปิดโปรแกรมบางตัวคือ เวลามันทำ Font index ภายในโปรแกรมมันเอง (มีซักกี่ตัวที่มีระบบจัดการฟอนต์เป็นพิเศษเพื่อตัวมันเองหนอ?) มันจะมีไดอะล็อกเด้งขึ้นมากวนใจผมว่า “โปรแกรม___จะทำการใช้งานฟอนต์___ซึ่งดาวน์โหลดมาจากอินเตอร์เน็ต อนุญาตให้โปรแกรม___ใช้งานฟอนต์ตัวนี้ไหม?” โอเคถ้าแค่ฟอนต์ตัวเดียวก็คงไม่มีปัญหาอะไร แต่ถ้ามันเด้งแบบนี้ซักร้อยทีล่ะ กด Allow กันมือหงิกเลย แถมถ้าต่างโปรแกรมมันก็จะถามคำถามนี้อีก โอ้ยใครจะไปกดไหว สาเหตุจริงๆ เกิดจากการที่ Mac OS X เริ่มจะฉลาดคือเริ่มหยั่งรู้ว่าไฟล์บางไฟล์ถูกดาวน์โหลดผ่านบราวเซอร์และทำการ Mark ค่าบางอย่างคือ com.apple.quarantine ไว้บนไฟล์นั้น เมื่อทำการเปิดไฟล์ดังกล่าวและทำการติดตั้งไฟล์เหล่านั้นลงในเครื่อง (เช่นลากโปรแกรมออกจาก Disk Image) ค่านี้ก็จะตามไปด้วยแล้วทำให้เกิดคำถามในครั้งแรกที่เปิดเรียกใช้งานไฟล์/โปรแกรมที่ติดตั้งไปว่า “โปรแกรม___ถูกดาวน์โหลดจากอินเตอร์เน็ตด้วย___เมื่อ___ จะเปิดใช้งานไหม?” ซึ่งเมื่อกดยอมรับ โปรแกรมก็จะเปิดใช้งานได้และจะไม่ถามคำถามนี้อีกเลยจนกว่าจะถูกติดตั้งเวอร์ชั่นใหม่ทับด้วยวิธีเดิม

วิธีแก้ใช้คำสั่ง xattr ตามด้วยพารามิเตอร์ -d com.apple.quarantine ตามด้วยชื่อไฟล์ที่ต้องการลบค่านี้ออก อาจจะเพิ่ม -R ไว้หลัง -d เพื่อจะ recursive เข้าไปในไดเรคตอรี่ที่ต้องการลบค่าด้วย

Terminal Setting

ไม่สงวนสิทธิ์ใดๆ นี่เป็นค่าที่ผมมักจะตั้งไว้ใช้งานใน Terminal เพื่อคุณภาพชีวิตที่ดีขึ้นบ้างบางประการ

.profile

export CLICOLOR=1

.vimrc

set nocompatible
set selectmode=mouse
set guifont=Monaco:h8
set guioptions-=T
set ic
set fileformats=unix,mac,dos
highlight StatusLineNC guifg=#ff0000 guibg=#000000
highlight StatusLine guifg=#00ff00 guibg=#000000
set hls
hi Normal guibg=#000000 guifg=#ffffff
hi Search guibg=#ffffff guifg=#000000
hi IncSearch guibg=#ffffff guifg=#000000
set tags=./tags
set mousef
" set term=builtin_xterm
set ruler
syntax on
Syndicate content