ที่ปรึกษา Mx แสดง“ ^” เสมอ


14

ฉันติดตั้ง Counsel / Ivy / Swiper และทุกอย่างก็ใช้ได้ดี แต่เมื่อฉันเรียก Counsel-Mx ผ่านทางปุ่มลัด Mx ตัวอักษร "^" จะถูกเพิ่มเข้าไปเสมอ ฉันไม่รู้ว่าทำไมสิ่งนี้จึงเกิดขึ้นและวิธีการกำจัดมัน (มันไม่รบกวนการทำงานของคำสั่ง -x คำสั่งมันน่ารำคาญมาก) ฉันใช้ emacs บน OS X และแมปคีย์ Meta ไปยังคีย์คำสั่ง(setq mac-command-modifier 'meta)ใหม่ แต่ถึงอย่างนั้นด้วย Alt เนื่องจากคีย์ Meta มาตรฐาน "^" จะถูกแทรกโดยอัตโนมัติเมื่อเรียกคำแนะนำ -Mx

ที่ปรึกษา-Mx

ฉันใช้การตั้งค่าพื้นฐานที่มีให้ที่นี่

(ivy-mode 1)
(setq ivy-use-virtual-buffers t)
(setq enable-recursive-minibuffers t)
(global-set-key (kbd "M-x") 'counsel-M-x)

คำตอบ:


16

ivy-initial-inputs-alist เป็นตัวแปรที่ควบคุมเนื้อหา minibuffer เริ่มต้นเมื่อใช้ ivy (ซึ่งถูกใช้โดยคำแนะนำ)

"^"สตริงเริ่มต้นหมายความว่าหากคุณพิมพ์บางอย่างทันทีหลังจากสตริงนี้เฉพาะผู้สมัครที่ดำเนินการจนเสร็จสมบูรณ์ที่เริ่มต้นด้วยสิ่งที่คุณพิมพ์จะปรากฏขึ้น

คุณสามารถลบสตริงเริ่มต้นนี้ในcounsel-M-xคำสั่งด้วย:

(setcdr (assoc 'counsel-M-x ivy-initial-inputs-alist) "")

หรือเพื่อลบอินพุตเริ่มต้นในคำสั่งทั้งหมด:

(setq ivy-initial-inputs-alist nil)

เพื่อให้ชัดเจน: หากคุณลบสิ่งนี้ออกมันจะเปลี่ยนพฤติกรรมการค้นหาให้ตรงกับสตริงย่อย ^ substringผมคิดว่าการเริ่มต้นของการจับคู่เพียงจุดเริ่มต้นจะเป็นประโยชน์และคุณก็สามารถตีพื้นที่ถ้าคุณไม่ต้องการที่จะค้นหา
ลูกัส

1
@glucas ฉันคิดว่าถ้อยคำของคุณพูดเกินจริงไปเล็กน้อยพฤติกรรมการค้นหาไม่เปลี่ยนแปลง (พฤติกรรมการค้นหาถูกควบคุมโดยivy--regex-function) เป็นอินพุตเริ่มต้นเริ่มต้นที่เปลี่ยนแปลง ทุกคนมีอิสระในการตั้งค่าของพวกเขาที่นั่น ผมยกตัวอย่างเช่น, เพียง แต่ให้เริ่มต้น^สำหรับ/man woman
Basil

1
@ บาซิลแฟร์พอยต์ขอบคุณ ฉันต้องการทำให้ชัดเจนว่านี่ไม่ใช่แค่การเปลี่ยนแปลงเครื่องสำอางเพราะ OP หมายถึงคำถาม
ลูกัส
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.