2010-04-02 11 views
5

Tôi đang sử dụng Subversion để kiểm tra tệp trên OSX. Tôi đã biến EDITOR của tôi cấu hình để MacVimSubversion với MacVim được định cấu hình làm trình chỉnh sửa

My .profile bao gồm:

export EDITOR=/Applications/MacVim/mvim 

Khi tôi checkin với -m tùy chọn (svn ci somefile), MacVim được đưa ra nhưng sau đó Subversion ngay lập tức hiển thị:

Log message unchanged or not specified 
(a)bort, (c)ontinue, (e)dit: 

Nó hiển thị điều này trước khi tôi có cơ hội để lưu thông điệp tường trình của tôi trong MacVim.

Có cách nào để SVN sử dụng MacVim làm trình chỉnh sửa thông điệp tường trình không?

Trả lời

11

Bạn cần chạy mvim với cờ -f để cờ đó nằm ở nền trước. Theo mặc định, nó dĩa và trả về điều khiển cho thiết bị đầu cuối mà làm cho subversion nghĩ rằng nó được thực hiện.

0

Xem open --help:

-W, --wait-apps Blocks cho đến khi các ứng dụng sử dụng được đóng lại (ngay cả khi họ đã chạy).

export EDITOR="open --wait -a /Applications/MacVim/mvim" 

Nếu ở trên không làm việc, bạn có thể cần phải đặt nó vào kịch bản và làm cho $ EDITOR chỉ kịch bản đó. [CHỈNH SỬA: không hoạt động, hãy xem nhận xét bên dưới.]

+1

mở sẽ làm việc cho môi trường 'gói ứng dụng MacVim.app'. 'mvim' là công cụ dòng lệnh, sẽ yêu cầu cờ' -f' được mô tả ở trên. –

4

của Apple Terminal:

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

hoặc cho iTerm hoặc iTerm2:

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

Từ "Faq - macvim - GitHub: Làm thế nào tôi có thể sử dụng để chỉnh sửa MacVim Git cam kết tin nhắn?". Tôi đã xác nhận rằng nó cũng làm việc với Subversion.

0

Tôi đang sử dụng textmate làm trình chỉnh sửa svn và tôi đã gặp phải vấn đề tương tự như bạn. Nhưng giải pháp của tôi là đặt textmate để đợi cho đến khi tập tin được đóng lại.

tôi thêm này trong .bash_profile tôi

export SVN_EDITOR="mate -w" 

-w là chờ