ฉันต้องการเปลี่ยนพฤติกรรมของfill-paragraph
ในบางโหมด (เช่นLaTeX-mode
ให้บริการโดยAucTeX
)
ฉันสามารถไขกุญแจM-q
ได้ แต่ฉันก็ใช้evil-mode
ซึ่งการนำไปevil-fill-and-move
ใช้งานfill-region
ด้วย เป็นการดีที่ฟังก์ชั่นการเติมแบบกำหนดเองของฉันเพื่อแทนที่ทั้งฟังก์ชั่นfill-paragraph
(เพื่อให้ทำงานได้M-q
) และfill-region
(เพื่อให้ทำงานได้ด้วยevil
)
สมมติว่าฉันมีโปรแกรมแบบสแตนด์อโลนformat
ที่ใช้ในรหัส LaTeX ผ่านstdin
และส่งออกในรูปแบบรหัสstdout
ฉันจะไปแทนที่ฟังก์ชันเติมสองข้างต้นเพื่อใช้งานได้format
อย่างไร
(หมายเหตุ: นี้จะคล้ายกับvim
ของformatprg
ตัวเลือก.)
evil-fill-and-move
ถูกผูกไว้กับลำดับคีย์gq
ในโหมดปกติของความชั่วร้าย การปฏิเสธM-q
ไม่ควรส่งผลกระทบต่อการล็อคปุ่มกดนี้ ในบางแง่มุมคำถามของฉันคือคำถามสองข้อจริง: 1) จะแทนที่ฟังก์ชั่นทั้งสองได้อย่างไร 2) วิธีใช้โปรแกรมภายนอก เหตุผลสำหรับ 2) คือฉันมีโซลูชันภายนอกที่ไม่ใช่ Elisp อยู่แล้ว
(add-hook 'LaTeX-mode-hook (lambda () local-set-key (kbd "M-q") 'your-fill-function))
ที่your-fill-function
elisp กำหนดเองของคุณอยู่ที่ไหน นี่จะเป็นการตั้งค่าคีย์ผสมนั้นใน Auctex เท่านั้น คุณอาจจะใช้กับอาร์กิวเมนต์แทนที่การกำหนดshell-command-on-region
your-fill-function
M-q
มีผลevil-fill-and-move
ต่อหรือไม่ ฉันไม่ได้ใช้ความชั่วร้ายดังนั้นฉันอยากรู้ หากพื้นที่มีการใช้งานfill-paragraph
โทรfill-region
เลยล่ะค่ะ ดังนั้นคุณอาจให้คำแนะนำหรือแทนที่fill-region
ด้วยฟังก์ชั่นของคุณ