IT HAS BEEN SOLVED :)
Using the lua.filter here: https://gist.github.com/tarleb/a0646da1834318d4f71a780edaf9f870 and this filter:
function Span (span)
 if span.classes:includes 'mark' then
 return {pandoc.RawInline('latex', '\\hl{')} .. span.content .. {pandoc.RawInline('latex', '}')
}
end
end
And now it works, but only because I updated pandoc. In the version that Linux Mint's repo had it wouldn't work.

On Tuesday, December 6, 2022 at 11:55:17 a.m. UTC+1 - wrote:
OK, so I have markdown text that includes ==highlighted== words like that. I would like to convert ==highlighting== either to \hl{highlighting} so LaTeX can handle it, or to highlighting, i.e. remove the symbols, so that they just don't appear.

Thanks to you, I now have a working filter that looks like this:

return {
  {
    Str = function (elem)
      if elem.text == "highlighting" then
        return pandoc.Emph {pandoc.Str "highlighting"}

      else
        return elem
      end
    end,
  }
}

This filter takes all instances of highlighting and turns them into highlighting. However, ONLY if that's a whole word. If it's ==highlighting== it doesn't touch it because that's seemingly technically another word as it contains other characters. In my case I would like to replace only the "==" but since they're attached to other characters, i.e. the actual word, the filter doesn't touch them.

That's where I'm at right now. I'm now looking for a modification of that filter so it also applies to parts of a word.
Any ideas on that?

Thanks!

On Tuesday, December 6, 2022 at 11:00:09 a.m. UTC+1 denis...@unibe.ch wrote:

Sorry, I haven’t been following from the beginning. Can you provide a complete example. What’s your input ? What’s the desired output ?

 

Von: pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org <pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> Im Auftrag von paulschi...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Gesendet: Dienstag, 6. Dezember 2022 01:03
An: pandoc-discuss <pandoc-...@googlegroups.com>
Betreff: Re: How do I replace a string in all text that pandoc converts, i.e. how do I do this with a filter?

 

I've narrowed it down! The issue isn't the characters but that they're technically "part" of the word. How do I replace PART of a word?

Thanks!

 

On Tuesday, December 6, 2022 at 12:52:05 a.m. UTC+1 - wrote:

Barring that, can't I use something like "> = string.gsub("Hello banana", "banana", "Lua user")", if so how would I do that? I got that example from http://lua-users.org/wiki/StringLibraryTutorial

On Tuesday, December 6, 2022 at 12:51:09 a.m. UTC+1 - wrote:

I just tried that, thanks! That works :) But this doesn't appear to work for characters, like "==" which was the original goal. Am I missing some sort of escape characters?

On Tuesday, December 6, 2022 at 12:49:46 a.m. UTC+1 denis...-NSENcxR/0n0@public.gmane.org wrote:

You are matching against the whole paragraph (para). So, when the first element in your paragraph matches your search string, you'll replace the whole paragraph with the return value of your function. (Which is a block element, not an inline element.)

Use the example from here instead:
https://pandoc.org/lua-filters.html#macro-substitution
________________________________________
Von: pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org <pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> im Auftrag von paulschi...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org <paulschi...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Gesendet: Dienstag, 6. Dezember 2022 00:32:23
An: pandoc-discuss
Betreff: Re: How do I replace a string in all text that pandoc converts, i.e. how do I do this with a filter?

YES! that works! But can you tell me why it replaces the whole line? Can't I do this in running text?
Thanks!
return {
{
Para = function (elem)
if elem.content[1].text == "{{helloworld}}" then
return pandoc.RawBlock('latex','abc')
else
return elem
end
end,
}
}




On Tuesday, December 6, 2022 at 12:09:13 a.m. UTC+1 denis...-NSENcxR/0n0@public.gmane.org wrote:
Just your example filter:

```lua
return {
{
Para = function (elem)
if elem.content[1].text == "{{helloworld}}" then
return pandoc.RawBlock('html','<div>abc</div>')
else
return elem
end
end,
}
}
```

The problematic line is this: return pandoc.RawBlock('html','<div>abc</div>')
This adds a raw block that will only come in to effect when your output format is html.

If your target ist latex, you’ll need something like this: return pandoc.RawBlock('latex','\\whatever{abc}')

```cmd
pandoc test.md -L filter.lua -t latex
asf

\whatever{abc}

asf
```


Von: pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org <pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> Im Auftrag von paulschi...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Gesendet: Dienstag, 6. Dezember 2022 00:04
An: pandoc-discuss <pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
Betreff: Re: How do I replace a string in all text that pandoc converts, i.e. how do I do this with a filter?

No, my intended output is a PDF file. Does that change anything? Could you tell me what exactly you put in filter.lua?
Thanks!

On Monday, December 5, 2022 at 11:56:39 p.m. UTC+1 denis...-NSENcxR/0n0@public.gmane.org wrote:
What exactly are you doing? Your output format is html? I’ve just tested this and it seems to work.

```cmd
C:\Users\denis\Downloads\filter>cat test.md
asf

{{helloworld}}

asf
C:\Users\denis\Downloads\filter>pandoc test.md
<p>asf</p>
<p>{{helloworld}}</p>
<p>asf</p>

C:\Users\denis\Downloads\filter>pandoc test.md -L filter.lua
<p>asf</p>
<div>abc</div>
<p>asf</p>
```
Von: pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org <pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> Im Auftrag von paulschi...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Gesendet: Montag, 5. Dezember 2022 18:58
An: pandoc-discuss <pandoc-...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
Betreff: Re: How do I replace a string in all text that pandoc converts, i.e. how do I do this with a filter?

I've tried this:

return {
{
Para = function (elem)
if elem.content[1].text == "{{helloworld}}" then
return pandoc.RawBlock('html','<div>abc</div>')
else
return elem
end
end,
}
}

but that only gets rid of {{helloworld}}, it doesn't replace it with anything. Sadly this doens't work for "==", i.e. those don't disappear.
On Monday, December 5, 2022 at 6:49:08 p.m. UTC+1 - wrote:
I've been trying to replace markdown/Obsidian highlights "==" either with something that LaTeX can use e.g. \hl or just delete it/replace it with nothing, but I can't figure out how to do this.

I've tried this:
function Str (str)
str.text = string.upper(str.text)
return str
end

But I can't even figure out where I'm meant to put my own text?

How do I rpelace == with " "?

Thanks!
--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/3ae58adb-8789-4398-8ab0-fe1e6928e292n%40googlegroups.com<https://groups.google.com/d/msgid/pandoc-discuss/3ae58adb-8789-4398-8ab0-fe1e6928e292n%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/e9cb34ca-b760-4ef6-9432-91d37f5e45c5n%40googlegroups.com<https://groups.google.com/d/msgid/pandoc-discuss/e9cb34ca-b760-4ef6-9432-91d37f5e45c5n%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org<mailto:pandoc-discus...@googlegroups.com>.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/7cabb17e-9a2b-4251-bd95-c5415140c9adn%40googlegroups.com<https://groups.google.com/d/msgid/pandoc-discuss/7cabb17e-9a2b-4251-bd95-c5415140c9adn%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.

--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/282dc553-743a-4623-9f68-897468f97a7bn%40googlegroups.com.