2010-10-28 23 views
8

MacVim'i varsayılan bir editör olarak kullanmaya çalışıyorum (Mac'imde). MacVim'in hg ci numaralı telefonu kullanırken taahhüt mesajlarını düzenlemesini istiyorum. Ne yazık ki bunu yaptığımda (EDITOR=mvim veya alias vi='mvim' ayarlayarak) MacVim boş bir mesajla (yani, alt yarıdaki herhangi bir kazanın hiçbiri) açılır ve bu taahhüt mesajını kaydettiğimde "iptal etme: boş taahhüt mesajı" hatası alırım .MacVim ve Mercurial check-in

Mercurial ile yapılan değişiklikleri denetlerken taahhüt mesajlarını düzenlemek için MacVim'i kullanmanın bir yolu var mı (muhtemelen mvim aracılığıyla)?

Okuduğunuz için teşekkür ederim ve cevapları okumak için sabırsızlanıyorum.

Brian o Git çalışmak yapmak için FAQ gelen ucu başına

+0

bunu ur hgrc veya sadece env değişkeninde mi ayarlıyorsunuz? – Kasumi

+0

bash env değişkeni. –

+0

Takma adların kabuk için dahili olduğunu unutmayın; Kabuk tarafından çalıştırılan programlar bunlara erişemez. –

cevap

11

Seti EDITOR='mvim -f':

nasıl MacVim Git mesajları işlemek düzenlemek için kullanabileceğiniz?

dosyasına ~/.profile aşağıdaki satırı ekleyin:

export EDITOR='mvim -f -c "au VimLeave * !open -a Terminal"' 

son bölüm Terminali teslim mesajlarına kapattıktan sonra tekrar odak alır sağlar. (Eğer bunun işe yaraması için yolunuzda mvim script koymak gerektiğini unutmayın.)

+0

Yani cevap gerçekten Git'i kullanmaktı. Açıkçası üstün SSS var. hehe. –

+0

Tesadüfen, 'export EDITOR = '...'', 'mvim -f -c' au VimLeave Masaüstü Belgeleri Yüklemeler Kütüphane Filmleri Müzik Resimlerinin Kamu Siteleri bin! Open-a Terminali '' ne genişletir. Beklenen/istenen davranış olup olmadığından emin değilim. Glob'u önlemek için 'export' komutundan hemen önce 'set -f' komutunu ekledim. –

+1

@Roger Pate: Katılıyorum, oldukça garip görünüyor. Yanıtın köklü olup olmadığını görmek için yeni bir soru başlattım: http://stackoverflow.com/questions/4052593/mac-os-x-bash-default-pathname-expansion-or-bug –

0

bir makinede birden SCMS varsa (örneğin benim yaptığım gibi, Subversion ve Mercurial ile çalışmak zorunda), sizi editör, daha genel EDITOR env yerine HGEDITOR kullanarak ayırt edebilir. Mesela ben şu ortam kurmak değişkenleri vardır: yapılandırma aynı olduğu için bir nevi anlamsız Bu durumda

export HGEDITOR='mvim -f -c "au VimLeave * !open -a Terminal"' 
export SVN_EDITOR='mvim -f -c "au VimLeave * !open -a Terminal"' 

, ama bu sadece noktayı göstermektir.

Ayrıca bu, EDITOR özelliğini ayarlayabileceğiniz ve bunu kullanan çeşitli uygulamalarınız için varsayılan değer olarak belirleyebileceğiniz ve daha sonra farklı bir şeye ihtiyaç duyan uygulamalar için uygulamaya özel bir değişkenle bunu geçersiz kılacağınız noktayı ortaya çıkarır. Uygulamaya özgü değişkenleri sadece tam olarak kullanmak için kullanma eğilimindeyim, sanırım (bazıları buna başka bir şey diyebilir) :).