我可以在Lion中找回类似Snow Leopard的应用程序隐藏(Cmd-H)吗?


73

直到Mac OS X Snow Leopard,在使用应用程序时按+ H都有两件事...

  1. 该应用程序将自身隐藏起来。
  2. 该应用程序将其自身放置在+ 切换器的末尾。

第二点非常有用,因为当我隐藏一个应用程序时,我知道一段时间内不会使用它。将其发送到切换台的末尾有助于我专注于正在使用更多应用程序。

但是,在Lion中,即使+ H隐藏了该应用程序,它也只能将其移动到切换器中的下一个位置。这等效于2个应用程序之间的+ ,除了该应用程序现在也从视图中隐藏了。IMO,这破坏了切换台和应用隐藏概念的基本功能。我不知道为什么要这么做。

有谁知道如何解决这个问题(如果有的话)?也许我应该开始寻找的地方?我只是希望在某个地方的某些plist文件中隐藏了偏好设置...


10
我还没注意到这个职位...;)好问题...;)
jm666

5
对我来说,这听起来像是Lion中的错误。也许让苹果通过feedback@apple.com知道
dan8394 2011年

1
我刚刚在apple.com/feedback上输入了一份报告/要求。
格雷格·希吉尔

我也为此感到烦恼,并且也提出了反馈。但是,除了转移到像Witch这样的其他cmd-tab切换器之外,我不知道任何解决方案。
Michael H.

@khedron:女巫如何解决这个问题?它显示与Cmd-Tab相同的顺序。如果我想念什么,我很想知道,因为这种错误的特征使我无所适从。
Marcelo Cantos 2012年

Answers:


6

这是一个很好的问题。这可能是预期的行为,而不是错误。任务控制似乎融合了旧的Expose和旧的Spaces。考虑到这一点,启动全屏新应用会将其放置在自己的桌面上。进入Mission Control后,您会看到它位于原始的空桌面右侧。打开第二个全屏应用程序,它将再次放置在其自己的桌面上,与您打开的第一个全屏应用程序相邻。

就像iOS中的主屏幕和旧版Spaces一样,Apple似乎打算将这些台式机从空间角度考虑留在同一位置。如果我在打开Mail之后打开Safari,则Mail在Safari的“左侧”。我同意这种空间观念与我们对切换台的先入为主的理解相冲突。这就是为什么隐藏的全屏应用程序禁用(按同样的理由+ H不会隐藏全屏应用程序)。

如果所有内容都是全屏显示,则隐藏的概念变得不那么重要了。我回想起Mac OS的旧版本,在Windows的堆栈中有很多堆栈。隐藏诸如Adobe Photoshop之类的应用程序(以及我打开的许多图像中的每一个都具有许多打开的子窗口)是合理的。如果在空间上不存在这样的窗口“堆叠”(因为这些“全屏”应用程序现在并排放置,那么它们实际上并没有堆叠),那么这几乎是没有用的。

综上所述,我不能完全同意Lion已经完全弄乱了许多旧Mac用户的工作流程。我并不一定同意苹果在这里的决定,我只是想扮演一个主角,看看这个人是否特别有一些合理的解释。希望这可以帮助。

更新: TidBITS上的 这篇文章提到了Lion中的一项新功能,称为自动终止。我不知道此功能。我想知道问题作者的行为是否与此有关。


3
在处理非全屏应用程序时,我看不到全屏模式与⌘H的行为有何关系。
2011年

我注意到Cmd + H不适用于全屏应用程序,因此我认为他是在问仅指全屏应用程序。但是,在再次阅读问题之后,似乎他没有指定任何一种方式。如果他说的是“隐藏”命令不起作用的NON全屏应用程序,我同意这很可能是一个错误。但是,我上面的回答的重点是,如果他确实在谈论全屏应用程序;比这可能是Apple做出的UI决定之一-我推测他们可能会看到全屏应用程序切换类似于iOS应用程序切换器。
Christian Correa

我更新了答案,添加了TidBITS文章的链接,该文章涉及Lion中称为自动终止的功能。听起来,Lion可以终止某个应用并将其从Command + Tab切换器中删除。
Christian Correa

2
我不认为Cmd + H窗口堆栈行为也与自动终止相关,至少出于以下两个原因:我隐藏的应用程序仍具有未关闭的打开的窗口;该应用并未被操作系统自动终止,但仍在运行。
2011年

@Christian \ Correa —先生,你知道你的东西。您是否考虑过追求Apple认证,例如ACSP或ACTC?
亚历克斯

1

自从更改以来,这一直困扰着我,所以我又给了它一次机会。到目前为止,似乎唯一可行的方法是通过在隐藏之前切换到所有打开的应用程序来模仿它。不知道applescript是否有所更改,但我必须像这样更改willlma的脚本才能正常工作。这也大大减少了按键,因此应该更快地完成工作。

delay 0.5
set i to 0
tell application "System Events"
    set first_app to name of the first process whose frontmost is true
    repeat with p in every process
        if visible of p then
            set i to i + 1
        end if
    end repeat
    repeat i - 1 times
        key down command
        key down shift
        keystroke tab
        delay 0.01
        key up shift
        key up command
        delay 0.1
    end repeat
    set visible of process first_app to false
end tell

切换时它将显示出一些闪烁,并且如果某些动画花费的时间更长(例如切换到全屏应用程序),则延迟可能会太短,因此这些数字可能并非适用于所有Mac或特定情况。虽然可以通过全局热键设置Automator服务,但对我来说什么也没有发生。我对小型应用程序iCanHazShortcut感到更幸运,您可以osascript <scriptname>在按cmd-h时调用该应用程序。


0

我可以在Lion中找回类似Snow Leopard的应用程序隐藏(Cmd-H)吗?…应用程序将自身置于+ 切换器的末尾。…

自从Mac OS 8.5中引入Application Switcher以来,已经发生了许多变化。

在狮子

较新的Application Switcher可能无法获得旧的位置。

如果确定用于切换台的二进制文件,则运行strings(1)可能会显示更多内容。

……这可能是预期的行为 ……

我相信是这样。

……  一段时间内不会使用 ……

Lion的行为可能适用于很大一部分短期隐藏的用例。

有了舒适的按键组合(Command- Shift- Tab不太符合人体工程学): 

  • Lion比Snow Leopard更快,因为它可以显示隐藏的应用程序。

超越狮子

例如,在Mountain Lion中,有另一个变化:不再响应Command- 的无穷循环Tab

在OS X 10.9中可能会有进一步的更改。


0

这绝对是预期的行为。它也不会淡化图标,我觉得很烦。我写了一个GUI小程序来模仿旧的做事方式。复制此代码将其粘贴到Applescript中,保存,然后使用fastscripts将其与键盘快捷键(如ctrl + H)关联。

set i to 0
tell application "System Events"
    set first_app to name of the first process whose frontmost is true
    repeat with p in every process
        if p is visible then
            set i to i + 1
        end if
    end repeat
    repeat i - 1 times
        key down command
        repeat i - 1 times
            keystroke tab
            delay 0.03
        end repeat
        key up command
        delay 0.03
    end repeat
    set visible of process first_app to false
end tell

错误“系统事件出现错误:无法显示。” 可见的数字-1728
2014年

感谢您的脚本。我实际上并没有使用它,也没有为您设定的确切目的对其进行测试(正在检查它是否还有其他类似的东西),但是我只是要注意任何人,我必须在第五行显示“”,是:if p is "visible" then

至于淡出图标,可以通过安装TinkerTool轻松解决。
通配符
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.