如何让neotree 调用windows的默认程序打开文件?

在windows上使用emacs,neotree 里有一个配置,看样子应该可以设置成调用系统的默认打开软件

(defcustom neo-default-system-application "xdg-open"
  "*Name of the application that is used to open a file under point.
By default it is xdg-open."
  :type 'string
  :group 'neotree)

想问一下有哪位在windows下用emacs的仁兄修改过吗?可否讲一下具体的思路?

consult有个函数可以调用,好像是consult-x-execute-file,可以绑定到embark的x键

多谢,搞定了,其实很简单,自己定义一个函数

(defun neo-open-ex-app ()
    (interactive)
    (xah-open-in-external-app (neo-buffer--get-filename-current-line))
    )

xah-open-in-external-app 是李杀大佬的外部调用程序,然后加个hook的调用就可以了

(add-hook 'neotree-mode-hook
	  (lambda ()
	    (define-key evil-normal-state-local-map (kbd "TAB") 'neotree-enter)
	    (define-key evil-normal-state-local-map (kbd "SPC") 'neotree-enter)
	    (define-key evil-normal-state-local-map (kbd "q") 'neotree-hide)
	    (define-key evil-normal-state-local-map (kbd "C") 'neotree-copy-node)
	    (define-key evil-normal-state-local-map (kbd "D") 'neotree-delete-node)
	    (define-key evil-normal-state-local-map (kbd "R") 'neotree-rename-node)
	    (define-key evil-normal-state-local-map (kbd "N") 'neotree-create-node)
	    (define-key evil-normal-state-local-map (kbd "RET") 'neotree-enter)
	    (define-key evil-normal-state-local-map (kbd "G") 'neotree-refresh)
	    (define-key evil-normal-state-local-map (kbd "o") 'neo-open-ex-app)
	    ))

在 neotree-mode 下按下 “o” 调用外部程序打开相应文件