aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/progmodes (follow)
Commit message (Collapse)AuthorAgeFilesLines
* * lisp/progmodes/hideif.el: Undo last change which should only go to trunkStefan Monnier2014-06-261-577/+46
| | | | (do not merge).
* HideIfDef mode bug fixes and enhancements. This is #2 of 3 patches basedLuke Lee2014-06-261-46/+577
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Fix a few packages to work with nil tab-stop-listLeo Liu2014-06-261-1/+1
| | | | | | | | | | | * indent.el (indent-accumulate-tab-stops): New function. * textmodes/picture.el (picture-set-tab-stops): * ruler-mode.el (ruler-mode-mouse-add-tab-stop) (ruler-mode-ruler): Fix to work with nil tab-stop-list. * progmodes/asm-mode.el (asm-calculate-indentation): Use indent-next-tab-stop.
* Fix some indentation problem with \; and pipes.Stefan Monnier2014-06-241-17/+59
| | | | | | | | | | | * lisp/progmodes/sh-script.el (sh-mode-syntax-table): Set syntax of ;|&. (sh-smie--default-forward-token, sh-smie--default-backward-token): New functions. (sh-smie-sh-forward-token, sh-smie-sh-backward-token) (sh-smie-rc-forward-token, sh-smie-rc-backward-token): Use them. (sh-smie-sh-rules): Fix indentation of a pipe at BOL. Fixes: debbugs:17842
* Fix completion retrieval parsing.Fabián Ezequiel Gallina2014-06-211-2/+12
| | | | | | | | | | * progmodes/python.el (python-mode): (python-util-strip-string): New function. (python-shell-completion-get-completions): Use it. * automated/python-tests.el (python-util-strip-string-1): New test. Fixes: debbugs:17209
* Enhancements for outline integration.Fabián Ezequiel Gallina2014-06-211-1/+1
| | | | | | | | * lisp/progmodes/python.el (python-mode): Properly set outline-heading-end-regexp so that comments after colons for defuns are supported. Fixes: debbugs:17796
* * lisp/progmodes/sh-script.el (sh-smie-sh-rules): For { after &&, don'tStefan Monnier2014-06-201-1/+5
| | | | | | align with the surrounding parent. Fixes: debbugs:17721
* * lisp/emacs-lisp/smie.el (smie--hanging-eolp-function): New var.Stefan Monnier2014-06-191-0/+5
| | | | | | | (smie-indent--hanging-p): Use it. * lisp/progmodes/sh-script.el (sh-set-shell): Set it. Fixes: debbugs:17621
* * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Use same rule for && asStefan Monnier2014-06-191-1/+1
| | | | | | for |. Fixes: debbugs:17621
* Fix bug#17732Dmitry Gutov2014-06-161-1/+1
| | | | | * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Don't fontify `!' in `!~' with `font-lock-negation-char-face'.
* Stop cc-mode loading cl at runtimeGlenn Morris2014-06-141-17/+19
| | | | | | | | | * lisp/progmodes/cc-langs.el: Require cl-lib. Replace delete-duplicates and mapcan by cl- versions throughout. And cl-macroexpand-all by macroexpand-all. (delete-duplicates, mapcan, cl-macroexpand-all): No need to declare. Fixes: debbugs:17463
* * lisp/progmodes/js.el (js-indent-line): Don't mix columns and chars.Stefan Monnier2014-05-311-1/+1
| | | | Fixes: debbugs:17619
* * lisp/progmodes/scheme.el (scheme-mode-syntax-table): Remove hack forStefan Monnier2014-05-201-31/+27
| | | | | | | | | #; comments. (scheme-syntax-propertize, scheme-syntax-propertize-sexp-comment): New functions. (scheme-mode-variables): Set syntax-propertize-function instead of font-lock-syntactic-face-function. (scheme-font-lock-syntactic-face-function): Delete.
* * compile.el (recompile): Handle C-u M-x recompile from non-compilation bufferGlenn Morris2014-05-081-6/+7
| | | | Fixes: debbugs:17444
* * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize-function):Dmitry Gutov2014-05-061-3/+4
| | | | | | | | | Backtrack one char if the global/char-literal var matcher hits inside a string. The next char could be the beginning of an expression expansion. * test/automated/ruby-mode-tests.el (ruby-interpolation-after-dollar-sign): New test.
* Doc fixesGlenn Morris2014-05-015-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | * doc/misc/autotype.texi (Skeleton Language): * doc/misc/message.texi (Header Commands): * lisp/allout-widgets.el (allout-widgets-tally) (allout-decorate-item-guides): * lisp/menu-bar.el (menu-bar-positive-p): * lisp/minibuffer.el (completion-pcm-complete-word-inserts-delimiters): * lisp/cedet/ede.el (ede-project-directories, ede-check-project-directory): * lisp/cedet/semantic/ia-sb.el (semantic-ia-sb-show-doc): * lisp/cedet/semantic/tag.el (semantic-tag-in-buffer-p): * lisp/cedet/semantic/bovine/c.el (semantic-tag-abstract-p): * lisp/gnus/gnus-registry.el (gnus-registry-install-p): Doc fix. * lisp/progmodes/gdb-mi.el (gdbmi-same-start, gdbmi-is-number): * lisp/progmodes/js.el (js--inside-param-list-p) (js--inside-dojo-class-list-p, js--forward-destructuring-spec): * lisp/progmodes/prolog.el (region-exists-p): * lisp/progmodes/verilog-mode.el (verilog-scan-cache-ok-p): * lisp/textmodes/reftex-parse.el (reftex-using-biblatex-p): * lisp/url/url-parse.el (url-generic-parse-url): * src/floatfns.c (Fisnan): * src/profiler.c (Fprofiler_cpu_running_p): Doc fixes (replace `iff'). Fixes: debbugs:17309
* * lisp/simple.el (completion-list-mode-map): Use choose-completion for theStefan Monnier2014-04-221-1/+1
| | | | | | | | | | | | mouse binding as well. (completion-list-mode, completion-setup-function): Adjust docstring and echo area message accordingly. * lisp/progmodes/idlwave.el (idlwave-choose-completion): Adjust to new calling convention of choose-completion. * lisp/comint.el (comint-dynamic-list-completions): * lisp/term.el (term-dynamic-list-completions): Accept choose-completion. Fixes: debbugs:17302
* * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Slash afterStefan Monnier2014-04-221-1/+1
| | | | | | &, |, +, - and * can't be a division. Fixes: debbugs:17317
* * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):Stefan Monnier2014-04-211-1/+1
| | | | Don't prettify a word within a symbol.
* * lisp/progmodes/sh-script.el (sh-smie--sh-keyword-p): Handle variableStefan Monnier2014-04-191-3/+4
| | | | | | assignments such as "case=hello". Fixes: debbugs:17297
* * lisp/progmodes/perl-mode.el (perl-calculate-indent): Don't auto-indent inStefan Monnier2014-04-161-1/+3
| | | | | | here-documents. Fixes: debbugs:17262
* Don't break emacs <= 24.3 just yetLeo Liu2014-04-121-19/+31
| | | | | | | | | * progmodes/octave.el (completion-table-with-cache): Define if not available. (octave-goto-function-definition) (octave-sync-function-file-names) (octave-find-definition-default-filename): Backquote upattern for compatibility.
* * lisp/progmodes/pascal.el (pascal-font-lock-keywords): Fix incorrect formatFeng Li2014-04-101-11/+9
| | | | entry; use symbol boundaries to avoid mis-matches.
* Highlight more Module methodsDmitry Gutov2014-04-091-0/+4
| | | | | | | * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more Module methods. Fixes: debbugs:17216
* Fix triple-quoting electricity in python-modeJoão Távora2014-04-071-2/+3
| | | | | | | | | | * lisp/progmodes/python.el (python-electric-pair-string-delimiter): Fix triple-quoting electricity. * test/automated/python-tests.el (python-triple-quote-pairing): New test. (python-syntax-after-python-backspace): New test. Fixes: debbugs:17192
* * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Handle $'Stefan Monnier2014-04-021-1/+5
| | | | | | used as a variable. Fixes: debbugs:17174
* * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Add "foreach"Stefan Monnier2014-04-021-1/+1
| | | | | | and "for" statement modifiers introducing expressions. Fixes: debbugs:17116
* * lisp/progmodes/perl-mode.el (perl-indent-new-calculate):Stefan Monnier2014-04-021-5/+6
| | | | | | Handle forward-sexp failure. Fixes: debbugs:16985
* Fix up some Version: headers that might confuse package.elGlenn Morris2014-03-311-3/+2
|
* * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): HighlightDmitry Gutov2014-03-271-4/+19
| | | | | | special globals with font-lock-builtin-face. Fixes: debbugs:17057
* Fix bug#17097Dmitry Gutov2014-03-271-0/+1
| | | | | | * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize-function): Don't propertize `?' or `!' as symbol constituent when after colon.
* Match special globals in Ruby betterDmitry Gutov2014-03-241-3/+3
| | | | | | | | | * lisp/progmodes/ruby-mode.el (ruby-expression-expansion-re): Match special global variables without curlies, too. (ruby-font-lock-keywords): Simplify the matcher for special global variables. Don't require a non-word character after the variable. Fixes: debbugs:17057
* Fix bug#17050Dmitry Gutov2014-03-211-0/+4
| | | | | * lisp/progmodes/ruby-mode.el (ruby-smie-rules): Add indentation rule for ` @ '.
* Fix debbugs#16971Dmitry Gutov2014-03-171-5/+2
| | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Set `comment-use-syntax' to t to avoid the unnecessary runtime check. Set `comment-start-skip' to a simpler value that doesn't try to check if the semicolon is escaped (this is handled by `syntax-ppss' now). * lisp/progmodes/scheme.el (scheme-mode-variables): Same.
* lisp/progmodes/python.el: Fix docstring typos.Juanma Barranquero2014-03-151-84/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (defconst, python-syntax-count-quotes) (python-indent-region, python-indent-shift-right) (python-indent-dedent-line-backspace, python-nav-backward-sexp) (python-nav-backward-sexp-safe, python-nav-backward-up-list) (python-shell-prompt-block-regexp, python-shell-prompt-output-regexp) (python-shell-prompt-pdb-regexp, python-shell-enable-font-lock) (inferior-python-mode, python-shell-make-comint, run-python-internal) (python-shell-buffer-substring, python-shell-send-buffer) (python-pdbtrack-activate, python-pdbtrack-stacktrace-info-regexp) (python-completion-complete-at-point, python-fill-docstring-style) (python-eldoc-function, python-imenu-format-item-label) (python-imenu-format-parent-item-label) (python-imenu-format-parent-item-jump-label) (python-imenu--build-tree, python-imenu-create-index) (python-imenu-create-flat-index): Fix docstring typos. (python-indent-context, python-shell-prompt-regexp, run-python): Remove superfluous backslashes. (python-indent-line, python-nav-beginning-of-defun) (python-shell-get-buffer, python-shell-get-process) (python-info-current-defun, python-info-current-line-comment-p) (python-info-current-line-empty-p, python-util-popn): Doc fixes. (python-indent-post-self-insert-function, python-shell-send-file) (python-shell-completion-get-completions) (python-shell-completion-complete-or-indent) (python-eldoc--get-doc-at-point): Reflow docstrings.
* lisp/net/*.el, lisp/progmodes/*.el: Fix docstring typos.Juanma Barranquero2014-03-144-33/+29
| | | | | | | | | | | | | | | | | | | | | | * net/socks.el (socks, socks-override-functions) (socks-find-services-entry): FT * progmodes/hideif.el (hif-set-var, hif-nexttoken, hif-comma) (hif-find-ifdef-block): * progmodes/modula2.el (m2-indent): Fix docstring typos. * net/tls.el (tls-program): Reflow docstring. * progmodes/opascal.el (opascal-compound-block-indent) (opascal-case-label-indent): Fix docstring typos. (opascal-mode): Fix typos; let defined-derived-mode document mode hook. * progmodes/pascal.el (pascal-mode-abbrev-table) (pascal-imenu-generic-expression, pascal-auto-endcomments) (pascal-mark-defun, pascal-comment-area, pascal-indent-level) (pascal-outline-mode): Fix docstring typos. (pascal-mode): Let define-derived-mode document mode hook. (pascal-uncomment-area): Reflow. (pascal-exclude-str-start, pascal-exclude-str-end): Add docstring.
* * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): FontifyDmitry Gutov2014-03-131-1/+1
| | | | | | multiple adjacent negation chars. Fixes: debbugs:17004
* * lisp/progmodes/sh-script.el: Fix whitespace in previous change.Glenn Morris2014-03-051-1/+1
|
* Recognize dash shellGlenn Morris2014-03-051-2/+4
| | | | | | | * lisp/files.el (interpreter-mode-alist): * lisp/progmodes/sh-script.el (sh-ancestor-alist): Add dash. Fixes: debbugs:16938
* * lisp/electric.el (electric-indent-mode-has-been-called): Remove.Stefan Monnier2014-03-031-18/+16
| | | | | | | | | | | | (electric-indent-mode): Fix accordingly. * lisp/progmodes/cc-mode.el (c-initialize-cc-mode): Only hook into electric-indent-mode-hook if we obey electric-indent-mode. (c-basic-common-init): Use (fboundp 'electric-indent-local-mode) to decide whether we obey electric-indent-mode. (c-change-set-fl-decl-start, c-extend-after-change-region): Silence warnings. (c-electric-indent-mode-hook): Assume we do want to obey electric-indent-mode.
* * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): HighlightDmitry Gutov2014-03-021-0/+10
| | | | | | regexp options. Fixes: debbugs:16914
* * lisp/progmodes/sql.el (sql-interactive-mode): Avoid setting global valueEmilio C. Lopes2014-02-271-2/+2
| | | | | | of comint-input-ring-separator. Fixes: debbugs:16814
* * lisp/progmodes/ruby-mode.el (ruby-smie-rules): Handle theDmitry Gutov2014-02-231-4/+6
| | | | | | | inconsistent second element of the list returned by `smie-indent--parent'. (ruby-font-lock-keywords): Disqualify any identifier before `=' as method call.
* * lisp/progmodes/ruby-mode.el (ruby-smie-rules): Don't indent speciallyDmitry Gutov2014-02-231-1/+0
| | | | | | after `=>'. Fixes: debbugs:16811
* * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add missing "or".Dmitry Gutov2014-02-211-1/+1
|
* Connect electric-indent-mode up with CC Mode. Bug #15478.Alan Mackenzie2014-02-172-2/+39
| | | | | | | | | | | | | | * progmodes/cc-mode.el (c-initialize-cc-mode): add CC Mode hooks to electric-indent-{,local-}-mode. (c-basic-common-init): Set electric-indent-inhibit. Initialise c-electric-flag from electric-indent-mode. (c-electric-indent-mode-hook, c-electric-indent-local-mode-hook): New hook functions which propagate electric-indent-mode to CC Mode. * progmodes/cc-cmds.el (c-toggle-electric-state): When C-c C-l is hit, toggle electric-indent-local-moode. * electric.el (electric-indent-mode-has-been-called): New variable.
* * progmodes/sql.el: Version 3.4Michael Mauger2014-02-151-18/+36
| | | | | | | | | (sql-oracle-options): New default value ("-L"). (sql-mode-oracle-font-lock-keywords): Added placeholder highlighting. (sql-placeholders-filter): Correct placeholder pattern. (sql-read-table-name): Bug fix. Detect absence of SQLi process. (sql-login-delay): New variable. (sql-product-interactive): Use it.
* Mention read-regexp in doc of functions that use itGlenn Morris2014-02-131-1/+1
| | | | | | | | | * lisp/dired.el (dired-read-regexp): * lisp/faces.el (list-faces-display): * lisp/misearch.el (multi-isearch-read-matching-buffers) (multi-isearch-read-matching-files): * lisp/play/cookie1.el (cookie-apropos): * lisp/progmodes/grep.el (grep-read-regexp): Doc fixes.
* Fix flymake in narrowed buffersDaniel Colascione2014-02-131-23/+25
|
* * lisp/progmodes/js.el (js-indent-line): Don't widen.Dmitry Gutov2014-02-121-7/+5
| | | | http://lists.gnu.org/archive/html/emacs-devel/2012-06/msg00276.html