2011-01-04 35 views
8

Có cách nào để liệt kê tất cả văn bản được kéo dài trong Emacs không? Bạn có thể làm điều đó trên Textmate với SPLAT + V.Làm cách nào để liệt kê tất cả các yanks trong các emacs?

Chỉnh sửa: Tôi có nghĩa là các mặt hàng đã bị giết gần đây, các mục có thể được kéo mạnh.

+0

Phrasing của bạn hơi khó hiểu. Bạn có muốn xem các vòng giết (trong trường hợp của Frédéric câu trả lời sẽ sắp xếp bạn ra), hoặc bạn chỉ muốn danh sách văn bản mà đã thực sự được kéo mạnh từ vòng giết? (đó sẽ là một yêu cầu hơi kỳ lạ đối với tâm trí của tôi, nhưng nó phù hợp hơn với câu hỏi của bạn). – phils

+0

@phils: Textmate cho phép bạn chọn mục cần dán từ các mục đã được yanked gần đây của bạn. Tôi có thể sử dụng C-u C-x C-y để yank một mục ở chỉ mục 2, nhưng tôi muốn xem danh sách các mục trong danh sách. Hy vọng rằng làm rõ. – Suresh

+0

Không thực sự, xin lỗi. Là "danh sách" các vòng giết (có chứa văn bản sao chép và giết chết, bất kỳ mục nào trong đó bạn * có thể * yank nhưng * có thể không được kéo mạnh trước đây *), OR là "danh sách" chỉ các mục có * có * được kéo mạnh trước đó. "Các vật phẩm vừa mới được sửa chữa" không giống với "vật phẩm bị giết gần đây", và nó vẫn chưa rõ ràng với tôi về ý nghĩa của bạn. Lưu ý rằng 'C-y' yanks từ vòng kill. – phils

Trả lời

7

Theo hiểu biết của tôi, các emacs không hỗ trợ tính năng đó ra khỏi hộp.

Nếu bạn đang sử dụng bản phân phối Debian hoặc Ubuntu Linux, bạn có thể cài đặt gói emacs-goodies-el, có chứa một tính năng browse-kill-ring (được gắn với M-y theo mặc định).

Hoặc, bạn có thể sử dụng gói browse-kill-ring ELisp có sẵn here.

Xem thêm here để có bài viết hay về vấn đề này và các giải pháp thay thế khác.

+0

[* Trang EmacsWiki này *] (http: //www.emacswiki.org/emacs/BrowseKillRing) là nơi tốt nhất để biết thông tin về 'browse-kill-ring.el' và mã liên quan. – Drew

9

Danh sách giết người (tức là danh sách những thứ bạn có thể giật) được gọi là kill ring và được lưu trữ trong biến kill-ring, vì vậy bạn có thể xem nó (theo cách không đẹp) với C-h v kill-ring RET.

Vòng giết cũng xuất hiện trong menu, trong phần "Chỉnh sửa/dán từ menu xóa". Nếu bạn sử dụng chế độ văn bản Emacs hoặc đã tắt thanh trình đơn, bạn có thể truy cập menu bằng M-x tmm-menubar (được gắn với M-`): nhập M-` e p theo sau chữ cái đầu tiên của mục bạn muốn dán (nếu đó là chữ cái và nó là duy nhất , nếu không bất kỳ ký tự nào được chỉ định). Nếu bạn không muốn dán bất kỳ thứ gì, hãy nhập M-` e p C-g; những kẻ giết người vẫn còn trong bộ đệm *Completions*. Các văn bản diệt được hiển thị cắt ngắn thành yank-menu-length ký tự.

+0

Thông tin về yank-menu-length rất hữu ích vì tôi được đặt thành giá trị rất thấp (20) theo mặc định trên cài đặt Windows Emacs của tôi, làm cho menu yank gần như vô dụng. Tôi đặt nó đến 250 và vẫn còn rất nhiều phòng. Đơn vị đo phải là thứ khác với ký tự. Đối với những gì nó có giá trị, thay đổi giá trị của nó dường như không có hiệu lực cho đến khi Emacs được khởi động lại. – Alan

1

Trong Icicles bạn có thể xem tất cả kill-ring của mình và hút bất kỳ mục nhập nào trong đó bằng cách hoàn thành. Theo mặc định, C-y bị ràng buộc ở chế độ Icicle thành icicle-yank-maybe-completing.

Tương tự như yank, trừ khi bạn cho nó tiền tố âm arg (ví dụ: C--). Trong trường hợp đó, nó cho phép bạn hoàn thành chống lại kill-ring. Hoàn thành có thể là tiền tố, apropos (chuỗi con, regexp) hoặc mờ.

http://www.emacswiki.org/emacs/Icicles_-_Multi-Commands

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