2012-04-06 7 views
11

Siehe auch: Emacs behind HTTP proxyIst es möglich, emacs unter Windows mitzuteilen, dass die http-Proxy-Einstellungen von IE verwendet werden sollen?

Ist es möglich, Emacs automatisch verwenden, was die Proxy-Einstellungen sind im Einsatz von IE zu sagen?

Das url.el Paket sagt, ich explizit einen Proxy wie folgt angeben:

(setq url-using-proxy t) 
(setq url-proxy-services '(("http" . "proxyserver:3128"))) 

Ist es möglich, dass diese Art von Auto-magisch passieren, wenn ich die Proxy-IE-Einstellungen ändern?

Antwort

16

Ja, das ist möglich.

Die Grundidee besteht darin, einen Vorher-Vorschlag für die URL-Funktionen zu definieren und diese Variablen auf geeignete Werte zu setzen. Dazu müssen Sie die IE-Proxyeinstellungen von Windows aus in elisp abrufen können.

Die w32-registry package tut dies.

daher auf Windows können Sie dies tun:

(eval-after-load "url" 
    '(progn 
    (require 'w32-registry) 
    (defadvice url-retrieve (before 
           w32-set-proxy-dynamically 
           activate) 
     "Before retrieving a URL, query the IE Proxy settings, and use them." 
     (let ((proxy (w32reg-get-ie-proxy-config))) 
     (setq url-using-proxy proxy 
       url-proxy-services proxy))))) 
0

Wenn Sie über Browse-url URL Handling Sie es auch auf Windows-spezifische Funktion wie folgt einstellen. Dann werden die URLs von Windows bearbeitet (Aufruf Ihres Standardbrowsers).

browse-url-browser-function ist eine in `browse-url.el 'definierte Variable.

Sein Wert wird mit Webbrowsern url-default-windows-Browser