Остановить закрытие окна Safari 9, когда остаются только закрепленные вкладки


41

Мне нравится, что Safari 9 закрепил вкладки, это был последний кусок, который позволил мне переключиться с Chrome. Однако я часто закрываю все вкладки, кроме закрепленных. Однако, если я не сделаю одну из закрепленных вкладок активной, а затем закрою другие вкладки, она закроет все окно, закрепленные вкладки и все.

Например, допустим, у меня есть одна закрепленная вкладка, а другая нет. Если не закреплена вкладка, и я нажму command+, wвсе окно закроется. Но если я активирую закрепленную вкладку и затем нажимаю кнопку закрытия на закрепленной вкладке, окно остается открытым. Есть ли способ сохранить окно открытым, пока есть какие-либо открытые вкладки, закрепленные или нет?


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

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

3
@Phong Кроме того, хорошая идея. Я сообщил об этой проблеме.
— пончик

@donut Я не думаю, что это предполагаемое поведение. Каждый раз, когда окно закрывается и вы открываете новое, вкладки снова загружают страницы. Это действительно расстраивает. И если они прикреплены, это потому, что я не хочу закрывать их xD
— Дейв

@ Дэйв Пожалуйста, сообщите о проблеме с помощью Feedback Assistant. Чем больше людей сообщают об этом, тем выше вероятность того, что это изменится.
— пончик

Ответы:


60

Если вы посмотрите меню «Файл», вы увидите ⌘Wизменения в зависимости от количества открытых вкладок. Если их несколько, это «Закрыть вкладку», если есть (не считая закрепленных), это «Закрыть окно».

Есть обходной путь! Вы можете перезаписать, ⌘Wчтобы всегда выполнять «Закрыть вкладку».

Перейдите в Системные настройки> Клавиатура> Сочетания клавиш> Сочетания клавиш приложения

Добавьте ярлык для приложения «Safari», пункт меню «Закрыть вкладку», ярлык ⌘w.

Если вы не используете английский в Safari, найдите точное название пункта меню для закрытия вкладки. В голландской версии Safari пункт меню называется «Sluit tabblad».


1
Следует отметить, что это исправление имеет побочный эффект - не позволяет вам закрыть последнюю вкладку в любом открытом окне Safari, поэтому даже окна без закрепленных вкладок нельзя закрыть с помощью ⌘W.
— Брайан Донахью

4
Это отличный трюк. И вы можете закрыть окно, вам просто нужно использовать Command-Shift-W, чтобы сделать это. Мне это нравится, потому что это делает закрытие окна явным, а не контекстным.
— GuyGizmo

9

Просто хочу добавить к ответу Хахре, что вы можете достичь того же результата, используя терминал. Для перезаписи ⌘W в Safari выполните следующие строки:

defaults write com.apple.Safari NSUserKeyEquivalents -dict-add 'Close Tab' '<string>@w</string></dict>'
defaults write com.apple.universalaccess com.apple.custommenu.apps -array-add '<string>com.apple.Safari</string>'

Затем перезагрузите Safari:

killall Safari
open -a Safari

Я использую эти команды в Сьерре - прекрасно работает.


1
Вы пропустили открывающий <dict>тег? так что второй аргумент в первой команде будет'<dict><string>@w</string></dict>'
— rudolph9

@ rudolph9 кажется, что ты прав. но теперь есть возможность установить com.apple.Safari по-новому: defaults write com.apple.safari NSUserKeyEquivalents '{"Close Tab"="@w";}'и это работает. Плохая новость в том, что я не могу найти простой способ написать com.apple.universalaccess( defaults write com.apple.universalaccess "com.apple.custommenu.apps" -array-add "com.apple.Safari"просто вызвал ошибку и ничего не сделал с sudo)
— zhukov.ever
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.