วิธีรับพรอมต์ใน SLIME


1

ฉันเพิ่งติดตั้ง SLIME ใน Emacs แต่บางครั้งเมื่อฉันพิมพ์ข้อความฉันได้รับข้อผิดพลาดและดีบักขึ้นมาและฉันออกจากมัน แต่เมื่อฉันกลับไปที่ REPL ฉันไม่สามารถประเมินอะไรได้เลย ฉันไม่สามารถรับพรอมต์ได้เช่นกัน

ฉันต้องการบางสิ่งบางอย่าง Ctrl-C ใน Lisp I am รุ่นบรรทัดคำสั่ง

ฉันแค่ติดอะไรบางอย่างเช่น

* 
Process inferior-lisp
(list 1 2 3 4)(quit)

ดูเหมือนจะไม่มีอะไรพาฉันกลับไปที่ * พรอมต์และไม่มีอะไรประเมิน

ปล่อยฉันเป็นอิสระ!! ฉันจะรับพรอมต์ใน SLIME REPL ได้อย่างไร


คุณเลิกใช้ดีบักเกอร์อย่างไร ดีบักเกอร์ของ SBCL นำเสนอรายการรีสตาร์ท เริ่มต้นทำเครื่องหมายด้วยเครื่องหมายดอกจันในรายการและพร้อมใช้งานโดยกด qควรพาคุณกลับไปที่ REPL
Aaron Miller

คำตอบ:


0

เมื่อบัฟเฟอร์เปิดคุณอาจเห็นบัฟเฟอร์ที่มีเนื้อหาที่มีลักษณะคล้ายดังต่อไปนี้ (ฉันสร้างขึ้นโดยการประเมิน (+1 'foo)

อาร์กิวเมนต์ Y ไม่ใช่ NUMBER: FOO      [เงื่อนไขประเภท SIMPLE-TYPE-ERROR]

เตะ:    0: [RETRY] ​​ลองคำขอการประเมินผล SLIME REPL อีกครั้ง    1: [* ABORT] กลับสู่ระดับบนสุดของ SLIME    2: [ABORT] ยกเลิกกระทู้ (#)

ติดตามย้อนหลัง:     0: (SB-KERNEL: TWO-ARG- + 1 FOO)    1: (+ #) [มากกว่าตัวเลือก]    2: (SB-INT: SIMPLE-EVAL-IN-LEXENV (+ 1 (QUOTE FOO)) #)

หากคุณเพียงแค่ปิดบัฟเฟอร์นั้น (อาจโดยการกดปุ่ม C-xk<RET> ) จากนั้นคุณจะไม่ได้รับพรอมต์ใหม่ทันที หากคุณกดกลับอีกครั้งใน REPL คุณจะได้รับพรอมต์ใหม่

อย่างไรก็ตาม วิธีที่ถูกต้องในการออกจากโปรแกรมดีบั๊กคือการป้อนจำนวนหนึ่งในการรีสตาร์ทหรือเพื่อย้ายไปยังบรรทัดของการรีสตาร์ทที่คุณต้องการดำเนินการแล้วกดกลับ

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