Помните размеры и расположение окна при отключении и повторной загрузке второго монитора

Вот что-то, что отстой:

  1. Подключите внешний монитор к ноутбуку (Mac OS X Leopard в моем случае).
  2. Расположите свои окна, чтобы иметь IDE на одном экране и браузер на другом. (Etc и т. Д. Изменение размера, перестановка, суета, суета, суета.)
  3. Отключите монитор, чтобы выполнить встречу, или что-то еще.
  4. Перейти к 1.

Я хотел бы заменить шаг 2 на «компьютер», который точно помнит, как я это сделал, и просто вернул его туда.

(Мне лично нужно только решение для Mac, но сбор решений для других систем здесь может быть полезен другим. Я уверен, что это общая проблема.)

86 голосов | спросил dreeves 10 FebruaryEurope/MoscowbTue, 10 Feb 2009 21:36:09 +0300000000pmTue, 10 Feb 2009 21:36:09 +030009 2009, 21:36:09

8 ответов


49

Посмотрите Оставайтесь от Cordless Dog. Я считаю, что он делает именно то, что вы ищете.

ответил Tony Arnold 31 +03002010-10-31T14:04:59+03:00312010bEurope/MoscowSun, 31 Oct 2010 14:04:59 +0300 2010, 14:04:59
12

Slate - очень мощное бесплатное приложение для Mac, которое точно что ты хочешь. Когда вы подключаете дополнительный монитор, он автоматически обнаруживает новый монитор , и все ваши окна будут перемещены и изменены так, как вам нравится. Вы можете определить пользовательские позиции и размеры для всех ваших приложений, включая полноэкранный, полуэкранный и сетчатый.

Одна из самых классных вещей в Slate заключается в том, что вы можете определить разные макеты, основываясь на том, сколько мониторов вы подключили . Например, если вы используете свой ноутбук самостоятельно, вы можете захотеть, чтобы все ваши приложения заполняли весь экран. Но когда у вас есть дополнительный дополнительный монитор, вы можете разделить экран между браузером, почтой и музыкой. Слайт делает это легко.

Вы также можете определить сочетания клавиш для определенных макетов и действий, таких как подталкивание и изменение размера окон на определенный процент.

Ниже приведен файл конфигурации. Я держу все свои приложения в полноэкранном режиме на всех моих мониторах, но вы можете изменить его, чтобы сделать их половину или какой-то другой размер:

  # Псевдонимы монитора
alias mon-laptop 0 # переменная для моего монитора ноутбука
alias mon-hp 1 # мой внешний монитор HP

# Окно позиции позиции
alias hp-full move screenOriginX; screenOriginY screenSizeX; screenSizeY $ {mon-hp}
alias hp-left move screenOriginX; screenOriginY screenSizeX /2; screenSizeY $ {mon-hp}
alias hp-right move screenOriginX + screenSizeX /2; screenOriginY screenSizeX /2; screenSizeY $ {mon-hp}
alias laptop-full move screenOriginX; screenOriginY screenSizeX; screenSizeY $ {mon-laptop}
alias laptop-left move screenOriginX; screenOriginY screenSizeX /2; screenSizeY $ {mon-laptop}
alias laptop-right move screenOriginX + screenSizeX /2; screenOriginY screenSizeX /2; screenSizeY $ {mon-laptop}
alias laptop-righttop move screenOriginX + screenSizeX /2; screenOriginY screenSizeX /2; screenSizeY /2 $ {mon-laptop}
alias laptop-rightbottom move screenOriginX + screenSizeX /2; screenOriginY + screenSizeY /2 screenSizeX /2; screenSizeY /2 $ {mon-laptop}

# Макеты окон, когда у меня есть 2 монитора
layout 2monitor 'Google Chrome': REPEAT $ {hp-full}
layout 2monitor 'iCal': REPEAT $ {hp-full}
layout 2monitor 'Coda': REPEAT $ {hp-full}
макет 2monitor 'Mail': REPEAT $ {laptop-full}
макет 2monitor 'Rdio': REPEAT $ {full-full}
layout 2monitor 'Spotify': REPEAT $ {full-full}
макет 2monitor 'Evernote': REPEAT $ {laptop-full}

# Макеты одномониторных окон
макет 1monitor 'Google Chrome': REPEAT $ {full-laptop}
макет 1monitor 'iCal': REPEAT $ {laptop-full}
макет 1monitor 'Coda': REPEAT $ {полная версия}
макет 1monitor 'Mail': REPEAT $ {laptop-full}
макет 1monitor 'Rdio': REPEAT $ {full-full}
layout 1monitor 'Spotify': REPEAT $ {full-full}
макет 1monitor 'Evernote': REPEAT $ {full-laptop}

# Горячие клавиши для каждого макета
bind l: shift; ctrl layout 2monitor
bind g: shift; ctrl grid padding: 5 0: 2,1 1: 2,2

# Автоматическое обнаружение, когда монитор подключен или выключен
default 2monitor count: 2
default 1monitor count: 1
 

Вот список функций на странице Slate's GitHub:

  • Высоко настраиваемый
  • Привязать нажатия клавиш к:
    • перемещение и /или изменение размера окна
    • окна с направленным фокусом
    • активировать предустановленные макеты
    • создавать, удалять и активировать снимки текущего состояния окон
  • Установите макеты по умолчанию для разных конфигураций монитора, которые активируются при обнаружении этой конфигурации.
  • Советы по окну: интуитивный способ изменения фокуса окна
  • [Бета] Лучший, настраиваемый, переключатель приложений.

Вот отличный учебник о том, как получить максимальную отдачу от Slate.

ответил Ben 30 J000000Wednesday14 2014, 00:04:58
7

Я решил это с помощью небольшого AppleScript и небольшой бесплатной утилиты Quicksilver.

  1. Сохраните этот небольшой AppleScript в месте, которое не будет изменено на вашем компьютере:

      попробовать
        заявить заявку «Адиум»
            активировать
            указать окно «контакты»
                установите границы на {1281, 200, 1460, 850}
            конец сказать
            сканировать окна чата
                установите границы на {1281, 800, 1800, 1200}
            конец сказать
        конец сказать
    попробуйте
    
    пытаться
        сказать приложение «iTunes»
            активировать
            установите границы первого окна на {1750, 520, 2700, 1150}
        конец сказать
    попробуйте
    
    пытаться
        сообщить заявку «Терминал»
            активировать
            установите границы первого окна на {2450, 320, 3180, 950}
        конец сказать
    попробуйте
    
    пытаться
        скажите приложение «Firefox»
            активировать
            установите границы первого окна на {1460, 20, 2800, 950}
        конец сказать
    попробуйте
     
  2. Вам нужно будет настроить, какие приложения вы хотите на своем мониторе, и окно ограничивает то, что вам нравится. Я программист, и приведенная выше конфигурация - это то, как я запускаю свой второй монитор.

  3. Установите Quicksilver .

    Я решил сделать его невидимым в Dock и просто запустить как маленький демон панели задач

  4. Настройте ключевую команду в Quicksilver и перетащите AppleScript с шага 1 в окно в качестве действия для выполнения. Я привязал его к Command Shift A . Отлично работает!

ответил 31 Jpm1000000pmTue, 31 Jan 2012 21:32:02 +040012 2012, 21:32:02
2

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

Вы можете использовать приложения, позволяющие открывать несколько экземпляров одновременно, но сохранять состояние только при закрытии. Закройте экземпляр мультимонитора (который вызывает сохранение состояния). Отключите второй монитор. Если у вас запущен второй экземпляр, его следует переместить на главный монитор или запустить другой экземпляр. Не закрывайте этот экземпляр перед повторным подключением второго монитора и запуском другого экземпляра (который затем будет считывать конфигурацию с несколькими мониторами при запуске). Затем вы можете выйти из экземпляра одного монитора (сохранить это состояние), а затем экземпляр с несколькими мониторами (перезаписать состояние одного монитора).

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

Наконец, может быть такая утилита для вашей платформы, или писать можно не слишком сложно. Для Windows существует программа под названием ShiftWindow , которая может перемещать окна либо при запуске приложения, либо по определенной горячей клавише , Боюсь, я не знаю MacOS достаточно хорошо, чтобы сказать, существует ли аналогичная утилита. Это, вероятно, идеальное решение, во-вторых, только потому, что ОС поддерживает такую ​​вещь напрямую.

ответил 13 FebruaryEurope/MoscowbFri, 13 Feb 2009 12:47:40 +0300000000pmFri, 13 Feb 2009 12:47:40 +030009 2009, 12:47:40
1

По крайней мере, в Windows многие приложения будут восстанавливаться, если вы максимизируете их перед переключением мониторов. Оставьте их в покое, пока вы на совещании, а затем восстановите их после повторного подключения.

Это по-прежнему неполное исправление (и хлопот), но это единственное, что я знаю, если я хочу получить шанс восстановить мои тщательно размещенные окна. ShiftWindow звучит интригующе, хотя ...

И если вы переходите с двух мониторов до одного, Alt + Spacebar + M, то стрелки-клавиши являются спасателями (Windows снова, извините), если вы «потеряете» свои окна.

ответил 16 FebruaryEurope/MoscowbMon, 16 Feb 2009 01:01:37 +0300000000amMon, 16 Feb 2009 01:01:37 +030009 2009, 01:01:37
1

http://www.irradiatedsoftware.com/twoup/index.html

Я нашел это через Lifehacker, и он отлично работает для меня. Я использую про версии SizeUp в отличие от бесплатного TwoUp, и это идеально.

ответил 22 J000000Wednesday09 2009, 01:45:36
1

Я пользователь Windows и смотрю, как отключить новую функцию Windows 7, чтобы переместить все окна на удаленный внешний монитор. Я нашел квитанцию ​​(для видеокарт ATI), чтобы установить все значения DMMEnableDDCPolling в реестре равными 0. Это отключает автоматическую проверку, если монитор выключен. Теперь, если монитор отключен и снова подключен, все окна находятся в том же положении.

Вот ответ, который мне помог: https: //superuser.com/questions/120983/how-to-disable-monitor-auto-detection-in-windows-7 (ответ от Alex)

ответил 23 PM000000100000001531 2010, 22:46:15
0

Я просто последовал за http://cordlessdog.com/stay/, отлично работает для меня, с небольшое отставание, хотя

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

Возможно, вам придется добавить пребывание в качестве приложения для запуска, потому что вам придется запускать его каждый раз, когда вы перезагружаете свой Mac.

ответил kumarvarun 28 FebruaryEurope/MoscowbSat, 28 Feb 2015 03:04:30 +0300000000amSat, 28 Feb 2015 03:04:30 +030015 2015, 03:04:30

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132