更改在终端中打开的文件的默认编辑器? (例如将其设置为 TextEdit/Coda/Textmate)

问题描述 投票:0回答:9

有没有办法让在终端中打开进行编辑的文件改为在 Textedit 中打开?

例如,命令可能打开一个文件进行编辑(如

git commit
),而不是在 vim 或 emacs 中打开该文件,而是在 Textedit(或者您选择的其他文本编辑应用程序,例如 Coda 或升华)。

作为一个额外的问题,有没有什么方法可以专门配置 git 以自动打开在应用程序目录中的编辑器中运行

git commit
后创建的文件?

macos terminal text-editor
9个回答
177
投票

大多数程序都会检查

$EDITOR
环境变量,因此您可以将其设置为 bashrc 中 TextEdit 的路径。 Git 也会使用这个。

如何做到这一点:

  • 将以下内容添加到您的
    ~/.bashrc
    文件中:
    export EDITOR="/Applications/TextEdit.app/Contents/MacOS/TextEdit"
  • 或者只需在终端中输入以下命令:
    echo "export EDITOR=\"/Applications/TextEdit.app/Contents/MacOS/TextEdit\"" >> ~/.bashrc

如果您使用 zsh,请使用

~/.zshrc
而不是
~/.bashrc


52
投票

对于 2018 年使用 iTerm 来到这里的任何人:

  • 转到 iTerm -> 首选项 -> 配置文件 -> 高级 -> 语义历史记录
  • 从下拉列表中选择“使用编辑器打开”,然后从右侧下拉列表中选择您选择的编辑器

对于 2022 年来到这里并使用 iTerm2 的任何人:

iTerm2 移动了一些东西,所以现在可以在下面找到它

  • iTerm -> 设置 -> 首选项 -> 配置文件 -> 高级 -> 语义历史记录

33
投票

按照 @dmckee 在评论中建议的方式使用

git config --global core.editor mate -w
git config --global core.editor open

参考:http://git-scm.com/docs/git-config


23
投票

适用于 OS X 和 Sublime Text

使

subl
可用。

把这个放进去

~/.bash_profile

[[ -s ~/.bashrc ]] && source ~/.bashrc

把这个放进去

~/.bashrc

export EDITOR=subl

6
投票

将编辑器设置为指向此程序:

/Applications/TextEdit.app/Contents/MacOS/TextEdit

使用 SVN,您应该将

SVN_EDITOR
环境变量设置为:

$ export SVN_EDITOR=/Applications/TextEdit.app/Contents/MacOS/TextEdit

然后,当您尝试提交某些内容时,TextEdit 将启动。


1
投票

对于 Sublime Text 3:

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

有关详细信息,请参阅 将 TextMate 设置为 Mac OS X 上的默认文本编辑器


0
投票

如果您希望编辑器使用 git 操作,设置

$EDITOR
环境变量可能还不够,至少在 Sublime 的情况下是不够的 - 例如如果你想rebase,它只会说rebase成功,但你将没有机会以任何方式编辑该文件,git会立即关闭它:

git rebase -i HEAD~
Successfully rebased and updated refs/heads/master.

如果你想让 Sublime 与 git 一起正常工作,你应该使用以下方式配置它:

git config --global core.editor "sublime -n -w"

我来这里寻找这个并找到了解决方案在github上的这个要点中


0
投票

将 Sublime Text 3 设置为默认文本编辑器:(需要重新启动)

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

使 sublime 成为你的默认 git 文本编辑器

git config --global core.editor "subl -W"


0
投票

open
命令可以选择使用TextEdit(-e)

open -e tesfile1.json
© www.soinside.com 2019 - 2024. All rights reserved.