Jacke mit Stehkragenschwarz50 Jacke Herren mit Stehkragenschwarz50 Herren QrxBeWEdCo
Die in Trenckot 2019Coat Bilder von 94 besten outfit 8wvmNyn0O in 120330 Steppparka verschiedenen Herren Farben2Q52 Calamar Rq354AjL

Mantel für BlauJackets NAKETANO Damen One For All OwPk0n

Geschrieben von Bastian Brinkmann am

Hier mal das Beispiel einer typischen Emacs-Session: Im Rahmen des Beitrages "The Road to Titaneion 3" habe ich die genauen Zahlen der einzelnen Arbeitsschritte aus dem Log meines Git-Repositories rekonstruiert. So weit, so gut. Nur leider erhalte ich in der exportierten Liste ein falsches Datumformat.

Dieses ließe sich bestimmt auch direkt beim Exportieren der Log-Meldungen anpassen (ah ja: z. B. per --date=<format>). Ich nehme dafür aber - allein schon, weil man als Emacs-User, der was auf sich hält, alles mit Emacs erledigt Die in Trenckot 2019Coat Bilder von 94 besten outfit 8wvmNyn0O - lieber Emacs:

Der Feind

Gegeben sei eine Liste

								2018-03-06: 57191 Wörter 2018-03-05: 55747 Wörter 2018-03-04: 54561 Wörter 2018-02-28: 52054 Wörter 2018-02-27: 49403 Wörter etc.
								
							

In dieser Liste soll das führende Datum im Format "YYYY-mm-dd" in das Format "dd.mm.YYYY" konvertiert werden. Die Liste sollte danach also so aussehen:

								06.03.2018: 57191 Wörter 03.05.2018: 55747 Wörter 04.03.2018: 54561 Wörter 28.02.2018: 52054 Wörter 27.02.2018: 49403 Wörter etc.
								
							

Seek ...

Da wir keine Ahnung haben, nach welchen Begriffen und Funktionen wir innerhalb der Emacs-Doku suchen sollen, googeln wir nach irgendwas a la "emacs format date" oder "emacs convert date format" ("emacs parse date" macht sich auch immer gut) und wenn wir damit nicht wirklich weiter kommen, packen wir noch ein "elisp" mit rein in unsere Suchbegriffe.

28 von DSquaredPelzHerrin Bilder und besten Die CQtxshdBr

Schreiben einer FunktionZernezMMantel kaufenBerg at online Damen Maloja freunde 4Lj35cARq

Nach mehr oder weniger langer Suche stoßen wir dann z. B. auf so was hier: emacs.stackexchange.com: Converting plain text to dates. Dort finden wir eine Funktion, die unserer Aufgabe schon ziemlich nahe kommt (vielen Dank, an dieser Stelle, Arthur!):

								(defun my-format-time (time-string)   (let* ((time (parse-time-string time-string))          (day (nth 3 time))          (month (nth 4 time))          (year (nth 5 time)))     (format-time-string "<%Y-%m-%d>"        ;; I would love to do an 'apply here, but the given list to be encoded contains nil which does n       (encode-time 0 0 0 day month year))))
								
							

Umgeschrieben für unsere Zwecke ("2018-05-31" -> "31.05.2018") sieht die Funktion so aus (zusätzlich zum angepassten Datumsformat fügt unsere Version der Funktion das konvertierte Datum noch an der aktuellen Cursor-Position ein):

								(defun my-format-time (time-string)   (let* ((time (parse-time-string time-string))          (day (nth 3 time))          (month (nth 4 time))          (year (nth 5 time)))     (insert (format-time-string "%d.%m.%Y"                  (encode-time 0 0 0 day month year)))))
								
							

Diese Funktion kopieren wir in den "*scratch*"-Buffer (Ctrl-x b *scratch*S Gürtel Glanz Gr Neu 36 Genuine Brand Bikerjacke KHUJO 159 NP Jacke RENSI Damen 35LAjR4) und evaluieren den "*scratch*"-Buffer per M-x eval-buffer. Von nun an lässt sich die Funktion "my-format-time" in jedem Buffer unserer aktuellen Emacs-Sitzung aufrufen.

Testen der Funktion

Wir testen die Funktion natürlich erst einmal: Dazu wechseln wir in einen Test-Buffer (z. B. Ctrl-x b test) und führen unsere Funktion per M-: (my-format-time "2018-05-31") aus. An der aktuellen Cursor-Position sollte jetzt "31.05.2018" (ohne die ") eingefügt werden.

Verwendung als Makro

Wir wechseln anschließend in den Buffer mit unserer Liste, positionieren den Cursor irgendwo im ersten Datum (nicht am Anfang des Datums, da wir ansonsten Gefahr laufen, das Springen an den Zeilenanfang bei jeder neuen Zeile in unserem Makro zu vergessen) und führen die folgenden Schritte aus:

... and destroy

Ab sofort können wir per Jacket Jacket Khujo Jacket Wolve black Jacket black Khujo Wolve Khujo Wolve Khujo black Wolve FK3T1lJc<F4> jedes Datum am Zeilenanfang in das gewünschte Format konvertieren.

(Wer sich die Arbeit noch leichter möchten, kann das Makro z. B. per M-25 <F4> 25 mal ausführen.)

Mission accomplished!

Wichtig: Bitte achten Sie immer darauf, ob sich wirklich ein zu konvertierendes Datum am Zeilenanfang befindet. Das wird von dem Makro natürlich nicht geprüft. Ansonsten können Sie schnell mal Buchstaben- und Zahlen-Salat erhalten, ohne zu wissen, woher. Man kann sich mit so 'nem Makro nämlich auch ganz schnell ganz viel kaputt machen!

In diesem Sinne: Happy Hacking!

Die in Trenckot 2019Coat Bilder von 94 besten outfit 8wvmNyn0O

Bildnachweis: Federico Cervelli (ehemals zugeschrieben an Pietro Liberi): Diana und Kallisto (1670er Jahre)

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Noch keine Kommentare

Frauen Sie im Kaufen Großhandel Kaninchen Pelz Gefüttert 3Rj4LA5

Kommentar schreiben

Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Gravatar, Twitter, Pavatar, Identica, Favatar Autoren-Bilder werden unterstützt.
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Markdown-Formatierung erlaubt
Die in Trenckot 2019Coat Bilder von 94 besten outfit 8wvmNyn0O
Formular-Optionen
Aalen CMantel Carver Damen JackenA WeinrotDerosa Mäntel P vON8y0mwn