Schneiden Sie den Anfang der rechtsbündigen Spalte in der Organisationstabelle ab

10

Ich habe eine Spalte in einer Tabelle im Organisationsmodus, die lange Dateinamen enthält. Der interessante Teil des Dateinamens sind eher die letzten als die ersten Zeichen. Zum Beispiel angesichts der folgenden Dateien:

/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

Ich möchte, dass meine Org-Tabelle so aussieht:

|            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 |    |    |    |                      |

Aber stattdessen sieht es so aus:

|            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=> |    |    |    |                      |

Ist es möglich, rechtsbündige Spalten nach links abzuschneiden, damit ich den am weitesten rechts stehenden Teil der Einträge sehen kann?

Nispio
quelle

Antworten:

8

Soweit ich weiß, gibt es keine integrierte Unterstützung für das Anpassen des Abschneidens von Tabellenspalten. Sie können den Befehl jedoch ändern org-table-align, um das zu erreichen, was Sie möchten:

  1. Suchen Sie die Datei org-table.el. Es befindet sich im Verzeichnis Ihrer org-modeInstallation. Der schnellste Weg, es zu öffnen, ist über M-x find-library RET org-table RET.

  2. Kopieren Sie die Definition von org-table-alignin Ihre .emacsDatei.

  3. Ersetzen

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

    mit

    (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))))))

Getestet mit Version 8.2.8 von org-mode.

itsjeyd
quelle
3
Kann dies als Ratschlag erfolgen? Im Allgemeinen versuche ich, vorhandene Bibliotheken möglichst nicht direkt zu ändern. Insbesondere solche, die häufig von Upstream-Quellen aktualisiert werden. BEARBEITEN: Ich sehe jetzt, dass Sie empfehlen, eine Kopie der Funktion in meiner Init-Datei zu erstellen. Ich denke, das ist besser, als es direkt zu modifizieren.
Nispio
@nispio "Im Allgemeinen versuche ich, vorhandene Bibliotheken möglichst nicht direkt zu ändern." Genau aus diesem Grund habe ich vorgeschlagen, eine Kopie der Funktion zu erstellen :) Im Moment sehe ich nicht, wie Sie dies mit Ratschlägen tun würden, da die Argumente, die für die Bestimmung des zu versteckenden Teils einer Zelle relevant sind, im laufenden Betrieb berechnet werden Aufruf add-text-propertiesdes ursprünglichen Befehls.
Itsjeyd
Es wäre schön, wenn eine zukünftige Version von org-modediesen Teil in einen separaten Defun aufteilen würde, damit er leichter empfohlen oder ersetzt werden kann. Sind die org-modeEntwickler ziemlich offen für Anfragen nach solchen Dingen?
Nispio
@nispio Sie sind sich bei Pull-Anfragen nicht sicher, aber Sie können versuchen, einen Vorschlag in dieser Richtung an die Mailingliste zu senden . BEARBEITEN : Hier steht , dass Sie auch Patches an die Mailingliste senden können. Auf dieser Seite wird die "bevorzugte Methode zum Senden von Patches" an beschrieben org-mode.
Itsjeyd