Tôi là người dùng vim và gần đây đã thử các emacs để giải trí. Tôi thấy rằng tính năng mà tôi đang thiếu nhất từ trước đến nay là từ "super star" (tìm từ bên dưới con trỏ bằng cách nhập *), và tôi chưa tìm thấy tương đương trong các emacs. Nếu nó không được xây dựng, tôi cần phải thêm gì vào tập tin emacs của tôi để có được một cái gì đó tương tự?"siêu sao" hoặc tìm từ tương đương với con trỏ trong emacs
Trả lời
Như pointed out bởi paldepind, isearch-forward-symbol-at-point
(. Ms, theo mặc định) là một tương đương gần * trong Vim. Chức năng này có sẵn bắt đầu từ GNU Emacs 24.4; nếu Emacs của bạn là khác nhau hoặc cũ hơn, đọc trên cho các lựa chọn thay thế.
Thông thường tôi chỉ làm (M-b ...) C-sC-w ... C-s. Đó là:
- Mb để di chuyển đến đầu từ (s) quan tâm
- zero hoặc nhiều các
- Cs để bắt đầu một I-Tìm kiếm
- Cw để giật (các) từ bắt đầu tại điểm
- một hoặc nhiều trong số này
- Cs để tìm các trận đấu tiếp theo
- hơn Cs để tìm thấy sau đó phù hợp với
- RET để thoát khỏi I-tìm kiếm ở trận đấu gần đây nhất
- hoặc một bó Cg để hủy bỏ quay lại origina l vị trí
Dưới đây là khởi đầu một đi vào tích hợp nó vào I-tìm kiếm (gọi thông qua C-s và C-r; sử dụng C-h kC-s để biết thông tin trên isearch
).
(require "thingatpt")
(require "isearch")
(define-key isearch-mode-map (kbd "C-*")
(lambda()
"Reset current isearch to a word-mode search of the word under point."
(interactive)
(setq isearch-word t
isearch-string ""
isearch-message "")
(isearch-yank-string (word-at-point))))
Lồng ghép nó vào I-Tìm kiếm lợi dụng cài đặt độ nhạy phù hợp với lời nói và trường hợp của nó (C-sM-cC- * sẽ thực hiện tìm kiếm case-sensitive vào từ dưới điểm).
Bất kỳ cách nào để đưa tất cả sự kết hợp đàn piano này vào một số phím bấm đơn giống như trong vim? – Dfr
Điều gì về việc sử dụng 'isearch-forward-symbol-at-point' mà theo mặc định được gắn với' C-s. ' – paldepind
@paldepind: Điều đó có vẻ đẹp; TIN TỨC chỉ ra rằng nó bắt nguồn từ GNU Emacs 24.4 (tháng 10 năm 2014). –
Dưới đây là một khởi đầu:
(global-set-key (kbd "C-*") (lambda() (interactive) (re-search-forward (format "\\b%s\\b" (thing-at-point 'word)))))
Hãy thử CsCw
Đây là câu trả lời sai. Nó giả định điểm là lúc bắt đầu của từ trong khi * siêu sao * tính năng trong Vim có thể được sử dụng từ bất cứ nơi nào trong từ. –
nếu bạn đang sử dụng viper (mà các công trình lớn) này nên làm việc đủ tương tự:
(require 'thingatpt)
(require 'viper)
(defun viper-search-word-at-point()
"Reset viper-s-string to word at point and start a forward viper search."
(interactive)
(setq viper-s-string (word-at-point))
(viper-search viper-s-string 't nil))
(global-set-key (kbd "C-*") 'viper-search-word-at-point)
Những ngày này cũng có Smart Scan, một add-on nhẹ gói cung cấp chức năng này.
Có sẵn từ MELPA; hướng dẫn thêm MELPA vào danh sách được bật package-archives
là here.
Để cài đặt nó:
Mxpackage-install
RETsmartscan
RET
Bạn có thể sau đó kích hoạt nó thông qua
(global-smartscan-mode t) ;; Turn on Smart Scan globally
Các tổ hợp phím mặc định để tìm kiếm về phía trước và lạc hậu được Mn và M-p, tương ứng.
PS: Nếu bạn quan tâm, bài đăng blog gốc giới thiệu gói này là here.
- 1. Tương đương với con trỏ 'này'
- 2. Đi tương đương với một con trỏ void trong C
- 3. Tương đương với "exec" trong emacs * eshell *?
- 4. GNU emacs tương đương với func-menu
- 5. Emacs tương đương với Vim's foldmethod = indent
- 6. Loại con trỏ trong Emacs
- 7. Chuyển đổi con trỏ void ** sang loại Java tương đương
- 8. Emacs tương đương với `%` của VIM?
- 9. Tương đương với foldr, foldl trong Emacs Lisp là gì?
- 10. Đặt con trỏ emacs thành một dòng
- 11. Có tương đương với __attribute __ ((ns_returns_retained)) cho một con trỏ malloc'd không?
- 12. PHP tương đương với PyQuery hoặc Nokogiri?
- 13. NSTask hoặc tương đương với iPhone
- 14. Pythonic tương đương với unshift hoặc redo?
- 15. chất nhờn emacs: Có gì tương đương với mũi tên lên trong vỏ?
- 16. Tại sao (?! ^) Tương đương với (? <! ^)?
- 17. Tìm tọa độ con trỏ trong raphael
- 18. Con trỏ trỏ tới con trỏ với argv
- 19. Chú giải công cụ hoặc di chuyển tương tự với con trỏ trong WPF
- 20. Tương đương với Underscore.js _.pluck trong jQuery
- 21. Struct con trỏ tương thích
- 22. Con trỏ mảng C++ [] hoặC++
- 23. python tương đương với sed
- 24. Thông số chức năng: Sao chép hoặc con trỏ?
- 25. Nhận mặt chữ dưới con trỏ trong Emacs
- 26. Tương đương với Visual Basic's và và hoặc trong C#?
- 27. Tương đương với lựa chọn hoặc thăm dò trong bash
- 28. Tìm số, và loại bỏ ký tự liền kề tương đương với con số này
- 29. tại sao không chuyển đổi ngầm từ con trỏ để tham khảo để con trỏ const
- 30. Tương đương với __func__ (từ C) trong Python
tôi không biết điều đó trong VIM. Cool :) –
bản sao có thể có của http://stackoverflow.com/questions/589691/how-can-i-emulate-vims-search-in-gnu-emacs –
Tôi đồng ý rằng đó là bản sao, nhưng sẽ dễ dàng hơn khi tìm kiếm vim người dùng biết lệnh như siêu sao. Câu trả lời khác không bao giờ đề cập đến từ 'ngôi sao' khiến tôi khó tìm được. – mmrobins