emacs/lisp/progmodes
Luke Lee c269730462 HideIfDef mode bug fixes and enhancements. This is #2 of 3 patches based
on the completed work posted on http://www.emacswiki.org/emacs/HideIfDef.

- Supporting argumented macro expansion.
- Stringification, tokenization and concatenation of strings and tokens.
- Add functions to find defines and parse argumented macros into a macro
  tree containing macro name, formal parameters and macro body.
- On macro evaluation, macros will be applied with actual parameters and
  then got expanded recursively.
- Merge main trunk changes

* lisp/progmodes/hideif.el (hif-string-to-number): Merge changes from
main trunk.
(hif-simple-token-only, hif-tokenize): Commentted in detail mainly for
performance enhancements.
(hif-parse-if-exp): Rename to `hif-parse-exp'. Enhanced for macro
expansion.
(hif-factor, hif-string-concatenation, intern-safe): Support string
concatenation and argumented macro expansion.
(hif-if-valid-identifier-p, hif-define-operator, hif-flatten)
(hif-expand-token-list, hif-get-argument-list, hif-define-macro)
(hif-delimit, hif-macro-supply-arguments, hif-invoke, hif-canonicalize)
(hif-canonicalize-tokens, hif-looking-at-elif, hif-place-macro-invocation)
(hif-parse-macro-arglist): Mostly new functions for supporting argumented
macro expansion.
(hif-string-concatenation, hif-stringify, hif-token-concat)
(hif-token-stringification, hif-token-concatenation): Stringify and
concatentation.
(hif-find-next-relevant): Fix comments
(hif-ifdef-to-endif, hif-looking-at-elif, hif-hide-line): Bug fix for
some cases involving #elif.
(hif-find-define, hif-add-new-defines): New functions for automatically
scanning of defined symbols.
(hide-ifdef-guts): Fix for auto defined symbol scanning.
(hide-ifdef-undef): Fix behavior to match CPP.
2014-06-26 13:47:33 +08:00
..
.gitignore
ada-mode.el Link to info manual in `defgroup'. 2014-01-25 20:15:42 +01:00
ada-prj.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ada-stmt.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ada-xref.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
antlr-mode.el * lisp/emacs-lisp/authors.el (authors-aliases): Remove unnecessary entries. 2014-01-16 21:59:24 -05:00
asm-mode.el Fix a few packages to work with nil tab-stop-list 2014-06-26 07:53:37 +08:00
autoconf.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
bat-mode.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
bug-reference.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cap-words.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cc-align.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cc-awk.el Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00
cc-bytecomp.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cc-cmds.el Connect electric-indent-mode up with CC Mode. Bug #15478. 2014-02-17 18:16:32 +00:00
cc-compat.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cc-defs.el Fix c-invalidate-state-cache on narrowed buffers. 2014-02-09 12:34:25 +00:00
cc-engine.el c-parse-state. Don't "append-lower-brace-pair" in certain 2014-02-02 16:28:52 +00:00
cc-fonts.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cc-guess.el Fix up some Version: headers that might confuse package.el 2014-03-31 15:01:59 -04:00
cc-langs.el Stop cc-mode loading cl at runtime 2014-06-14 16:54:39 -07:00
cc-menus.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cc-mode.el * lisp/electric.el (electric-indent-mode-has-been-called): Remove. 2014-03-03 23:03:34 -05:00
cc-styles.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cc-vars.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cfengine.el Replace refs to obsolete alias turn-on-eldoc-mode' with eldoc-mode' 2014-01-29 23:42:57 -08:00
cmacexp.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
compile.el * compile.el (recompile): Handle C-u M-x recompile from non-compilation buffer 2014-05-08 23:42:39 -07:00
cperl-mode.el Spelling fixes. 2014-01-15 22:24:06 -08:00
cpp.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
cwarn.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
dcl-mode.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf-abn.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf-bnf.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf-dtd.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf-ebx.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf-iso.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf-otz.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf-yac.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebnf2ps.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
ebrowse.el Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00
etags.el Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00
executable.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
f90.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
flymake.el Fix flymake in narrowed buffers 2014-02-13 14:37:29 -08:00
fortran.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
gdb-mi.el Doc fixes 2014-05-01 19:55:25 -04:00
glasses.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
grep.el Mention read-regexp in doc of functions that use it 2014-02-13 22:59:24 -08:00
gud.el Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00
hideif.el HideIfDef mode bug fixes and enhancements. This is #2 of 3 patches based 2014-06-26 13:47:33 +08:00
hideshow.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
icon.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
idlw-complete-structtag.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
idlw-help.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
idlw-shell.el * lisp/abbrev.el (define-abbrev): Beware new meaning of fboundp. 2014-01-06 18:34:05 -05:00
idlw-toolbar.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
idlwave.el * lisp/simple.el (completion-list-mode-map): Use choose-completion for the 2014-04-22 22:22:06 -04:00
inf-lisp.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
js.el * lisp/progmodes/js.el (js-indent-line): Don't mix columns and chars. 2014-05-31 21:53:04 -04:00
ld-script.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
m4-mode.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
make-mode.el Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00
mantemp.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
meta-mode.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
mixal-mode.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
modula2.el lisp/net/*.el, lisp/progmodes/*.el: Fix docstring typos. 2014-03-14 01:22:33 +01:00
octave.el Don't break emacs <= 24.3 just yet 2014-04-12 12:07:53 +08:00
opascal.el lisp/net/*.el, lisp/progmodes/*.el: Fix docstring typos. 2014-03-14 01:22:33 +01:00
pascal.el * lisp/progmodes/pascal.el (pascal-font-lock-keywords): Fix incorrect format 2014-04-10 09:56:28 -04:00
perl-mode.el * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Slash after 2014-04-22 21:56:18 -04:00
prog-mode.el * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol): 2014-04-21 16:31:22 -04:00
prolog.el Doc fixes 2014-05-01 19:55:25 -04:00
ps-mode.el * lisp/isearch.el (isearch-mode-map): Bind [return] and [backspace] to 2014-01-07 09:55:50 +02:00
python.el Fix completion retrieval parsing. 2014-06-21 11:14:54 -03:00
ruby-mode.el Fix bug#17732 2014-06-16 06:33:29 +03:00
scheme.el * lisp/progmodes/scheme.el (scheme-mode-syntax-table): Remove hack for 2014-05-20 16:12:30 -04:00
sh-script.el Fix some indentation problem with \; and pipes. 2014-06-24 16:16:10 -04:00
simula.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
sql.el * lisp/progmodes/sql.el (sql-interactive-mode): Avoid setting global value 2014-02-27 20:55:12 -05:00
subword.el Change subword regexps back to vars. 2014-01-04 21:49:44 -08:00
tcl.el Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00
vera-mode.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
verilog-mode.el Doc fixes 2014-05-01 19:55:25 -04:00
vhdl-mode.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
which-func.el Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
xscheme.el Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00