Browser 如何设置Emacs以两种方式跟踪链接取决于CTRL键

Browser 如何设置Emacs以两种方式跟踪链接取决于CTRL键,browser,emacs,Browser,Emacs,有没有一种方法可以更改emacs中的follow链接,使其在w3m中单击时打开,在Chrome中使用CTRL键单击时打开。以下是您的操作方法: (defun browse-url-with-w3m (event) (interactive "e") (let ((browse-url-browser-function 'w3m-browse-url)) (browse-url-at-mouse event))) (defun browse-url-with-default-br

有没有一种方法可以更改emacs中的follow链接,使其在w3m中单击时打开,在Chrome中使用CTRL键单击时打开。

以下是您的操作方法:

(defun browse-url-with-w3m (event)
  (interactive "e")
  (let ((browse-url-browser-function 'w3m-browse-url))
    (browse-url-at-mouse event)))

(defun browse-url-with-default-browser (event)
  (interactive "e")
  (let ((browse-url-browser-function 'browse-url-default-browser))
    (browse-url-at-mouse event)))

(global-set-key (kbd "<mouse-1>") 'browse-url-with-w3m)
(global-set-key (kbd "<C-down-mouse-1>") 'browse-url-with-default-browser)
(defun browse-url-with-w3m(事件)
(交互式“e”)
(let((浏览url浏览器函数“w3m浏览url))
(在鼠标事件时浏览url)))
(使用默认浏览器定义浏览url(事件)
(交互式“e”)
(let((浏览url浏览器功能“浏览url默认浏览器”)
(在鼠标事件时浏览url)))
(全局设置键(kbd“”)'browse-url-with-w3m)
(全局设置键(kbd“”)使用默认浏览器浏览url)
请注意,我假设Chrome是您的默认浏览器,您是 使用emacs-w3m。当然,您可以自定义变量
浏览url浏览器功能

对Daimrod的解决方案稍作修改后,我在三种不同的浏览器上都能很好地使用:

(defun browse-url-with-default-browser (event)
  (interactive "e")
  (let ((browse-url-browser-function 'browse-url-default-browser))
       (mouse-set-point event)    
       (org-open-at-point)))

(defun browse-url-with-generic (event)
  (interactive "e")
  (let ((browse-url-browser-function 'browse-url-generic))
       (mouse-set-point event)    
   (org-open-at-point)))

(defun browse-url-with-w3m (event)
  (interactive "e")
  (let ((browse-url-browser-function 'w3m-browse-url))
   (mouse-set-point event)    
   (org-open-at-point)))

(global-set-key (kbd "<mouse-1>") 'browse-url-with-default-browser)
(global-set-key (kbd "<C-mouse-1>") 'browse-url-with-generic)
(global-set-key (kbd "C-x <mouse-1>") 'browse-url-with-w3m)

(custom-set-variables
  '(browse-url-browser-function (quote browse-url-default-browser))
  '(browse-url-generic-program "chromium-browser"))
(使用默认浏览器定义浏览url(事件)
(交互式“e”)
(let((浏览url浏览器功能“浏览url默认浏览器”)
(鼠标设定点事件)
(组织开放点)))
(使用泛型(事件)定义浏览url)
(交互式“e”)
(let((浏览url浏览器功能“浏览url通用”)
(鼠标设定点事件)
(组织开放点)))
(defun browse-url-with-w3m(事件)
(交互式“e”)
(let((浏览url浏览器函数“w3m浏览url))
(鼠标设定点事件)
(组织开放点)))
(全局设置键(kbd“”)使用默认浏览器浏览url)
(全局设置键(kbd“”)“使用通用键浏览url)
(全局设置键(kbd“C-x”)'browse-url-with-w3m)
(自定义设置变量)
'(浏览url浏览器功能(引用浏览url默认浏览器))
'(浏览url通用程序“chromium browser”))
虽然Firefox不是我的默认系统浏览器,但Emacs以某种方式将其视为默认浏览器。因此,Firefox是用mouse-1启动的,Chromium是用C-mouse-1启动的,w3m是用C-x-mouse-1启动的