view etc/images/help.xpm @ 73331:f21883dcffa9

Merge from upstream, upto version 5.22. After 5.0: `cperl-add-tags-recurse-noxs-fullpath': new function (for -batch mode) After 5.1: ;; Major edit. Summary of most visible changes: ;; a) Multiple <<HERE per line allowed. ;; b) Handles multiline subroutine declaration headers (with comments). ;; (The exception is `cperl-etags' - but it is not used in the rest ;; of the mode.) ;; c) Fontifies multiline my/our declarations (even with comments, ;; and with legacy `font-lock'). ;; d) Major speedup of syntaxification, both immediate and postponed ;; (3.5x to 15x [for different CPUs and versions of Emacs] on the ;; huge real-life document I tested). ;; e) New bindings, edits to imenu. ;; f) "_" is made into word-char during fontification/syntaxification; ;; some attempts to recognize non-word "_" during other operations too. ;; g) Detect bug in Emacs with `looking-at' inside `narrow' and bulk out. ;; h) autoload some more perldoc-related stuff ;; i) Some new convenience features: ISpell POD/HEREDOCs, narrow-to-HEREDOC ;; j) Attempt to incorporate XEmacs edits which reached me Fine-grained changelog: `cperl-hook-after-change': New configuration variable `cperl-vc-sccs-header': Likewise. `cperl-vc-sccs-header': Likewise. `cperl-vc-header-alist': Default via two preceding variables `cperl-invalid-face': Remove double quoting under XEmacs (still needed under 21.2) `cperl-tips': Update URLs for resources `cperl-problems': Likewise. `cperl-praise': Mention new features New C-c key bindings: for `cperl-find-bad-style', `cperl-pod-spell', `cperl-here-doc-spell', `cperl-narrow-to-here-doc', `cperl-perdoc', `cperl-perldoc-at-point' CPerl Mode menu changes: "Fix style by spaces", "Imenu on Perl Info" moved, new submenu of Tools with Ispell entries and narrowing. `cperl-after-sub-regexp': New defsubst `cperl-imenu--function-name-regexp-perl': Use `cperl-after-sub-regexp', Allows heads up to head4 Allow "package;" `defun-prompt-regexp': Use `cperl-after-sub-regexp', `paren-backwards-message': ??? Something for XEmacs??? `cperl-mode': Never auto-switch abbrev-mode off Try to allow '_' be non-word char Do not use `font-lock-unfontify-region-function' on XEmacs Reset syntax cache on mode start Support multiline facification (even on legacy `font-lock') `cperl-facemenu-add-face-function': ??? Some contributed code ??? `cperl-after-change-function': Since `font-lock' and `lazy-lock' refuse to inform us whether the fontification is due to lazy calling or due to edit to a buffer, install our own hook (controlled by `cperl-hook-after-change') `cperl-electric-pod': =cut may have been recognized as start `cperl-block-p': Moved, updated for attributes `cperl-calculate-indent': Try to allow '_' be non-word char Support subs with attributes `cperl-where-am-i': Queit (?) a warning `cperl-cached-syntax-table' New function `cperl-forward-re': Use `cperl-cached-syntax-table' `cperl-unwind-to-safe': Recognize `syntax-type' property changing in a middle of line `cperl-find-sub-attrs': New function `cperl-find-pods-heres': Allow many <<EOP per line Allow subs with attributes Major speedups (3.5x..15x on a real-life test file nph-proxy.pl) Recognize "extproc " (OS/2) case-folded and only at start /x on s///x with empty replacement was not recognized Better comments `cperl-after-block-p': Remarks on diff with `cperl-block-p' Allow subs with attributes, labels Do not confuse "else::foo" with "else" Minor optimizations... `cperl-after-expr-p': Try to allow '_' be non-word char `cperl-fill-paragraph': Try to detect a major bug in Emacs with `looking-at' inside `narrow' and bulk out if found `cperl-imenu--create-perl-index': Updates for new `cperl-imenu--function-name-regexp-perl' `cperl-outline-level': Likewise. `cperl-init-faces': Allow multiline subroutine headers and my/our declarations, and ones with comments Allow subroutine attributes `cperl-imenu-on-info': Better docstring. `cperl-etags' Rudimentary support for attributes Support for packages and "package;" `cperl-add-tags-recurse-noxs': Better (?) docstring `cperl-add-tags-recurse-noxs-fullpath': Likewise. `cperl-tags-hier-init': Misprint for `fboundp' fixed `cperl-not-bad-style-regexp': Try to allow '_' be non-word char `cperl-perldoc': Add autoload `cperl-perldoc-at-point': Likewise. `cperl-here-doc-spell': New function `cperl-pod-spell': Likewise. `cperl-map-pods-heres': Likewise. `cperl-get-here-doc-region': Likewise. `cperl-font-lock-fontify-region-function': Likewise (backward compatibility for legacy `font-lock') `cperl-font-lock-unfontify-region-function': Fix style `cperl-fontify-syntaxically': Recognize and optimize away deferred calls with no-change. Governed by `cperl-hook-after-change' `cperl-fontify-update': Recognize that syntaxification region can be larger than fontification one. XXXX we leave `cperl-postpone' property, so this is quadratic... `cperl-fontify-update-bad': Temporary placeholder until it is clear how to implement `cperl-fontify-update'. `cperl-time-fontification': New function `attrib-group': New text attribute `multiline': New value: `syntax-type' text attribute After 5.2: `cperl-emulate-lazy-lock': New function `cperl-fontify-syntaxically': Would skip large regions Add `cperl-time-fontification', `cperl-emulate-lazy-lock' to menu Some globals were declared, but uninitialized After 5.3, 5.4: `cperl-facemenu-add-face-function': Add docs, fix U<> Copyright message updated. `cperl-init-faces': Work around a bug in `font-lock'. May slow facification down a bit. Misprint for my|our|local for old `font-lock' "our" was not fontified same as "my|local" Highlight variables after "my" etc even in a middle of an expression Do not facify multiple variables after my etc unless parentheses are present After 5.5, 5.6 `cperl-fontify-syntaxically': after-change hook could reset `cperl-syntax-done-to' to a middle of line; unwind to BOL. After 5.7: `cperl-init-faces': Allow highlighting of local ($/) `cperl-problems-old-emaxen': New variable (for the purpose of DOCSTRING). `cperl-problems': Remove fixed problems. `cperl-find-pods-heres': Recognize #-comments in m##x too Recognize charclasses (unless delimiter is \). `cperl-fontify-syntaxically': Unwinding to safe was done in wrong order `cperl-regexp-scan': Update docs `cperl-beautify-regexp-piece': use information got from regexp scan After 5.8: Major user visible changes: Recognition and fontification of character classes in RExen. Variable indentation of RExen according to groups `cperl-find-pods-heres': Recognize POSIX classes in REx charclasses Fontify REx charclasses in variable-name face Fontify POSIX charclasses in "type" face Fontify unmatched "]" in function-name face Mark first-char of HERE-doc as `front-sticky' Reset `front-sticky' property when needed `cperl-calculate-indent': Indents //x -RExen accordning to parens level `cperl-to-comment-or-eol': Recognize ends of `syntax-type' constructs `cperl-backward-to-noncomment': Recognize stringy `syntax-type' constructs Support `narrow'ed buffers. `cperl-praise': Remove a reservation `cperl-make-indent': New function `cperl-indent-for-comment': Use `cperl-make-indent' `cperl-indent-line': Likewise. `cperl-lineup': Likewise. `cperl-beautify-regexp-piece': Likewise. `cperl-contract-level': Likewise. `cperl-toggle-set-debug-unwind': New function New menu entry for this `fill-paragraph-function': Use when `boundp' `cperl-calculate-indent': Take into account groups when indenting RExen `cperl-to-comment-or-eol': Recognize # which end a string `cperl-modify-syntax-type': Make only syntax-table property non-sticky `cperl-fill-paragraph': Return t: needed for `fill-paragraph-function' `cperl-fontify-syntaxically': More clear debugging message `cperl-pod2man-build-command': XEmacs portability: check `Man-filter-list' `cperl-init-faces': More complicated highlight even on XEmacs (new) Merge cosmetic changes from XEmacs After 5.9: `cperl-1+': Moved to before the first use `cperl-1-': Likewise. After 5.10: This code may lock Emacs hard!!! Use on your own risk! `cperl-font-locking': New internal variable `cperl-beginning-of-property': New function `cperl-calculate-indent': Use `cperl-beginning-of-property' instead of `previous-single-property-change' `cperl-unwind-to-safe': Likewise. `cperl-after-expr-p': Likewise. `cperl-get-here-doc-region': Likewise. `cperl-font-lock-fontify-region-function': Likewise. `cperl-to-comment-or-eol': Do not call `cperl-update-syntaxification' recursively Bound `next-single-property-change' via `point-max' `cperl-unwind-to-safe': Bound likewise `cperl-font-lock-fontify-region-function': Likewise. `cperl-find-pods-heres': Mark as recursive for `cperl-to-comment-or-eol' Initialization of `cperl-font-lock-multiline-start' could be missed if the "main" fontification did not run due to the keyword being already fontified. `cperl-pod-spell': Return t from do-one-chunk function `cperl-map-pods-heres': Stop when the worker returns nil Call `cperl-update-syntaxification' `cperl-get-here-doc-region': Call `cperl-update-syntaxification' `cperl-get-here-doc-delim': Remove unused function After 5.11: The possible lockup of Emacs (introduced in 5.10) fixed `cperl-unwind-to-safe': `cperl-beginning-of-property' won't return nil `cperl-syntaxify-for-menu': New customization variable `cperl-select-this-pod-or-here-doc': New function `cperl-get-here-doc-region': Extra argument Do not adjust pos by 1 New menu entries (Perl/Tools): Selection of current POD or HERE-DOC section (Debugging CPerl:) backtrace on fontification After 5.12: `cperl-cached-syntax-table': use `car-safe' `cperl-forward-re': Remove spurious argument SET-ST Add documentation `cperl-forward-group-in-re': New function `cperl-find-pods-heres': Find and highlight (?{}) blocks in RExen (XXXX Temporary (?) hack is to syntax-mark them as comment) After 5.13: `cperl-string-syntax-table': Make { and } not-grouping (Sometimes they ARE grouping in RExen, but matching them would only confuse in many situations when they are not) `beginning-of-buffer': Replaced two occurences with goto-char... `cperl-calculate-indent': `char-after' could be nil... `cperl-find-pods-heres': REx can start after "[" too Hightlight (??{}) in RExen too `cperl-maybe-white-and-comment-rex': New constant `cperl-white-and-comment-rex': Likewise. XXXX Not very efficient, but hard to make better while keeping 1 group After 5.13: `cperl-find-pods-heres': $foo << identifier() is not a HERE-DOC Likewise for 1 << identifier After 5.14: `cperl-find-pods-heres': Different logic for $foo .= <<EOF etc Error-less condition-case could fail `cperl-font-lock-fontify-region-function': Likewise. `cperl-init-faces': Likewise. After 5.15: `cperl-find-pods-heres': Support property REx-part2 `cperl-calculate-indent': Likewise. Don't special-case REx with non-empty 1st line `cperl-find-pods-heres': In RExen, highlight non-literal backslashes Invert highlighting of charclasses: now the envelop is highlighted Highlight many others 0-length builtins `cperl-praise': Mention indenting and highlight in RExen After 5.15: `cperl-find-pods-heres': Highlight capturing parens in REx After 5.16: `cperl-find-pods-heres': Highlight '|' for alternation Initialize `font-lock-warning-face' if not present `cperl-find-pods-heres': Use `font-lock-warning-face' instead of `font-lock-function-name-face' `cperl-look-at-leading-count': Likewise. `cperl-find-pods-heres': localize `font-lock-variable-name-face' `font-lock-keyword-face' (needed for batch processing) etc Use `font-lock-builtin-face' for builtin in REx Now `font-lock-variable-name-face' is used for interpolated variables Use "talking aliases" for faces inside REx Highlight parts of REx (except in charclasses) according to the syntax and/or semantic Syntax-mark a {}-part of (?{}) as "comment" (it was the ()-part) Better logic to distinguish what is what in REx `cperl-tips-faces': Document REx highlighting `cperl-praise': Mention REx syntax highlight etc. After 5.17: `cperl-find-sub-attrs': Would not always manage to print error message `cperl-find-pods-heres': localize `font-lock-constant-face' After 5.18: `cperl-find-pods-heres': Misprint in REx for parsing REx Very minor optimization `my-cperl-REx-modifiers-face' got quoted Recognize "print $foo <<END" as HERE-doc Put `REx-interpolated' text attribute if needed `cperl-invert-if-unless-modifiers': New function `cperl-backward-to-start-of-expr': Likewise. `cperl-forward-to-end-of-expr': Likewise. `cperl-invert-if-unless': Works in "the opposite way" too Cursor position on return is on the switch-word Indents comments better `REx-interpolated': New text attribute `cperl-next-interpolated-REx': New function `cperl-next-interpolated-REx-0': Likewise. `cperl-next-interpolated-REx-1': Likewise. "\C-c\C-x", "\C-c\C-y", "\C-c\C-v": New keybinding for these functions Perl/Regexp menu: 3 new entries for `cperl-next-interpolated-REx' `cperl-praise': Mention finded interpolated RExen After 5.19: `cperl-init-faces': Highlight %$foo, @$foo too `cperl-short-docs': Better docs for system, exec `cperl-find-pods-heres': Better detect << after print {FH} <<EOF etc. Would not find HERE-doc ended by EOF without NL `cperl-short-docs': Correct not-doubled \-escapes start block: Put some `defvar' for stuff gone from XEmacs After 5.20: initial comment: Extend copyright, fix email address `cperl-indent-comment-at-column-0': New customization variable `cperl-comment-indent': Indentation after $#a would increasy by 1 `cperl-mode': Make `defun-prompt-regexp' grok BEGIN/END etc `cperl-find-pods-heres': Mark CODE of s///e as `syntax-type' `multiline' `cperl-at-end-of-expr': Would fail if @BAR=12 follows after ";" `cperl-init-faces': If `cperl-highlight-variables-indiscriminately' highlight $ in $foo too (UNTESTED) `cperl-set-style': Docstring missed some available styles toplevel: Menubar/Perl/Indent-Styles had FSF, now K&R Change "Current" to "Memorize Current" `cperl-indent-wrt-brace': New customization variable; the default is as for pre-5.2 version `cperl-styles-entries': Keep `cperl-extra-newline-before-brace-multiline' `cperl-style-alist': Likewise. `cperl-fix-line-spacing': Support `cperl-merge-trailing-else' being nil, and `cperl-extra-newline-before-brace' etc being t `cperl-indent-exp': Plans B and C to find continuation blocks even if `cperl-extra-newline-before-brace' is t After 5.21: Improve some docstrings concerning indentation. `cperl-indent-rules-alist': New variable `cperl-sniff-for-indent': New function name (separated from `cperl-calculate-indent') `cperl-calculate-indent': Separated the sniffer and the indenter; uses `cperl-sniff-for-indent' now `cperl-comment-indent': Test for `cperl-indent-comment-at-column-0' was inverted; Support `comment-column' = 0
author Stefan Monnier <monnier@iro.umontreal.ca>
date Wed, 11 Oct 2006 06:47:35 +0000
parents 28718fa5d988
children
line wrap: on
line source

/* XPM */
static char * help_xpm[] = {
"24 24 244 2",
"  	c None",
". 	c #000000",
"+ 	c #454442",
"@ 	c #1D1D1C",
"# 	c #040404",
"$ 	c #1B1B1B",
"% 	c #3D3C3A",
"& 	c #4D4C4B",
"* 	c #2F2F2D",
"= 	c #C1BFBB",
"- 	c #ECEAE7",
"; 	c #F5F3F0",
"> 	c #F2F0EC",
", 	c #E1DFDC",
"' 	c #AFADAA",
") 	c #272726",
"! 	c #020202",
"~ 	c #3F3E3E",
"{ 	c #36302D",
"] 	c #181818",
"^ 	c #FBF8F5",
"/ 	c #FEFCF8",
"( 	c #FAF8F5",
"_ 	c #F5F4F1",
": 	c #F2F1ED",
"< 	c #F1EFEB",
"[ 	c #F1EEEB",
"} 	c #EAE9E6",
"| 	c #DAD8D4",
"1 	c #100E0E",
"2 	c #1F100E",
"3 	c #AF3A1E",
"4 	c #FBAB93",
"5 	c #FAE9E3",
"6 	c #F0EFEB",
"7 	c #E9E8E5",
"8 	c #EAE8E6",
"9 	c #ECEAE8",
"0 	c #EDEBE9",
"a 	c #EDEBE8",
"b 	c #EACFC6",
"c 	c #D5340A",
"d 	c #751904",
"e 	c #100806",
"f 	c #34160D",
"g 	c #AF3C20",
"h 	c #FCCCBD",
"i 	c #F7BEAD",
"j 	c #E67554",
"k 	c #DFDDDB",
"l 	c #DBD9D6",
"m 	c #D8D7D3",
"n 	c #DBDAD6",
"o 	c #E3E2DE",
"p 	c #ECEBE8",
"q 	c #E5572D",
"r 	c #E33A0B",
"s 	c #D4340A",
"t 	c #691504",
"u 	c #100504",
"v 	c #582C22",
"w 	c #0F0F0F",
"x 	c #FDD4C8",
"y 	c #F7BFAF",
"z 	c #E87554",
"A 	c #D5512B",
"B 	c #C68270",
"C 	c #BEBDBA",
"D 	c #A5A3A0",
"E 	c #9C9A95",
"F 	c #B9B7B2",
"G 	c #D7D6D2",
"H 	c #E7E5E2",
"I 	c #E79A85",
"J 	c #E53C0B",
"K 	c #E43C0B",
"L 	c #E23A0B",
"M 	c #C93009",
"N 	c #010000",
"O 	c #040100",
"P 	c #FAB19C",
"Q 	c #FACCBE",
"R 	c #EB8264",
"S 	c #D8532D",
"T 	c #C0340F",
"U 	c #932006",
"V 	c #141412",
"W 	c #857974",
"X 	c #DA370B",
"Y 	c #EC7C5B",
"Z 	c #E95B32",
"` 	c #DE380B",
" .	c #9D2306",
"..	c #626261",
"+.	c #FEF1ED",
"@.	c #F09479",
"#.	c #DC532B",
"$.	c #C0350F",
"%.	c #942006",
"&.	c #621404",
"*.	c #E2522B",
"=.	c #F2A690",
"-.	c #E74E21",
";.	c #E23B0B",
">.	c #C99181",
",.	c #454342",
"'.	c #E5E4E2",
").	c #FCFBFA",
"!.	c #E2D8D3",
"~.	c #C34C2A",
"{.	c #B02B07",
"].	c #9E2D12",
"^.	c #EF8D71",
"/.	c #F09B83",
"(.	c #EADDD7",
"_.	c #272724",
":.	c #F0EEEC",
"<.	c #F3F2EF",
"[.	c #D7D6D3",
"}.	c #BFBEBB",
"|.	c #9E6153",
"1.	c #3F0D02",
"2.	c #F0B9A9",
"3.	c #F6F5F4",
"4.	c #E8E7E4",
"5.	c #DAD8D5",
"6.	c #585652",
"7.	c #F6F4F0",
"8.	c #DAD8D6",
"9.	c #C2C1BE",
"0.	c #989691",
"a.	c #0A0A08",
"b.	c #F6F4F2",
"c.	c #F4F3F1",
"d.	c #E4E3E0",
"e.	c #D3D2CE",
"f.	c #63625D",
"g.	c #DCDAD8",
"h.	c #C7C6C2",
"i.	c #ABAAA5",
"j.	c #0A0A0A",
"k.	c #FAF8F6",
"l.	c #EFEDEA",
"m.	c #DDDCD8",
"n.	c #C6C4C2",
"o.	c #3E3E39",
"p.	c #1B1B19",
"q.	c #F0EEEA",
"r.	c #E0DFDD",
"s.	c #CCCBC9",
"t.	c #C0BFBB",
"u.	c #131311",
"v.	c #676663",
"w.	c #FCFAF8",
"x.	c #D6D4D2",
"y.	c #BCBAB7",
"z.	c #3C3C3A",
"A.	c #DEDCD9",
"B.	c #7E4B3E",
"C.	c #232323",
"D.	c #CC9385",
"E.	c #FAFAF7",
"F.	c #E6E6E2",
"G.	c #CDCCCA",
"H.	c #B0B0AC",
"I.	c #EDE3DF",
"J.	c #E78468",
"K.	c #DF5D3A",
"L.	c #631909",
"M.	c #282828",
"N.	c #B46E5E",
"O.	c #FCC3B2",
"P.	c #F1A691",
"Q.	c #DCD2CC",
"R.	c #C8C6C3",
"S.	c #7E7C78",
"T.	c #E8AD9C",
"U.	c #E96139",
"V.	c #EB7452",
"W.	c #EF8E72",
"X.	c #EA8063",
"Y.	c #9E2E13",
"Z.	c #3F1811",
"`.	c #121212",
" +	c #6B433B",
".+	c #E0A191",
"++	c #FDD3C7",
"@+	c #F4AD98",
"#+	c #DE532B",
"$+	c #C83409",
"%+	c #B48274",
"&+	c #383534",
"*+	c #D6340A",
"=+	c #E43D0F",
"-+	c #E8582E",
";+	c #ED7957",
">+	c #F4B6A4",
",+	c #F4B09D",
"'+	c #F0E5E0",
")+	c #F4F3EF",
"!+	c #FDF8F6",
"~+	c #FBCEC1",
"{+	c #F28B6E",
"]+	c #E44E23",
"^+	c #D3370A",
"/+	c #BF2F09",
"(+	c #260800",
"_+	c #190F0B",
":+	c #D5350A",
"<+	c #E43D0C",
"[+	c #E74C1F",
"}+	c #EFBBAB",
"|+	c #F5F4F3",
"1+	c #F5F3F1",
"2+	c #EAB1A0",
"3+	c #DE4316",
"4+	c #C5310A",
"5+	c #591202",
"6+	c #0E0504",
"7+	c #C83009",
"8+	c #E0532B",
"9+	c #E7E6E3",
"0+	c #E7E6E2",
"a+	c #DDDCD9",
"b+	c #CFCECA",
"c+	c #C14724",
"d+	c #AE2907",
"e+	c #290800",
"f+	c #0F0705",
"g+	c #9B2205",
"h+	c #C1A89F",
"i+	c #D1D0CC",
"j+	c #CFCDCA",
"k+	c #C7C6C3",
"l+	c #BBBAB7",
"m+	c #B5B4B1",
"n+	c #A7A6A2",
"o+	c #66564F",
"p+	c #0B0908",
"q+	c #010100",
"r+	c #222221",
"s+	c #51504B",
"t+	c #5D5C57",
"u+	c #3B3B37",
"    . .         + @ # # $ %                     ",
"  . . . . & # * = - ; > , ' ) ! ~ . . . .       ",
". .     { ] ^ / ( _ : > < [ } | . 1     . .     ",
"  .   2 3 4 5 6 - 7 8 9 0 0 a b c d e     .     ",
"  . f g h i j k l m n o } p a q r s t u . .     ",
"  v w x y z A B C D E F G H I J K L M . N       ",
"  O P Q R S T U . . . . V W X Y Z K `  ..       ",
"  ..+.@.#.$.%.. .         . &.*.=.-.;.>.! .     ",
",.'.).!.~.{.. .             . ].^./.(.n _..     ",
"@ :.<.[.}.|..                 1.2.3.4.5.6..     ",
"# 7.6 8.9.0..                 a.b.c.d.e.f..     ",
"# > < g.h.i..                 j.k.l.m.n.o..     ",
"p., q.r.s.t.u.                v.w.9 x.y.. .     ",
"z.' [ 7 A.[.B..             C.D.E.F.G.H.. .     ",
"  ) } 0 I.J.K.L..         M.N.O.P.Q.R.S.. .     ",
"  ! | T.U.V.W.X.Y.Z.a.`. +.+++@+#+$+%+. .       ",
"  &+. *+=+-+;+>+,+'+)+k.!+~+{+]+^+/+(+. .       ",
"  . _+d :+L <+[+}+|+l.1+|+2+3+^+4+5+. . .       ",
"  .   6+t 7+` 8+9+0+o a+[.b+c+d+e+. .   .       ",
"  .     f+. g+h+i+j+k+l+m+n+o+. . .     .       ",
"    . . . p+. q+r+s+t+u+. . . . .     . .       ",
"              . . . . . . . .   . . . .         ",
"                                                ",
"                                                "};