;ELC ;;; Compiled by steve@sunblade.sunfreeware.com on Tue Jan 29 04:42:25 2008 ;;; from file /export/home/steve/work/usr/src/cmd/emacspeak/emacspeak-21.0/lisp/emacspeak-w3.el ;;; in Emacs version 21.3.1 ;;; with bytecomp version 2.85.4.1 ;;; with all optimizations. ;;; Function definitions are lazy-loaded. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`emacspeak-w3.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\302\303\304\305\306\307\306\310\311\312& \210\313\314\315\316\304$\210\317\314\320\"\207" [require emacspeak-preamble custom-declare-group emacspeak-w3 nil "WWW browser for the Emacspeak Desktop." :group emacspeak w3 :prefix "emacspeak-w3-" ad-add-advice url-write-global-history (emacspeak nil t (advice lambda nil "Silence messages while this function executes" (let ((emacspeak-speak-messages nil)) ad-do-it))) around ad-activate t] 10) #@36 LWP Request command from perl LWP. (custom-declare-variable 'emacspeak-w3-lwp-request '"lwp-request" '(#$ . 1175) :type 'string :group 'emacspeak-w3) #@37 Show HTTP headers using lwp-request (defalias 'emacspeak-w3-show-http-headers #[nil #@376 ("\305=\2030\306\307!\2060\310\307!\2020\311\312\313\314\211\211\313&\315\316\317\n #!\210\320\f !\210)\321\322!)\207" . [major-mode url emacspeak-w3-lwp-request icon emacspeak-auditory-icon-function w3-mode w3-view-this-url no-show url-view-url read-from-minibuffer "URL: " "http://" nil shell-command format "%s -de %s" task-done emacspeak-speak-other-window 1])(#$ . 1422) nil 7 (#$ . 1331) nil]) #@43 Pronunciation mode to use for W3 buffers. (custom-declare-variable 'emacspeak-w3-punctuation-mode '"some" '(#$ . 1838) :type '(choice (string "some" :tag "some") (string "all" :tag "all")) :group 'emacspeak-w3) #@37 Updated emacspeak hook for W3 mode. (defalias 'emacspeak-w3-speak-mode-hook #[nil #@259 ("\305\306!\307L\210\310 \n!\210)\f?\2050\311 \207" . [emacspeak-w3-punctuation-mode dtk-punctuation-mode icon emacspeak-auditory-icon-function emacspeak-w3-post-process-hook make-local-variable voice-lock-mode t open-object emacspeak-speak-mode-line])(#$ . 2144) nil 2 (#$ . 2055)]) (byte-code "\300\301\302\"\210\300\301\303\"\210\300\301\304\"\210\300\305\306\"\207" [add-hook w3-mode-hook emacspeak-w3-speak-mode-hook emacspeak-pronounce-refresh-pronunciations #[nil "\301\302\303\"\210\304\305\306#\210\304\307\310#\210\304\311\312#\210\304\313\314#\210\304\315\316#\210\304\317\320#\210\304\321\322#\210\304\323\324#\210\304\325\326#\210\304\327\330#\210\304\331\332#\210\304\333\334#\210\304\335\336#\210\304\337\340#\210\304\341\342#\210\304\343\344#\210\304\345\346#\210\304\347\350#\210\304\351\352#\210\304\353\354#\210\304\355\356#\210\304\357\360#\210\304\361\362#\210\304\363\364#\210\304\365\366#\210\304\367\370#\210\304\371\372#\207" [w3-mode-map modify-syntax-entry 10 " " define-key "hh" emacspeak-w3-show-http-headers "e" emacspeak-w3-xsl-map "\357" emacspeak-w3-do-onclick "\352" emacspeak-w3-javascript-follow-link "t" emacspeak-w3-jump-to-title-in-content "P" emacspeak-speak-previous-personality-chunk "N" emacspeak-speak-next-personality-chunk "\362" emacspeak-w3-realaudio-play-url-at-point "R" emacspeak-w3-browse-rss-at-point "\215" emacspeak-w3-browse-link-with-style "/" emacspeak-w3-google-similar-to-this-page "l" emacspeak-w3-google-who-links-to-this-page "C" emacspeak-w3-google-extract-from-cache "g" emacspeak-w3-google-on-this-site ";" emacspeak-w3-speak-this-element "\363" emacspeak-w3-jump-to-submit "y" emacspeak-w3-url-rewrite-and-follow "n" emacspeak-w3-next-doc-element "p" emacspeak-w3-previous-doc-element "L" emacspeak-w3-lynx-url-under-point "" w3-table-focus-on-this-cell "" emacspeak-w3-toggle-table-borders "'" emacspeak-speak-rest-of-buffer "j" imenu "\240" emacspeak-imenu-speak-this-section "\360" emacspeak-imenu-goto-previous-index-position "\356" emacspeak-imenu-goto-next-index-position] 4] w3-load-hook #[nil "\305\306!\203\n\307\310!\210\305\311!\203\312\313!\204\314\311!\210\315\313!\210\307\316!\210\317!\210 \203/\320\321\n\"\210\322\323\324\325\326F\305\327!\205@\307\330!\207" [w3-mode-map emacspeak-pronounce-load-pronunciations-on-startup emacspeak-pronounce-common-xml-namespace-uri-pronunciations url-show-status w3-echo-link locate-library "w3-speak" require w3-speak "w3-speak-table" featurep w3-speak-table load-library provide emacspeak-keymap emacspeak-keymap-remove-emacspeak-edit-commands emacspeak-pronounce-augment-pronunciations w3-mode nil text title name url "w3-imenu" w3-imenu] 4]] 3) #@25 Name of lynx executable (custom-declare-variable 'emacspeak-w3-lynx-program '"lynx" '(#$ . 4863) :type 'file :group 'emacspeak-w3) #@51 Alert user when lynx is done dumping the document (defalias 'emacspeak-w3-lynx-done-alert #[(process state) #@253 ("\302\303!\2050\304\305!!\210eb\210\306 \210\307\310\311!\210\312 \207" . [process view-exit-action y-or-n-p "Lynx is done --switch to the results?" pop-to-buffer process-buffer view-mode kill-buffer skip-syntax-forward " " emacspeak-speak-line])(#$ . 5115) nil 3 (#$ . 5000)]) #@277 Display contents of URL under point using LYNX. The document is displayed in a separate buffer. Note that the hyperlinks in that display are not active-- this facility is present only to help me iron out the remaining problems with the table structure extraction code in W3. (defalias 'emacspeak-w3-lynx-url-under-point #[nil #@406 ("\304=\204\n0\305\306!\210\307\310!\2060\311\310!\312\211\2040\305\313!\210\314\315\316\317\n\" \320\n%\321 \322\"*\207" . [major-mode process url emacspeak-w3-lynx-program w3-mode error "This command should be called only in W3 buffers" w3-view-this-url t url-view-url nil "No URL under point" start-process "lynx" format "*lynx-%s*" "-dump" set-process-sentinel emacspeak-w3-lynx-done-alert])(#$ . 5739) nil 7 (#$ . 5405) nil]) #@54 Reflects whether we allow W3 to draw table borders.  (defvar emacspeak-w3-table-draw-border nil (#$ . 6185)) #@39 Used to draw empty W3 table borders.  (defvar emacspeak-w3-table-silent-border (make-vector 16 32) (#$ . 6300)) #@36 Toggle drawing of W3 table borders (defalias 'emacspeak-w3-toggle-table-borders #[nil #@248 ("?\211\203 0\303 \2020\n\304\305\2030\306\2020\307\"\207" . [emacspeak-w3-table-draw-border w3-table-border-chars emacspeak-w3-table-silent-border w3-setup-terminal-chars message "W3 will %s draw table borders from now on" "" "not"])(#$ . 6511) nil 4 (#$ . 6418) nil]) (defalias 'emacspeak-w3-html-stack #[nil #@54 ("\300`\301\"\207" . [get-text-property html-stack])(#$ . 6840) nil 3]) (put 'emacspeak-w3-html-stack 'byte-optimizer 'byte-compile-inline-expand) (defalias 'emacspeak-w3-html-stack-top-element #[(&optional stack) #@72 ("\204 0\301`\302\"@@\207" . [stack get-text-property html-stack])(#$ . 7060) nil 3]) (put 'emacspeak-w3-html-stack-top-element 'byte-optimizer 'byte-compile-inline-expand) #@129 Move forward to the next document element. Optional interactive prefix argument COUNT specifies by how many eleemnts to move. (defalias 'emacspeak-w3-next-doc-element #[(&optional count) #@280 ("\2040\302`\303pd$b\210\304`\303\"\204\"0\302`\303pd$b\210\202\"0\305\306!\210\307\310 )\207" . [count emacspeak-show-point next-single-property-change html-stack get-text-property message "Moving by more than 1 not yet\nimplemented. " t emacspeak-w3-speak-next-element])(#$ . 7440) nil 5 (#$ . 7244) "P"]) #@130 Move back to the previous document element. Optional interactive prefix argument COUNT specifies by how many eleemnts to move. (defalias 'emacspeak-w3-previous-doc-element #[(&optional count) #@283 ("\2040\302`\303\"\2040\304`\303pe$b\210\304`\303pe$b\210\202\"0\305\306!\210\307\310 )\207" . [count emacspeak-show-point get-text-property html-stack previous-single-property-change message "Moving by more than 1 not yet\nimplemented. " t emacspeak-w3-speak-this-element])(#$ . 7962) nil 5 (#$ . 7761) "P"]) #@37 Speak document element under point. (defalias 'emacspeak-w3-speak-this-element #[nil #@1432 ("\306\211\212\307`\310pe$b\210`\311`\310pd$b\210` \312 \203?0\f\204?0\214 }\210 \203>0\212eb\210\306\313\314\217\210\312\211)\210)\315`\316\"\205S0\205S0\306\317\320\217)\210\321 {!)\210*\322!,\207" . [end start inhibit-point-motion-hooks voice-lock-mode emacspeak-speak-voice-annotated-paragraphs emacspeak-speak-paragraph-personality nil previous-single-property-change html-stack next-single-property-change t (byte-code "\306\307\310 \306\f\310\311\300!\2050\310\312 \313\216\314 \306\310#\203D0\315\316!\210`\317\n\320\"\204 0\315\321!\210\322\n`\320$\210\202 0. \306\207" [inhibit-point-motion-hooks blank-line start buffer-read-only inhibit-read-only modification-flag nil "\n[ \n ]*\n" t boundp buffer-modified-p ((byte-code "\n\f\306!\207" [save-read-only buffer-read-only save-inhibit-read-only inhibit-read-only save-inhibit-point-motion-hooks inhibit-point-motion-hooks set-buffer-modified-p modification-flag] 2)) re-search-forward skip-syntax-forward " " get-text-property personality "^ " put-text-property save-inhibit-point-motion-hooks save-inhibit-read-only save-read-only emacspeak-speak-paragraph-personality] 7) ((error)) get-text-property emacspeak-action (funcall action-spec) ((error (byte-code "\300\301`\"\207" [message "Invalid actionat %s"] 3))) dtk-speak select-object action-spec emacspeak-action-mode icon emacspeak-auditory-icon-function])(#$ . 8378) nil 5 (#$ . 8285) nil]) #@30 Speak next document element. (defalias 'emacspeak-w3-speak-next-element #[nil #@1378 ("`\306\212\307`\310pd$b\210` \311 \20350\f\20450\214 }\210 \20340\212eb\210\306\312\313\217\210\311\211)\210)\314`\315\"\205I0\205I0\306\316\317\217)\210\320 {!)\210*\321!,\207" . [end start inhibit-point-motion-hooks voice-lock-mode emacspeak-speak-voice-annotated-paragraphs emacspeak-speak-paragraph-personality nil next-single-property-change html-stack t (byte-code "\306\307\310 \306\f\310\311\300!\2050\310\312 \313\216\314 \306\310#\203D0\315\316!\210`\317\n\320\"\204 0\315\321!\210\322\n`\320$\210\202 0. \306\207" [inhibit-point-motion-hooks blank-line start buffer-read-only inhibit-read-only modification-flag nil "\n[ \n ]*\n" t boundp buffer-modified-p ((byte-code "\n\f\306!\207" [save-read-only buffer-read-only save-inhibit-read-only inhibit-read-only save-inhibit-point-motion-hooks inhibit-point-motion-hooks set-buffer-modified-p modification-flag] 2)) re-search-forward skip-syntax-forward " " get-text-property personality "^ " put-text-property save-inhibit-point-motion-hooks save-inhibit-read-only save-read-only emacspeak-speak-paragraph-personality] 7) ((error)) get-text-property emacspeak-action (funcall action-spec) ((error (byte-code "\300\301`\"\207" [message "Invalid actionat %s"] 3))) dtk-speak select-object action-spec emacspeak-action-mode icon emacspeak-auditory-icon-function])(#$ . 9936) nil 5 (#$ . 9850) nil]) #@24 temporary scratch area (defvar emacspeak-w3-javascript-cleanup-buffer " *javascript-cleanup*" (#$ . 11354)) #@21 Do onclick action. (defalias 'emacspeak-w3-do-onclick #[nil #@373 ("\305=\203\f0\306`!\2040\307\310!\210\311\306`!\312\"\313\211\211\211\204%0\307\314!\210\315\f!\210\316\317\f\"\211\205H0\f\n\313O\316\320 \"\211\203E0 \321 O\322 !,\207" . [major-mode end start url onclick w3-mode widget-at error "Not on a W3 link" widget-get :onclick nil "This link has no onclick attribute" message string-match "http" "'" 0 w3-fetch])(#$ . 11536) nil 5 (#$ . 11468) nil]) #@44 Follow URL hidden inside a javascript link (defalias 'emacspeak-w3-javascript-follow-link #[nil #@293 ("\305=\204\n0\306\307!\210\310\311!\312\211\211\313\314\f\"\f\nT\312O\313\314 \" \315 O\313\316 \"\20340\317 !\210\320 !,\207" . [major-mode end start url j-url w3-mode error "Not in a W3 buffer." w3-view-this-url no-show nil string-match "'" 0 "http" w3-fetch w3-relative-link])(#$ . 12054) nil 4 (#$ . 11951) nil]) #@68 Display any class attributes set on corresponding anchor element.  (defalias 'emacspeak-w3-show-anchor-class #[nil #@152 ("\301=\2050\302`!\2050\303\304\305\306\302`!\307\"\310#!\207" . [major-mode w3-mode widget-at message mapconcat identity widget-get :class " "])(#$ . 12511) nil 6 (#$ . 12389) nil]) (byte-code "\300\301!\203\n\302\303!\210\302\304!\207" [locate-library "emacspeak-realaudio" require emacspeak-realaudio emacspeak-freeamp] 2) #@61 View the current buffer using emacspeak's freeamp interface (defalias 'emacspeak-w3-freeamp #[nil #@137 ("\301\302\303 \"\304ed#\210\305!\210\306!)\207" . [tmpname format "/tmp/mm-%s" gensym write-region emacspeak-freeamp delete-file])(#$ . 12954) nil 4 (#$ . 12849)]) #@44 URL rewrite rule to use in current buffer. (defvar emacspeak-w3-url-rewrite-rule nil (#$ . 13129)) (make-variable-buffer-local 'emacspeak-w3-url-rewrite-rule) #@539 Apply a url rewrite rule as specified in the current buffer before following link under point. If no rewrite rule is defined, first prompt for one. Rewrite rules are of the form `(from to)' where from and to are strings. Typically, the rewrite rule is automatically set up by Emacspeak tools like websearch where a rewrite rule is known. Rewrite rules are useful in jumping directly to the printer friendly version of an article for example. Optional interactive prefix arg prompts for a rewrite rule even if one is already defined. (defalias 'emacspeak-w3-url-rewrite-and-follow #[(&optional prompt) #@622 ("\306\307!\204\n0\310\311!\210\312=\2040\310\313!\210\314\315!\316\211\204\"0\310\317!\210 \204*0\f\204/0\320\321\322\"\307\f@\n\f\211A@)#\323!\210)\324 \206K0\n!\210t\205]0\325 \210\326!)*\207" . [major-mode redirect url prompt emacspeak-w3-url-rewrite-rule x fboundp string-replace-match error "Install and load the elib package to use this feature." w3-mode "This command is only useful in W3 buffers." w3-view-this-url t nil "Not on a link." read-minibuffer "Specify rewrite rule: " "(" select-object browse-url emacspeak-speak-mode-line open-object icon emacspeak-auditory-icon-function])(#$ . 13908) nil 5 (#$ . 13295) "P"]) #@57 Jumps to the occurrence of document title in page body. (defalias 'emacspeak-w3-jump-to-title-in-content #[nil #@227 ("\300\301\302\217\207" . [nil (byte-code "\302\303 !\210\304 \210\305 !)\207" [icon emacspeak-auditory-icon-function search-forward buffer-name emacspeak-speak-line large-movement] 2) ((error "Title not found in body."))])(#$ . 14690) nil 3 (#$ . 14572) nil]) #@39 Jump to next available submit button. (defalias 'emacspeak-w3-jump-to-submit #[nil #@366 ("`\304\305u\210\20430 `W\20330\304\306\307\217\210\310\311`!\312\"\313H\314=\2030\315 \210\316 \n!\210)\317\211\203 0\320\321!*\207" . [found start icon emacspeak-auditory-icon-function nil 1 (widget-forward 1) ((error)) widget-get widget-at :w3-form-data 0 submit w3-speak-summarize-form-field large-movement t message "Could not find submit button."])(#$ . 15049) nil 4 (#$ . 14959) nil]) (define-prefix-command 'emacspeak-w3-xsl-map) #@61 T means we apply XSL transformation before displaying HTML. (custom-declare-variable 'emacspeak-w3-xsl-p 'nil '(#$ . 15503) :type 'boolean :group 'emacspeak-w3) #@35 Execute body with XSL turned off. (defalias 'emacspeak-w3-without-xsl '(macro . #[(&rest body) #@261 ("\301\302\303BBB\207" . [body progn (declare (special emacspeak-w3-xsl-p)) (when emacspeak-w3-xsl-p (setq emacspeak-w3-xsl-p nil) (add-hook 'emacspeak-w3-post-process-hook #'(lambda nil (declare (special emacspeak-w3-xsl-p)) (setq emacspeak-w3-xsl-p t))))])(#$ . 15772) nil 4 (#$ . 15670)])) #@34 Execute body with XSL turned on. (defalias 'emacspeak-w3-with-xsl '(macro . #[(&rest body) #@263 ("\301\302\303BBB\207" . [body progn (declare (special emacspeak-w3-xsl-p)) (unless emacspeak-w3-xsl-p (setq emacspeak-w3-xsl-p t) (add-hook 'emacspeak-w3-post-process-hook #'(lambda nil (declare (special emacspeak-w3-xsl-p)) (setq emacspeak-w3-xsl-p nil))))])(#$ . 16170) nil 4 (#$ . 16072)])) #@87 Specifies transform to use before displaying a page. Nil means no transform is used.  (custom-declare-variable 'emacspeak-w3-xsl-transform 'nil '(#$ . 16472) :type '(choice (file :tag "XSL") (const :tag "none" nil)) :group 'emacspeak-w3) #@48 Clean up bogus Unicode chars for magic quotes. (custom-declare-variable 'emacspeak-w3-cleanup-bogus-quotes 't '(#$ . 16716) :type 'boolean :group 'emacspeak-w3) (byte-code "\300\301\302\303\304$\210\305\301\306\"\210\307\310!\207" [ad-add-advice w3-parse-buffer (emacspeak nil t (advice lambda nil "Apply requested XSL transform if any before displaying the\nHTML." (when emacspeak-w3-cleanup-bogus-quotes (goto-char (point-min)) (while (search-forward "“" nil t) (replace-match "\"")) (goto-char (point-min)) (while (search-forward "”" nil t) (replace-match "\"")) (goto-char (point-min)) (while (search-forward "´" nil t) (replace-match "'"))) (when (and emacspeak-w3-xsl-p emacspeak-w3-xsl-transform) (emacspeak-xslt-region emacspeak-w3-xsl-transform (point-min) (point-max))))) before nil ad-activate t proclaim (special emacspeak-xslt-directory)] 5) #@49 Apply specified transformation to current page. (defalias 'emacspeak-w3-xslt-apply #[(xsl) #@166 ("\303=\204\n0\304\305!\210\306\307!\310\n \")\207" . [major-mode url xsl w3-mode error "Not in a W3 buffer." url-view-url t emacspeak-w3-browse-url-with-style])(#$ . 17690) nil 3 (#$ . 17592) (list (expand-file-name (read-file-name "XSL Transformation: " emacspeak-xslt-directory)))]) #@76 Select XSL transformation applied to WWW pages before they are displayed . (defalias 'emacspeak-w3-xslt-select #[(xsl) #@236 ("\304\305\306\307!!\"\210\310 \n!)\207" . [xsl emacspeak-w3-xsl-transform icon emacspeak-auditory-icon-function message "Will apply %s before displaying HTML pages." file-name-sans-extension file-name-nondirectory select-object])(#$ . 18111) nil 5 (#$ . 17985) (list (expand-file-name (read-file-name "XSL Transformation: " emacspeak-xslt-directory)))]) #@121 Toggle application of XSL transformations. This uses XSLT Processor xsltproc available as part of the libxslt package. (defalias 'emacspeak-w3-xsl-toggle #[nil #@175 ("?\211\203 0\303\202\f0\304\n !\210)\305\306\2030\303\2020\304\"\207" . [emacspeak-w3-xsl-p icon emacspeak-auditory-icon-function on off message "Turned %s XSL"])(#$ . 18645) nil 4 (#$ . 18477) nil]) #@37 Count matches for locator in HTML. (defalias 'emacspeak-w3-count-matches #[(prompt-url locator) #@183 ("\303\304\305\306\" \307\310\311\n\"BC#!\207" . [emacspeak-xslt-directory prompt-url locator read emacspeak-xslt-url expand-file-name "count-matches.xsl" "locator" format "'%s'"])(#$ . 18966) nil 8 (#$ . 18862) (list (if (eq major-mode 'w3-mode) (url-view-url 'no-show) (read-from-minibuffer "URL: ")) (read-from-minibuffer "XPath locator: "))]) #@30 Count nested tables in HTML. (defalias 'emacspeak-w3-count-nested-tables #[(prompt-url) #@82 ("\301\302\"\207" . [prompt-url emacspeak-w3-count-matches "'//table//table'"])(#$ . 19414) nil 3 (#$ . 19320) (list (if (eq major-mode 'w3-mode) (url-view-url 'no-show) (read-from-minibuffer "URL: ")))]) #@24 Count tables in HTML. (defalias 'emacspeak-w3-count-tables #[(prompt-url) #@73 ("\301\302\"\207" . [prompt-url emacspeak-w3-count-matches "//table"])(#$ . 19707) nil 3 (#$ . 19626) (list (if (eq major-mode 'w3-mode) (url-view-url 'no-show) (read-from-minibuffer "URL: ")))]) #@189 Set to a non-empty string if you want the buffer containing the transformed HTML source to be preserved. Value of this variable if non-empty will be used as a name for the source buffer. (custom-declare-variable 'emacspeak-w3-xsl-keep-result '"" '(#$ . 19911) :type 'string :group 'emacspeak-w3) (make-variable-buffer-local 'emacspeak-w3-xsl-keep-result) #@46 Set value of `emacspeak-w3-xsl-keep-result'. (defalias 'emacspeak-w3-set-xsl-keep-result #[(value) #@55 ("\211\207" . [value emacspeak-w3-xsl-keep-result])(#$ . 20378) nil 2 (#$ . 20273) "sEnter name of result buffer: "]) #@262 Extract elements matching specified XPath path locator from HTML. Extracts specified elements from current WWW page and displays it in a separate buffer. Optional arg url specifies the page to extract table from. Optional arg COMPLEMENT inverts the filter.  (defalias 'emacspeak-w3-xslt-filter #[(path &optional prompt-url speak-result complement) #@827 ("\2040 \306=\2040\307\310!\210 \306=\2050\311\312!t\203'0\203'0\313\314\315\"\202,0\206,0\n\316\316_\317 \203@0!\202B0\" \320\321\322#\"B\323\321\324#\"B\325\321\322 \206Y0\"BE#\212\fq\210_t\204o0$\203t0\326\327\330\"\210\331 \210G\332V\203\2140\212\fq\210\333\334\")\202\2170\335\f!.\207" . [prompt-url major-mode base-url source-url src-buffer emacspeak-w3-xsl-p w3-mode error "Not in a W3 buffer." url-view-url t read-from-minibuffer "URL: " "http://www." nil emacspeak-xslt-url "path" format "\"'%s'\"" "locator" "'%s'" "base" add-hook emacspeak-w3-post-process-hook emacspeak-speak-buffer emacspeak-w3-preview-this-buffer 0 rename-buffer unique kill-buffer emacspeak-w3-xsl-keep-result keep-result complement emacspeak-w3-xsl-junk emacspeak-w3-xsl-filter path speak-result])(#$ . 20863) nil 9 (#$ . 20505) (list (read-from-minibuffer "XPath: ") current-prefix-arg)]) #@43 Junk elements matching specified locator. (defalias 'emacspeak-w3-xslt-junk #[(path &optional prompt-url) #@87 ("\302 \303\304$\207" . [path prompt-url emacspeak-w3-xslt-filter speak complement])(#$ . 21899) nil 5 (#$ . 21787) (list (read-from-minibuffer "XPath: ") current-prefix-arg)]) #@69 Suffixes to look for in detecting URLs that point to media streams. (custom-declare-variable 'emacspeak-w3-media-stream-suffixes '(list ".ram" ".rm" ".ra" ".pls" ".asf" ".asx" ".mp3" ".m3u" ".wma" ".wmv" ".avi" ".mpg") '(#$ . 22083) :type '(repeat (string :tag "Extension Suffix")) :group 'emacspeak-w3) #@264 Extract links to media streams. operate on current web page when in a W3 buffer; otherwise prompt for url. `prompt-url' is the URL to process. Prompts for URL when called interactively. Optional arg `speak' specifies if the result should be spoken automatically. (defalias 'emacspeak-w3-extract-media-streams #[(&optional prompt-url speak) #@348 ("\203 0;\2030 \306=\2040\307\310!\311\312\313\n\314#\315\316\f \"t\206&0 #*\207" . [prompt-url major-mode emacspeak-w3-media-stream-suffixes predicate filter speak w3-mode read-from-minibuffer "URL:" "//a[%s]" mapconcat #[(suffix) "\301\302\"\207" [suffix format "contains(@href,\"%s\")"] 3] " or " emacspeak-w3-xslt-filter format])(#$ . 22741) nil 5 (#$ . 22394) (list current-prefix-arg)]) #@269 Extract links to printable streams. operate on current web page when in a W3 buffer; otherwise prompt for url. `prompt-url' is the URL to process. Prompts for URL when called interactively. Optional arg `speak' specifies if the result should be spoken automatically. (defalias 'emacspeak-w3-extract-print-streams #[(&optional prompt-url speak) #@205 ("\203 0;\2030 \304=\2040\305\306!\307\310\nt\2060 #)\207" . [prompt-url major-mode filter speak w3-mode read-from-minibuffer "URL:" "//a[contains(@href,\".pdf\")]" emacspeak-w3-xslt-filter])(#$ . 23506) nil 4 (#$ . 23154) (list current-prefix-arg)]) #@65 In W3 mode buffers, extract media streams from url under point. (defalias 'emacspeak-w3-extract-media-streams-under-point #[nil #@198 ("\301=\2030\302\303!\2030\304\302\303!\305\"\207\306\307!\207" . [major-mode w3-mode w3-view-this-url no-show emacspeak-w3-extract-media-streams speak error "Not on a link in a W3 buffer."])(#$ . 23910) nil 3 (#$ . 23775) nil]) #@43 Extracts links whose URL matches pattern. (defalias 'emacspeak-w3-extract-matching-urls #[(pattern &optional prompt-url speak) #@138 ("\304\305\"\306 \nt\206 0 #)\207" . [pattern filter prompt-url speak format "//a[contains(@href,\"%s\")]" emacspeak-w3-xslt-filter])(#$ . 24284) nil 4 (#$ . 24150) (list (read-from-minibuffer "URL Pattern: ") current-prefix-arg)]) #@279 Extract nested table specified by `table-index'. Default is to operate on current web page when in a W3 buffer; otherwise `prompt-url' is the URL to process. Prompts for URL when called interactively. Optional arg `speak' specifies if the result should be spoken automatically. (defalias 'emacspeak-w3-extract-nested-table #[(table-index &optional prompt-url speak) #@117 ("\303\304\305\" \n#\207" . [table-index prompt-url speak emacspeak-w3-xslt-filter format "(//table//table)[%s]"])(#$ . 24899) nil 4 (#$ . 24526) (list (read-from-minibuffer "Table index: ") current-prefix-arg)]) #@119 Collect a list of numbers less than bound by prompting repeatedly in the minibuffer. Empty value finishes the list. (defalias 'emacspeak-w3-get-table-list #[(&optional bound) #@219 ("\304\211\211\20400\305\306\307 \2030\306\310 \"\2020\311\"!\211G\312V\203*0 \nB\2020\313\211\203\n0\n+\207" . [done i result bound nil read-from-minibuffer format "Index%s" " less than %s" ":" 0 t])(#$ . 25304) nil 7 (#$ . 25120)]) (put 'emacspeak-w3-get-table-list 'byte-optimizer 'byte-compile-inline-expand) #@101 Collect a list of matches by prompting repeatedly in the minibuffer. Empty value finishes the list. (defalias 'emacspeak-w3-get-table-match-list #[nil #@150 ("\303\211\211\204\"0\304\305!\211G\306V\2030 \nB\2020\307\211\203\n0\n+\207" . [done i result nil read-from-minibuffer "Match: " 0 t])(#$ . 25799) nil 4 (#$ . 25641)]) (put 'emacspeak-w3-get-table-match-list 'byte-optimizer 'byte-compile-inline-expand) #@51 Extract specified list of tables from a WWW page. (defalias 'emacspeak-w3-extract-nested-table-list #[(tables &optional prompt-url speak) #@191 ("\304\305\306 \307#\310\nt\2060 #)\207" . [filter tables prompt-url speak nil mapconcat #[(i) "\301\302\"\207" [i format "((//table//table)[%s])"] 3] " | " emacspeak-w3-xslt-filter])(#$ . 26217) nil 4 (#$ . 26072) (list (emacspeak-w3-get-table-list) current-prefix-arg)]) #@166 Extract table at specified position. Optional arg url specifies the page to extract content from. Interactive prefix arg causes url to be read from the minibuffer. (defalias 'emacspeak-w3-extract-table-by-position #[(position &optional prompt-url speak) #@124 ("\303\304\305\" t\206 0\n#\207" . [position prompt-url speak emacspeak-w3-xslt-filter format "/descendant::table[%s]"])(#$ . 26765) nil 4 (#$ . 26503) (list (read-from-minibuffer "Table position: ") current-prefix-arg)]) #@146 Extract specified list of nested tables from a WWW page. Tables are specified by their position in the list nested of tables found in the page. (defalias 'emacspeak-w3-extract-tables-by-position-list #[(positions &optional prompt-url speak) #@196 ("\304\305\306 \307#\310\nt\2060 #)\207" . [filter positions prompt-url speak nil mapconcat #[(i) "\301\302\"\207" [i format "(/descendant::table[%s])"] 3] " | " emacspeak-w3-xslt-filter])(#$ . 27245) nil 4 (#$ . 26996) (list (emacspeak-w3-get-table-list) current-prefix-arg)]) #@172 Extract table containing specified match. Optional arg url specifies the page to extract content from. Interactive prefix arg causes url to be read from the minibuffer. (defalias 'emacspeak-w3-extract-table-by-match #[(match &optional prompt-url speak) #@148 ("\303\304\305\" t\206 0\n#\207" . [match prompt-url speak emacspeak-w3-xslt-filter format "(/descendant::table[contains(., \"%s\")])[last()]"])(#$ . 27798) nil 4 (#$ . 27536) (list (read-from-minibuffer "Tables matching: ") current-prefix-arg)]) #@121 Extract specified tables from a WWW page. Tables are specified by containing match pattern found in the match list. (defalias 'emacspeak-w3-extract-tables-by-match-list #[(match-list &optional prompt-url speak) #@223 ("\304\305\306 \307#\310\nt\2060 #)\207" . [filter match-list prompt-url speak nil mapconcat #[(i) "\301\302\"\207" [i format "((/descendant::table[contains(.,\"%s\")])[last()])"] 3] " | " emacspeak-w3-xslt-filter])(#$ . 28276) nil 4 (#$ . 28054) (list (emacspeak-w3-get-table-match-list) current-prefix-arg)]) #@51 Caches class attribute values for current buffer. (defvar emacspeak-w3-buffer-css-class-cache nil (#$ . 28599)) (make-variable-buffer-local 'emacspeak-w3-buffer-css-class-cache) #@45 Build CSS class cache for buffer if needed. (defalias 'emacspeak-w3-css-class-cache #[nil #@451 ("\305=\204\n0\306\307!\210 \20640\310\311\312\313\n\"\314\315!\310\316$\212 q\210\317ed\320p$\210\321\322 !)\323\324\f\"\211*\207" . [major-mode emacspeak-w3-buffer-css-class-cache emacspeak-xslt-directory buffer values w3-mode error "Not in W3 buffer." nil emacspeak-xslt-url expand-file-name "class-values.xsl" url-view-url no-show no-comment shell-command-on-region "sort -u" split-string buffer-string mapcar #[(v) "\211B\207" [v] 2]])(#$ . 28880) nil 6 (#$ . 28783)]) #@272 Extract elements having specified class attribute from HTML. Extracts specified elements from current WWW page and displays it in a separate buffer. Optional arg url specifies the page to extract content from. Interactive use provides list of class values as completion. (defalias 'emacspeak-w3-extract-by-class #[(class &optional prompt-url speak) #@117 ("\303\304\305\" t\206 0\n#\207" . [class prompt-url speak emacspeak-w3-xslt-filter format "//*[@class=\"%s\"]"])(#$ . 29726) nil 4 (#$ . 29370) (list (completing-read "Class: " (emacspeak-w3-css-class-cache)) current-prefix-arg)]) #@101 Collect a list of classes by prompting repeatedly in the minibuffer. Empty value finishes the list. (defalias 'emacspeak-w3-css-get-class-list #[nil #@207 ("\304 \305\211\211\204(0\306\307 \305\310$\211G\311V\203\"0 \nB\202 0\312\211\203 0\n,\207" . [done c result classes emacspeak-w3-css-class-cache nil completing-read "Class: " must-match 0 t])(#$ . 30123) nil 6 (#$ . 29967)]) (put 'emacspeak-w3-css-get-class-list 'byte-optimizer 'byte-compile-inline-expand) #@281 Extract elements having class specified in list `classes' from HTML. Extracts specified elements from current WWW page and displays it in a separate buffer. Optional arg url specifies the page to extract content from. Interactive use provides list of class values as completion.  (defalias 'emacspeak-w3-extract-by-class-list #[(classes &optional prompt-url speak) #@213 ("\304\305\306 \307#\310\311\312\"\nt\2060 #)\207" . [filter classes prompt-url speak nil mapconcat #[(c) "\301\302\"\207" [c format "(@class=\"%s\")"] 3] " or " emacspeak-w3-xslt-filter format "//*[%s]"])(#$ . 30824) nil 4 (#$ . 30452) (list (emacspeak-w3-css-get-class-list) current-prefix-arg)]) #@278 Junk elements having class specified in list `classes' from HTML. Extracts specified elements from current WWW page and displays it in a separate buffer. Optional arg url specifies the page to extract content from. Interactive use provides list of class values as completion.  (defalias 'emacspeak-w3-junk-by-class-list #[(classes &optional prompt-url speak) #@228 ("\304\305\306 \307#\310\311\312\"\nt\2060 \313$)\207" . [filter classes prompt-url speak nil mapconcat #[(c) "\301\302\"\207" [c format "(@class=\"%s\")"] 3] " or " emacspeak-w3-xslt-filter format "//*[%s]" complement])(#$ . 31502) nil 5 (#$ . 31136) (list (emacspeak-w3-css-get-class-list) current-prefix-arg)]) #@72 XSL transform to extract elements matching a specified XPath locator. (defvar emacspeak-w3-xsl-filter (expand-file-name "xpath-filter.xsl" emacspeak-xslt-directory) (#$ . 31828)) #@69 XSL transform to junk elements matching a specified XPath locator. (defvar emacspeak-w3-xsl-junk (expand-file-name "xpath-junk.xsl" emacspeak-xslt-directory) (#$ . 32014)) #@34 XSL transform to extract a node. (defvar emacspeak-w3-extract-node-by-id-xsl (expand-file-name "extract-node-by-id.xsl" emacspeak-xslt-directory) (#$ . 32193)) #@34 Extract specified node from URI. (defalias 'emacspeak-w3-extract-node-by-id #[(url node-id) #@214 ("\304 \305\306\307\n\"B\310\306\307 \"BD#\212 q\210\311 *\207" . [emacspeak-w3-extract-node-by-id-xsl url node-id result emacspeak-xslt-url "node-id" format "\"'%s'\"" "base" emacspeak-w3-preview-this-buffer])(#$ . 32458) nil 8 (#$ . 32359) (list (read-from-minibuffer "URL: ") (read-from-minibuffer "Node Id: "))]) #@697 Browse XML+CSS using W3. With interactive prefix arg, also prompt for an XSL stylesheet. XML files can be rendered by an XML browser that is CSS aware. Emacs/W3 is not quite a complete XML+CSS browser, but it does a good enough job for many things, especially the XML files from bookshare.org. Setting W3 up at present to display any and all XML files at present would be a bug, since W3 is an HTML browser --not a true XML browser. This command opens a specified XML file under the covers and has W3 render it using CSS as available. The result on bookshare.org XML files is quite usable: 0) You get Aural CSS support. 1) You get a navigable buffer using imenu if you have w3-imenu loaded.  (defalias 'emacspeak-w3-browse-xml #[(location &optional prompt-style) #@395 ("\306\307!\310\212 q\210\311\n!\210 \2030\312\313\f\"\314 ed#\210)\315 \210\316 !\210\317!,\207" . [emacspeak-xslt-options buffer location prompt-style emacspeak-xslt-directory xslt get-buffer-create " *xml work * " "" insert-file-contents read-file-name "XSL: " emacspeak-xslt-region emacspeak-w3-preview-this-buffer kill-buffer open-object icon emacspeak-auditory-icon-function])(#$ . 33558) nil 4 (#$ . 32784) (list (read-file-name "XML File: ") current-prefix-arg)]) (byte-code "\301\302!\210\303\304\305#\210\303\306\307#\210\303\310\311#\210\303\312\313#\210\303\314\315#\210\303\316\317#\210\303\320\321#\210\303\322\323#\210\303\324\325#\210\303\326\327#\210\303\330\331#\210\303\332\333#\210\303\334\335#\210\303\336\337#\210\303\340\341#\210\303\342\343#\210\303\344\345#\210\303\346\347#\210\303\350\351#\210\303\352\353#\210\303\354\355#\210\303\356\357#\210\303\360\361#\210\303\362\363#\210\303\364\365#\210\303\366\367#\207" [emacspeak-w3-xsl-map proclaim (special emacspeak-w3-xsl-map) define-key "k" emacspeak-w3-set-xsl-keep-result "a" emacspeak-w3-xslt-apply "f" emacspeak-w3-xslt-filter "j" emacspeak-w3-xslt-junk "p" emacspeak-w3-xpath-filter-and-follow "" emacspeak-w3-xpath-junk-and-follow "P" emacspeak-w3-extract-print-streams "R" emacspeak-w3-extract-media-streams-under-point "r" emacspeak-w3-extract-media-streams "u" emacspeak-w3-extract-matching-urls "s" emacspeak-w3-xslt-select "" emacspeak-w3-count-tables "t" emacspeak-w3-extract-table-by-position "T" emacspeak-w3-extract-tables-by-position-list "m" emacspeak-w3-extract-table-by-match "M" emacspeak-w3-extract-tables-by-match-list "o" emacspeak-w3-xsl-toggle "c" emacspeak-w3-extract-by-class "C" emacspeak-w3-extract-by-class-list "" emacspeak-w3-junk-by-class-list "y" emacspeak-w3-class-filter-and-follow "x" emacspeak-w3-extract-nested-table "" emacspeak-w3-count-matches "" emacspeak-w3-count-nested-tables "X" emacspeak-w3-extract-nested-table-list "i" emacspeak-w3-extract-node-by-id] 4) #@69 Buffer local variable specifying a class filter for following urls. (defvar emacspeak-w3-class-filter nil (#$ . 35588)) (make-variable-buffer-local 'emacspeak-w3-class-filter) #@211 Follow url and point, and filter the result by specified class. Class can be set locally for a buffer, and overridden with an interactive prefix arg. If there is a known rewrite url rule, that is used as well. (defalias 'emacspeak-w3-class-filter-and-follow #[(&optional prompt-class) #@607 ("\306\307!\204\n0\310\311!\210\312=\2040\310\313!\210\314\315!\316\211\204\"0\310\317!\210 \20320\307 @\n \211A@)# \204;0\204@0\320\321!\322 \206H0\n\323#\210\324!+\207" . [major-mode redirect url emacspeak-w3-url-rewrite-rule x prompt-class fboundp string-replace-match error "Install and load the elib package to use this feature." w3-mode "This command is only useful in W3 buffers." w3-view-this-url t nil "Not on a link." read-from-minibuffer "Specify class: " emacspeak-w3-extract-by-class speak open-object emacspeak-w3-class-filter icon emacspeak-auditory-icon-function])(#$ . 36063) nil 5 (#$ . 35771) "P"]) #@69 Buffer local variable specifying a XPath filter for following urls. (defvar emacspeak-w3-xpath-filter nil (#$ . 36712)) (make-variable-buffer-local 'emacspeak-w3-xpath-filter) #@41 Caches most recently used xpath filter. (defvar emacspeak-w3-most-recent-xpath-filter nil (#$ . 36894)) #@211 Follow url and point, and filter the result by specified xpath. XPath can be set locally for a buffer, and overridden with an interactive prefix arg. If there is a known rewrite url rule, that is used as well. (defalias 'emacspeak-w3-xpath-filter-and-follow #[(&optional prompt) #@643 ("\306\307!\204\n0\310\311!\210\312=\2040\310\313!\210\314\315!\316\211\204\"0\310\317!\210 \20320\307 @\n \211A@)# \204;0\204E0\320\321\"\211\322 \206M0\n\323#\210\324!+\207" . [major-mode redirect url emacspeak-w3-url-rewrite-rule x prompt fboundp string-replace-match error "Install and load the elib package to use this feature." w3-mode "This command is only useful in W3 buffers." w3-view-this-url t nil "Not on a link." read-from-minibuffer "Specify XPath: " emacspeak-w3-xslt-filter speak open-object emacspeak-w3-xpath-filter emacspeak-w3-most-recent-xpath-filter icon emacspeak-auditory-icon-function])(#$ . 37291) nil 5 (#$ . 37005) "P"]) #@46 Records XPath pattern used to junk elements. (defvar emacspeak-w3-xpath-junk nil (#$ . 37976)) (make-variable-buffer-local 'emacspeak-w3-xpath-junk) #@42 Caches last XPath used to junk elements. (defvar emacspeak-w3-most-recent-xpath-junk nil (#$ . 38131)) #@228 Follow url and point, and filter the result by junking elements specified xpath. XPath can be set locally for a buffer, and overridden with an interactive prefix arg. If there is a known rewrite url rule, that is used as well. (defalias 'emacspeak-w3-xpath-junk-and-follow #[(&optional prompt) #@654 ("\306\307!\204\n0\310\311!\210\312=\2040\310\313!\210\314\315!\316\211\204\"0\310\317!\210 \20320\307 @\n \211A@)# \204;0\204E0\320\321\"\211\322 \206M0\n\323\324$\210\325!+\207" . [major-mode redirect url emacspeak-w3-url-rewrite-rule x prompt fboundp string-replace-match error "Install and load the elib package to use this feature." w3-mode "This command is only useful in W3 buffers." w3-view-this-url t nil "Not on a link." read-from-minibuffer "Specify XPath: " emacspeak-w3-xslt-filter speak complement open-object emacspeak-w3-xpath-junk emacspeak-w3-most-recent-xpath-junk icon emacspeak-auditory-icon-function])(#$ . 38542) nil 6 (#$ . 38241) "P"]) #@38 Browse URL with specified XSL style. (defalias 'emacspeak-w3-browse-url-with-style #[(style url) #@403 ("\305\306 \307\310\311 \"BC#\312\313\314\"\210\212\nq\210\315 \210)\316\n!+\207" . [style url src-buffer emacspeak-w3-xsl-transform emacspeak-w3-xsl-p t emacspeak-xslt-url "base" format "\"'%s'\"" add-hook emacspeak-w3-post-process-hook #[nil "\302 \210\303 !)\207" [icon emacspeak-auditory-icon-function emacspeak-speak-mode-line open-object] 2] emacspeak-w3-preview-this-buffer kill-buffer])(#$ . 39342) nil 9 (#$ . 39238) (list (expand-file-name (read-file-name "XSL Transformation: " emacspeak-xslt-directory)) (read-string "URL: " (browse-url-url-at-point)))]) #@55 Entities to unescape when treating badly escaped XML. (custom-declare-variable 'emacspeak-w3-charent-alist ''(("<" . "<") (">" . ">") (""" . "\"") ("'" . "'") ("&" . "&")) '(#$ . 39922) :type '(repeat :tag "Char Entity" (cons :tag "Entry" (string :tag "CharEnt") (string :tag "Replacement"))) :group 'emacspeak-w3) #@25 Clean up bad XML usage. (defalias 'emacspeak-w3-unescape-charent #[nil #@207 ("\305 :\203,0 @\211@\nAeb\210\306\f\305\307#\203$0\310 !\210\2020* A\211\2020*\305\207" . [emacspeak-w3-charent-alist #1=#:G10700 entry replacement entity nil search-forward t replace-match])(#$ . 40341) nil 5 (#$ . 40263)]) (put 'emacspeak-w3-unescape-charent 'byte-optimizer 'byte-compile-inline-expand) #@42 Browse XML URL with specified XSL style. (defalias 'emacspeak-w3-browse-xml-url-with-style #[(style url &optional unescape-charent) #@573 ("\306 \307\310\311 \"BC#\312\313\314\"\210\212\nq\210 \203M0\f\315 :\203L0 @\211@Aeb\210\316\315\317#\203D0\320!\210\20230* A\211\202_0*\321 \210)\322\n!)\207" . [style url src-buffer unescape-charent emacspeak-w3-charent-alist #1=#:G10700 emacspeak-xslt-xml-url "base" format "\"'%s'\"" add-hook emacspeak-w3-post-process-hook #[nil "\302 \210\303 !)\207" [icon emacspeak-auditory-icon-function emacspeak-speak-mode-line open-object] 2] nil search-forward t replace-match emacspeak-w3-preview-this-buffer kill-buffer entry replacement entity])(#$ . 40806) nil 7 (#$ . 40667) (list (expand-file-name (read-file-name "XSL Transformation: " emacspeak-xslt-directory)) (read-string "URL: " (browse-url-url-at-point)))]) #@76 Perform a google search to locate documents that link to the current page. (defalias 'emacspeak-w3-google-who-links-to-this-page #[nil #@206 ("\301=\204\n0\302\303!\210\304\305\306\307\310!\"!\207" . [major-mode w3-mode error "This command cannot be used outside W3 buffers." emacspeak-websearch-google format "+link:%s" url-view-url no-show])(#$ . 41698) nil 5 (#$ . 41556) nil]) #@46 Extract current page from the Google cache. (defalias 'emacspeak-w3-google-extract-from-cache #[nil #@207 ("\301=\204\n0\302\303!\210\304\305\306\307\310!\"!\207" . [major-mode w3-mode error "This command cannot be used outside W3 buffers." emacspeak-websearch-google format "+cache:%s" url-view-url no-show])(#$ . 42054) nil 5 (#$ . 41946) nil]) #@61 Perform a google search restricted to the current WWW site. (defalias 'emacspeak-w3-google-on-this-site #[nil #@297 ("\301=\204\n0\302\303!\210\304\305\306\307\310\311!!\312H\313\314!#!\207" . [major-mode w3-mode error "This command cannot be used outside W3 buffers." emacspeak-websearch-google format "+site:%s %s" url-generic-parse-url url-view-url no-show 3 read-from-minibuffer "Search this site for: "])(#$ . 42420) nil 6 (#$ . 42303) nil]) (byte-code "\301B\302\301!\204\f\303\301\207" [current-load-list emacspeak-w3-google-related-uri boundp "http://www.google.com/search?hl=en&num=10&q=related:"] 2) #@51 Ask Google to find documents similar to this one. (defalias 'emacspeak-w3-google-similar-to-this-page #[nil #@357 ("\305=\204\n0\306\307!\210\310\311!\312\313\314\n #!\210\315\316!\210\317 \210\320\f !*\207" . [major-mode url emacspeak-w3-google-related-uri icon emacspeak-auditory-icon-function w3-mode error "This command cannot be used outside W3 buffers." url-view-url no-show browse-url format "%s%s" search-forward "Similar" emacspeak-speak-line open-object])(#$ . 43041) nil 5 (#$ . 42926) nil]) (byte-code "\300\301\302\303\304$\210\305\301\306\"\207" [ad-add-advice w3-table-focus-on-this-cell (emacspeak nil t (advice lambda nil "Clone any url rewrite rules." (let ((rule emacspeak-w3-url-rewrite-rule)) ad-do-it (when rule (setq emacspeak-w3-url-rewrite-rule rule))))) around nil ad-activate t] 5) #@22 Preview this buffer. (defalias 'emacspeak-w3-preview-this-buffer #[nil #@320 ("\302\303\304\305!\"\306ed#\210t\2030\307!\210\202'0 \203#0\310\311\312\313\"\210\307!\210\314!)\207" . [filename emacspeak-w3-xsl-p format "/tmp/%s.html" make-temp-name "w3" write-region w3-open-local nil add-hook emacspeak-w3-post-process-hook #[nil "\301\211\207" [emacspeak-w3-xsl-p t] 2] delete-file])(#$ . 43824) nil 4 (#$ . 43746) nil]) #@22 Preview this region. (defalias 'emacspeak-w3-preview-this-region #[(start end) #@331 ("\304\305\306\307!\"\310 \n#\210t\2030\311!\210\202'0 \203#0\312\313\314\315\"\210\311!\210\316!)\207" . [filename start end emacspeak-w3-xsl-p format "/tmp/%s.html" make-temp-name "w3" write-region w3-open-local nil add-hook emacspeak-w3-post-process-hook #[nil "\301\211\207" [emacspeak-w3-xsl-p t] 2] delete-file])(#$ . 44272) nil 4 (#$ . 44186) "r"]) (byte-code "\300\301\302\303\304$\210\305\301\306\"\207" [ad-add-advice w3-nasty-disgusting-http-equiv-handling (fix-bug nil t (advice lambda nil (let ((emacspeak-use-auditory-icons nil)) (condition-case nil ad-do-it (error (message "caught an error")))))) around nil ad-activate t] 5) #@130 Set locally to a site specific post processor. Note that this hook gets reset after it is used by W3 --and this is intentional. (defvar emacspeak-w3-post-process-hook nil (#$ . 44932)) (byte-code "\301\302\303\304\305$\210\306\302\307\"\210\301\310\311\312\305$\210\306\310\307\"\210\313\314!\210\315\316!\210\317\301\320\321\312\305$\210\306\320\307\"\210\301\322\323\312\305$\210\306\322\307\"\210\301\324\325\312\305$\210\306\324\307\"\210\301\326\327\312\305$\210\306\326\307\"\210\301\330\331\312\305$\210\306\330\307\"\210\301\332\333\312\305$\210\306\332\307\"\207" [url-http-version ad-add-advice w3-notify-when-ready (emacspeak nil t (advice lambda nil "Call w3 post-processor hook if set." (when emacspeak-w3-post-process-hook (unwind-protect (run-hooks 'emacspeak-w3-post-process-hook) (setq emacspeak-w3-post-process-hook nil))))) after nil ad-activate t url-history-save-history (emacspeak nil t (advice lambda nil "Silence spoken messages while url history is being saved." (let ((emacspeak-speak-messages nil)) ad-do-it))) around provide emacspeak-w3 proclaim (special url-http-version) "1.0" w3-fetch-callback (emacspeak nil t (advice lambda nil "silence spoken messages." (let ((emacspeak-speak-messages nil)) ad-do-it))) url-http-content-length-after-change-function (emacspeak nil t (advice lambda nil "silence spoken messages." (let ((emacspeak-speak-messages nil)) ad-do-it))) url-http-chunked-encoding-after-change-function (emacspeak nil t (advice lambda nil "silence spoken messages." (let ((emacspeak-speak-messages nil)) ad-do-it))) url-http-wait-for-headers-change-function (emacspeak nil t (advice lambda nil "silence spoken messages." (let ((emacspeak-speak-messages nil)) ad-do-it))) url-cookie-handle-set-cookie (emacspeak nil t (advice lambda nil "silence spoken messages." (let ((emacspeak-speak-messages nil)) ad-do-it))) url-lazy-message (emacspeak nil t (advice lambda nil "silence spoken messages." (let ((emacspeak-speak-messages nil)) ad-do-it)))] 5) #@30 Browses RSS url under point. (defalias 'emacspeak-w3-browse-rss-at-point #[nil #@282 ("\304=\204\n0\305\306!\210\307\310!\211\203 0\311 \n!\210)\312 \313\"\202#0\305\314!)\207" . [major-mode url icon emacspeak-auditory-icon-function w3-mode error "Not in a W3 buffer." w3-view-this-url no-show select-object emacspeak-rss-display speak "No URL under point."])(#$ . 47016) nil 4 (#$ . 46930) nil]) #@35 Play url under point as realaudio (defalias 'emacspeak-w3-realaudio-play-url-at-point #[(&optional prompt-time) #@326 ("\303\304! \2040\305\306\"\2040\305\307\"\203!0\310\311!\210\312\n\"\202%0\310\313\")\207" . [url emacspeak-realaudio-dont-insist-on-ram-url prompt-time w3-view-this-url no-show string-match ".rm?$" ".ram?$" message "Playing Realaudio URL under point" emacspeak-realaudio-play "%s does not look like realaudio"])(#$ . 47459) nil 3 (#$ . 47340) "P"]) (byte-code "\300\301\302\"\210\300\303\304\"\210\305\306!\207" [defalias make-dtk-speech-style make-acss dtk-personality-from-speech-style acss-personality-from-speech-style provide dtk-css-speech] 3) #@51 Custom pronunciation for base URIs in w3 buffers. (custom-declare-variable 'emacspeak-w3-base-uri-pronunciation '" base " '(#$ . 48028) :type '(choice :tag "Base URI Pronunciation" (const :tag "None" :value nil) (string :tag "Custom pronunciation" :value " base ")) :group 'emacspeak-w3) #@57 Defines custom buffer local pronunciation for base URI. (defalias 'emacspeak-w3-customize-base-uri-pronunciation #[nil #@162 ("\302\303! \205\f0\304 \")\207" . [base-url emacspeak-w3-base-uri-pronunciation url-view-url no-show emacspeak-pronounce-add-buffer-local-dictionary-entry])(#$ . 48448) nil 3 (#$ . 48322) nil]) (byte-code "\300\301\302\303\304$\210\305\301\306\"\210\300\307\310\311\304$\210\305\307\306\"\207" [ad-add-advice url-view-url (emacspeak nil t (advice lambda nil (cond ((interactive-p) (let ((save-pronunciations emacspeak-pronounce-pronunciation-table)) (setq emacspeak-pronounce-pronunciation-table nil) ad-do-it (setq emacspeak-pronounce-pronunciation-table save-pronunciations))) (t ad-do-it)) ad-return-value)) around nil ad-activate t w3-wget (emacspeak nil t (advice lambda nil "Become aware of emacspeak w3 url rewrite rule,\nand make the redirect available via the minibuffer history.\nIf a rewrite rule is defined in the current buffer, we change\n this command to behave as if it were called with an\n interactive prefix." (when (and (interactive-p) emacspeak-w3-url-rewrite-rule) (ad-set-arg 0 t) (let ((url (w3-view-this-url t)) (redirect nil)) (unless url (error "Not on a link.")) (setq redirect (string-replace-match (first emacspeak-w3-url-rewrite-rule) url (second emacspeak-w3-url-rewrite-rule))) (push redirect minibuffer-history))))) before] 5)