5
ฉันจะบังคับให้ประเมินค่า defvar อีกครั้งได้อย่างไร
สมมติว่าฉันมีบัฟเฟอร์เสียงกระเพื่อม Emacs ที่ประกอบด้วย: (defvar foo 1) ถ้าผมเรียกeval-last-sexpหรือeval-buffer, fooถูกผูกไว้กับ 1. ถ้าผมแล้วแก้ไขบัฟเฟอร์นี้ไปที่: (defvar foo 2) eval-last-sexpและeval-bufferอย่าเรียกใช้งานบรรทัดนี้ใหม่ดังนั้นจึงfooยังคงเป็น 1 นี่เป็นเรื่องที่ท้าทายโดยเฉพาะเมื่อมีข้อความหลายอย่างและฉันต้องติดตามว่าบรรทัดใดที่ไม่ได้รับการประเมินอีกครั้ง ฉันดูที่เพิ่งรีสตาร์ท Emacs แล้ว(require 'foo)แต่ฉันต้องระวังเพื่อหลีกเลี่ยงการโหลดไฟล์. elc ที่เก่ากว่า ฉันจะมั่นใจได้อย่างแน่นอนว่าตัวแปรและฟังก์ชั่นที่กำหนดไว้ในไฟล์ปัจจุบันอยู่ในสถานะเดียวกับการโหลดรหัสใหม่ในอินสแตนซ์ของ Emacs ใหม่