2011-09-02 41 views
7

Điều tôi đang tìm là một cửa sổ khác với cửa sổ hiện tại chứa đầu ra của lệnh vào cùng một bộ đệm. Vì vậy, tôi có thể thực thi:Cách giữ cửa sổ đầu ra lệnh trong vim

:!php % 

Và xem kết quả trong cửa sổ chia đáy. Đó là thường thấy trong hầu hết các biên tập viên đồ họa tôi đã sử dụng.

Ghi chú:

  1. Không cửa sổ hiện hành. Không muốn phải chuyển đổi lại
  2. Không tạo bộ đệm mới mỗi lần. (phải sử dụng lại bộ đệm "đầu ra")
  3. Tôi không muốn điều đó trong sổ đăng ký, tôi muốn có thể xem kết quả ngay lập tức.

Dòng chảy sẽ là:

  1. mở vim -S phiên ...
  2. Chỉnh sửa một tập tin
  3. Thực hiện một đơn giản make-loại lệnh
  4. Nhìn vào đầu ra lệnh trong đầu ra cửa sổ

mà không cần có hàng trăm bộ đệm mới và phải chuyển đổi giữa các cửa sổ.

Những gì tôi đã thử cho đến nay không thỏa đáng ... gửi đầu ra vào tệp, chuyển autoread, mở bộ đệm trên tệp đó. Điều đó làm việc nhưng tôi phải bật autoread trên cho tất cả các tập tin .. một chút gây phiền nhiễu. Có cách nào để chuyển autoread cho một bộ đệm/tập tin không?

Cảm ơn sự giúp đỡ của bạn.

Trả lời

8

Có vẻ như bạn đang tìm kiếm cửa sổ "quickfix" của Vim. Tôi muốn sử dụng 'makeprg', :make:copen, như thế này:

:set makeprg=php\ % 
:make 
:copen 

Ngoài ra, bạn có thể sử dụng tùy chọn 'errorformat' để cung cấp con trỏ đến dòng đầu tiên chứa một lỗi.

:set errorformat=%m\ in\ %f\ on\ line\ %l 

Và đối với tốc độ, tôi có F5 ánh xạ tới make:

:nnoremap <F5> :<C-U>make<CR> 
+1

Lưu ý rằng (giống như bất kỳ gọi lệnh bên ngoài khác trong vim) này chạy lệnh đồng bộ tức là vim khối cho đến khi lệnh có đã kết thúc. – kynan

Các vấn đề liên quan