1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-07 04:10:27 -08:00
Commit graph

4473 commits

Author SHA1 Message Date
Stefan Monnier
e17b68ed83 Use SMIE for octave-mode.
* test/indent/octave.m: New file.
* lisp/progmodes/octave-mod.el (octave-font-lock-keywords): Use regexp-opt.
(octave-mode-map): Remove special bindings for forward/backward-block
and octave-backward-up-block.  Use smie-close-block.
(octave-continuation-marker-regexp): New var.
(octave-continuation-regexp): Use it.
(octave-operator-table, octave-smie-op-levels)
(octave-operator-regexp, octave-smie-indent-rules): New vars.
(octave-smie-backward-token, octave-smie-forward-token): New funs.
(octave-mode): Use SMIE.
(octave-close-block): Delete.
2010-08-30 22:34:52 +02:00
Stefan Monnier
f291fe60fb Use `declare' in defmacros.
* lisp/window.el (save-selected-window):
* lisp/subr.el (with-temp-file, with-temp-message, with-syntax-table):
* lisp/progmodes/python.el (def-python-skeleton):
* lisp/net/dbus.el (dbus-ignore-errors):
* lisp/jka-cmpr-hook.el (with-auto-compression-mode):
* lisp/international/mule.el (with-category-table):
* lisp/emacs-lisp/timer.el (with-timeout):
* lisp/emacs-lisp/lisp-mnt.el (lm-with-file):
* lisp/emacs-lisp/eieio.el (with-slots):
* lisp/emacs-lisp/easymenu.el (easy-menu-define):
* lisp/emacs-lisp/debug.el (debugger-env-macro):
* lisp/emacs-lisp/cl-compat.el (Multiple-value-bind, Multiple-value-setq)
(Multiple-value-call, Multiple-value-prog1):
* lisp/emacs-lisp/cl-seq.el (cl-parsing-keywords, cl-check-key)
(cl-check-test-nokey, cl-check-test, cl-check-match): Move indent and
edebug rule to definition.
* lisp/emacs-lisp/lisp-mode.el (save-selected-window)
(with-current-buffer, combine-after-change-calls)
(with-output-to-string, with-temp-file, with-temp-buffer)
(with-temp-message, with-syntax-table, read-if, eval-after-load)
(dolist, dotimes, when, unless):
* lisp/emacs-lisp/byte-run.el (inline): Remove indent rule, redundant.
2010-08-30 15:03:05 +02:00
Chong Yidong
aad4679e7d Add "Version:" and "Package:" Lisp file headers. 2010-08-29 16:10:43 -04:00
Chong Yidong
bd78fa1d54 Add "Package:" file headers to denote built-in packages. 2010-08-29 12:17:13 -04:00
Nathan Weizenbaum
4142607e2f * progmodes/js.el: Make indentation more customizable (Bug#6914).
(js-paren-indent-offset, js-square-indent-offset)
(js-curly-indent-offset): New options.
(js--proper-indentation): Use them.
2010-08-26 16:09:31 -04:00
Daniel Colascione
88a36e604a Avoid using font-lock properties to indent in sh-get-indent-info.
* progmodes/sh-script.el (sh-get-indent-info): Use syntax-ppss
instead of inspecting font-lock properties (Bug#6916).
2010-08-26 11:26:33 -04:00
Kevin Ryde
44a41a47d1 * progmodes/ruby-mode.el (ruby): Add defgroup. 2010-08-24 16:29:44 -04:00
Chong Yidong
edfd00fa82 * lisp/progmodes/python.el: Add Ipython support (Bug#5390).
Based on a patch by Fabian Ezequiel Gallina.

(python-shell-prompt-alist)
(python-shell-continuation-prompt-alist): New options.
(python--set-prompt-regexp): New function.
(inferior-python-mode, run-python, python-shell): Require
ansi-color.  Use python--set-prompt-regexp to set the comint
prompt based on the Python interpreter.
(python--prompt-regexp): New var.
(python-check-comint-prompt)
(python-comint-output-filter-function): Use it.
(run-python): Use a pipe (Bug#5694).
(python-send-region): Send a different Python command if Ipython is in use.
(python-check-version): Use a Python command to find the version.
2010-08-24 16:20:21 -04:00
Chong Yidong
b0126eac41 Merge changes from emacs-23 branch. 2010-08-22 16:02:16 -04:00
Stefan Monnier
8f081e96de * progmodes/make-mode.el (makefile-fill-paragraph): Account for the
extra backslash added to each line.

Fixes: debbugs:6890
2010-08-21 11:19:38 +02:00
Michael Albinus
a67e6f1334 * progmodes/flymake.el (flymake-start-syntax-check-process): Use
`start-file-process' in order to let it run also on remote hosts.
2010-08-18 20:24:52 +02:00
Stefan Monnier
b5ba2d6f9b * lisp/progmodes/octave-mod.el (octave-mode-menu): Make toggle buttons. 2010-08-18 15:12:34 +02:00
Stefan Monnier
9acd1bdcb9 * lisp/progmodes/prolog.el (smie): Require. 2010-08-18 13:01:15 +02:00
Stefan Monnier
ff80a4464a Font-lock '...' strings, plus various simplifications and fixes.
* lisp/progmodes/octave-mod.el (octave-font-lock-keywords): Use regexp-opt.
(octave-font-lock-close-quotes): New function.
(octave-font-lock-syntactic-keywords): New var.
(octave-mode): Use it.  Set beginning-of-defun-function.
(octave-mode-map): Don't override the <foo>-defun commands.
(octave-mode-menu): Pass it directly to easy-menu-define;
remove (now generic) <foo>-defun commands; use info-lookup-symbol.
(octave-block-match-alist): Fix up last change so that
octave-close-block uses the more specific keyword.
(info-lookup-mode): Silence byte-compiler.
(octave-beginning-of-defun): Not interactive any more.
Optimize slightly.
(octave-end-of-defun, octave-mark-defun, octave-in-defun-p): Remove.
(octave-indent-defun, octave-send-defun): Use mark-defun instead.
(octave-completion-at-point-function): Make sure point is within
beg..end.
(octave-reindent-then-newline-and-indent):
Use reindent-then-newline-and-indent.
(octave-add-octave-menu): Remove.
2010-08-17 17:49:30 +02:00
Glenn Morris
f3b554af9d Silence some cc-mode compiler warnings.
* lisp/progmodes/cc-engine.el (c-new-BEG, c-new-END)
(c-fontify-recorded-types-and-refs): Define for compiler.
* lisp/progmodes/cc-mode.el (c-new-BEG, c-new-END): Move definitions
before use.
2010-08-16 23:54:03 -07:00
Chong Yidong
c68263b1fd Give Ruby compilation rule a lower priority than Gnu (Bug#6778).
* progmodes/compile.el (compilation-error-regexp-alist-alist):
Give the Ruby rule a lower priority than Gnu (Bug#6778).

* etc/compilation.txt: Make Cucumber test less verbose.
2010-08-14 20:04:53 -04:00
Tom Tromey
6f1a6fafcf * lisp/progmodes/etags.el (tags-file-name): Mark safe if stringp (Bug#6733). 2010-08-14 19:01:42 -04:00
Stefan Monnier
c5683ceb2c Introduce a new comment style "c" flag.
* src/syntax.c (SYNTAX_FLAGS_COMMENT_STYLEB)
(SYNTAX_FLAGS_COMMENT_STYLEC): New macros.
(SYNTAX_FLAGS_COMMENT_STYLE): Use them, add an argument.
(syntax_prefix_flag_p): New function.
(Fstring_to_syntax): Understand new "c" flag.
(Finternal_describe_syntax_value): Recognize new flag; use the
SYNTAX_FLAGS_* macros.
(scan_sexps_forward, Fparse_partial_sexp): Change representation of
comment style to accomodate the new styles.
(back_comment, forw_comment, Fforward_comment, scan_lists)
(scan_sexps_forward): Update code to obey the new comment style flag.
* src/syntax.h: Move SYNTAX_FLAGS_FOO() macros to syntax.c.
* src/casefiddle.c (casify_region): Use the new syntax_prefix_flag_p.
* lisp/progmodes/octave-mod.el (octave-mode-syntax-table): Use the new "c"
comment style.
* lisp/progmodes/scheme.el (scheme-mode-syntax-table):
* lisp/emacs-lisp/lisp-mode.el (lisp-mode-syntax-table): Remove spurious
"b" flag in "14b" syntax.

Fixes: debbugs:6834
2010-08-12 16:44:16 +02:00
Stefan Monnier
7e82caa7c7 Fix last change.
* lisp/progmodes/octave-mod.el (octave-mode-syntax-table):
Better describe the problem.
(octave-fill-paragraph): Also update caller.
(octave-completion-at-point-function): Fix up typo.
2010-08-12 14:46:24 +02:00
Stefan Monnier
c82d5b11aa Misc code cleanup of octave-mode.el.
* lisp/progmodes/octave-mod.el (octave-mode-map): Remove special bindings
for (un)commenting the region and performing completion.
(octave-mode-menu): Use standard commands for help and completion.
(octave-mode-syntax-table): Support %{..%} comments (sort of).
(octave-mode): Use define-derived-mode.
Set completion-at-point-functions and don't set columns.
Don't disable adaptive-fill-regexp.
(octave-describe-major-mode, octave-comment-region)
(octave-uncomment-region, octave-comment-indent)
(octave-indent-for-comment): Remove.
(octave-indent-calculate): Rename from calculate-octave-indent.
(octave-indent-line): Update caller.
(octave-initialize-completions): No need to make an alist.
(octave-completion-at-point-function): New function.
(octave-complete-symbol): Use it.
(octave-insert-defun): Use define-skeleton.
2010-08-12 13:22:16 +02:00
Stefan Monnier
dc94fc858f * lisp/progmodes/octave-mod.el (octave-mode-map): Use comment-dwim.
(octave-mode): Set comment-add.

Fixes: debbugs:6829
2010-08-12 12:46:44 +02:00
Michael Mauger
3bd2cfef67 Suppress continuation prompts in SQL interactive mode
* progmodes/sql.el: Version 2.5
        (sql-product-alist): Add :prompt-cont-regexp property for several
        database products.
        (sql-prompt-cont-regexp): New variable.
        (sql-output-newline-count, sql-output-by-send): New
        variables. Record number of newlines in input text.
        (sql-send-string): Handle multiple filters and count newlines.
        (sql-send-magic-terminator): Count terminator newline.
        (sql-interactive-remove-continuation-prompt): Filters output to
        remove continuation prompts; one for each newline.
        (sql-interactive-mode): Set up new variables, prompt regexp and
        output filter.
        (sql-mode-sqlite-font-lock-keywords): Correct some keywords.
        (sql-make-alternate-buffer-name): Correct buffer name in edge
        cases.
2010-08-10 19:04:32 -04:00
Chong Yidong
7815fe1985 Merge changes from emacs-23 branch 2010-08-08 17:12:29 -04:00
Michael Mauger
b93d4f22cb * progmodes/sql.el (sql-mode-sqlite-font-lock-keywords): Added
SQLite 3 keywords, functions and datatypes.
        (sql-interactive-mode): Removed `comint-process-echoes' set to t
        (Bug#6686).
2010-08-07 19:57:07 -04:00
Alan Mackenzie
bd4c5e3e06 cc-cmds.el (c-mask-paragraph, c-fill-paragraph): Fix for the case that a
C style comment has its delimiters alone on their respective lines.
2010-08-06 19:48:59 +00:00
Juanma Barranquero
9ebc731b45 which-func.el (which-func-format): Split help-echo text into lines. 2010-08-03 18:39:37 +02:00
Alan Mackenzie
452ea85502 Enhance Java Mode to handle Java 5.0 (Tiger) and Java 6 (Mustang).
Contributed by Nathaniel Flath.
2010-07-31 20:01:08 +00:00
Alan Mackenzie
28e5cf7c6a cc-cmds.el (c-mask-paragraph): Fix bug #6688, Auto-fill broken in C/C++
modes.
2010-07-31 09:39:24 +00:00
Michael Albinus
683cc385a4 * net/tramp.el (tramp-handle-start-file-process): Check only for
`remote-tty' process property.
(tramp-open-shell): Don't check for tty.
(tramp-open-connection-setup-interactive-shell): Set `remote-tty'
process property.

* progmodes/gdb-mi.el (gdb-init-1): Check also for tty on a remote
host.
2010-07-29 15:13:11 +02:00
Michael Albinus
b21d3ceb6f * progmodes/gud.el (gud-common-init): Check for remoteness of
`file', and not of `default-directory'.
2010-07-28 12:08:16 +02:00
Tom Tromey
ae0c249465 Derive programming modes from prog-mode.
* progmodes/js.el (js-mode):
* progmodes/make-mode.el (makefile-mode):
* progmodes/simula.el (simula-mode):
* progmodes/tcl.el (tcl-mode): Derive from prog-mode.
2010-07-27 18:37:25 +02:00
Juanma Barranquero
0ed082fedf Merge from emacs-23 2010-07-27 04:10:05 +02:00
Markus Triska
9cf2db99c6 * lisp/progmodes/ps-mode.el: Use comint.
(ps-run-mode-map): Adapt for comint-mode; omit "\r", [return]..
(ps-mode-other-newline): Simplify.
(ps-run-mode): Derive from comint-mode instead of
fundamental-mode, yielding input history etc.
(ps-run-start, ps-run-quit, ps-run-clear, ps-run-region)
(ps-run-send-string): Adapt for comint-mode.
(ps-run-newline): Remove now unneeded function.

Fixes: debbugs:5954
2010-07-24 00:51:37 +02:00
Michael Mauger
5474c40f3e SQL Mode Version2.4 - Improved login prompting
* progmodes/sql.el: Version 2.4.  Improved Login prompting.
	(sql-login-params): New widget definition.
	(sql-oracle-login-params, sql-mysql-login-params)
	(sql-solid-login-params, sql-sybase-login-params)
	(sql-informix-login-params, sql-ingres-login-params)
	(sql-ms-login-params, sql-postgres-login-params)
	(sql-interbase-login-params, sql-db2-login-params)
	(sql-linter-login-params): Use it.
	(sql-sqlite-login-params): Use it; Define "database" parameter as
	a file name.
	(sql-sqlite-program): Change to "sqlite3"
	(sql-comint-sqlite): Make sure database name is complete.
	(sql-for-each-login): New function.
	(sql-connect, sql-save-connection): Use it.
	(sql-get-login-ext): New function.
	(sql-get-login): Use it.
	(sql-make-alternate-buffer-name): Handle :file parameters.
2010-07-22 20:59:43 -04:00
Michael Mauger
d26b0ea9c5 SQL Mode V2.3 - cleanup connection handling 2010-07-20 21:56:55 -04:00
Alan Mackenzie
00af0b67f8 Enhance `c-file-style' in file/directory local variables.
cc-mode.el (c-count-cfss): New function.
(c-before-hack-hook): Call `c-set-style' differently according to whether
c-file-style was set in file or directory local variables.
2010-07-18 20:28:00 +00:00
Michael Mauger
30c4d8dcb8 SQL Mode V2.2 - Added sql-connect and sql-connection-alist 2010-07-18 14:44:32 -04:00
Chong Yidong
e72b6fa4b2 Doc fix to commentary (Bug#6653). 2010-07-17 17:57:06 -04:00
Simon South
2c6a779afe (delphi-previous-indent-of): Indent case blocks within record
declarations (i.e. variant parts) correctly.
2010-07-14 23:12:37 -04:00
Simon South
a11b38eea2 (delphi-token-at): Give newlines precedence over literal tokens when
parsing so newlines aren't "absorbed" by single-line comments.
Corrects the indentation of case blocks that have a comment on the
first line.
2010-07-14 22:34:47 -04:00
Aleksei Gusev
dce3463576 Add compilation regexps for cucumber and ruby.
* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Add
regexps for cucumber and ruby.
2010-07-10 15:47:59 -04:00
Chong Yidong
2ec1b5ee34 Merge changes from emacs-23 branch. 2010-07-10 14:52:53 -04:00
Christoph Scholtes
4565b08e18 Add some font-locking for Python 2.7.
* lisp/progmodes/python.el (python-font-lock-keywords): Add Python 2.7
builtins (BufferError, BytesWarning, WindowsError; callables
bin, bytearray, bytes, format, memoryview, next, print; __package__).
2010-07-06 21:46:58 -07:00
Chong Yidong
2286174ec6 * progmodes/ruby-mode.el (ruby-mode-map): Don't bind TAB.
(ruby-mode): Bind indent-line-function (Bug#5119).
2010-06-27 14:18:49 -04:00
Glenn Morris
943375a636 Minor js.el fix.
* lisp/progmodes/js.el (js-mode-map): Use standard capitalization and
ellipses for menu entries.
2010-06-22 00:04:20 -07:00
Alan Mackenzie
43a91810d3 Fix an indentation bug:
progmodes/cc-mode.el (c-common-init): Initialise c-new-BEG/END.
(c-neutralize-syntax-in-and-mark-CPP): c-new-BEG/END: Take account
of existing values.

progmodes/cc-engine.el (c-clear-<-pair-props-if-match-after)
(c-clear->-pair-props-if-match-before): now return t when they've cleared
properties, nil otherwise.
(c-before-change-check-<>-operators): Set c-new-beg/end correctly by
taking account of the existing value.

progmodes/cc-defs.el (c-clear-char-property-with-value-function): Fix
this to clear the property rather than overwriting it with nil.
2010-06-21 21:08:26 +00:00
Alan Mackenzie
05c123e62c * progmodes/cc-mode.el (c-before-hack-hook): When the mode is set in file
local variables, set it first.
2010-06-20 16:17:05 +00:00
Glenn Morris
4111f0c731 Close bug#6450.
* lisp/progmodes/idlwave.el (idlwave-action-and-binding):
Fix typo in 2009-12-03 change.
2010-06-18 19:27:57 -07:00
Bob Rogers
b15922cc08 * lisp/progmodes/sql.el (sql-connect-mysql): Fix typo. 2010-06-14 20:34:12 -07:00
Juanma Barranquero
8175cb9021 progmodes/ada-xref.el (ada-prj-ada-project-path-sep): Set from `path-separator'. 2010-05-30 04:51:53 +02:00