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

有没有办法打开文件在Textedit中打开的terminal编辑而不是?

例如,一个命令可能会打开一个文件进行编辑(如git commit ),而不是在vim或emacs中打开该文件,它将在Textedit中打开(或者可能是您select的另一个文本编辑应用程序,例如Coda或Sublime) 。

作为一个额外的问题,有没有什么办法来专门configurationgit自动打开在应用程序目录编辑器中运行git commit后创build的文件?

大多数程序会检查$EDITOR环境variables,所以你可以在你的bashrc中将它设置为TextEdit的path。 Git也会使用这个。

这个怎么做:

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

如果您使用zsh,请使用~/.zshrc而不是~/.bashrc

使用git config --global core.editor mate -w或者git config --global core.editor open为@dmckee在注释中build议的。

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

对于OS X和崇高文本

使subl可用。

把它放在~/.bash_profile

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

把这个放在~/.bashrc

 export EDITOR=subl 

设置你的编辑器指向这个程序:

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

使用SVN,您应该将SVN_EDITOR环境variables设置为:

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

然后,当你尝试提交时,TextEdit将会启动。

对于崇高的文字3:

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

有关详细信息,请参阅https://stackoverflow.com/a/22141204/1707152