That is why it returns me both. I use findMarksAt() (along with coordsChar()) to return me which marker is under the mouse cursor. This return me both markers while only one should be returned in my case (A or B, never both)
In your case, maybe, but there’s also cases where other behavior is appropriate. You can use the marks’ find method to determine their precise extent, and filter on that.
doc.findMarks(from: {line, ch}, to: {line, ch}) → array
Returns an array of all the bookmarks and marked ranges found between the given positions (non-inclusive).
AFAIK (maybe I miss something), that one is also inclusive, despite what the documentation says :