1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-15 17:00:26 +00:00
Commit Graph

880 Commits

Author SHA1 Message Date
Glenn Morris
a3ac56ca55 * test/automated/message-mode-tests.el (message-mode-propertize):
Handle non-writable HOME; eg on hydra.nixos.org.
2015-04-24 00:10:11 -07:00
Paul Eggert
7128b0de89 Omit needless "\ " after multibyte then newline
* src/print.c: Include <c-ctype.h>, for c_isxdigit.
(print_object): When print-escape-multibyte is non-nil and a
multibyte character is followed by a newline or formfeed, followed
by a hex digit, don't output a needless "\ " before the hex digit.
* test/automated/print-tests.el (print-hex-backslash): New test.
2015-04-22 11:00:16 -07:00
Glenn Morris
d870ac2119 ; * test/automated/message-mode-tests.el: Standardize license notice. 2015-04-20 18:59:39 -07:00
Paul Eggert
8f1eda7a8a Spelling fixes 2015-04-19 23:59:46 -07:00
Paul Eggert
870287327b ; Convert ChangeLog history files to "Bug#NNNN" 2015-04-18 19:48:24 -07:00
Stefan Monnier
66ae3cff96 * src/lread.c (intern_1): Make sure we'd find the symbol we add
Fixes: debbugs:20334

* src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
2015-04-15 12:15:14 -04:00
Stefan Monnier
45d75c0b75 automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
Don't use call-next-method in a cl-defmethod.
2015-04-14 23:06:44 -04:00
Nicolas Petton
17d667b387 Add seq-intersection and seq-difference to the seq library
* lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
functions.

* test/automated/seq-tests.el: Add tests for seq-intersection and
seq-difference.

* doc/lispref/sequences.texi: Add documentation for seq-intersection
and seq-difference.
2015-04-15 01:55:03 +02:00
Fabián Ezequiel Gallina
659609d182 python.el: Keep symmetry on sexp navigation with parens
Fixes: debbugs:19954

* lisp/progmodes/python.el
(python-nav--forward-sexp): Add argument skip-parens-p.
(python-nav-forward-sexp, python-nav-backward-sexp)
(python-nav-forward-sexp-safe)
(python-nav-backward-sexp-safe): Use it.

* test/automated/python-tests.el
(python-nav-forward-sexp-1): Fix test.
2015-04-12 22:43:44 -03:00
Artur Malabarba
fe3b5b3f45 * test/automated/package-test.el (with-package-test): Kill Packages buffer 2015-04-12 16:16:06 +01:00
João Távora
25449e7296 Summary: Improve sexp-based movement in message-mode
Works by giving citations and smileys a different syntax.  This helps
modes like `show-paren-mode', `electric-pair-mode', and C-M-*
sexp-based movement.

* lisp/gnus/message.el (message--syntax-propertize): New function.
(message-mode): Set syntax-related vars.
(message-smileys): New variable.

* test/automated/message-mode-tests.el: New file
2015-04-12 13:29:05 +01:00
Artur Malabarba
f80027b37a * test/automated/package-test.el: Fix new test 2015-04-12 02:14:03 +01:00
Artur Malabarba
7cae5c3cb6 * test/automated/package-test.el: Test async functionality
(package-test-update-archives-async): New test
2015-04-12 01:12:33 +01:00
Daiki Ueno
f55ea05bdf Add facility to collect stderr of async subprocess
* src/w32.h (register_aux_fd): New function declaration.
* src/w32.c (register_aux_fd): New function.
* src/process.h (struct Lisp_Process): New member stderrproc.
* src/process.c (PIPECONN_P): New macro.
(PIPECONN1_P): New macro.
(Fdelete_process, Fprocess_status, Fset_process_buffer)
(Fset_process_filter, Fset_process_sentinel, Fstop_process)
(Fcontinue_process): Handle pipe process specially.
(create_process): Respect p->stderrproc.
(Fmake_pipe_process): New function.
(Fmake_process): Add new keyword argument :stderr.
(wait_reading_process_output): Specially handle a pipe process when
it gets an EOF.
(syms_of_process): Register Qpipe and Smake_pipe_process.

* doc/lispref/processes.texi (Asynchronous Processes): Document
`make-pipe-process' and `:stderr' keyword of `make-process'.

* lisp/subr.el (start-process): Suggest to use `make-process' handle
standard error separately.

* test/automated/process-tests.el (process-test-stderr-buffer)
(process-test-stderr-filter): New tests.

* etc/NEWS: Mention new process type `pipe' and its usage with the
`:stderr' keyword of `make-process'.
2015-04-11 07:59:27 +09:00
Michael Albinus
ca401f6fdc Handle symlinked test directory in tramp-tests.el
* test/automated/tramp-tests.el (tramp-test18-file-attributes)
(tramp--test-check-files): Use `file-truename' for directories.
2015-04-10 12:53:01 +02:00
Stefan Monnier
6083965958 css-mode.el (css-smie-rules): Fix indentation after complex selectors
Fixes: debbugs:20282

* lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
inner structure of selectors.
2015-04-09 10:51:23 -04:00
Fabián Ezequiel Gallina
c9415ccbf8 python.el: Indent docstring lines to base-indent
Fixes: debbugs:19595

Thanks to immerrr <immerrr@gmail.com> for reporting and providing
an initial patch.

* lisp/progmodes/python.el
(python-indent-context): Add :inside-docstring context.
(python-indent--calculate-indentation): Handle :inside-docstring.
(python-indent-region): Re-indent docstrings.

* test/automated/python-tests.el (python-indent-region-5)
(python-indent-inside-string-2): Fix tests.
2015-04-09 01:41:55 -03:00
Samer Masterson
c44f5b046b * lisp/eshell: Make backslash a no-op in front of normal chars
Fixes: debbugs:8531

* lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
(eshell-parse-backslash): Return escaped character after backslash
if it is special.  Otherwise, if the backslash is not in a quoted
string, ignore the backslash and return the character after; if
the backslash is in a quoted string, return the backslash and the
character after.

* test/automated/eshell.el (eshell-test/escape-nonspecial)
(eshell-test/escape-nonspecial-unicode)
(eshell-test/escape-nonspecial-quoted)
(eshell-test/escape-special-quoted): Add tests for new
`eshell-parse-backslash' behavior.
2015-04-08 22:31:51 -04:00
Paul Eggert
dd1404cca3 Rename ChangeLogs for gitlog-to-changelog
This patch was implemented via the following shell commands:
find * -name ChangeLog |
sed 's,.*,git mv & &.1,
s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
s, src/ChangeLog\.1$, src/ChangeLog.13,' |
sh
git commit -am"[this commit message]"
2015-04-07 00:00:06 -07:00
Artur Malabarba
b6610d5547 emacs-lisp/package.el: Refactor pre-execute prompt 2015-04-06 11:19:04 +01:00
Fabián Ezequiel Gallina
deea36f0ec python.el: Enhance docstring detection following PEP-257.
* lisp/progmodes/python.el (python-docstring-at-p): Remove function.
(python-info-assignment-statement-p): New function.
(python-info-assignment-continuation-line-p): Use it.
(python-info-docstring-p): New function.
(python-font-lock-syntactic-face-function)
(python-fill-string): Use it.

* test/automated/python-tests.el (python-info-assignment-statement-p-1)
(python-info-assignment-statement-p-2)
(python-info-assignment-statement-p-3, python-info-docstring-p-1)
(python-info-docstring-p-2, python-info-docstring-p-3)
(python-info-docstring-p-4, python-info-docstring-p-5)
(python-info-docstring-p-6): New tests.
2015-04-05 23:58:13 -03:00
Michael Albinus
16eec6fc55 Remove entry from last sync with emacs-24, it wasn't applicable 2015-04-05 09:30:03 +02:00
Paul Eggert
c1b8b17a7a Merge from origin/emacs-24
dd3f567 Fix tramp-tests.el

Conflicts:
	test/ChangeLog
2015-04-04 14:58:35 -07:00
Dmitry Gutov
f2fbd4b712 js-mode: Don't indent inside a multiline string literal
* lisp/progmodes/js.el (js-indent-line): Do nothing when bol is inside
a string (https://github.com/mooz/js2-mode/issues/227).
2015-04-03 06:37:31 +03:00
Artur Malabarba
454184fd59 automated/package-test.el (package-test-update-archives): Fix test 2015-04-01 17:55:52 +01:00
Michael Albinus
dd3f567893 Fix tramp-tests.el
* automated/tramp-tests.el (tramp-test06-directory-file-name):
Fix docstring and last test.
2015-04-01 17:04:07 +02:00
Artur Malabarba
ebe1f89169 * automated/package-test.el: Avoid async while testing. 2015-04-01 16:00:09 +01:00
Nicolas Petton
8478885dfa Bump version to 24.5 for the release-candidate 2015-03-27 09:52:01 +01:00
Wolfgang Jenkner
792d44b3c3 Preserve face text properties in comint prompt.
Fixes: debbugs:20084

* lisp/font-lock.el (font-lock--remove-face-from-text-property): New
function.  Adapted from the previously commented out
remove-single-text-property.
Remove previously unused and commented out auxiliary function
remove-text-property and obsolete comment.
* lisp/comint.el (comint-output-filter): Use it to remove
comint-highlight-prompt.
(comint-snapshot-last-prompt, comint-output-filter): Use
font-lock-prepend-text-property for comint-highlight-prompt.
* test/automated/textprop-tests.el: New file.
(textprop-tests-font-lock--remove-face-from-text-property): New test.

Thus, the original face text property of a prompt "candidate" (the
last line of an output chunk not ending with a newline) is
preserved.  This amends the fix for bug#14744.
2015-03-27 03:47:08 +01:00
Dmitry Gutov
58c86059c6 Only escape quotation mark, backslash and cntrl U+0000 to U+001F
* lisp/json.el (json-special-chars): Don't treat `/' specially, there's
no need to.
(json-encode-string): Only escape quotation mark, backslash and
the control characters U+0000 to U+001F.
2015-03-25 21:54:29 +02:00
Michael Albinus
9d70310b02 Extend Tramp tests
* automated/tramp-tests.el (tramp-test18-file-attributes)
(tramp--test-check-files): Extend tests.
(tramp-test31-utf8): Do not skip for tramp-adb.el.
2015-03-24 20:08:52 +01:00
Glenn Morris
1e043f5e79 epg-tests.el: Standardize license notice. 2015-03-24 13:58:46 -04:00
Daiki Ueno
e5ce95fa4a Add tests for epg.el
* automated/epg-tests.el: New file.
* automated/data/epg/pubkey.asc: New file.
* automated/data/epg/seckey.asc: New file.
2015-03-24 14:47:54 +09:00
Jackson Ray Hamilton
f4c23f4583 Have `sgml-attribute-offset' control SGML attribute indentation
Fixes: debbugs:20161

* textmodes/sgml-mode.el (sgml-attribute-offset): New defcustom.
(sgml-calculate-indent): Use `sgml-attribute-offset' for attribute
indentation.
2015-03-22 20:47:43 -07:00
Glenn Morris
70a8bbe443 json-tests.el: Fix copyright 2015-03-22 16:50:00 -07:00
Dmitry Gutov
127377c711 Add a few tests for jsone.el
* test/automated/json-tests.el: New file.
2015-03-23 00:52:07 +02:00
Stefan Monnier
50c117fe86 EIEIO: Change class's representation to unify instance & class slots
* lisp/emacs-lisp/eieio-core.el (eieio--class): Change field names and order
to match those of cl--class; use cl--slot for both instance slots and
class slots.
(eieio--object-num-slots): Use cl-struct-slot-info.
(eieio--object-class): Rename from eieio--object-class-object.
(eieio--object-class-name): Remove.
(eieio-defclass-internal): Adjust to new slot representation.
Store doc in class rather than in `variable-documentation'.
(eieio--perform-slot-validation-for-default): Change API to take
a slot object.
(eieio--slot-override): New function.
(eieio--add-new-slot): Rewrite.
(eieio-copy-parents-into-subclass): Rewrite.
(eieio--validate-slot-value, eieio--validate-class-slot-value)
(eieio-oref-default, eieio-oset-default)
(eieio--class-slot-name-index, eieio-set-defaults): Adjust to new
slot representation.
(eieio--c3-merge-lists): Simplify.
(eieio--class/struct-parents): New function.
(eieio--class-precedence-bfs): Use it.

* lisp/emacs-lisp/eieio.el (with-slots): Use macroexp-let2.
(object-class-fast): Change recommend replacement.
(eieio-object-class): Rewrite.
(slot-exists-p): Adjust to new slot representation.
(initialize-instance): Adjust to new slot representation.
(object-write): Adjust to new slot representation.

* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
Manually map initargs to slot names.
(eieio-persistent-validate/fix-slot-value): Adjust to new
slot representation.

* lisp/emacs-lisp/eieio-compat.el (eieio--generic-static-symbol-specializers):
Extract from eieio--generic-static-symbol-generalizer.
(eieio--generic-static-symbol-generalizer): Use it.

* lisp/emacs-lisp/eieio-custom.el (eieio-object-value-create)
(eieio-object-value-get): Adjust to new slot representation.

* lisp/emacs-lisp/eieio-datadebug.el (data-debug/eieio-insert-slots):
Declare to silence warnings.
(data-debug-insert-object-button): Avoid `object-slots'.
(data-debug/eieio-insert-slots): Adjust to new slot representation.

* lisp/emacs-lisp/eieio-opt.el (eieio--help-print-slot): New function
extracted from eieio-help-class-slots.
(eieio-help-class-slots): Use it.  Adjust to new slot representation.

* test/automated/eieio-test-methodinvoke.el (make-instance): Use new-style
`subclass' specializer for a change.

* test/automated/eieio-test-persist.el (persist-test-save-and-compare):
Adjust to new slot representation.

* test/automated/eieio-tests.el (eieio-test-17-virtual-slot): Don't use
initarg in `oset'.
(eieio-test-32-slot-attribute-override-2): Adjust to new
slot representation.

* lisp/emacs-lisp/cl-preloaded.el (cl--class): Fix type of `parents'.
2015-03-18 23:02:26 -04:00
Stefan Monnier
6f73c465a8 * cl-macs.el (cl--transform-lambda): Refine last change.
Fixes: debbugs:20125

* test/automated/cl-lib-tests.el: Use lexical-binding.
(cl-lib-arglist-performance): Refine test to the case where one of the
fields has a non-nil default value.  Use existing `mystruct' defstruct.
(cl-lib-struct-accessors): Use `pcase' to be a bit more flexible in the
accepted outputs.
2015-03-17 14:30:42 -04:00
Ken Brown
a961dcedeb Don't test "\t" in file names on Cygwin.
Fixes: debbugs:20119

* test/automated/tramp-tests.el (tramp--test-special-characters): Don't
test "\t" in file names on Cygwin.
2015-03-16 16:19:46 -04:00
Stefan Monnier
801eda8a2a * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Optimize &aux.
Rework to avoid cl--do-arglist in more cases; add comments to explain what's
going on.
(cl--do-&aux): New function extracted from cl--do-arglist.
(cl--do-arglist): Use it.
* lisp/emacs-lisp/cl-generic.el: Add Version: header, for ELPA purposes.
2015-03-16 16:11:38 -04:00
Jackson Ray Hamilton
f0e8673a9e * indent/js-indent-init-dynamic.js: Fix spelling error. 2015-03-10 22:07:10 -07:00
Paul Eggert
2a1be9eb23 Prefer "initialize" to "initialise"
* lisp/progmodes/js.el (js-indent-first-init):
Rename from js-indent-first-initialiser, to avoid worrying about
American vs British spelling.  All uses changed.
* test/indent/js-indent-init-t.js: Rename from
indent/js-indent-first-initialiser-t.js.
* test/indent/js-indent-init-dynamic.js: Rename from
test/indent/js-indent-first-initialiser-dynamic.js.
2015-03-10 16:29:59 -07:00
Glenn Morris
6c9681afe9 * lisp/progmodes/js.el (js-indent-first-initialiser): Fix doc, type, version.
First line of the doc string should be a complete sentence.

* etc/NEWS: Mention new option.

# Fix associated ChangeLog entries.
2015-03-10 18:40:09 -04:00
Jackson Ray Hamilton
933e0ab4b0 New indentation option for js-mode
* lisp/progmodes/js.el (js--proper-indentation): Add new custom option
`js-indent-first-initialiser' and a function to utilize it,
`js--maybe-goto-declaration-keyword-end'.

* test/indent/js.js: Add local variables.

* test/indent/js-indent-first-initialiser-t.js: New test for
`js-indent-first-initialiser'.

* test/indent/js-indent-first-initialiser-dynamic.js: New test for
`js-indent-first-initialiser'.
2015-03-10 10:19:07 -07:00
Przemyslaw Wojnowski
778de7270b * test/automated/cl-lib-tests.el: Add tests for plusp, second, ...
(cl-lib-test-plusp, cl-lib-test-minusp)
(cl-lib-test-oddp, cl-lib-test-evenp, cl-lib-test-first)
(cl-lib-test-second, cl-lib-test-third, cl-lib-test-fourth)
(cl-lib-test-fifth, cl-lib-test-sixth, cl-lib-test-seventh)
(cl-lib-test-eighth, cl-lib-test-ninth, cl-lib-test-tenth)
(cl-lib-test-endp, cl-lib-test-nth-value)
(cl-lib-nth-value-test-multiple-values, cl-test-caaar, cl-test-caadr)
(cl-test-ldiff): New tests.
(cl-digit-char-p): Tighten the test.
2015-03-09 23:14:36 -04:00
Dmitry Gutov
b20113f0f7 Automate 'make all' in test/indent 2015-03-10 02:39:01 +02:00
Nicolas Petton
b7ed48c3ce Add seq-into as a public function
* lisp/emacs-lisp/seq.el: Make seq-into a public function (replacing
seq--into)
* test/automated/seq-tests.el: Add tests for seq-into
* doc/lispref/sequences.texi: Add documentation for seq-into
2015-03-09 12:50:24 +01:00
Dmitry Gutov
d15317cc17 Add an indent test example for bug#20026
* test/indent/ruby.rb: Add an example for bug#20026.
2015-03-08 20:57:47 +02:00
Dmitry Gutov
d03ec1cf16 Fix test/indent/js.js
* test/indent/js.js: Set `js-indent-level' to 2. Fix indentation in an
example.
2015-03-08 20:30:23 +02:00
Dmitry Gutov
77ab7f8455 Teach js-mode about ES6 template strings
* lisp/progmodes/js.el (js-mode-syntax-table): Add an entry for `.
2015-03-05 04:33:36 +02:00