Terminalde açılan dosyalar için varsayılan düzenleyici değiştirilsin mi? (ör. TextEdit / Coda / Textmate olarak ayarlayın)


110

Bunun yerine terminalde düzenleme için açılan dosyaları Textedit'te açmanın bir yolu var mı?

Örneğin, bir komutun düzenleme için bir dosyayı (gibi git commit) açabileceği durumlarda , o dosyayı vim veya emacs'de açmak yerine Textedit'te (veya belki de Coda veya Sublime gibi seçtiğiniz başka bir metin düzenleme uygulamasında) açılır.

Ve bonus bir soru olarak, git'i git commituygulamalar dizininden bir düzenleyicide çalıştırdıktan sonra oluşturulan dosyayı otomatik olarak açacak şekilde özel olarak yapılandırmanın bir yolu var mı?


1
Evet, OSX (10.6.4) kullanıyorum.
Diyojen

Bulduğum en iyi çözüm kullanmak duti-> apple.stackexchange.com/a/123954/58507
Gomino

mac os 10.10+ için yukarıdaki çözümler çalışmaz. Bu apple.stackexchange.com/questions/123833/…
Rishikesh Shukla

Yanıtlar:


137

Çoğu program $EDITORortam değişkenini kontrol eder , böylece bunu bashrc'nizde TextEdit'in yoluna ayarlayabilirsiniz. Git bunu da kullanacak.

Bu nasıl yapılır:

  • Aşağıdakileri ~/.bashrcdosyanıza ekleyin :
    export EDITOR="/Applications/TextEdit.app/Contents/MacOS/TextEdit"
  • veya sadece aşağıdaki komutu Terminal'inize yazın:
    echo "export EDITOR=\"/Applications/TextEdit.app/Contents/MacOS/TextEdit\"" >> ~/.bashrc

Zsh kullanıyorsanız, ~/.zshrcyerine kullanın ~/.bashrc.


20
Mükemmel, bu yapar. Git'in beklediğim gibi çalıştığından emin olmak için bu komutu da çalıştırdım. Bu git config --global --unset-all core.editoro zaman git config --global --add core.editor "open -W -n".
Diyojen

Farklı bir kabuk mu kullanıyorsunuz?
alternatif

5
benim durumumda, o zshkadar açık bir şekilde kullanıyorum ki, .zshrcyapılandırma dosyasını güncellemem gerekiyor .
Malloc

3
Editörünüzün yolunda boşluklar varsa tırnak işaretlerini kullanın, örneğin "echo "export EDITOR=\"/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl\"" >> ~/.bashrc" .bashrc dosyanızı şu şekilde yeniden yüklemeniz gerekebilir:source ~/.bashrc
Mars Redwyne

Teşekkürler, nano düzenleyiciyi bununla varsayılan olarak ayarladım.
OSX'e

29

Yorumlarda @ dmckee'nin önerdiği gibi git config --global core.editor mate -wveya kullanın git config --global core.editor open.

Referans: http://git-scm.com/docs/git-config


3
... ve kullanmak üzere ayarlamak, openotomatik olarak bulucu varsayılanını alacağınız anlamına gelir. Böylece bulucudaki değişiklikler doğal olarak yayılır.
dmckee --- eski moderatör kedi yavrusu

4
openDosya türünü belirlemek için çoğunlukla uzantısına bağlı olarak Başlatma Hizmetlerini kullanır. Dosyanın bilinmeyen bir uzantısı varsa, dosyayı açamaz. Genel olarak, CLI düzenleyiciniz metin dosyalarını varsayan bir şey olmalıdır ...
Gordon Davisson

Bazı (çok) açık talimatlar çok yardımcı olacaktır ... referans son derece kısadır.
Diyojen

2
@Diogenes: Hâlâ daha açık bir yardıma ihtiyacınız varsa, cevabımı farklı bir gönderide görün: stackoverflow.com/questions/6435246/…
X-Istence

4
Olsa iyi olur git config --global core.editor "open -W"(aksi takdirde bir Aborting commit due to empty commit message.hata alırsınız ).
rsenna

18

OS X ve Sublime Text için

Make sublkullanılabilir.

Bunu koy ~/.bash_profile

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

Bunu koy ~/.bashrc

export EDITOR=subl

Bunun düzgün çalışmadığını buldum chsh. Dosya açılır, ancak tüm değişiklikler kaybolur. chsh -s /bin/zshMermileri manuel olarak değiştirmek için kullanmak zorunda kaldım .
Cryptc

9

2018'de buraya gelen herkes için:

  • iTerm'e gidin -> Tercihler -> Profiller -> Gelişmiş -> Anlamsal Geçmiş
  • açılır menüden Editör ile Aç'ı seçin ve sağdaki açılır menüden tercih ettiğiniz düzenleyiciyi seçin

5

Editörünüzü bu programı gösterecek şekilde ayarlayın:

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

SVN ile SVN_EDITORortam değişkenini şu şekilde ayarlamalısınız :

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

Ve sonra, bir şey yapmaya çalıştığınızda, TextEdit başlayacaktır.


1
Kullanmayı tercih ederim /usr/bin/open, çünkü bu, ayarladığınız her şeyi bulucu varsayılanını kullanacaktır.
dmckee --- eski moderatör yavru kedi

Aynı şeyi git için nasıl yaparsın?
Diogenes

İlk beğeni sadece EDITOR = ayarını buna ayarlamaktır, ancak ikinci satır için ne yazmalıyım?
Kullanıcı


0

Editörün git işlemleriyle çalışmasını istiyorsanız, $EDITORortam değişkenini ayarlamak yeterli olmayabilir, en azından Sublime durumunda değil - örneğin, yeniden temel almak istiyorsanız, yalnızca yeniden temelin başarılı olduğunu söyleyecektir, ancak kazandınız ' Dosyayı herhangi bir şekilde düzenleme şansınız yoksa, git hemen dosyayı kapatacaktır:

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

Sublime'ın git ile düzgün çalışmasını istiyorsanız, bunu kullanarak yapılandırmalısınız:

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

Buraya bunu aramaya geldim ve çözümü github'daki bu özde buldum .


0

Sublime Text 3'ü varsayılan metin düzenleyiciniz yapın: (Yeniden başlatmak gerekir)

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

yüce yap, sonra varsayılan git metin düzenleyicin git config --global core.editor "subl -W"

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.