Nhận lời tại điểm


9

Đó là một điều đơn giản. Con trỏ của tôi nằm trên một từ và tôi muốn lấy từ đó để tôi có thể làm gì đó với nó. Tôi thấy một vài cách khác nhau để làm điều này nhưng muốn tránh tái phát minh và sử dụng một phương pháp tiêu chuẩn.


1
Câu hỏi không rõ ràng. Làm gì với nó ở đâu? Trong một chương trình (mã)? Tương tác? Cả hai? Những thứ gì đó?
vẽ

"Đọc" trong Emacs và Emacs Lisp thường có nghĩa là đọc tương tác hoặc đọc (tải) mã Lisp. Tôi đã chỉnh sửa câu hỏi để nói "lấy" từ thay vì "đọc" nó.
vẽ

"Lấy từ" nghĩa là gì? Bạn có muốn một biểu thức Lisp có giá trị là một chuỗi liên kết từ đó không? Bạn có muốn đánh dấu từ này? Bạn có muốn đặt từ trong vòng giết?
Omar

Câu trả lời:


13

Bạn có thể sử dụng hàm thing-at-pointvà yêu cầu nó trả về wordđiểm và không trả về bất kỳ thuộc tính văn bản nào (trừ khi bạn cần chúng). Ví dụ nội dung bộ đệm (| là con trỏ):

Xin chào wor | ld

Gọi (thing-at-point 'word 'no-properties)trả lại "thế giới".


1
(current-word &optional STRICT REALLY-WORD)

Trả về từ tại hoặc gần điểm, dưới dạng một chuỗi. Giá trị trả về không bao gồm thuộc tính văn bản.


-1

Nếu bạn muốn chèn từ (hoặc bất cứ thứ gì khác - tên tệp, v.v.) vào điểm trong bộ thu nhỏ, khi bạn đang chỉnh sửa đầu vào, chỉ cần sử dụng M-., nếu bạn sử dụng Icicles .

Xem Chèn văn bản từ con trỏ .

Bạn có thể sử dụng M-.nhiều lần (ví dụ M-. M-. M-.) để:

  • Chuyển sang một loại khác để lấy tại điểm và chèn nó.
  • Chèn thêm (nghĩa là liên tiếp) những thứ cùng loại (ví dụ: từ) từ bộ đệm.
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.