Erstellen von Cue-Dateien aus Markdown

0
59

Ziemlich spezifische, nicht wahr? Während wir dabei sind, genau das zu tun, was der Titel sagt, dieser Beitrag ist mehr über eine Lern-übung und ein Beispiel für ” erste Hilfe im internet.

Meine podcast-editor, Chris Enns, ist immer auf der Suche nach Möglichkeiten, um seine Arbeit zu verbessern und machen podcasting besser. Eine irgendwie Coole Art und Weise zu tun, ist, “Kapitel”, so dass die Menschen herum springen in einem podcast auf bestimmte Punkte.

Durch TimeJump, die wir bereits anbieten, auf der website selbst. Diese geschehen in Form des hash-links wie diese: #t=12:18. Ob Sie es glauben oder nicht, relative links zu benutzen, dass wie in den show notes, tatsächlich in einige podcatchers (podcast hören-apps).

Springen um ein audio-element mit dem TimeJump JavaScript-Bibliothek.

Aber mit “Kapitel” ist, nehme ich an, die richtige Art des Umgangs mit diesen. Mit Kapiteln, eine podcatcher bieten Ihre eigenen nativen Benutzeroberfläche zum anzeigen und dem Benutzer ermöglicht, zwischen den Kapiteln springen.

Sogar iOS 11 wird jetzt unterstützt Sie bei der podcast-app:

Dies ist der Podcast app in iOS gebaut, aber alle Arten von verschiedenen podcatchers display Kapiteln auf Ihre eigene Weise.

Wie fügen Sie Sie zu einem podcast? Ich bin kein Experte hier, aber es ist eine native Mac-app namens ” Podcast-Kapitel, das dies tut:

Das ist genau das, was Chris Enns, verwendet zum hinzufügen von Kapiteln, die führt uns zu der Chris’ workflow. Chris schreibt Notizen für podcasts, und das tut Sie im Markdown-format. Das zeigt, dass er Bearbeitungen für (zumindest einige von Ihnen) nach den Notizen auf der web-und CMS ist, dass die Kraft, die Markdown verwenden.

Er werde erstellen Sie eine Markdown-Liste (TimeJump-kompatibel), was in dem podcast, wie diese:

* **[1:49](#t=1:49)** Spielzeug aus der Zukunft.
* **[8:40](#t=8:40)** Sprechen über flip.

Ein weiteres Stück des Puzzles ist hier, dass der Podcast-Kapitel-app seine Sache macht, indem es ein `.cue ” – Datei. Cue-Dateien wie folgt Aussehen:

PERFORMER “ShopTalk-Show”
TITEL “Episode 273”
DATEI “shoptalk-273.mp3” MP3
TRACK 01 AUDIO
PERFORMER “”
TITEL “Spielzeug aus der Zukunft.”
INDEX 01 01:49:00
TRACK 02 AUDIO
PERFORMER “”
TITEL “Reden über flip.”
INDEX 01 08:40:00

Das ist ein sehr spezifisches format. Es ist von hand beschreibbar, sicher, aber es hat im wesentlichen alle auf die gleichen Daten, die Markdown-Liste, nur in einem anderen format.

Es gibt sogar einen online-generator zu helfen, machen Sie:

Das ganze Zeug, was ich gerade erklärt habe, ich nur verstehen, weil Chris sich selbst erklärt. Dies ist mein Lieblings-Teil. Er erklärt es, indem Sie helfen, durch ein YouTube-video, dass das problem klar wie der Tag.

Chris wusste genau, was er benötigt, um mit diesem Arbeitsablauf zu arbeiten, er konnte einfach nicht herausfinden, einen kleinen Teil davon, so fragte er.

Um ehrlich zu sein, ich wusste nicht wirklich, wie es zu lösen. Aber, vielleicht, nur vielleicht, wusste ich, nur ein wenig mehr, genug, um den Prozess gestartet.

  1. Ich weiß, wie man ein interface, das würde die Aufgabe hier: side-by-side <textarea>s für die einfache kopieren und einfügen.
  2. Ich weiß JavaScript kann dies geschehen, denn es greifen kann, die string-Werte aus der Texteingabefelder und hat viele string-Verarbeitung Methoden.
  3. Ich weiß, es ist wahrscheinlich RegEx-Gebiet.

Ich weiß auch, das ist Programmierarbeit an den Rand meiner Fähigkeiten. Ich Wette, ich könnte es tun, aber es könnte mich den ganzen Tag und wirklich mich herausfordern.

So anstelle, habe ich wieder das problem, für jemand anderen zu springen und zu helfen.

Ich schrieb ein Drehbuch (“ein Skript in der Drehbuch-oder Theater-Sinn”) zu erklären, was ich dachte, zu geschehen. Ich machte einen Stift, und in der JavaScript-Bereich, schrieb…

/*
Schritt 1
Pause markdown in der ersten textarea in array von Zeilen
Schleife über jede Zeile

Schritt 2
Extrahieren Sie den Wert “1:49” von der Linie

Schritt 3
Konvertieren Sie den Wert auf “01:49:00″

Schritt 4
Extrahieren Wert ” – Spielzeug aus der Zukunft.” von der Linie

Schritt 5
Platzieren Sie diese beiden Werte in eine Vorlage, die Sie sehen können, in die zweite textarea
*/

Dann James Padolsey sprang ein, half mit die endgültige Lösung:

Finden Sie die Pen WIP: Erstellen Cuefile von “Markdown” von James Padolsey (@padolsey) auf CodePen.

Es tut genau das, was jeder hatte gehofft, es tun würde! Dank James!

Es tut im Grunde das, was legte ich in meinem kleinen script.

Spaltet auf neue Linien und Schleifen über array:

markdown.split(‘n’).Karte((Zeile, i) => {

Extrahieren Sie Teile des Strings, die beste, mit zu arbeiten:

const Titel = Zeile.split(‘** ‘)[1];
const Zeit = Zeile.match(/d+:d+/)[0];

Dann manipuliert, diejenigen bits, die in Form und letztlich verwendet Vorlage Literale Handwerk eine neue Zeichenfolge plop wieder in die textarea.

Ich bin sicher, dies ist nicht der einzige Weg, und Sie könnten sträuben sich die zerbrechlichkeit und vielleicht unangenehme Natur dieser Art von Analyse. Aber es löst auch eine sehr Reale und unmittelbare workflow-Problem.