Users running out of SVN will have noticed that the emacspeak codebase has seen a significant number of updates over the last couple of weeks. During this time, I've refactored the Web interaction code in Emacspeak to meet the following goals:
- All Emacspeak Web smarts have now been re-factored to be independent of any given Web browser. In practice, this avoids code duplication between W3 and W3M support.
- The interface to XSLT has been significantly improved.
- When using W3, Emacspeak automatically builds a cache of CSS
classnames
andids
occuring on the page. These are then used to provide interactive completion when invoking commandsemacspeak-extract-by-id
(bound toe i
in Web pages) andemacspeak-we-extract-by-class
(bound toe c
in Web pages). - Module
emacspeak-we
holds all code related to editing Web pages before they are displayed. - Module
emacspeak-webutils
holds all Web utility code. - Atom and RSS feeds are now pulled using Emacs-22 built-in
library
url
rather than via libxslt. This has the advantage that the feeds are pulled with any cookies the browser may have set during the session. - All
url templates
,search wizards
and related Web utilities should now be capable of working similarly under W3 and W3M. - Module
emacspeak-moz
provides a basic level of integration with Firefox --- see my related blog post on FireBox. - Module
emacspeak-w3m
still needs work to take advantage of all of these changes; I myself do not use W3M much, so those updates will happen as and when W3M users contribute the necessary time and patches.