Emacs27的js-mode可以告别js2和rjsx了

只开个js2/rjsx不卡吧,js2都维护了这么多年了。。开了lsp是卡,我在ts文件里用lsp-mode明显不顺滑。tide没试过。和上面一位朋友说的一样,卡一点又不是不能用,忍就完了,过两年生态一更新,就有不卡的用法了。

你们说卡的该不会是在js文件里开了lsp吧?非ts文件开个lsp能干啥……tabnine+xref-js2(约等于tags但是它用rg实时搜索,不用操心维护tags文件)不香吗。装完了xref-js2再把两个find-definition一混合:

(defun jester/js2-jump-or-xref-definition ()
    "`js2-jump-to-definition' if we can, `xref-find-definitions' if can't or already at import statement."
    (interactive)
    (if (save-excursion
          (beginning-of-line)
          (search-forward "import " nil t))
        (xref-find-definitions (xref-backend-identifier-at-point (xref-find-backend)))
      (condition-case err
          (js2-jump-to-definition)
        (xref-find-definitions (xref-backend-identifier-at-point (xref-find-backend))))))

楼主没说这个花花绿绿的上色是同一个symbol同样颜色,我看到图的第一反应是“是不是傻”……不过了解之后感觉还是普通的syntax highlight + 手动symbol-overlay更好?