Re: catalog in sgml-validate-command?

[email protected] Mon, 03 Nov 2003 22:30:15 +0100
Newsgroups gmane.emacs.psgml.user
Message-ID <[email protected]>
Bob,

  > (setq sgml-validate-command "nsgmls -c usr/pkg/share/sgml/catalog -s %s
  > %s")
  > 
  > ..by which I mean the '-c /path/to/catalog' does not get passed to the
  > minibuffer when 'Validate' is chosen.


I suspect the problem is that sgml-validate-command is
"buffer-local". I admit I don't understand completely what it means,
but it appears I once did, for my startup file contains:


(setq sgml-catalog-files '("/var/lib/sgml/CATALOG.iso_ent"
			   "/var/lib/sgml/CATALOG.html"
			   "/var/lib/sgml/CATALOG.html-3.2"
			   "/var/lib/sgml/CATALOG.html-4.0"
			   "/var/lib/sgml/CATALOG.tei-3"
			   "/var/lib/sgml/CATALOG.tei-3.system"
			   "/var/lib/sgml/CATALOG.teixlite"))

and

(add-hook 'sgml-mode-hook 
	  '(lambda ()
	     ; some other stuff
	     (setq sgml-validate-command (concat "nsgmls" 
				    (list-to-command-line-args 
				     sgml-catalog-files "-c")
				    " -s %s %s"))
             ; yet some other stuff))


as well as my smart comment

; the sgml-validate-command is actually set in the hook because it is
; buffer-local

(list-to-command-line-args is just a function that converts the list
into a long string where the individual items are preceded by the "-c"
and separated by a space. So setting

(setq sgml-validate-command "nsgmls -c /path/to/my_catalog -s %s %s")

_in_the_hook_ should be precisely the same for a single catalog file.)


Not wholly enlightened, but probably helpful, as my setup works!

Florian



-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?   SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/