Xuất Org-Agenda sang Org-Table


3

Tôi đang sử dụng chế độ Org là sổ ghi chép cho các thử nghiệm lĩnh vực nông nghiệp và luận án tiến sĩ nói chung.

Báo cáo thử nghiệm thực địa Tôi muốn xuất các chế độ xem chương trình nghị sự của các thử nghiệm sang các bảng cực đại để lấy thứ gì đó như thế này làm sản phẩm cuối cùng: (Dữ liệu đồ chơi)

| Trial   | Date   (Toy data) | Action                | DAE |
|---------+-------------------+-----------------------+-----|
| Trial A | <2013-02-21 Thu>  | Planting              |     |
| Trial A | <2013-03-03 Sun>  | Emergence             |  0  |
| Trial A | <2013-04-19 Fri>  | Fungicide Application |  7  |
| Trial A | <2013-05-20 Mon>  | Biomass Evaluation    |  50 |
| Trial A | <2013-06-21 Fri>  | Harvest               | 110 |
| Trial B | ...               | ...                   |     |
| ...     | ...               | ...                   |     |

Từ C-a m (tìm kiếm TAG) tôi có thể nhận được một cái gì đó như thế này ở đây (dữ liệu thực):

  13pgSoja:   13pgSoja: Planting: Soybean <2012-11-06 Tue>        :NPW:2013:PG::
  13pgSoja:   13pgSoja: Emergence <2012-11-14 Thu>                :NPW:2013:PG::
  13pgSoja:   13pgSoja: Application 1 <2012-11-22 Thu 14:30-16:30> :NPW:2013:PG::
  13pgSoja:   13pgSoja: Evaluation: Control 1 <2012-11-28 Wed>    :NPW:2013:PG::
  13pgSoja:   13pgSoja: Evaluation: Biomass Weeds <2013-02-18 Mon> :NPW:2013:PG::
  13pgSoja:   13pgSoja: Evaluation: Biomass Soybean               :NPW:2013:PG::
  13pgSoja:   13pgSoja: Harvest <2013-03-25 Mon>                  :NPW:2013:PG::

Chỉnh sửa các thẻ không cần thiết không phải là vấn đề, tôi nhận được: (Tôi đã thêm tiêu đề cho ba cột đầu tiên chỉ để làm rõ ý tưởng của mình ...)

Trial        Action                Date     
  13pgSoja: Planting: Soybean <2012-11-06 Tue>        
  13pgSoja: Emergence <2012-11-14 Thu>                
  13pgSoja: Application 1 <2012-11-22 Thu 14:30-16:30> 
  13pgSoja: Evaluation: Control 1 <2012-11-28 Wed>    
  13pgSoja: Evaluation: Biomass Weeds <2013-02-18 Mon> 
  13pgSoja: Evaluation: Biomass Soybean               
  13pgSoja: Harvest <2013-03-25 Mon>                  

Sau đó chuyển đổi định dạng này sang bảng org:

| Trial     | Action                      | Date             | DAE |
| 13pgSoja: | Planting: Soybean           | <2012-11-06 Tue> |     |
| 13pgSoja: | Emergence                   | <2012-11-14 Thu> |   0 |
| 13pgSoja: | Application 1               | <2012-11-22 Thu> |     |
| 13pgSoja: | Evaluation: Control 1       | <2012-11-28 Wed> |     |
| 13pgSoja: | Evaluation: Biomass Weeds   | <2013-02-18 Mon> |     |
| 13pgSoja: | Evaluation: Biomass Soybean | <2013-02-18 Mon> |     |
| 13pgSoja: | Harvest                     | <2013-03-25 Mon> | 130 |

DAE là viết tắt của "Ngày sau khi xuất hiện". Tôi muốn có thể tính "tuổi trồng trọt" từ ngày và sắp xếp theo ngày. Định dạng từ chương trình nghị sự có tốt cho việc tính toán không? Đây thực sự là một câu hỏi bổ sung ...

Chuyển đổi dữ liệu thành bảng là một vấn đề (chuyển đổi không có tiêu đề, mà tôi sẽ thêm sau). Tôi sẽ phải thực hiện việc tách biệt tất cả bằng tay. Có cách nào dễ dàng để xuất chế độ xem chương trình nghị sự sang dạng bảng org không? Là xem cột của org-agenda là con đường đúng?


Thật khó để xem các thẻ bạn có liên quan đến bảng như thế nào. Tôi thấy dữ liệu trong bảng mà tôi không thấy trong các thẻ. Bạn có thể cung cấp một phần nhỏ dữ liệu và một bảng tương đương không?
Alex McKenzie

Ở đây bạn đi Alex; thêm một số dữ liệu và bảng đầu ra mong muốn
mcg

Đừng thực sự thấy sự biến đổi cần thiết, nhưng awk là bạn của bạn (cùng với cắt). Theo mặc định, awk đọc từng dòng của tệp đầu vào, chia nó thành các trường bằng cách sử dụng các dấu phân cách hoặc trường có độ dài cố định mà bạn chọn và sau đó khớp từng dòng với các mẫu liên tiếp (mà bạn chỉ định). Khi một mẫu khớp với nhau, thì hành động liên quan đến mẫu đó được gọi. Nó hoàn hảo cho việc tái cấu trúc và làm sạch dữ liệu.
Joe

Câu trả lời:


1

Tôi thực sự tìm thấy một giải pháp cho vấn đề của mình trên các trang trợ giúp chế độ org. Các liên kết là http://orgmode.org/manual/Scope-of-column-def địnhs.html http://orgmode.org/manual/Capturing-column-view.html .

Chế độ xem cột Org như vậy không thể xuất được, nhưng có thể được ghi lại bằng các khối động:

Dữ liệu mẫu :

* Trial A

** Planting
<2014-02-28 Fri>
** Emergence
<2014-03-10 Mon>
** Biomass evaluation
<2014-04-29 Tue>
** Harvest
<2014-05-28 Wed>

Tôi muốn các mục chính nó ( %25ITEM ) và ngày ( %TIMESTAMP ) đã xuất, vì vậy tôi đặt:

#+COLUMNS: %25ITEM %TIMESTAMP

Then one goes to the top header (Trial A) and uses: 

C-c C-x i  --- (org-insert-columns-dblock) ; I get


#+BEGIN: columnview :hlines 1 :id local
| ITEM                  | TIMESTAMP      |   |
|-----------------------+----------------+---|
| * Trial A             |                |   |
| ** Planting           | 2014-02-28 Fri |   |
| ** Emergence          | 2014-03-10 Mon |   |
| ** Biomass evaluation | 2014-04-29 Tue |   |
| ** Harvest            | 2014-05-28 Wed |   |
#+END:

(Tôi đã thêm một cột thứ ba) Điều này tôi có thể dễ dàng thay đổi thành đầu ra mà tôi muốn (loại bỏ các ngôi sao + thay đổi tiêu đề). Thêm cột thứ ba tôi cũng có thể thực hiện các phép tính ngày tôi muốn, với:

#+TBLFM: $3 = date(<$2>) - date(<2012-10-21>)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.