[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Open Hypspec with w3m
From: |
Tim X |
Subject: |
Re: Open Hypspec with w3m |
Date: |
Sat, 29 Jan 2011 10:00:59 +1100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Jason Earl <jearl@notengoamigos.org> writes:
> I have been spending a bit of my free time learning Common Lisp (and
> enjoying it). Part of learning Common Lisp is getting to know the
> HyperSpec. The fact that Emacs includes a function 'hyperspec-lookup
> that makes this a matter of a few keystrokes is very helpful. However,
> by default this opens up the page in Firefox, and I would pretty much
> always like to open the HyperSpec in w3m. I would change the default
> browse-url-browser-function, but I generally want to open URLs with
> Firefox.
>
> For Common Lisp buffers I make 'browse-url-browser-function a local
> variable and set it to 'w3m-browse-url.
>
> (add-hook 'lisp-mode-hook 'jadoea-lispstuff)
>
> ;; my python configuration
> (defun jadoea-lispstuff ()
> "Custom Lisp Configurator.
>
> Turn on flyspell-prog-mode. Clean up whitespace on save (leave
> tabs). Make browse-url-browser-function buffer-local and set it
> to browse-url-w3m."
> (flyspell-prog-mode)
> (add-hook 'before-save-hook
> (lambda ()
> (jadoea-clean-whitespace t nil)) nil t)
> (make-local-variable 'browse-url-browser-function)
> (setq browse-url-browser-function 'w3m-browse-url))
>
> This works great as long as I am in a Common Lisp buffer, but I find
> myself constant wanting to look up stuff from the HyperSpec while in a
> Slime REPL, or some other type of buffer.
>
> So is there a way to override 'hyperspec-lookup so that it always
> behaves as if browse-url-browser-function was 'w3m-browse-url?
>
> I build Emacs from source, and I maintain my own branch so that I can
> easily deploy Emacs on various machines. So I considered simply hacking
> common-lisp-hyperspec to do what I wanted. However, that hardly seems
> like the cleanest way to do this sort of thing.
>
> Any suggestions?
>
You could try using defadvice and advise hyperspec-lookup. In the advice,
locally bind browse-url-browser-function to use w3m. I guess you would
need either 'before or 'around form of defadvice.
Tim
--
tcross (at) rapttech dot com dot au
Re: Open Hypspec with w3m, Stefan Monnier, 2011/01/28