如何更改 TextMate 中每个打开的 window 的显示名称?

How can I change the display name for each open window in TextMate?

我经常在 TextMate 中打开十几个或更多项目,并且不断在它们之间切换。这可能看起来微不足道,但当我经常不得不在打开的应用程序 windows 列表中寻找我想要的项目时,它确实打断了我的工作流程(其中每个 window 映射到不同的项目)。 TextMate 将每个 window 报告为 file_name -- project_name。这些按字母顺序排列。这意味着每次我在特定项目中切换我正在使用的文件时,打开的项目列表 windows 都会重新排序......这就是为什么我每次都必须寻找我想要的项目想切换。如果我可以搜索按项目字母顺序排列的列表,那就更好了,如果可以让 TextMate 以 project_name -- file_name 的格式报告打开的 window 的名称,这将很容易。有没有办法配置 TextMate 为我执行此操作?

修改 windows / 选项卡的标题是通过 ~/.tm_properties 文件完成的,请参阅 http://blog.macromates.com/2011/git-style-configuration/ 作为阅读本文的起点。

在您的特定情况下,您希望将 windowTitle 变量设置为如下内容:

windowTitle = "${CWD/^.*\///} – $TM_DISPLAYNAME"

如果您正在使用某种源代码管理(Git、颠覆等),我建议在设置中保留预定义的 $windowTitleSCM:

windowTitle = "${CWD/^.*\///} – $TM_DISPLAYNAME$windowTitleSCM"

附带说明一下,您的主要问题似乎是同时管理许多打开的项目:最近 "Open Favorites" 的工作方式发生了变化。如果您按 ⌘⇧-O,则会显示您最近的所有项目。从那里,您可以使用 ⌘-T 的相同方式对它们进行模糊搜索。

kwood 让我走上了正确的道路。我真的只需要设置的名称。我将以下两行添加到我的 .tm_properties 文件中:

windowTitleProject = '${projectDirectory:+ ${projectDirectory/^.*\///}} - '
windowTitle        = '$windowTitleProject$windowTitleSCM$TM_DISPLAYNAME'

这会导致任何不属于项目的文件(如笔记或草稿)在前面加上连字符,但这没问题。

最有帮助的参考 material 是 section 2.2 of the TextMate manual