ฉันมีorg-mode
ไฟล์ที่มีสารบัญและบล็อกรหัส Python สองบล็อกเพื่อแยกข้อมูลสรุปที่แตกต่างออกไป
ฉันต้องการแบ่งปันค่าคงที่ทั่วไปและฟังก์ชั่นบางอย่างระหว่างโค้ดบล็อกทั้งสองนี้ โดยหลักการแล้วฉันจะทำเช่นนี้โดยแยกรหัสทั่วไปออกเป็นบล็อคโค้ดแยกซึ่งจะถูกรวมและประเมินโดยอัตโนมัติเมื่อใดก็ตามที่บล็อกสองบล็อกอื่นถูกประเมิน ในไวยากรณ์ที่สร้างขึ้นมันจะมีลักษณะดังนี้:
#+NAME: init_block
#+BEGIN_SRC python
... common constants and functions here ...
#+END_SRC
#+NAME: summary_1
#+BEGIN_SRC python :prepend init_block
... data-processing code depending on init code goes here ...
#+END_SRC
#+NAME: summary_2
#+BEGIN_SRC python :prepend init_block
... more processing which also depends on init code ...
#+END_SRC
ฉันคิดว่าฉันสามารถใช้:session
ตัวเลือก แต่ฉันไม่ต้องการด้วยเหตุผลสองประการ ครั้งแรกมันตั้งค่าระบบ stateful มากกว่าหนึ่งซึ่งทำงานตั้งแต่เริ่มต้นทุกครั้งที่ฉันใช้C-c C-c
ในบล็อกรหัส ประการที่สองและที่เกี่ยวข้องตอนนี้ฉันต้องจำไว้ว่าต้องประเมินรหัสการเริ่มต้นทั่วไปด้วยตนเองทุกครั้งที่ฉันเปิดไฟล์: ฉันไม่สามารถอัปเดตตารางข้อมูลได้ให้ไปที่หนึ่งในบล็อกสรุปและกดC-c C-c
เพื่ออัปเดต
มีวิธีที่ดีในการทำเช่นนี้?