Placing timestamps at ends of lines of a transcript for Panopto videos

Have a dream? Start learning your way toward it with courses from $12.99. Shop now for extra savings1px
After watching lectures for classes that are stored on the Panopto website, I like to save the text listed for a video in the Contents and Captions that Panopto provides in a text file. However, if I copy and paste the text into Windows Notepad or some other text editor, I see something like the following for the Contents of the video, which lists the contents of the slides in the video:
Greek and Roman Mythology
0:01
Thebes
0:15
Foundation of Thebes
0:49
Lekythos with birth of Dionysus; c. 460. Boston MFA
2:34
Hermes brings Dionysus to the nymphs of Nysa
3:37
Dionysus, satyrs, and maenads on exterior of preceding
4:25
Maenad dancing
5:25

However, when I look at the contents or the transcript of the lecture that is provided under "Captions" on the Panoptop webpage, I see the timestamps at the end of lines rather than on a following line. To have the timestamps appear at the end of a the lines with which they are associated, I paste the text into the Vim editor on a Windows systemand then use the command v/\d:\d\d\n/s/\n/ / that replaces the end-of-line character at the end of all lines that don't have a timestamp with a space, instead.

The /v instructs the gvim editor to take an action based on the pattern that follows for all lines not matching that pattern. In this case I want to look for all lines that don't have a digit, represented by \d, followed by a colon then two more digits and then the newline character represented by a \n in the regular expression between the two forward slashes that enclose the pattern I don't wish to match. E.g., 0:15 would match the pattern and would thus be a line on which I don't want the action to apply. After the second slash (/) that signals the end of the search pattern, the s indicates that I want to perform a subsitution, i.e., a replacement command, on all lines that don't match the pattern. For those lines, I want to replace the newline character, which appears at the end of the line, with a space, instead. So the pattern that I want to replace, i.e., the \n, appears between two forward slashes and is then followed by a space for the replacement pattern, i.e,, the space between the last two slash characters is the replacement pattern to be substituted for the newline character. When I apply the command to the above text, I see the result below:

Greek and Roman Mythology 0:01
Thebes 0:15
Foundation of Thebes 0:49
Lekythos with birth of Dionysus; c. 460. Boston MFA 2:34
Hermes brings Dionysus to the nymphs of Nysa 3:37
Dionysus, satyrs, and maenads on exterior of preceding 4:25
Maenad dancing 5:2

But I've found for Captions that I need to apply the command a second time to have all of the timestamps appear at the end of the accompanying line of text, since in some cases what the professor has said appears over two lines in the transcript. E.g., in cases such as the example below:

In this video, I'm just
going to introduce you to
0:00
the major characteristics and
0:03
attributes of the god Dionysus.
0:06
We're going to start by talking
0:08
about where he comes from.
0:10

Once I've applied the command once, I see the following:

In this video, I'm just going to introduce you to
0:00
the major characteristics and 0:03
attributes of the god Dionysus. 0:06
We're going to start by talking 0:08
about where he comes from. 0:10

Applying the command a second time, I then see the following, which is what I want:

In this video, I'm just going to introduce you to 0:00
the major characteristics and 0:03
attributes of the god Dionysus. 0:06
We're going to start by talking 0:08
about where he comes from. 0:10

Then, if I'm reviewing material covered, I can search for text in the text file I've saved and find where in the lecture the professor discussed a particular topic and then quickly access the relevant point in the video, if I want to rewatch that particular section of the video.

References:
  1. Using Vim to replace all *non* matching strings with another string
    Stack Overflow
    Date: January 2014

Related Articles:

  1. Saving a YouTube Video transcript to a text file
  2. Downloading Panopto videos