Отметка писем как прочитанных

По умолчанию Mail.app помечает письмо как прочитанное сразу после того, как вы выберете его в списке. Для того, чтобы добавить задержку для этого действия можно использовать такую команду (здесь выставляется задержка в две секунды):

defaults write com.apple.Mail MarkAsReadDelay 2

Для того, чтобы вернуть всё к установкам по умолчанию:

defaults delete com.apple.Mail MarkAsReadDelay

Установка MySQLdb под OS X Lion

После покупки нового ноутбука я столкнулся с проблемой установки на OS X Lion библиотеки для доступа к MySQL для языка python. До этого эта проблема не возникала видимо из-за того, что система у меня обновлялась с 10.6 и библиотека была собрана и установлена ещё на старой системе.

В этот же раз после сборки и установки, при попытке импортировать MySQLdb выпадала такая ошибка:

>>> import MySQLdb
/Library/Python/2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /Library/Python/2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg/_mysql.pyc, but /Users/jhaddad/Downloads/MySQL-python-1.2.3 is being added to sys.path
Traceback (most recent call last):
File ““, line 1, in
File “MySQLdb/__init__.py”, line 19, in
import _mysql
File “build/bdist.macosx-10.7-intel/egg/_mysql.py”, line 7, in
File “build/bdist.macosx-10.7-intel/egg/_mysql.py”, line 6, in __bootstrap__
ImportError: dlopen(/var/root/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg-tmp/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib
Referenced from: /var/root/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg-tmp/_mysql.so
Reason: image not found

Оказалось, что победить её очень просто. Достаточно только сделать символьную ссылку на файл `libmysqlclient.18.dylib`, который система не может найти самостоятельно:

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

После этого нехитрого действия все отлично работает.

Про чтение цепочек писем в Mail.app

Если вы читаете в программе Mail длинную цепочку сообщений, то программа помечает текущее письмо прочитанным после небольшой задержки. Изменить длину задержки можно следующей командой:

defaults write com.apple.Mail MarkAsReadDelay 0

В примере выше задержка равна нулю.

Вернуть всё на исходные позиции поможет такая команда:

defaults delete com.apple.Mail MarkAsReadDelay

Просмотр man-страниц в терминале

В терминале Mac OS Lion появилась возможность удобно просматривать man-страницы. Для этого напишите команду, инструкцию на которую вы хотите прочитать и кликните на ней правой кнопкой мыши. В появившемся меню выберите пункт Open man Page.

![Man 1](http://mactrick.com/wp-content/uploads/2011/12/man_1.png)

Откроется новое окно с инструкцией.

![Man 2](http://mactrick.com/wp-content/uploads/2011/12/man_2.png)

Сужение области отображения в полноэкранном Сафари

Если вы пользуетесь Safari в полноэкранном режиме, вы можете сделать так, чтобы область отображения сайтов стала уже. Это удобно, если сайт имеет «резиновую» вёрстку, а экран у вас большой.

Для сужения области достаточно схватить мышкой правый или левый край браузера и потянуть его в центр экрана.

![Safari Fullscreen](http://mactrick.com/wp-content/uploads/2011/10/safari_fullscreen.png)

Перемотка текущей песни в iTunes

Для того, чтобы перемотать играющую песню в iTunes на пять секунд вперёд или назад, можно использовать клавиши Command-Option-→ и Command-Option-← соответственно.

Спонсор: Тестирование
под Mac OS

Parallels, Coherence mode и синхронизация времени

*Совет прислан читателем.*

Недавно перешел на Mac (Mac OS X 10.6) и по долгу службы мне приходится работать в Excel, Word и Visio. Соответственно установил на Mac Parallels DT 6 c Win 7.

Программа отличная, но при работе в MS Office в режиме Coherence через каждые 60 секунд начинает подпрыгивать панель задач (Start bar), что реально бесит и этого не должно быть, так как режим Coherence полностью раскрывает окно приложения и скрывает все атрибуты win .

Через диспетчер задач выяснил, что win каждые 60 секунд запускает какой-то нетиповой процесс, а именно синхронизацию времени между Mac и Win. Для того чтобы отключить синхронизацию времени идем в Parallels -> «Настроить» -> «Параметры» -> «Дополнительно» -> Ставим галочку «Разрешить расхождения времени с Mac» -> панель задач больше не беспокоит.

Для некоторых настроек необходимо чтобы время было синхронизировано поэтому на время настроек галочку можно убрать.

Фокус следует за мышью

Если выполнить такую команду:

defaults write com.apple.terminal FocusFollowsMouse -string YES

, то мы вернёмся в старые добрые времена XFree, xterm’а и олдскульных оконных менеджеров, когда фокус следовал за курсором мыши. Если открыть несколько окон терминала и переводить мышку от одного к другому, активным будет становиться то, над которым на данный момент курсор. Особой практической ценности это не несёт, но вспомнить молодость можно.

Да, для того, чтобы отменить такое поведение, нужна чуть видоизменённая команда:

defaults write com.apple.terminal FocusFollowsMouse -string NO

Естественно, что после этого Terminal.app нужно перезапустить.

iTunes входящие соединения

После покупки SSD-диска и переустановки системы, я заметил, что при первом после перезагрузки запуске iTunes всегда появляется окно с запросом на разрешение этой программе принимать входящие соединения.

![iTunes Incoming Connection](http://mactrick.com/wp-content/uploads/2011/04/itunes_incomin_connection.jpg)

Поразбиравшись в проблеме, я выяснил, что это происходит от того, что в бандл программы были внесены изменения. Из-за этого она не проходит проверку электронной подписи.

Проверить, подписана ли программа или нет можно такой командой в терминале:

codesign -vvv /Applications/iTunes.app/

При удачной проверке вывод будет таким:

/Applications/iTunes.app/: valid on disk
/Applications/iTunes.app/: satisfies its Designated Requirement

При неудачной примерно таким (могут отличаться имена файлов):

/Applications/iTunes.app/: a sealed resource is missing or invalid
/Applications/iTunes.app/Contents/Resources/English.lproj/AutofillSettings.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/iTunesDJSettings.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/MobilePhonePrefs.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/MobilePhoneSetup.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/UniversalAccess.nib/objects.xib: resource added

Как видно, в бандл добавились лишние файлы. Подозреваю, что изменение содержимого бандла произошло после какого-то из обновлений или после установки каких-то программ для айфона (сам-то я уж точно ничего не менял).

Для того, чтобы избавиться от надоедливого окошка можно пойти двумя путями. Первый — скачать с сайта Apple установочный файл и переустановить iTunes.

Второй сложнее. Можно удалить лишние файлы. Я написал простенький однострочный шелл-скрипт, который удаляет лишние файлы.

codesign -vvv /Applications/iTunes.app/ 2>/dev/null| awk ‘{print $1}’ | tr -d ‘:’ | xargs sudo rm

Для его работы понадобится ввести пароль. И обязательно сделайте резервную копию iTunes. Можно просто скопировать его из папки Applications.

Рапрос на разрешение соединений пропал после применения обоих способов.

Как включить жесты в Firefox4

Для того, чтобы включить жесты для увеличения/уменьшения страниц в новом Firefox 4, нужно:

  • Откройте новую вкладку
  • Наберите в адресной строке about:config
  • Подтвердите, что вы обещаете быть очень осторожным
  • Напишите в строке поиска слово pinch и нажмите ввод
  • Выставьте значения переменных так, как показано ниже:
  • browser.gesture.pinch.in         cmd_fullZoomReduce
    browser.gesture.pinch.in.shift   cmd_fullZoomReset
    browser.gesture.pinch.out        cmd_fullZoomEnlarge
    browser.gesture.pinch.out.shift  cmd_fullZoomReset
            
  • Перезапустите Firefox