Use case or problem
According to the documentation
Block identifiers can only consist of letters, numbers, and dashes.
In reality only English letters are being accepted.
It may be inconvenient especially if you writing content in the other language, you might want to add a block link at the same language
There was a similar bug closed a year ago because @WhiteNoise decided
Not a bug. We don’t support it. Only ASCII letters and numbers.
While it might be the case, it is not reflected in the documentation.
Proposed solution
I reverse engineered the source code and found that we just need to modify code in 5 places
- replace
/^\^([a-zA-Z0-9\-]+)$/
with/^\^([\p{L}0-9\-]+)$/u
app.js
- 2 occurrencesworker.js
- 1 occurrence
- replace
/^\^([a-zA-Z0-9\-]+)(?=$|\n$|\n\n)/
with/^\^([\p{L}0-9\-]+)(?=$|\n$|\n\n)/u
app.js
- 1 occurrenceworker.js
- 1 occurrence
Current workaround (optional)
I don’t think it is possible to workaround those things as the modifications required in the unexposed internal Obsidian API.