Cắt ngắn bắt đầu cột thẳng hàng trong bảng org


10

Tôi có một cột trong bảng chế độ tổ chức chứa tên tệp dài. Phần thú vị của tên tệp là một vài ký tự cuối cùng thay vì đầu tiên. Ví dụ: đưa ra các tệp dưới đây:

/data/capture/abcd_spectrum_01292000.dat
/data/capture/abcd_spectrum_02251435.dat
/data/capture/abcd_spectrum_02251847.dat
/data/capture/abcd_spectrum_02251848.dat
/data/capture/abcd_spectrum_02251848.dat
/data/capture/abcd_spectrum_02251849.dat
/data/capture/abcd_spectrum_02251851.dat
/data/capture/abcd_spectrum_02251852.dat
/data/capture/abcd_spectrum_02251852.dat
/data/capture/abcd_spectrum_02270910.dat

Tôi muốn bảng org của tôi trông như thế này:

|            File | TD | FD | MF | Notes:               |
|-----------------+----+----+----+----------------------|
|           <r15> |    |    |    | <l20>                |
| <=_01292000.dat |    |    |    |                      |
| <=_02251435.dat |    |    |    |                      |
| <=_02251847.dat |    |    |    |                      |
| <=_02251848.dat |    |    |    |                      |
| <=_02251848.dat |    |    |    |                      |
| <=_02251849.dat |    |    |    |                      |
| <=_02251851.dat |    |    |    |                      |
| <=_02251852.dat |    |    |    |                      |
| <=_02251852.dat |    |    |    |                      |
| <=_02270910.dat |    |    |    |                      |

Nhưng thay vào đó, nó trông như thế này:

|            File | TD | FD | MF | Notes:               |
|-----------------+----+----+----+----------------------|
|           <r15> |    |    |    | <l20>                |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |
| /data/capture=> |    |    |    |                      |

Có thể làm cho các cột được căn phải cắt ngắn sang trái, để tôi có thể thấy phần bên phải của các mục không?

Câu trả lời:


8

Theo tôi biết, không có hỗ trợ tích hợp để tùy chỉnh cắt bớt các cột của bảng. Tuy nhiên, bạn có thể sửa đổi lệnh org-table-alignđể đạt được những gì bạn muốn:

  1. Tìm tập tin org-table.el. Nó nằm trong thư mục org-modecài đặt của bạn . Cách nhanh nhất để mở nó là thông qua M-x find-library RET org-table RET.

  2. Sao chép định nghĩa của tập tin org-table-aligncủa bạn .emacs.

  3. Thay thế

    (add-text-properties f1 (length xx) (list 'org-cwidth t) xx)
    (add-text-properties (- f1 2) f1
                   (list 'display org-narrow-column-arrow)
                   xx)))))
    

    với

    (let (s1 e1 s2 e2 arrow-string)
      (if (and falign1 (equal (downcase falign1) "r"))
          (setq s1 0
                e1 (- (length xx) f1)
                s2 (- (length xx) f1)
                e2 (- (length xx) (- f1 2))
                arrow-string "<=")
        (setq s1 f1
              e1 (length xx)
              s2 (- f1 2)
              e2 f1
              arrow-string org-narrow-column-arrow))
      (add-text-properties s1 e1 (list 'org-cwidth t) xx)
      (add-text-properties s2 e2 (list 'display arrow-string) xx))))))
    

Đã thử nghiệm bằng phiên bản 8.2.8 của org-mode.


3
Điều này có thể được thực hiện như lời khuyên? Nói chung, tôi cố gắng tránh trực tiếp sửa đổi các thư viện hiện có nếu có thể. Đặc biệt là những người nhận được cập nhật thường xuyên từ các nguồn phát trực tuyến. EDIT: Bây giờ tôi thấy rằng bạn đang khuyên bạn nên tạo một bản sao của hàm trong tệp init của tôi. Tôi đoán điều đó tốt hơn là trực tiếp sửa đổi nó.
nispio

@nispio "Nói chung tôi cố gắng tránh trực tiếp sửa đổi các thư viện hiện có nếu có thể." Đó chính xác là lý do tại sao tôi đề nghị tạo một bản sao của hàm :) Ngay bây giờ tôi không thấy bạn sẽ làm điều này bằng lời khuyên như thế nào, vì các đối số có liên quan để xác định phần nào của ô cần ẩn được tính khi đang bay gọi add-text-propertiestrong lệnh ban đầu.
itjeyd

Sẽ thật tuyệt nếu một phiên bản trong tương lai org-modesẽ chia phần này thành một phần riêng biệt để nó có thể dễ dàng được tư vấn hoặc thay thế hơn. Có phải các org-modenhà phát triển khá cởi mở để kéo các yêu cầu cho những thứ như thế này?
nispio

@nispio Không chắc chắn về các yêu cầu kéo, nhưng bạn có thể thử gửi đề xuất dọc theo các dòng này vào danh sách gửi thư . EDIT : Ở đây nói rằng bạn cũng có thể gửi các bản vá vào danh sách gửi thư và trang này mô tả "cách gửi bản vá ưa thích" tới org-mode.
itjeyd
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.