Help to modify AppleScript inside DEVONthink 3 to process Markdown

Hi everyone,

New user, first post here. :slight_smile:

I am using DEVONthink 3 to extract my pdf highlights as markdown. I need help with AppleScript.

In short 2 things:

1)get the text part of H1, which is a link.
H1 is the first line in the file: “# I.Eliacik
Extract text from within the first occurrence of “[ ]” in this example "“I.Eliacik”

2)Change all "(Page " instances with the extracted text, in this case with "(I.Eliacik "

The apple script itself looks like this:

on performSmartRule(theRecords)
	tell application id "DNtp"
		repeat with theRecord in theRecords
			if (type of theRecord as string) = "markdown" then
				-- Only process Markdown docs
				set newText to {}
				-- Set up an empty list to push the paragraphs into)
				set currentText to (plain text of theRecord)
				-- Get the current text of the document
				repeat with thisLine in (paragraphs of currentText)
					-- Loop through the document, paragraph by paragraph
					if thisLine begins with "##" then
						-- If this is an H2 page link
						set cachedText to (characters 4 thru -1 of thisLine as string) -- Cache all but the control characters in a variable
					else if thisLine begins with "* " then
						-- If it's just a bulleted paragraph 
						copy ((characters 3 thru -1 of thisLine as string) & " (" & (cachedText) & ")  " & return) to end of newText
						-- Get all but the control characters and concatenate the cachedText.
						-- Then push it to the newText list
						copy thisLine & return to end of newText
						-- Anything else, including the H1 line at the top, just push into the newText list
					end if
				end repeat
				set plain text of theRecord to (newText as string)
				-- Set the text of the document to the new text
			end if
		end repeat
	end tell
end performSmartRule


A user called BLUEFROG shared a script that processes the markdown file into a more useful form:

Which transforms the file like this: (original on left) (for some reason I could not embed image links, that is why I am posting the URLs for them, I am sorry)

But instead of this:

I need them to be like this:

So basically “(Page 6)” is a link that opens page 6 of that pdf in DEVONthink3.
I need to get the text of the H1 which is “I.Eliacik” and change all "(Page " with "(I.Eliacik " without changing the link to page 6. (I.Eliacik is also a link to the pdf itself, not to a specific page. That is why I only want to get the text part of it, not the link)

The main reason for this is to directly be able to see which file I am referencing instead of seeing (Page 6) for every pdf.

You could see the original post and my question also at DEVONthink forum:
(the DEVONthink rule file which includes the apple script is also here )

And the apple script itself looks like this:

If I can manage to do this I could stop using Zotero altogether, which would simplify my workflow a lot.

Any help is much appreciated. Peace.