Как переместить окно в другое место без использования мыши?

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

Я знаю различные способы сделать это с помощью мыши:

  • Нажмите и удерживайте строку заголовка окна и перетащите к краю
  • F8чтобы показать все пробелы и перетащите в нужное место
  • Нажмите и удерживайте строку заголовка и используйте Ctrl+ #или Ctrl+Scroll Arrow

Но не удалось найти метод только для клавиатуры. Я использую Linux для одной из своих основных рабочих станций, у которой есть такая возможность, и я бы с удовольствием использовал ее и с OSX.

Ответы (7)

Перетаскивая окно, нажмите комбинацию клавиш, чтобы переместить окно в пронумерованное пространство:

  • Control+1
  • Control+2
  • Control+3
  • и т.д ...

РЕДАКТИРОВАТЬ: Для Lion мне пришлось перейти в «Системные настройки» -> «Клавиатура» -> «Сочетания клавиш» -> «Управление полетом» и включить эти горячие клавиши.

Это просто перемещает экран в другое место, вам действительно нужно щелкнуть окно мышью, а затем использовать этот ярлык для перемещения окна.
Похоже, вам нужно включить эти сочетания клавиш для каждого выпуска, начиная с Lion. К вашей чести, это легче для моих пальцев, чем то, что я делал раньше: ctrl + →перетаскивая окно.
−1. ОП попросил «метод только для клавиатуры». Для «перетаскивания окна» требуется мышь.

РазмерУвеличить

Вы могли бы взглянуть на SizeUp, который был рекомендован на apple.se по крайней мере один раз раньше — у него есть несколько хороших инструментов клавиатуры для перебрасывания окон на несколько мониторов (как я его использую), а также для разбрасывания их по нескольким «пространствам».

Это не бесплатно, но очень полезно и, безусловно, стоит небольшого регистрационного взноса.

Spectacle работает для нескольких дисплеев, если перемещаемое приложение не находится в полноэкранном режиме.

Аметист

С Amethyst вы можете отправлять окна в определенные места, используя настраиваемые сочетания клавиш. Одна из возможных настроек:

  • Command+ Control+ 1   [отправить на рабочий стол 1]
  • Command+ Control+ 2   [отправить на рабочий стол 2]
  • Command+ Control+ 3   [отправить на рабочий стол 3]
  • и так далее . . .

По умолчанию Amethyst автоматически разбивает окна macOS. Если вам не нужна автоматическая мозаика или дополнительные функции макета, которые предоставляет Amethyst, добавьте «плавающий» в «Макеты» в разделе «Настройки» и удалите все остальные макеты. Кроме того, отключите все ненужные сочетания клавиш на вкладке «Сочетания клавиш».

На случай, если кто-нибудь просматривает эту тему спустя годы, попробуйте Amethyst с BetterTouchTool (платно). Изменил мою жизнь. «Жесты клавиатуры» BetterTouchTool можно настроить так, чтобы Ctrl+ Alt+ Shift+ L/ Hотправляло окно на один пробел вправо/влево соответственно; это прекрасно дополняет обычные ярлыки. Затем настройте трекпад или волшебные жесты мыши для выполнения ярлыков Amethyst, таких как TipTaps для изменения размера главного окна, или мой любимый «касание двумя пальцами сверху» для щелчка левой кнопкой мыши, а затем установите текущее окно в главное окно (alt-shift-enter) . Красивый.

ябай и схд

ябай

yabai — это утилита управления окнами, которая предназначена для работы в качестве расширения встроенного оконного менеджера macOS.

ябай на github: https://github.com/koekeishiya/yabai

yabai предоставляет команду для перемещения окна на следующий экран:

yabai -m window --space next

Если вы хотите переместить окно на следующий экран, а также сфокусировать следующий экран, используйте:

yabai -m window --space next && yabai -m window --space next

yabai автоматически разбивает ваши окна по умолчанию. Вы можете настроить макет float, чтобы отключить это. Для этого добавьте следующую строку в ~/.yabairc:

yabai -m config layout float

схд

skhd — простой демон горячих клавиш для macOS.

схд на гитхабе: https://github.com/koekeishiya/skhd

Установите skhd и добавьте эту строку в ~/.skhdrc:

ctrl + cmd + alt - right : yabai -m window --space next

Затем вы можете переместить окно в другое место с помощью ярлыка ctrl+ cmd+ alt+right arrow

Вы можете еще больше расширить это. Далее вы увидите, как я настроил его ~/.skhdrcдля перемещения окон между пространствами:

# move window to next space and focus next space if next space is not last space of display
ctrl + shift + alt - right : [[ $(yabai -m query --spaces --space | jq '.index') != $(yabai -m query --displays --display | jq '.spaces | max') ]] \
                             && yabai -m window --space next \
                             && yabai -m window --space next
Обратите внимание, что Yabai требует от вас (хотя бы временно) отключить SIP и внедрить его код в WindowServer, что критично для безопасности. Это шоу-стоп для многих людей.
@Atemu Не все функции Yabai требуют этого, но многие требуют.
yabai — это мусор, требует бесконечной настройки и вмешательства в важные файлы Mac, не навязывайте это своей ОС.

BetterTouchTool : бесплатный и выполняет свою работу, а также много дополнительных функций ;) Я использую его в сочетании с ShiftIt для изменения размера окна.

отличный инструмент, но больше не бесплатный. Тем не менее, он стоит нескольких долларов.
ShiftIt сейчас вроде мертв, но я полностью заменил его на BTT.

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

Шаги:

  1. Включить клавиши мыши, если они еще не включены (стандартный ярлык — 5 раз нажать левую кнопку выбора)

  2. Используйте цифровую клавиатуру, чтобы поместить указатель мыши в строку меню приложения. Используйте клавишу #5, чтобы щелкнуть, затем удерживайте ее и немного перетащите окно, щелкнув одну из других цифр (клавиши направления).

  3. Затем, когда этот режим активен, вы можете прекратить перетаскивание (но удерживайте нажатой клавишу мыши № 5) и использовать сочетание клавиш Ctrl-влево / вправо, и окно будет следовать

Подробнее об использовании клавиш мыши — https://support.apple.com/en-us/HT204434#mousekeys.

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

Шифт классный...

Я использую shiftit , инструмент с открытым исходным кодом для изменения размера/перемещения окон.

Чтобы переместить окно, вы можете нажать_удерживать_окно + CTRL + пробел_номер.

Добро пожаловать в Спроси Разное! Пожалуйста, воздержитесь от ответов в 1 предложение. Мы пытаемся найти лучшие ответы, и эти ответы предоставят информацию о том, почему они лучшие. Подобные короткие ответы не объясняют, почему они являются лучшим подходом или лучшим инструментом. Кроме того, предоставление ссылки на инструмент может быть очень полезным для ОП. См. раздел «Как ответить », чтобы узнать, как дать качественный ответ. - Из отзыва -
Как вы «click_hold_window» без использования мыши?
Елезар, ShiftIt требует мыши...
Требуется мышь, перемещается между экранами , а не пробелами , о чем и был задан вопрос.