Записки о Mac OS X: Управление окнами
Дата публикации: 21/12/2008В любой современной настольной операционной системе мы взаимодействуем с программами посредством окон. Каждая программа или документ имеет свое собственное окно, которое мы можем свободно перемещать и менять его размеры. Времени на работу с окнами уходит достаточно много и оптимизировать работу с ними означает сделать эту работу быстрее.
Постепенно изучая "Mac OS X", обнаруживаю что концепции, заложенные в нее в некоторых аспектах существенно опережают "Windows". В частности это иллюстрируется тем фактом, что базовые вещи в "Mac OS X" делаются за меньшее количество операций и, как я уже отмечал ранее, большое внимание уделяется использованию быстрых клавиш. С другой стороны, операционная система "Mac OS X" является достаточно нишевой и многие пользователи "Windows" даже не имеют понятия о том, что есть и другой подход.
Если бы "Mac OS X" была свободно-доступной операционной системой, которую можно было бы поставить на любой PC-совместимый компьютер, то тогда бы появилась реальная конкуренция интерфейсов. Но Apple продает не просто компьютеры или операционную систему. В первую очередь, Apple продает готовые и надежные решения, которыми можно эффективно пользоваться прямо из коробки. Часть нововведений, которые предлагаются сначала в "Mac OS X" затем можно заметить в других операционных системах. В последнее время ловлю себя на мысли, что некоторые из заявленных или рекламируемых преимуществ в "Windows" зачастую уже давно и очень хорошо реализованы на Мак-ах.
Далее я хочу подробнее рассказать о некоторые особенностях работы с программами и документами в "Mac OS X". Точнее об управлении окнами и о тех удобных вещах, которые позволяют работать быстро и эффективно. При этом, я не могу сказать, что все поголовно выиграют от того, если перейдут на "Mac OS X", да это и невозможно без покупки далеко не дешевого компьютера от Apple. Более того, требуется обучение и пересмотр своих взглядов на интерфейс и стиль работы, потому что в "Mac OS X" он просто другой.
Немного познакомиться со стиле работы и программами "Mac OS X" можно, если скачать "iTunes" или браузер "Safari", выпущенные под "Windows". Возможно в будущем, Apple выпустит и ряд других своих продуктов под другие операционные системы. Тут еще нужно сказать, что версии тех же программ под "Mac OS X" обладают большими возможностями и гораздо глубже интегрированы в систему, чем под "Windows".
Программы, документы и Dock
В большинстве операционных систем есть четкое разделение программ, доступных через меню запуска - пресловутая кнопка "Пуск" в Windows и программ запущенных в данный момент, которые показываются на панели задач. Похожая концепция используется и в графических средах под Linux - в KDE и GNOME. В операционной системе "Mac OS X" никакого аналога кнопки "Пуск" нет, равно как нет и отдельной панели задач для запущенных программа. А есть такая вещь как "Dock" на которой размещаются часто используемые программы и рабочие документы с папками.
Dock разделен на две части - в левой находятся программы, а в правой документы и свернутые окна. Запустить программу можно как из Dock-а, так и посредством Finder-а, найдя нужную в папке "Программы". Если программа изначально отсутствовала в Dock-е, то после запуска она там появится. Отличить запущенную программу можно по голубой точке или треугольнику под пиктограммой. Если вам нужно оставить программу в Dock-е для быстрого запуска, то это очень легко сделать посредством контекстного меню иконки данной программы. В этом же меню можно выбрать режим автоматического запуска приложения при входе в систему - аналог папки "Автозагрузка" в Windows.
Я хочу отметить очень важный аспект обратной визуальной связи, которую обеспечивает Dock. Во-первых, при проведении курсора над пиктограммами они увеличиваются, что облегчает их запуск. Во-вторых, при запуске программы, а также по окончании какого-нибудь продолжительного действия, иконка программы подпрыгивает. В-третьих, иконки документов и папок отражают их текущее содержимое. В дополнение к визуальным эффектам, "Mac OS X" сопровождает невозможные в данном контексте операции негромким щелчком.
Кстати, в "Mac OS X" можно легко имитировать функциональность меню "Пуск" для запуска программ, просто перетащив папку "Программы" в Dock. При этом, если мы размещаем в Dock-е не документ, а папку, то при щелчке на ее иконке, она раскрывается либо в виде дуги пиктограмм, либо в виде сетки - если внутри папки много файлов. И таким образом можно затем очень быстро запустить любую программу. Впрочем, в ряде случае удобнее всего запускать программы и открывать документы посредством встроенной поисковой системы "Spotlight", но этот вопрос заслуживает отдельной заметки.
Возвращаясь к концепции отстутствия разницы между запущенной и незапущенной программами в Dock-е. Изначально эта концепция появилась в "Palm OS" и ее смысл был в том, что пользователю все равно запущена программа или нет - он просто вызывает нужное приложение для выполнения своей задачи. Сама "Palm OS" была устроена таким образом, что в ней отсутствовало понятие загрузки программы в оперативную память перед выполнением - все программы просто всегда были запущены и вы только переключались между ними. В "Mac OS X" программы, конечно, загружаются предварительно в оперативную память, но внимание пользователя на этом не акцентируется. Это приводит к тому, что даже закончив работать с каким-то документов и закрыв его окно, программа остается в памяти, если из нее специально не выйти. Как следствие, если вы постоянно используете какую-то программу, то в таком режиме она открывается очень быстро.
Также Dock обладает дополнительной функциональностью, позволяя перетаскивать любые файлы на пиктограммы приложений. Если данный тип файла поддерживается программой, то она запустится и покажет содержимое файла. При этом, по умолчанию, данный файл может открываться совершенно другой программой. Такое перетаскивание особенно удобно в случае, если вы хотите добавить фотографию в "iPhoto" или песню в "iTunes". Очень эффектно просматривая web-страничку и найдя интересную фотографию, просто перетащить ее на значок "iPhoto" непосредственно со странички.
Перемещение между окнами и программами
Когда запущено много программ, то перемещаться по ним удобнее всего посредством сочетания клавиш "Cmd+Tab", если речь идет о Макинтош или посредством "Ctrl+Tab" в Windows. Но в "Mac OS X" данная функциональность несколько расширена. Во-первых, можно очень быстро закрывать программы, не переходя в них- достаточно не отпуская клавишу "Cmd" просто нажать клавишу "Q". Во-вторых, очень удобно перемещаться по кругу между документами одной программ, нажимая сочетание клавиш "Cmd+~". Если посмотреть на клавиатуру, то можно заметить, что тильда находится как раз над клавишей "Tab". А закрывать окна документов можно похожим образом, но используя, при нажатой клавише "Cmd", букву "W", расположенную рядом с "Q".
Для сравнения - в Windows тоже можно перемещаться между открытыми окнами одной программы, но только нажимать для этого нужно сочетание "Ctrl+F6", что, мягко говоря, гораздо менее удобно. Также можно и закрывать программы "Windows" нажатием "Ctrl+F4", но только уже перейдя непосредственно в программу. Другими словами, те же самые операции делаются гораздо дольше.
Разумеется, можно также переключаться на нужную программу просто щелкая на ее иконке в Dock-е - это удобный способ, если окно полностью скрыто. О скрытии окон я рассказываю немного ниже.
Функция "Expose"
Когда плодотворно работаешь на компьютере, то параллельно запущено обычно очень много программ и в них нужно как-то ориентироваться. Быстрое переключение между окнами, как это описано выше, конечно хорошо, но далеко не всегда это оптимальный способ. В большом нагромождении окон нужно как-то разбираться и в "Mac OS X" есть несколько способов это сделать. Начнем с самого эффектного, который называется "Expose".
Исходная идея просто и гениальна - как быстро найти определенное окно среди множества? Нужно просто взглянуть на все окна сразу! Именно это и делает функция "Expose". При ее вызове, все окна, находящиеся на экране, уменьшаются в размерах и размещаются на одном экране - вы как бы видете все окна с высоты птичьего полета. При этом размещаются окна с использованием определенного алгоритма и с сохранением относительных размеров. И все окна продолжают работать - фильмы показываются, странички загружаются, графики анимируются!
Вызов данной функции осуществляется при помощи быстрой клавиши "F9" или мультитач-жеста на новых алюминиевых MacBook-ах - смахиванием четырех пальцев вниз. Для перехода к нужному окну достаточно просто выбрать его на экране. А если вы хотите просмотреть в таком режиме только окна определенной программы, то достаточно нажать один или несколько раз клавишу "Tab".
Другая возможность функции "Expose" это временно убрать все окна с экрана, чтобы добраться до рабочего стола. Это также делается, либо при помощи быстрой клавиши "F11", либо с использованием мультитач-жеста - смахиванием четырех пальцев вверх.
Кроме простого нахождения нужного окна и перехода к нему, "Expose" позволяет делать гораздо более изощренные вещи. Предположим, что вы пишите письмо и решаете послать во вложении фотографию, которая у вас находится в программе iPhoto. При использовании "Expose", вам достаточно захватить изображение и, начав перетаскивание, вызвать "Expose" далее, не отпуская курсор, выбрать окно в котором вы пишите письмо и бросить на него файл. Сравните этот способ с последовательным нахождением нужных окон, размещением их рядышком, чтобы они не перекрывались и последующим перетаскиванием файла.
Могу сказать по поводу использования "Expose", что это действительно очень эффективная и удобная функция. Ничего похожего под "Windows" я не видел, хотя говорят, что есть отдельная программа, которая имитирует данное поведение и под этой операционной системой. Впрочем, ввиду того, что концептуально это разные системы, под "Windows" это может и не сработать - в смысле увеличения эффективности работы. В первую очередь потому, что в "Windows" норма работать с приложениями в полноэкранном режиме.
Скрытие окон
Еще один из очень эффективных способов разобраться с окнами в "Mac OS X" это их скрытие. В самом деле, иногда окон настолько много, что мозг просто отказывается их все воспринимать и хочется закрыть все программы, кроме текущей. Ну так вот, в "Mac OS X" это возможно - нажатие сочетания клавиш "Cmd+H" скрывает текущее окно, а нажатие сочетания "Cmd+Option+H" делает наоборот - скрывает все окна, кроме текущего! Причем окно именно скрывается, а не сворачивается в Dock. Добраться до таких скрытых окон можно, либо через переключение окон при помощи "Cmd+Tab", либо щелчком по пиктограмме в Dock-е.
Как показал опыт, это очень удобно, т.к. моментально расчищаются завалы окон и создается полное впечатление, что запущена всего одна программа. А с психологической точки зрения это очень важно, т.к. позволяет сосредочиться только на текущей задаче.
Кстати, скрывать окна можно не только при помощи горячих клавиш, но и щелкая по пиктограмме в Dock-е с нажатой клавишей "Cmd", для скрытия текущей программы вместе со всеми ее окнами, или удерживая клавиши "Cmd+Option" для скрытия всех остальных программ, кроме текущей.
Виртуальные экраны "Spaces"
Еще один способ, позволящий оптимизировать свою работу с окнами, это виртуальные экраны. Помнится, я уже писал об утилите под "Windows", которая позволяла организовывать независимые рабочие столы и в каждой из них работать со своим набором программ. Так вот, в "Mac OS X" эта функциональность встроена на уровне системы и расширена некоторыми дополнительными операциями, кроме собственно переключения между виртуальными экранами.
Самый простой способ вызвать "Spaces" это щелкнуть на пиктограмме в Dock-e. При этом, вы сразу увидите все доступные виртуальные экраны и что в них творится. В этом режиме достаточно просто щелкнуть на нужном виртуальном экране, чтобы туда перейти. Но этим функциональность данного режима не ограничивается - вы можете схватить любое окно на любом виртуальном экране и перетащить его куда вам нужно. Но более эффективно, опять же, воспользоваться быстрыми клавишами для переключения между экранами. По умолчанию, сочетания клавиш настроены на комбинации клавиш "Control+цифры". В случае использования быстрых клавиш, "Mac OS X" отображает также небольшое всплывающее окно, показывающее куда именно мы переходим. Обратите внимание - опять обратная визуальная связь.
В этом режиме очень удобно на одном экране, разместить, например почту и браузер, на другом "PhotoShop" и папку с обрабатываемыми фотографиями, а на третьем "iTunes", который играет любимую песню. Количество виртуальных экранов, по умолчанию, равно четырем, но оно может быть расширено вплоть до шестнадцати, что может быть полезно на больших мониторах.
При настройке "Spaces", можно привязать определенные программы к конкретному виртуальному экрану. В этом случае, при запуске приложения, его окно будет сразу открываться в выбранном виртуальном экране. А если этот режим еще и совместить с автоматическом запуском программы при входе в систему, то вы получаете готовую рабочую среду сразу после включения компьютера.
Диалоговые окна документов
Еще одна интересная особенность "Mac OS X" связана с тем, что часть диалоговых окон привязаны не к программе, а к документу в этой программе. Предположим, что вы одновременно работаете с несколькими окнами в "Microsoft Word" и вам необходимо сохранить текущий документ. При этом, разумеется, появляется диалоговое окно с запросом имени и пути куда нужно сохранить файл. В той же "Windows" данное окно является модальным и, в случае нескольких открытых текстов, не очень понятно а какой именно файл сохраняется. Если отвлечься минут на десять, а потом вернуться к работе, то можно и не сразу понять что же именно мы делаем.
В "Mac OS X", для решения этой проблемы, сделали следующую вещь - подобные диалоговые окна привязали непосредственно к тому документу, который сохраняется. Такое диалоговое окно как бы выплывает прямо из заголовка окна документа и привязано к нему. При этом, вы можете спокойно перейти к другому открытому документу и продолжать работать, не закрывая диалогового окна в предыдущем документе.
Кстати, если вы работаете над каким-либо документом и он еще не сохранен, то в кнопке закрытия окна появляется маленькая черная точка. Да, под "Windows" тоже есть текстовые редакторы и другие программы, которые похожим образом идентифицируют несохраненные документы, но в "Mac OS X" это сделано на уровне самой операционной системы.