Sử dụng Tramp cho nhật ký


8

Tôi đang cố gắng sử dụng Tramp với auto-revert-tail-modeđể thực hiện phần đuôi của một bản ghi từ xa. Mỗi khi nhật ký cập nhật (thường là), màn hình sẽ nhanh chóng nhảy xuống cuối tệp và sau đó quay lại vị trí hiện tại của tôi trong tệp. Có cách nào để ngăn chặn những cú nhảy thường xuyên này không? Tôi chỉ đơn giản muốn có thể duyệt và tìm kiếm phiên bản cập nhật nhất của tệp, nhưng không được gửi đến cuối tệp trong mỗi lần cập nhật.

Ngoài ra, có cách nào để tắt / tắt các cập nhật thường xuyên trên thanh trạng thái không? "Chèn tramp: ..." "Mã hóa tramp: ...."

Câu trả lời:


11

auto-revert-tail-modelà tuyệt vời, nhưng nó có giới hạn của nó. Do đó tôi thích sử dụng lệnh shell không đồng bộ. Mở thư mục từ xa vào dired, đặt con trỏ vào tệp bạn muốn xem và áp dụng ! tail -f * &.

Nếu bạn muốn chặn tin nhắn Tramp, hãy giảm mức độ chi tiết. (setq tramp-verbose 1)sẽ là đủ


Đây là một giải pháp tuyệt vời. Nếu tôi thử sau đó đến tailmột tệp bổ sung trong một bộ đệm khác, Emacs sẽ trả lời, "Một lệnh đang chạy. Giết nó?" . Có cách nào để chạy nhiều bộ đệm với Lệnh Async Shell như vậy không?
ChaimKut

1
Bạn phải đổi tên *Async Shell Command*bộ đệm. Di chuyển con trỏ ở đâu đó trong bộ đệm và áp dụng M-x rename-buffer.
Michael Albinus

Làm cách nào tôi có thể thực hiện chuỗi đó (! Tail -f * &) trong một hàm lisp trong đó tôi cung cấp tên của tệp từ xa?
Diogo

Bản hack tạm thời của tôi: (start-process-shell-lệnh <process-name> <buufer-name> "ssh <use> r @ <host> 'cd / path / to / library && tail -f <filename>")
Diogo

Hãy thử thêm (setf async-shell-command-buffer 'rename-buffer)vào tệp .emacs của bạn. Sau đó, nó sẽ đổi tên bộ đệm lệnh async hiện có và sau đó tạo bộ đệm mới
Baggers
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.