summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
* * lisp/emacs-lisp/nadvice.el (remove-function): Align withStefan Monnier2013-11-171-1/+1
| | | | add-function's behavior.
* * lisp/emacs-lisp/cconv.el (cconv-convert): Print warning instead ofNathan Trapuzzano2013-11-101-3/+3
| | | | | | throwing error over malformed let/let*. Fixes: debbugs:15814
* * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet): Use macroexp-progn.Stefan Monnier2013-11-071-4/+3
| | | | (cl--block-wrapper): Fix last accidental change.
* * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet): Print warning forNathan Trapuzzano2013-11-061-6/+14
| | | | | | malformed bindings form. Fixes: debbugs:15814
* * lisp/electric.el (electric-indent-local-mode): New minor mode.Stefan Monnier2013-11-051-0/+4
| | | | | | (electric-indent-functions-without-reindent): New var. (electric-indent-post-self-insert-function): Use it. * lisp/emacs-lisp/gv.el (buffer-local-value): Add setter.
* * lisp/progmodes/python.el (python-mode): Remove incorrect text from docstring.Bozhidar Batsov2013-11-051-10/+3
| | | | | | | * lisp/progmodes/scheme.el (scheme-mode): Remove incorrect text from docstring. * lisp/progmodes/prolog.el (prolog-mode): Remove incorrect text from docstring. * lisp/emacs-lisp/lisp-mode.el (lisp-mode, lisp-interaction-mode, emacs-lisp-mode): Remove incorrect text from docstring.
* Spelling fixes.Paul Eggert2013-11-041-1/+1
|
* * lisp/rect.el (rectangle--highlight-for-redisplay):Stefan Monnier2013-11-041-2/+2
| | | | | * lisp/emacs-lisp/smie.el (smie--next-indent-change): Use buffer-chars-modified-tick.
* * lisp/emacs-lisp/byte-run.el (defmacro, defun): Set their `indent' property.Stefan Monnier2013-11-041-1/+2
|
* * lisp/emacs-lisp/cl-indent.el (with-compilation-unit): Add rule.Helmut Eller2013-11-041-0/+1
| | | | Fixes: debbugs:15782
* * lisp/emacs-lisp/cconv.el (cconv-convert): Check form of let binding.Nathan Trapuzzano2013-11-041-6/+9
| | | | Fixes: debbugs:15786
* * lisp/emacs-lisp/helpers.el: Move from helpers.el. Use lexical-binding.Stefan Monnier2013-11-041-0/+42
|
* Add Archive column to package list.Ted Zlatanov2013-11-041-0/+7
| | | | | | * emacs-lisp/package.el (package-menu-mode) (package-menu--print-info, package-menu--archive-predicate): Add Archive column to package list.
* * lisp/emacs-lisp/smie.el (smie-rule-parent): Always callStefan Monnier2013-11-031-9/+10
| | | | | | | smie-indent-virtual rather than only for hanging tokens. (smie--next-indent-change): New helper command. * lisp/progmodes/ruby-mode.el (ruby-smie--rule-parent-skip-assign): Remove. (ruby-smie-rules): Use smie-rule-parent instead.
* * lisp/emacs-lisp/package.el (package-version-join): Recognize snapshot ↵Bozhidar Batsov2013-11-021-2/+3
| | | | versions.
* * lisp/Makefile.in (autoloads): Do not use abs_lisp.Glenn Morris2013-10-301-0/+3
| | | | | | | This should stop recent weirdness, eg: http://lists.gnu.org/archive/html/emacs-diffs/2013-10/msg00381.html * lisp/emacs-lisp/autoload.el: Comment.
* * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):Glenn Morris2013-10-301-1/+1
| | | | | | | `newline' does not respect `standard-output', so use `princ'. Otherwise you can get \n inserted in the wrong buffer, eg http://lists.gnu.org/archive/html/emacs-diffs/2013-10/msg00379.html
* * lisp/emacs-lisp/package.el (lm-homepage): Declare.Glenn Morris2013-10-291-0/+2
|
* Cleanup namespace of dos-w32.el.Stefan Monnier2013-10-291-5/+16
| | | | | | | | | | | | | | | | | | | | | | | * lisp/dos-w32.el (minibuffer-history-case-insensitive-variables) (path-separator, null-device, buffer-file-coding-system) (lpr-headers-switches): Check system-type before modifying them. (find-buffer-file-type-coding-system): Mark obsolete. (w32-find-file-not-found-set-buffer-file-coding-system): Rename from find-file-not-found-set-buffer-file-coding-system. (w32-untranslated-filesystem-list, w32-untranslated-canonical-name): (w32-add-untranslated-filesystem, w32-remove-untranslated-filesystem) (w32-direct-print-region-use-command-dot-com, w32-untranslated-file-p): (w32-direct-print-region-helper, w32-direct-print-region-function) (w32-direct-ps-print-region-function): Rename by adding a "w32-" prefix. * lisp/startup.el (normal-top-level-add-subdirs-to-load-path): * lisp/ps-print.el (ps-print-region-function): * lisp/lpr.el (print-region-function): Use new name. * lisp/simple.el (copy-region-as-kill): Fix call to region-extract-function. * lisp/emacs-lisp/bytecomp.el (byte-defop-compiler): Add new `2-and' handler. (byte-compile-and-folded): New function. (=, <, >, <=, >=): Use it.
* * lisp/emacs-lisp/package.el (package--download-one-archive)Stefan Monnier2013-10-291-10/+13
| | | | (describe-package-1): Don't query the user about final newline.
* * emacs-lisp/ert.el (ert-run-tests-interactively):Michael Albinus2013-10-251-5/+5
| | | | Use `completing-read'. (Bug#9756)
* * lisp/emacs-lisp/smie.el: New smie-config system.Stefan Monnier2013-10-241-4/+350
| | | | | | | | | | | | | | | | | | | | | | (smie-config): New defcustom. (smie-edebug, smie-config-show-indent, smie-config-set-indent) (smie-config-guess, smie-config-save): New commands. (smie-config--mode-local, smie-config--buffer-local) (smie-config--trace, smie-config--modefuns): New vars. (smie-config--advice, smie-config--mode-hook) (smie-config--setter, smie-config-local, smie-config--get-trace) (smie-config--guess-value, smie-config--guess): New functions. (smie-indent-forward-token, smie-indent-backward-token): Don't copy text properties. Treat "string fence" syntax like string syntax. * lisp/progmodes/sh-script.el (sh-use-smie): Change default. (sh-smie-sh-rules, sh-smie-rc-rules): Obey legacy sh-indent-* vars. (sh-var-value): Simplify by CSE. (sh-show-indent, sh-set-indent, sh-learn-line-indent) (sh-learn-buffer-indent): Redirect to their SMIE equivalent when SMIE is used. (sh-guess-basic-offset): Use cl-incf. (sh-guess-basic-offset): Use push+nreverse to avoid O(n^2).
* * lisp/emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-2): Fix cut&paste.Helmut Eller2013-10-241-4/+2
| | | | Fixes: debbugs:15699
* * emacs-lisp/ert.el (ert-deftest): Bind macro `skip-unless'.Michael Albinus2013-10-241-21/+80
| | | | | | | | | | | | | (ert-test-skipped): New error. (ert-skip, ert-stats-skipped): New defuns. (ert--skip-unless): New macro. (ert-test-skipped): New struct. (ert--run-test-debugger, ert-test-result-type-p) (ert-test-result-expected-p, ert--stats, ert-stats-completed) (ert--stats-set-test-and-result, ert-char-for-test-result) (ert-string-for-test-result, ert-run-tests-batch) (ert--results-update-ewoc-hf, ert-run-tests-interactively): Handle skipped tests.
* * lisp/emacs-lisp/smie.el (smie-rule-parent): Fix opener-test.Stefan Monnier2013-10-221-1/+2
| | | | | | * lisp/progmodes/ruby-mode.el (ruby-smie-rules): Remove corresponding workaround. Fix indentation rule of ";" so it also applies when ";" is the parent.
* * lisp/emacs-lisp/lisp.el (lisp-completion-at-point): Complete var names forStefan Monnier2013-10-171-0/+11
| | | | let-bindings.
* * configure.ac [alpha]: Explicit error in non-ELF case. Glenn Morris2013-10-131-2/+2
| | | | | | | | | * doc/emacs/ack.texi (Acknowledgments): Comment out old alpha stuff. * lisp/emacs-lisp/authors.el (authors-fixed-entries): Comment out old alpha stuff. Fixes: debbugs:15601
* Use accented form of some namesGlenn Morris2013-10-122-3/+20
| | | | | | | | | | * doc/emacs/ack.texi (Acknowledgments): * doc/emacs/emacs.texi (Acknowledgments): * doc/lispref/intro.texi (Acknowledgments): Use accented form of some names. * lisp/emacs-lisp/authors.el (authors-aliases, authors-ignored-files): Add some entries. (authors-fixed-entries): Use accented form of name.
* * lisp/emacs-lisp/smie.el (smie--matching-block-data): Invalidate theDmitry Gutov2013-10-111-3/+5
| | | | | cache also after commands that modify the buffer but don't move point.
* authors.el triviaGlenn Morris2013-10-091-4/+8
| | | | | | * lisp/emacs-lisp/authors.el (authors-aliases, authors-fixed-case): Add some entries. (authors): Remove unused local variables.
* * lisp/emacs-lisp/lisp-mode.el: Font-lock cl-lib constructs.Stefan Monnier2013-10-081-5/+245
| | | | | | | | | | (lisp-el-font-lock-keywords, lisp-el-font-lock-keywords-1) (lisp-el-font-lock-keywords-2, lisp-cl-font-lock-keywords) (lisp-cl-font-lock-keywords-1, lisp-cl-font-lock-keywords-2): New constants. (lisp-mode-variables): New `elisp' argument. (emacs-lisp-mode): Use it. * lisp/font-lock.el (lisp-font-lock-keywords, lisp-font-lock-keywords-1) (lisp-font-lock-keywords-2): Move to lisp-mode.el.
* * lisp/emacs-lisp/backquote.el (backquote-process): Catch uses of , and ,@Stefan Monnier2013-10-081-2/+9
| | | | | | with more than one argument. Fixes: debbugs:15538
* * lisp/emacs-lisp/smie.el (smie-next-sexp): Refine last fix.Stefan Monnier2013-10-071-3/+5
| | | | | * lisp/progmodes/ruby-mode.el (ruby-smie-rules): Tweak handling of open braces.
* * lisp/emacs-lisp/easymenu.el (easy-menu-create-menu): Use closures.Stefan Monnier2013-10-071-13/+14
|
* * lisp/emacs-lisp/lisp-mode.el (eval-defun-2): Simplify, using lexical-binding.Stefan Monnier2013-10-071-22/+20
|
* * lisp/emacs-lisp/tq.el (tq-create): Use a closure instead of `(lambda...).Stefan Monnier2013-10-071-3/+2
|
* Get Ruby's SMIE code to pass the test suite.Stefan Monnier2013-10-051-1/+1
| | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/ruby-mode.el (ruby-use-smie): Change default. (ruby-comment-column): Follow the global default, by default. (ruby-smie-grammar): Add assignment syntax. (ruby-smie--implicit-semi-p): No implicit semi-colon after an open-paren, a comma, or a \. (ruby-smie--forward-token, ruby-smie--backward-token): Handle heredocs, and line continuations. (ruby-smie-rules): Adjust handling of open-paren, now that it's never followed by implicit semi-colons. Add rule for string concatenation and for indentation at BOB. (ruby-forward-sexp, ruby-backward-sexp): Adjust for when smie is in use. * lisp/emacs-lisp/smie.el (smie-next-sexp): Don't go back to pos before calling next-sexp, since next-token may have skipped chars which next-sexp doesn't know should be skipped! * test/indent/ruby.rb: Port a few cases from automated/ruby-mode-tests.el. Adjust indentation of continued line to the new SMIE behavior.
* * lisp/emacs-lisp/syntax.el (syntax-ppss): Doc fix.Xue Fuqiao2013-10-041-2/+7
|
* Add support for package signature checking.Daiki Ueno2013-10-031-20/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/package.el (url-http-file-exists-p) (epg-make-context, epg-context-set-home-directory) (epg-verify-string, epg-context-result-for) (epg-signature-status, epg-signature-to-string) (epg-check-configuration, epg-configuration) (epg-import-keys-from-file): Declare. (package-check-signature): New user option. (package-unsigned-archives): New user option. (package-desc): Add `signed' field. (package-load-descriptor): Set `signed' field if .signed file exists. (package--archive-file-exists-p): New function. (package--check-signature): New function. (package-install-from-archive): Check package signature. (package--download-one-archive): Check archive signature. (package-delete): Remove .signed file. (package-import-keyring): New command. (package-refresh-contents): Import default keyring. (package-desc-status): Add "unsigned" status. (describe-package-1, package-menu--print-info) (package-menu-mark-delete, package-menu--find-upgrades) (package-menu--status-predicate): Support "unsigned" status. * test/automated/data/package/signed/archive-contents: * test/automated/data/package/signed/archive-contents.sig: * test/automated/data/package/signed/signed-good-1.0.el: * test/automated/data/package/signed/signed-good-1.0.el.sig: * test/automated/data/package/signed/signed-bad-1.0.el: * test/automated/data/package/signed/signed-bad-1.0.el.sig: * test/automated/data/package/key.pub: * test/automated/data/package/key.sec: New files. * test/automated/package-test.el (package-test-update-listing) (package-test-update-archives, package-test-describe-package): Adjust to package.el change. (package-test-signed): New test.
* Introduce new bytecodes for efficient catch/condition-case in lexbind.Stefan Monnier2013-10-033-33/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Optimize under `condition-case' and `catch' if byte-compile--use-old-handlers is nil. (disassemble-offset): Handle new bytecodes. * lisp/emacs-lisp/bytecomp.el (byte-pushcatch, byte-pushconditioncase) (byte-pophandler): New byte codes. (byte-goto-ops): Adjust accordingly. (byte-compile--use-old-handlers): New var. (byte-compile-catch): Use new byte codes depending on byte-compile--use-old-handlers. (byte-compile-condition-case--old): Rename from byte-compile-condition-case. (byte-compile-condition-case--new): New function. (byte-compile-condition-case): New function that dispatches depending on byte-compile--use-old-handlers. (byte-compile-unwind-protect): Pass a function to byte-unwind-protect when we can. * lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form): Adjust for the new compilation scheme using the new byte-codes. * src/alloc.c (Fgarbage_collect): Merge scans of handlerlist and catchlist, and make them unconditional now that they're heap-allocated. * src/bytecode.c (BYTE_CODES): Add Bpushcatch, Bpushconditioncase and Bpophandler. (bcall0): New function. (exec_byte_code): Add corresponding cases. Improve error message when encountering an invalid byte-code. Let Bunwind_protect accept a function (rather than a list of expressions) as argument. * src/eval.c (catchlist): Remove (merge with handlerlist). (handlerlist, lisp_eval_depth): Not static any more. (internal_catch, internal_condition_case, internal_condition_case_1) (internal_condition_case_2, internal_condition_case_n): Use PUSH_HANDLER. (unwind_to_catch, Fthrow, Fsignal): Adjust to merged handlerlist/catchlist. (internal_lisp_condition_case): Use PUSH_HANDLER. Adjust to new handlerlist which can only handle a single condition-case handler at a time. (find_handler_clause): Simplify since we only a single branch here any more. * src/lisp.h (struct handler): Merge struct handler and struct catchtag. (PUSH_HANDLER): New macro. (catchlist): Remove. (handlerlist): Always declare.
* * lisp/emacs-lisp/package.el (package-desc): Simplify.Stefan Monnier2013-10-011-6/+5
| | | | Fixes: debbugs:15495
* * lisp/emacs-lisp/package.el (package-buffer-info, describe-package-1):Dmitry Gutov2013-10-011-3/+2
| | | | | | | | | | | Use :url instead of :homepage, as per http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00622.html * test/automated/package-test.el: Update all cases to use :url instead of :homepage. * test/automated/package-x-test.el (package-x-test--single-archive-entry-1-3): Same.
* * lisp/emacs-lisp/package-x.el (package-upload-buffer-internal): PassDmitry Gutov2013-09-292-23/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `extras' slot from `package-desc' to `package-make-ac-desc'. * lisp/emacs-lisp/package.el (package-desc-from-define): Accept additional arguments as plist, convert it to an alist and store it in the `extras' slot. (package-generate-description-file): Convert extras alist back to plist and append to the `define-package' form arguments. (package--alist-to-plist): New function. (package--ac-desc): Add `extras' slot. (package--add-to-archive-contents): Check if the archive-contents vector is long enough, and if it is, pass its `extras' slot value to `package-desc-create'. (package-buffer-info): Call `lm-homepage', pass the returned value to `package-desc-from-define'. (describe-package-1): Render the homepage button. * test/automated/package-test.el (simple-single-desc-1-4): Remove, it was unused. (simple-single-desc): Expect :homepage property. (multi-file-desc): Same. (with-package-test): Do not save previous `default-directory' value, let-bind the var instead. (package-test-install-single): Expect :homepage property in the generated pkg file. (package-test-describe-package): Expect Homepage button. (package-test-describe-non-installed-package) (package-test-describe-non-installed-multi-file-package): Same. (package-test-describe-not-installed-package): Remove, it was a duplicate. * test/automated/package-x-test.el (package-x-test--single-archive-entry-1-3): Expect :homepage property. (package-x-test--single-archive-entry-1-4): Expect nil extras slot. * test/automated/data/package/archive-contents: Add :homepage properties to `simple-single' and `multi-file'. * test/automated/data/package/simple-single-1.3.el: Add URL header. Fixes: debbugs:13291
* * lisp/emacs-lisp/cl-macs.el:Stefan Monnier2013-09-271-68/+115
| | | | | | | | | | | | | | | (cl--loop-destr-temps): Remove. (cl--loop-iterator-function): Rename from cl--loop-map-form and change its convention. (cl--loop-set-iterator-function): New function. (cl-loop): Adjust accordingly, so as not to use cl-subst. (cl--parse-loop-clause): Adjust all uses of cl--loop-map-form. Bind `it' with `let' instead of substituting it with `cl-subst'. (cl--unused-var-p): New function. (cl--loop-let): Don't use the cl--loop-destr-temps hack any more. Eliminate some unused variable warnings. Fixes: debbugs:15326
* * emacs-lisp/cl-macs.el (cl-type-spec): Tell edebug what typeDaniel Colascione2013-09-251-0/+2
| | | | specs are and that they're not evaluated.
* * lisp/emacs-lisp/cl-macs.el (cl-defsubst): Remove unused local `pbody'.Glenn Morris2013-09-191-2/+4
|
* * lisp/emacs-lisp/eieio.el (class-parent): Undo previous change.Glenn Morris2013-09-191-4/+1
| | | | Ref: http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00354.html
* * emacs-lisp/eieio.el (class-parent): Don't use defalias with macros.Glenn Morris2013-09-191-1/+4
|
* * emacs-lisp/chart.el (x-display-color-cells): Declare.Glenn Morris2013-09-171-5/+5
| | | | (chart-face-list): Drop Emacsen without display-color-p.
* * lisp/emacs-lisp/package.el (package-generate-autoloads): Remove `require'Stefan Monnier2013-09-171-3/+2
| | | | | which should not be needed any more. (package-menu-refresh, package-menu-describe-package): Use user-error.