>> Just skimming through it, I notice "namespace". Is it really a >> builtin? I would've expected it to be a keyword.
> It's a command, if that's what you're asking. (I got this list from > Some-Frighteningly-Thick-Tcl-Book.) Well, your patch distinguishes between tcl-keyword-list and tcl-builtin-list, so is `namespace' more like `append' or more like `if'? To me it feels more like an `if', in that it seems to be part of the syntax rather than one of a set of builtin functions. But I honestly have no idea what was your intention behind the separation keyword-vs-builtin. >>> + (list (concat "\\(\\s-\\|^\\|\\[\\)" >>> + (regexp-opt tcl-builtin-list t) >>> + "\\(\\s-\\|$\\|\\]\\)") >> >> How 'bout (concat "\\_<" (regexp-opt tcl-builtin-list t) "\\_>") ? > OK. I used the format I did because it's the same as the existing > stuff in tcl.el. I know, but I think the other one should be changed as well. Except that in neither case do I know whether my suggestion is really the right idea. Maybe it breaks some hilighting, so please check it. >>> + '("\\\\$" 0 font-lock-warning-face) ; escaped EOL >> Why warning? Is it dangerous? I don't think so. > Personally, I like it to stand out (that's no argument, of course!). Well, you might know better than I. I just seem to remember using such escaped-newlines fairly often in my Tcl code. But maybe I was just a lousy Tcl coder. > I think I was trying to be consistent with sh-script.el. I'm not sure sh-script's use of warning-face is such a hot idea either. > There, escaped EOLs used to be highlighted in string-face. But that > confused sh-get-indent-info, so I changed it to warning-face. Yes, I remember that. >> Also the regexp matched more than escaped EOL, it also matches an >> escaped backslash at the end of the line. > What's a regexp for "/ at the end of a line, not preceded by an odd > number of other /"? > I tried this monstrosity: > "\\(?:[^\\\\]\\|\\(?:\\\\\\\\\\)+\\)\\(\\\\\\)$" > but it also matches \\\\ (I don't see why). Because it matches just the last 3 backslashes. You have to use something like "\\(^\\|[^\\]\\)\\(\\\\\\\\\\)*\\)\\(\\\\\\)$" see for example comment-start-skip in emacs-lisp-mode. You can also check for escaped backslashes in the "face" part rather than in the "regexp" part of the font-lock-keyword. > But sh-script should at least be corrected, I guess. Probably; patches welcome, Stefan _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel