Linking to Custom Scheme

Hello All,

We are setting up our new discourse internal environment and I was able to setup a custom URL scheme to link to an internal resource on the network, I wanted to add an easy button when making a new post which I was able to do but I want to be able to use the highlighted text for the link title as well as for the actual link itself. Right now I am just using an apply surround to insert what we need into a link but we have to manually change the link title, see the code below.

<script type="text/discourse-plugin" version="1.0">
api.onToolbarCreate(toolbar => {
    toolbar.addButton({
        id: "dms_button",
        group: "fontStyles",
        icon: "fab-wikipedia-w",
        perform: e => e.applySurround("[id_here](INET://", ')')
    });
});
</script>

user enters 123456 > that applies this around the highlighted text [id_here](INET://123456)

I did look through the code but I could not find anything that would help me accomplish what we are looking to do. Is there anyway to use the highlighted text in the link title as well?

So you want the text you select to appear twice?

I don’t think that function will allow you to do that?

Have you thought about overriding the onebox logic to work with your protocol?

The protocol works fine, I can use inet:// as needed but I was just looking for an easy way for user to insert the custom URL into a post. In the previous form (phpbb) we made a custom bbcode for the link that worked however I was looking for an easier solution with discourse.

so Discourse already supports oneboxing of inet:// links?

It does not out of the box. So what you’re referring to is to create a onebox plugin for inet:// which will format the link the way I need?

So when user enter inet://12345
onebox preview will actually contain the proper formatted link?

My suggestion was that rather than doing something so low level in the composer, “simply” modify the oneboxing subsystem so it formats inet:// links just like https:// links.

Specifically I’m referring to the way it formats inline like so: Dark/Light Mode Toggle - #20 by jordan-vidrine

All I had to do was paste the link, Discourse looked at the target and created a nice linked title for me from the og tags.

This of course assumes your organisation has control over the og tags on the target linked pages.