comparison lisp/w3/w3-vars.el @ 22:8fc7fe29b841 r19-15b94

Import from CVS: tag r19-15b94
author cvs
date Mon, 13 Aug 2007 08:50:29 +0200
parents 859a2309aef8
children 4103f0995bd7
comparison
equal deleted inserted replaced
21:b88636d63495 22:8fc7fe29b841
1 ;;; w3-vars.el,v --- All variable definitions for emacs-w3 1 ;;; w3-vars.el,v --- All variable definitions for emacs-w3
2 ;; Author: wmperry 2 ;; Author: wmperry
3 ;; Created: 1997/02/09 06:46:59 3 ;; Created: 1997/02/14 17:57:21
4 ;; Version: 1.82 4 ;; Version: 1.89
5 ;; Keywords: comm, help, hypermedia 5 ;; Keywords: comm, help, hypermedia
6 6
7 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 7 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
8 ;;; Copyright (c) 1993 - 1996 by William M. Perry (wmperry@cs.indiana.edu) 8 ;;; Copyright (c) 1993 - 1996 by William M. Perry (wmperry@cs.indiana.edu)
9 ;;; Copyright (c) 1996, 1997 Free Software Foundation, Inc. 9 ;;; Copyright (c) 1996, 1997 Free Software Foundation, Inc.
28 28
29 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 29 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
30 ;;; Variable definitions for w3 30 ;;; Variable definitions for w3
31 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 31 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
32 (defconst w3-version-number 32 (defconst w3-version-number
33 (let ((x "p3.0.56")) 33 (let ((x "p3.0.59"))
34 (if (string-match "State:[ \t\n]+.\\([^ \t\n]+\\)" x) 34 (if (string-match "State:[ \t\n]+.\\([^ \t\n]+\\)" x)
35 (setq x (substring x (match-beginning 1) (match-end 1))) 35 (setq x (substring x (match-beginning 1) (match-end 1)))
36 (setq x (substring x 1))) 36 (setq x (substring x 1)))
37 (mapconcat 37 (mapconcat
38 (function (lambda (x) (if (= x ?-) "." (char-to-string x)))) x "")) 38 (function (lambda (x) (if (= x ?-) "." (char-to-string x)))) x ""))
39 "Version # of w3-mode.") 39 "Version # of w3-mode.")
40 40
41 (defconst w3-version-date (let ((x "1997/02/09 06:46:59")) 41 (defconst w3-version-date (let ((x "1997/02/14 17:57:21"))
42 (if (string-match "Date: \\([^ \t\n]+\\)" x) 42 (if (string-match "Date: \\([^ \t\n]+\\)" x)
43 (substring x (match-beginning 1) (match-end 1)) 43 (substring x (match-beginning 1) (match-end 1))
44 x)) 44 x))
45 "Date this version of w3-mode was released.") 45 "Date this version of w3-mode was released.")
46 46
69 "*Name of buffer to store debugging information in.") 69 "*Name of buffer to store debugging information in.")
70 70
71 (defvar w3-default-configuration-file nil 71 (defvar w3-default-configuration-file nil
72 "*Where per-user customizations of w3 are kept.") 72 "*Where per-user customizations of w3 are kept.")
73 73
74 (defvar w3-default-action 'w3-prepare-buffer
75 "*A lisp symbol specifying what action to take for files with
76 extensions that are not mapped to a MIME type in `mm-mime-extensions'.
77 This is useful in case you ever run across files with weird extensions
78 \(.foo, .README, .READMEFIRST, etc). This should not be required
79 anymore.
80
81 Possible values: any lisp symbol. Should be a function that takes no
82 arguments. The return value does not matter, it is ignored. Some examples
83 are:
84
85 Action Value
86 ----------------------------------------------
87 Parse as HTML 'w3-prepare-buffer
88 View as text 'indented-text-mode")
89
90 (defvar w3-default-homepage nil 74 (defvar w3-default-homepage nil
91 "*The url to open at startup. It can be any valid URL. This will 75 "*The url to open at startup. It can be any valid URL.
92 default to the environment variable WWW_HOME if you do not set it in 76 This will default to the environment variable WWW_HOME if you do not
93 your .emacs file. If WWW_HOME is undefined, then it will default to 77 set it in your .emacs file. If WWW_HOME is undefined, then it will
94 the hypertext documentation for W3 at Indiana University.") 78 default to the hypertext documentation for W3 at Indiana University.")
95 79
96 (defvar w3-default-stylesheet nil 80 (defvar w3-default-stylesheet nil
97 "*The filename of the users default stylesheet.") 81 "*The filename of the users default stylesheet.")
98 82
99 (defvar w3-do-blinking nil
100 "*Whether emacs-w3 should display blinking text.")
101
102 (defvar w3-do-incremental-display nil 83 (defvar w3-do-incremental-display nil
103 "*Whether to do incremental display of pages or not.") 84 "*Whether to do incremental display of pages or not.")
104
105 (defvar w3-documents-menu-file nil
106 "*Where the Mosaic documents-menu file is located. This is a file
107 that has extra menus for the 'Navigate' menu. This should be in the same
108 format as the Mosaic extra documents.menu.")
109 85
110 (defvar w3-dump-to-disk nil 86 (defvar w3-dump-to-disk nil
111 "*If non-nil, all W3 pages loaded will be dumped to disk.") 87 "*If non-nil, all W3 pages loaded will be dumped to disk.")
112 88
113 (defvar w3-echo-link '(title url text name) 89 (defvar w3-echo-link '(title url text name)
155 (defvar w3-latex-docstyle "{article}" 131 (defvar w3-latex-docstyle "{article}"
156 "*The documentstyle to use when printing/mailing converted HTML 132 "*The documentstyle to use when printing/mailing converted HTML
157 files in LaTeX. Good defaults are: 133 files in LaTeX. Good defaults are:
158 {article}, [psfig,twocolumn]{article}, etc.") 134 {article}, [psfig,twocolumn]{article}, etc.")
159 135
160 (defvar w3-link-info-display-function nil
161 "*A function to call to get extra information about a link and
162 include it in a buffer. Will be placed after the link and any other
163 delimiters.")
164
165 (defvar w3-mail-command 'mail 136 (defvar w3-mail-command 'mail
166 "*This function will be called whenever w3 needs to send mail. It should 137 "*This function will be called whenever w3 needs to send mail. It should
167 enter a mail-mode-like buffer in the current window. 138 enter a mail-mode-like buffer in the current window.
168 `w3-mail-other-window-command' will be used if w3-mutable-windows is t.
169 The commands `mail-to' and `mail-subject' should still work in this 139 The commands `mail-to' and `mail-subject' should still work in this
170 buffer, and it should use mail-header-separator if possible.") 140 buffer, and it should use mail-header-separator if possible.")
171
172 (defvar w3-mail-other-window-command 'mail-other-window
173 "*This function will be called whenever w3 needs to send mail in
174 another window. It should enter a mail-mode-like buffer in a
175 different window. The commands `mail-to' and `mail-subject' should still
176 work in this buffer, and it should use mail-header-separator if
177 possible.")
178
179 (defvar w3-max-inlined-image-size nil
180 "*The maximum byte size of a file to transfer as an inlined image.
181 If an image is being retrieved and exceeds this size, then it will be
182 cancelled. This works best on HTTP/1.0 servers that send a
183 Content-length header, otherwise the image is retrieved up until the
184 max number of bytes is retrieved, then killed.")
185 141
186 (defvar w3-max-menu-length 35 142 (defvar w3-max-menu-length 35
187 "*The maximum length of a pulldown menu before it will be split into 143 "*The maximum length of a pulldown menu before it will be split into
188 smaller chunks, with the first part as a submenu, followed by the rest 144 smaller chunks, with the first part as a submenu, followed by the rest
189 of the menu.") 145 of the menu.")
204 "*The modeline format string when in w3 mode") 160 "*The modeline format string when in w3 mode")
205 161
206 (defvar w3-mule-attribute 'underline 162 (defvar w3-mule-attribute 'underline
207 "*How to highlight items in Mule (Multi-Linugual Emacs).") 163 "*How to highlight items in Mule (Multi-Linugual Emacs).")
208 164
209 (defvar w3-mutable-windows nil
210 "*Controls how new WWW documents are displayed. If this is set to
211 non-nil and pop-up-windows is non-nil, then new buffers will be shown
212 in another window. If either is nil, then it will replace the document
213 in the current window.")
214
215 (defvar w3-netscape-configuration-file nil 165 (defvar w3-netscape-configuration-file nil
216 "*A Netscape-for-X style configuration file. This file will only be read if 166 "*A Netscape-for-X style configuration file. This file will only be read if
217 and only if `w3-use-netscape-configuration-file' is non-nil.") 167 and only if `w3-use-netscape-configuration-file' is non-nil.")
218 168
219 (defvar w3-netscape-compatible-comments t 169 (defvar w3-netscape-compatible-comments t
233 quiet -- like `polite', but don't beep 183 quiet -- like `polite', but don't beep
234 meek -- make no indication that page is ready 184 meek -- make no indication that page is ready
235 185
236 Any other value of `w3-notify' is equivalent to `meek'.") 186 Any other value of `w3-notify' is equivalent to `meek'.")
237 187
238 (defvar w3-ppmtoxbm-command "ppmtopgm | pgmtopbm | pbmtoxbm" 188 (defvar w3-popup-menu-on-mouse-3 t
239 "*The command used to convert from the portable-pixmap graphics format 189 "*Non-nil value means W3 should provide context-sensitive menus on mouse-3.
240 to an x bitmap. This will only ever be used if XEmacs doesn't have support 190 A nil value means W3 should not change the binding of mouse-3.")
241 for XPM.")
242
243 (defvar w3-ppmtoxpm-command "ppmtoxpm"
244 "*The command used to convert from the portable-pixmap graphics format
245 to XPM. The XPM _MUST_ be in version 3 format.")
246 191
247 (defvar w3-print-command "lpr -h -d" 192 (defvar w3-print-command "lpr -h -d"
248 "*Print command for dvi files. 193 "*Print command for dvi files.
249 This is usually lpr -h -d to send it to a postscript printer, but you can set 194 This is usually lpr -h -d to send it to a postscript printer, but you can set
250 it up so that it is any command that takes a dvi file as its last argument.") 195 it up so that it is any command that takes a dvi file as its last argument.")
266 This amount is subtracted from (window-width) for each new WWW buffer 211 This amount is subtracted from (window-width) for each new WWW buffer
267 and used as the new fill-column.") 212 and used as the new fill-column.")
268 213
269 (defvar w3-maximum-line-length nil 214 (defvar w3-maximum-line-length nil
270 "*Maximum length of a line. If nil, then lines can extend all the way to 215 "*Maximum length of a line. If nil, then lines can extend all the way to
271 the window margin. If a number, the smaller of this and 216 the window margin.")
272 (- (window-width) w3-right-margin) is used.")
273
274 (defvar w3-right-justify-address t
275 "*Whether to make address fields right justified, like Arena.")
276
277 (defvar w3-show-headers nil
278 "*This is a list of regexps that match HTTP/1.0 headers to show at
279 the end of a buffer. All the headers being matched against will be
280 in lowercase. All matching headers will be inserted at the end of the
281 buffer in a <UL> list.")
282
283 (defvar w3-show-status t
284 "*Whether to show a running total of bytes transferred. Can cause a
285 large hit if using a remote X display over a slow link, or a terminal
286 with a slow modem.")
287
288 (defvar w3-starting-documents
289 '(("Internet Starting Points" "http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/StartingPoints/NetworkStartingPoints.html")
290 ("Internet Resources Meta-index" "http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html")
291 ("NCSA's What's New" "http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/whats-new.html"))
292 "*An assoc list of titles and URLs for quick access. These are just
293 defaults so that new users have somewhere to go.")
294 217
295 (defvar w3-temporary-directory "/tmp" "*Where temporary files go.") 218 (defvar w3-temporary-directory "/tmp" "*Where temporary files go.")
296 219
297 (defvar w3-track-last-buffer nil 220 (defvar w3-track-last-buffer nil
298 "*Whether to track the last w3 buffer to automatically switch to with 221 "*Whether to track the last w3 buffer to automatically switch to with
299 M-x w3.") 222 M-x w3.")
300 223
301 (defvar w3-track-mouse t 224 (defvar w3-track-mouse t
302 "*Whether to track the mouse and message the url under the mouse.") 225 "*Whether to track the mouse and message the url under the mouse.")
303
304 (defvar w3-use-forms-index t
305 "*Non-nil means translate <ISINDEX> tags into a hypertext form.
306 A single text entry box will be drawn where the ISINDEX tag appears.
307 If t, the isindex handling will be the same as Mosaic for X.")
308 226
309 (defvar w3-use-netscape-configuration-file nil 227 (defvar w3-use-netscape-configuration-file nil
310 "*Whether to use a netscape configuration file to determine things like 228 "*Whether to use a netscape configuration file to determine things like
311 home pages, link colors, etc. If non-nil, then `w3-netscape-configuration-file' 229 home pages, link colors, etc. If non-nil, then `w3-netscape-configuration-file'
312 is read in at startup.") 230 is read in at startup.")
347 (defvar w3-running-FSF19 (and (string-match "^19" emacs-version) 265 (defvar w3-running-FSF19 (and (string-match "^19" emacs-version)
348 (not w3-running-xemacs)) 266 (not w3-running-xemacs))
349 "*In FSF v19 emacs?") 267 "*In FSF v19 emacs?")
350 268
351 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 269 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
352 ;;; Link delimiting
353 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
354 (defvar w3-delimit-emphasis 'guess
355 "*Whether to use characters at the start and end of each bold/italic
356 region. Obsolete variable (almost) - all this should be specified by the
357 default stylesheet.")
358
359 (defvar w3-link-start-delimiter '("[[" . "{{")
360 "*Put this at front of link if w3-delimit-links is t.")
361
362 (defvar w3-link-end-delimiter '("]]" . "}}")
363 "*Put this at end of link if w3-delimit-links is t.")
364
365 (defvar w3-delimit-links 'guess
366 "*Put brackets around links? If this variable is eq to 'linkname, then
367 it will put the link # in brackets after the link text. If it is nil, then
368 it will not put anything. If it is non-nil and not eq to 'linkname, then
369 it will put [[ & ]] around the entire text of the link. Is initially set
370 to be t iff in normal emacs. Nil if in XEmacs or lucid emacs, since links
371 should be in different colors/fonts.")
372
373 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
374 ;;; Graphics parsing stuff 270 ;;; Graphics parsing stuff
375 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 271 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
376 (defvar w3-graphics-always-show-entities t
377 "*Set to t to always show graphic entities, regardless of the value of
378 w3-delay-image-loads. Useful if you keep the entities locally and aren't
379 worried about the transfer time on something that small.")
380
381 (defvar w3-graphics-list nil 272 (defvar w3-graphics-list nil
382 "*List of graphics already read in.") 273 "*List of graphics already read in.")
383 274
384 (defvar w3-delay-image-loads nil 275 (defvar w3-delay-image-loads nil
385 "*Delay loading images for w3 or not?") 276 "*Delay loading images for w3 or not?")
409 ("image/x-sgi" . sgi) 300 ("image/x-sgi" . sgi)
410 ("image/x-macpaint" . macpt) 301 ("image/x-macpaint" . macpt)
411 ("image/x-targa" . tga) 302 ("image/x-targa" . tga)
412 ("image/tiff" . tiff) 303 ("image/tiff" . tiff)
413 ) "*How to map MIME types to image types for the `image' package.") 304 ) "*How to map MIME types to image types for the `image' package.")
414
415 (defvar w3-color-use-reducing 'guess
416 "*Whether to use ppmquant/ppmdither to do color reducing for inlined images.
417 If you are using a 24bit display, you should set this to nil.")
418
419 (defvar w3-color-max-red 4
420 "*Max # of red cells to allocate for inlined images.")
421
422 (defvar w3-color-max-green 4
423 "*Max # of green cells to allocate for inlined images.")
424
425 (defvar w3-color-max-blue 4
426 "*Max # of blue cells to allocate for inlined images.")
427
428 (defvar w3-color-filter 'ppmdither
429 "*How to do color reducing on inlined images.
430 This should be a symbol, either ppmdither or ppmquant.
431 This variable only has any meaning if w3-color-use-reducing is non-nil.
432 Possible values are:
433
434 ppmquant :== Use the ppmquant program to reduce colors. The product
435 of w3-color-max-[red|green|blue] is used as the maximum
436 number of colors.
437 ppmdither :== Use the ppmdither program to reduce colors.
438
439 any string :== Use this string as the filter. No interpretation of it
440 is done at all. Example is:
441 ppmquant -fs -map ~/pixmaps/colormap.ppm")
442
443 (defvar w3-ppmdither-is-buggy t
444 "*The ppmdither which comes with pbmplus/netpbm releases through
445 1mar1994 at least ignores the 'maxval' in its input. This can cause
446 trouble viewing black-and-white gifs. If this variable is set, a
447 (harmless) 'pnmdepth 255' step is inserted to work around this bug.
448 You can test your ppmdither by doing
449 ppmmake white 100 100 | pnmdepth 1 | ppmdither | pnmdepth 255 | ppmhist
450 If the output has a single line like this:
451 255 255 255 255 10000
452 then it's safe to set this variable to nil.")
453 305
454 ;; Store the database of HTML general entities. 306 ;; Store the database of HTML general entities.
455 (defvar w3-html-entities 307 (defvar w3-html-entities
456 '( 308 '(
457 (excl . 33) 309 (excl . 33)
683 for the image.") 535 for the image.")
684 536
685 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 537 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
686 ;;; Menu definitions 538 ;;; Menu definitions
687 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 539 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
688 (defvar w3-navigate-menu nil)
689 (defvar w3-popup-menu 540 (defvar w3-popup-menu
690 '("Emacs-W3 Commands" 541 '("Emacs-W3 Commands"
691 ["Back" w3-history-backward (car (w3-history-find-url-internal (url-view-url t)))] 542 ["Back" w3-history-backward (car (w3-history-find-url-internal (url-view-url t)))]
692 ["Forward" w3-history-forward (cdr (w3-history-find-url-internal (url-view-url t)))] 543 ["Forward" w3-history-forward (cdr (w3-history-find-url-internal (url-view-url t)))]
693 ) 544 )
694 "The shorter popup menu.") 545 "The shorter popup menu.")
695
696 (defvar w3-documentation-root "http://www.cs.indiana.edu/elisp/w3/docs/"
697 "*Where the w3 documentation lives. This MUST end in a slash.")
698 546
699 (defvar w3-graphlink-menu 547 (defvar w3-graphlink-menu
700 '(("Open this Image (%s)" . w3-fetch) 548 '(("Open this Image (%s)" . w3-fetch)
701 ("Save this Image As..." . w3-download-url) 549 ("Save this Image As..." . w3-download-url)
702 ("Copy this Image Location" . w3-save-url) 550 ("Copy this Image Location" . w3-save-url)
718 in a popup menu when the mouse is pressed on a hyperlink. Format is 566 in a popup menu when the mouse is pressed on a hyperlink. Format is
719 ( (label . function)), function is called with one argument, the URL of 567 ( (label . function)), function is called with one argument, the URL of
720 the link. Each label can have exactly one `%s' that will be replaced by 568 the link. Each label can have exactly one `%s' that will be replaced by
721 the URL of the link.") 569 the URL of the link.")
722 570
571 (defvar w3-documentation-root "http://www.cs.indiana.edu/elisp/w3/docs/"
572 "*Where the w3 documentation lives. This MUST end in a slash.")
573
723 (defvar w3-defined-link-types 574 (defvar w3-defined-link-types
724 ;; This is the HTML3.0 list (downcased) plus "made". 575 ;; This is the HTML3.0 list (downcased) plus "made".
725 '("previous" "next" "up" "down" "home" "toc" "index" "glossary" 576 '("previous" "next" "up" "down" "home" "toc" "index" "glossary"
726 "copyright" "bookmark" "help" "made") 577 "copyright" "bookmark" "help" "made")
727 "A list of the (lower-case) names which have special significance 578 "A list of the (lower-case) names which have special significance
732 ;;; Variables internal to W3, you should not change any of these 583 ;;; Variables internal to W3, you should not change any of these
733 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 584 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
734 (defvar w3-form-radio-elements nil "Internal variable - do not touch!") 585 (defvar w3-form-radio-elements nil "Internal variable - do not touch!")
735 (defvar w3-form-elements nil "Internal variable - do not touch!") 586 (defvar w3-form-elements nil "Internal variable - do not touch!")
736 587
737 (defvar w3-invisible-href-list nil
738 "A list of 'invisible' graphic links in the current buffer.")
739
740 (defconst w3-state-locator-variable
741 '(
742 :align
743 :background
744 :center
745 :depth
746 :figalt
747 :figdata
748 :fillcol
749 :form
750 :formnum
751 :header-start
752 :href
753 :link-args
754 :image
755 :lists
756 :map
757 :name
758 :needspace
759 :next-break
760 :nofill
761 :nowrap
762 :optarg
763 :options
764 :pre-start
765 :select
766 :secret
767 :table
768 :text-mangler
769 :title
770 :link-title
771 :w3-graphic
772 :zone
773 :label-text
774 :seen-this-url
775 )
776 "A list of all the various state kept in the drawing engine.
777 This is used by the `w3-get-state' and `w3-put-state' macros.")
778
779 (defvar w3-state-vector
780 (make-vector (1+ (length w3-state-locator-variable)) nil)
781 "Various state shit kept by emacs-w3.")
782
783 (defvar w3-user-stylesheet nil 588 (defvar w3-user-stylesheet nil
784 "The global stylesheet for this user.") 589 "The global stylesheet for this user.")
785 590
786 (defvar w3-current-stylesheet nil 591 (defvar w3-current-stylesheet nil
787 "The stylesheet for this document.") 592 "The stylesheet for this document.")
801 606
802 (defvar w3-last-tag nil 607 (defvar w3-last-tag nil
803 "An internal variable for the new display engine that specifies the 608 "An internal variable for the new display engine that specifies the
804 last tag processed.") 609 last tag processed.")
805 610
806 (defvar w3-table-info nil
807 "An internal variable for the new display engine for keeping table data
808 during the pre-pass parsing.")
809
810 (defvar w3-current-formatter nil
811 "Current formatter function.")
812
813 (defvar w3-draw-buffer nil
814 "Where we are currently drawing into. This _must_ be a buffer object
815 when it is referenced.")
816
817 (defvar w3-active-faces nil "The list of active faces.") 611 (defvar w3-active-faces nil "The list of active faces.")
818 (defvar w3-active-voices nil "The list of active voices.") 612 (defvar w3-active-voices nil "The list of active voices.")
819 613
820 (defvar w3-netscape-variable-mappings 614 (defvar w3-netscape-variable-mappings
821 '(("PRINT_COLOR" . ps-print-color-p) 615 '(("PRINT_COLOR" . ps-print-color-p)
822 ("DITHER_IMAGES" . w3-color-use-reducing)
823 ("SOCKS_HOST" . url-socks-host) 616 ("SOCKS_HOST" . url-socks-host)
824 ("ORGANIZATION" . url-user-organization) 617 ("ORGANIZATION" . url-user-organization)
825 ("EMAIL_ADDRESS" . url-personal-mail-address) 618 ("EMAIL_ADDRESS" . url-personal-mail-address)
826 ("REAL_NAME" . url-user-real-name) 619 ("REAL_NAME" . url-user-real-name)
827 ("NEWSGROUP_DESCRIPTIONS" . url-show-newsgroup-descriptions) 620 ("NEWSGROUP_DESCRIPTIONS" . url-show-newsgroup-descriptions)
905 w3-current-links 698 w3-current-links
906 w3-current-metainfo 699 w3-current-metainfo
907 w3-current-source 700 w3-current-source
908 w3-delayed-images 701 w3-delayed-images
909 w3-hidden-forms 702 w3-hidden-forms
910 w3-invisible-href-list
911 w3-state-vector
912 w3-current-stylesheet 703 w3-current-stylesheet
913 w3-form-labels 704 w3-form-labels
914 w3-id-positions 705 w3-id-positions
915 w3-imagemaps 706 w3-imagemaps
916 ) 707 )
917 "A list of variables that should be preserved when entering w3-mode.") 708 "A list of variables that should be preserved when entering w3-mode.")
918
919 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
920 ;;; Syntax stuff
921 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
922 (defvar w3-parse-args-syntax-table
923 (copy-syntax-table emacs-lisp-mode-syntax-table)
924 "A syntax table for parsing sgml attributes.")
925
926 (modify-syntax-entry ?' "\"" w3-parse-args-syntax-table)
927 (modify-syntax-entry ?` "\"" w3-parse-args-syntax-table)
928 (modify-syntax-entry ?< "(>" w3-parse-args-syntax-table)
929 (modify-syntax-entry ?> ")<" w3-parse-args-syntax-table)
930 709
931 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 710 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
932 ;;; Emulation stuff 711 ;;; Emulation stuff
933 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 712 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
934 (defvar w3-netscape-emulation-minor-mode nil 713 (defvar w3-netscape-emulation-minor-mode nil
947 (defvar w3-form-labels nil "") 726 (defvar w3-form-labels nil "")
948 (mapcar (function 727 (mapcar (function
949 (lambda (var) 728 (lambda (var)
950 (if (boundp var) 729 (if (boundp var)
951 (make-variable-buffer-local var)))) w3-persistent-variables) 730 (make-variable-buffer-local var)))) w3-persistent-variables)
952 (make-variable-buffer-local 'w3-state-vector) 731
953 (make-variable-buffer-local 'w3-current-stylesheet)
954 (make-variable-buffer-local 'w3-base-alist) 732 (make-variable-buffer-local 'w3-base-alist)
955 (make-variable-buffer-local 'w3-last-tag) 733 (make-variable-buffer-local 'w3-last-tag)
956 (make-variable-buffer-local 'w3-last-fill-pos) 734 (make-variable-buffer-local 'w3-last-fill-pos)
957 (make-variable-buffer-local 'w3-table-info)
958 (make-variable-buffer-local 'w3-draw-buffer)
959 (make-variable-buffer-local 'w3-current-formatter)
960 (make-variable-buffer-local 'w3-active-faces) 735 (make-variable-buffer-local 'w3-active-faces)
961 (make-variable-buffer-local 'w3-default-style)
962 (make-variable-buffer-local 'w3-netscape-emulation-minor-mode) 736 (make-variable-buffer-local 'w3-netscape-emulation-minor-mode)
963 (make-variable-buffer-local 'w3-lynx-emulation-minor-mode) 737 (make-variable-buffer-local 'w3-lynx-emulation-minor-mode)
964 (make-variable-buffer-local 'w3-last-search-item) 738 (make-variable-buffer-local 'w3-last-search-item)
965 739
966 740
1034 ;; Emulate some netscape stuff by default 808 ;; Emulate some netscape stuff by default
1035 (define-key w3-mode-map [(control alt t)] 'url-list-processes) 809 (define-key w3-mode-map [(control alt t)] 'url-list-processes)
1036 (define-key w3-mode-map [(control meta t)] 'url-list-processes) 810 (define-key w3-mode-map [(control meta t)] 'url-list-processes)
1037 811
1038 ;; Widget navigation 812 ;; Widget navigation
1039 (define-key w3-mode-map "\t" 'w3-widget-forward) 813 (define-key w3-mode-map [tab] 'w3-widget-forward)
814 (define-key w3-mode-map "\M-\t" 'w3-widget-backward)
1040 (define-key w3-mode-map [backtab] 'w3-widget-backward) 815 (define-key w3-mode-map [backtab] 'w3-widget-backward)
1041 (define-key w3-mode-map [(shift tab)] 'w3-widget-backward) 816 (define-key w3-mode-map [(shift tab)] 'w3-widget-backward)
1042 (define-key w3-mode-map [(meta tab)] 'w3-widget-backward) 817 (define-key w3-mode-map [(meta tab)] 'w3-widget-backward)
1043 818
1044 ;;; This is so we can use a consistent method of checking for mule support
1045 ;;; Emacs-based mule uses (boundp 'MULE), but XEmacs-based mule uses
1046 ;;; (featurep 'mule) - I choose to use the latter.
1047
1048 (if (boundp 'MULE)
1049 (provide 'mule))
1050 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 819 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1051 ;;; Keyword definitions 820 ;;; Keyword definitions
1052 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 821 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1053 (require 'w3-keyword) 822 (require 'w3-keyword)
1054 (provide 'w3-vars) 823 (provide 'w3-vars)