บางครั้งฉันM-! some_command
ก็พบว่าคำสั่งทำงานนานกว่าที่ฉันคาดไว้และทำให้ emacs ของฉันหยุดนิ่งเป็นเวลานาน ดังนั้นฉันจึงเคลือบที่ emacs ที่แช่แข็งของฉันและเตะตัวเองเพื่อไม่ใช้M-& some_command
และสัญญากับตัวเองว่าจะใช้M-&
ในครั้งต่อไป แต่M-!
อยู่ในความทรงจำของกล้ามเนื้อมานานหลายสิบปี…และแน่นอนมีCtrl-G
แต่มีบางกรณีที่การสั่งการและสั่งการซ้ำอีกครั้งมันไม่ได้ดีกว่า (อาจเป็นไปได้ที่จะทำลายฏ
ความผิดพลาดที่คล้ายกันในเปลือก konsole เป็นเล็กน้อยเพื่อแก้ไขCtrl-Z
, bg
และงานที่จะทำงานในพื้นหลัง
มีเคล็ดลับที่คล้ายกันใน emacs หรือไม่ - วิธีเปลี่ยนคำสั่งเบื้องหน้า (ซิงโครนัส) ที่ทำงานอยู่ในขณะนี้ให้เป็นแบ็คกราวน์ (แบบอะซิงโครนัส) หรือไม่?
หมายเหตุ: ในกรณีที่เป็นไปไม่ได้สำหรับการเริ่มต้น M-!
ฉันเปิดให้คำแนะนำวิธีการ rebind M-!
เป็นอย่างอื่น (สิ่งที่จะเป็นหน้าที่เทียบเท่านอกเหนือจากเคล็ดลับนี้)
M-!
async-shell-command
:-) ดูเหมือนว่าสิ่งเดียวที่คุณสูญเสียคือการได้รับผลลัพธ์ในพื้นที่เสียงก้องเมื่อมันสั้นพอ
async-shell-command
ทำ มันเพิ่ม&
ไปยังจุดสิ้นสุดของสตริงและดำเนินการCOMMAND
shell-command
&
ส่วนท้ายไปยังส่วนท้ายshell-command
(M-!
) แบบปกติจะทำให้มันไม่ตรงกัน แน่นอนคุณต้องทำสิ่งนี้ก่อนที่จะเรียกใช้คำสั่ง แต่อย่างน้อยคุณสามารถใช้การเชื่อมโยงคีย์เดียวกันได้