OK, so here’s where me using Roam as an example starts to break down if taken too literally.
I actually stopped using Roam quite some time ago, partly because its in-line search is completely awful. Obsidian is a better example and it’s what I use full-time now, but it requires a download to try and Roam (or Logseq) do not.
Before I go any further, thank you @sam for engaging so much with this idea, which I realize may be a bit out of left field. And especially for giving me a ballpark of the work you think it might take, at least in the way that you’ve outlined it working.
That said, I want to stress that my suggestion is inspired by Roam and similar apps that use this syntax, but I am not interested in trying to fully replicate everything about how it works.
- It doesn’t need to auto-complete the bracket because the bracket will not be kept in the resulting markdown (in Roam it does keep it, same in Obsidian)
- Discourse search, as exemplified by Ctrl-K link search, or Ctrl-Alt-F, is better than Roam and, if instantiated in-line, would probably allow me to find a topic of interest in a reasonably short amount of time (i.e. if you think search is useful at all, then it would meet the need described here as-is)
- Link would use full title, just as if you copied/pasted a link to a Discourse topic in to that same forum in a message
- Renaming would be handled however Discourse already handles that for internal links
So, to sum up, Roam is just an example to demonstrate the concept and part of the user experience. What I am really suggesting is:
- Some set of uncommon but quickly typed characters that can trigger an in-line topic search
- In-line topic search with Enter to select first result automatically
- Regular Discourse link handling in all other respects
- Implementation in whatever way would be most in keeping with the Discourse approach to things
The rest of what I’ve said is just musings on what might make the most sense or possible approaches to the problem.
So with all that in mind, does that change the estimate of work required? If not, what exactly about the feature request is making it so much more complicated than e.g. Ctrl-Alt-F + A? I ask because that might help me understand if I can narrow the scope of the request to make costs reasonable, or if it’s just not worth the time needed.
Thanks again!