In merlin mode for emacs, there is a function to jump to enclosing fun, let, module or match, which is very convenient. I would love to have it in vscode too.
In addition, it could be nice to display somewhere those information (in which enclosing fun, let, module, match, the cursor currently is), maybe in the status bar.
Not present in the old protocol doc, but the command is available. I think it is something like ["jump", "fun let module match", "at", POSITION]
(defun merlin/jump (&optional target)
"Jump to the TARGET"
(let ((result (merlin/send-command
(list 'jump (if (equal target "") "fun let module match" target)
'at (merlin/unmake-point (point))))))
(unless result
(error "Not found. (Check *Messages* for potential errors)"))
(unless (listp result)
(error result))
result))
C-c C-j runs the command merlin-jump, which is an interactive Lisp
function in `merlin.el'.
It is bound to C-c C-j.
(merlin-jump &optional TARGET)
Jump to enclosing fun, let, module or match.
Any combination of the above may be entered, separated by spaces, ex.:
fun let or module or module fun match
Empty string defaults to jumping to all these.