【问题标题】:Set TextMate as the default text editor on Mac OS X将 TextMate 设置为 Mac OS X 上的默认文本编辑器
【发布时间】:2012-03-11 08:26:26
【问题描述】:

如何在 Mac OS X 上将 TextMate 设置为默认文本编辑器?

我试过了

ln -s /Applications/TextMate.app/Contents/Resources/mate ~/bin/mate
export EDITOR='mate -w'

但这不起作用。

【问题讨论】:

标签: macos editor textmate


【解决方案1】:

只需右键(或控制)单击您要更改类型的文件,然后:

“获取信息”->“打开方式:”->(选择 TextMate)->“全部更改”

【讨论】:

  • 请记住,这将基于每个文件扩展名,因此您必须为您希望 textmate 作为默认编辑器的每个文件扩展名的文件执行此操作。
  • 正确,我为 Sublime 编辑器做了这个。彻底的更改让我有点担心它会走得太远(祝你好运回滚)并且实际上只有少数文件类型需要更改。我会根据需要进行操作。
  • 嗨,我按照你说的做,但只适用于一个文件,而不适用于所有文件。
  • @Ben 从下拉列表中选择 TextMate 后,您必须点击“全部更改...”按钮并确认。它绝对有效,正如我所说的我自己做的。
  • @Ben 您需要确保并实际右键单击 > 获取信息,然后在该信息视图中查找“打开方式:”。这与右键单击并从第一个菜单中执行“打开方式”不同。我最初犯了这个错误,它只改变了一个文件。
【解决方案2】:

通过Finder的方法不实用。如果您是开发人员,您的文件可能包括 .profile、.gitconfig、.bashrc、.bash_profile、.htdocs 等。

最好的方法是在 Bash 中(对于 Sublime Text 3):

defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.sublimetext.3;}'

对于其他文本编辑器,我假设您可以将 'com.sublimetext.3' 替换为正确的字符串。您可能可以通过 Google 搜索您的文本编辑器的名称 +“LSHandlerContentType=public.plain-text”来确定您的应用程序的字符串是什么。

对我来说,这改变了 Finder 和

$ open ~/.bashrc

【讨论】:

  • 我们大多数人一次只使用一个文本编辑器。 Finder 更改给定文件类型的默认值,但谁想要更改 .html、.htm、.sh、.py、.txt、.css、.conf、.prod-conf、.staging-conf、.dev- conf(或团队中的任何其他开发人员可能会调用某些配置文件)、.md、.gitconfig........这个列表是无穷无尽的。 TextEdit 是一个可怕的文本编辑器。当它替换默认为富文本的 CRAP 软件时,彻底的更改是好的,如果您使用它打开/保存可能会破坏某些内容,因为您尚未使用 Finder 标记此文件类型。
  • 这是我正在寻找的具体答案,因为我试图为包含首选项的点文件设置默认编辑器。谢谢。
  • 对于其他编辑者,该字符串可以在应用程序的Info.plist 中找到。右键单击有问题的应用程序->显示包内容->打开Contents->使用文本编辑器打开Info.plist->找到键CFBundleIdentifier->下面的字符串值是有问题的字符串。跨度>
  • Info.plist for Textmate 2 是 CFBundleIdentifier = com.macromates.TextMate.preview"; 但这似乎对我不起作用
  • 这在 mac-os sierra 上不起作用。对我来说,“open .bash_profile”仍然由 textmate 打开:(
【解决方案3】:

您是否已修改您的 shell PATH 环境变量以包含 ~/bin?默认情况下,该目录通常不包含在 OS X 中的 PATH 中。在 /usr/local/bin 中创建符号链接可能更简单,它通常包含在 PATH 中。试试:

echo $PATH

【讨论】:

    【解决方案4】:

    这在 OS X v10.11 (El Capitan) 上对我有用:

    defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add \
    '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.macromates.textmate.preview;}'
    

    【讨论】:

      【解决方案5】:

      对于 TextMate 2:

      defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.macromates.TextMate;}'
      

      然后你需要重新启动。

      【讨论】:

        【解决方案6】:

        要全面更改默认文本编辑器,请在 .txt 文件上使用上述方法(即“获取信息”→“打开方式:”→(选择编辑器)→“全部更改”) /em>。然后它将被用作任何基于文本的文件的默认编辑器,该文件的扩展名还没有应用程序首选项。

        例如,如果您使用终端,命令 open -t 将使用您首选的文本编辑器,即与 .txt 文件关联的任何应用程序。默认情况下这是(你猜对了)TextEdit,除非你明确指定。

        【讨论】:

          【解决方案7】:

          我在 apple.stackexchange 上找到了 Replace Text Edit as the default text editor,效果非常好。

          对于像 .gitignore 这样的开发者类型文件,使用最后提供的选项:

          duti -s com.macromates.TextMate public.data all
          

          根据需要替换编辑器的 CFBundleIdentifier。要找到它,请找到应用程序文件,右键单击并选择 Show Package Contents,然后在 Contents 文件夹中打开 Info.plist。 CFBundleIdentifier 应该靠近顶部...

          这幅作品在 Catalina 上。如果/当我更新我的操作系统时,我会更新我的答案。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2010-11-13
            • 2012-12-16
            • 2010-10-20
            • 1970-01-01
            • 2021-04-10
            • 2012-03-04
            • 1970-01-01
            • 2013-08-27
            相关资源
            最近更新 更多