Tôi có một org-mode
tệp chứa một bảng dữ liệu và hai khối mã Python để trích xuất các bản tóm tắt khác nhau từ nó.
Tôi muốn chia sẻ một số hằng và hàm phổ biến giữa hai khối mã này. Lý tưởng nhất, tôi sẽ làm điều này bằng cách bao gồm mã chung vào một khối mã riêng, sẽ được tự động đưa vào và đánh giá bất cứ khi nào một trong hai khối còn lại được đánh giá. Trong cú pháp tạo thành, nó sẽ trông giống như sau:
#+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
Tôi cho rằng tôi có thể sử dụng :session
tùy chọn, nhưng tôi không muốn, vì hai lý do. Đầu tiên, nó thiết lập một hệ thống trạng thái, thay vì một hệ thống chạy từ đầu mỗi lần tôi sử dụng C-c C-c
trên một khối mã. Thứ hai, và có liên quan, bây giờ tôi phải nhớ đánh giá thủ công mã khởi tạo chung mỗi lần tôi mở tệp: Tôi không thể chỉ cập nhật bảng dữ liệu, đi đến một trong các khối tóm tắt và nhấn C-c C-c
để cập nhật nó.
Có một cách tốt để làm điều này?