Commit graph

60 commits

Author SHA1 Message Date
Fabián Ezequiel Gallina
adc3121366 New faster Imenu implementation.
* lisp/progmodes/python.el:
(python-imenu-prev-index-position):
(python-imenu-format-item-label-function)
(python-imenu-format-parent-item-label-function)
(python-imenu-format-parent-item-jump-label-function):
New vars.
(python-imenu-format-item-label)
(python-imenu-format-parent-item-label)
(python-imenu-format-parent-item-jump-label)
(python-imenu--put-parent, python-imenu--build-tree)
(python-imenu-create-index, python-imenu-create-flat-index)
(python-util-popn): New functions.
(python-mode): Set imenu-create-index-function to
python-imenu-create-index.

* test/automated/python-tests.el (python-imenu-prev-index-position-1):
Removed test.
(python-imenu-create-index-1, python-imenu-create-flat-index-1):
New tests.

Fixes: debbugs:14058
2013-04-18 23:31:09 -03:00
Fabián Ezequiel Gallina
04754d3612 * lisp/progmodes/python.el (python-nav--syntactically): Fix cornercases
and do not care about match data.

* test/automated/python-tests.el (python-nav-backward-defun-2)
(python-nav-backward-defun-3, python-nav-forward-defun-2)
(python-nav-forward-defun-3): New tests.
2013-04-17 19:23:13 -03:00
Fabián Ezequiel Gallina
083850a6a1 New defun movement commands.
* lisp/progmodes/python.el (python-nav--syntactically)
(python-nav--forward-defun, python-nav-backward-defun)
(python-nav-forward-defun): New functions.

* test/automated/python-tests.el (python-nav-backward-defun-1)
(python-nav-forward-defun-1): New tests.
2013-04-17 02:08:20 -03:00
Paul Eggert
b9edfa5c63 Spelling fixes. 2013-04-01 00:58:04 -07:00
Glenn Morris
8d3655be5a Merge from emacs-24; up to 2012-12-26T16:22:18Z!michael.albinus@gmx.de 2013-03-30 09:55:47 -07:00
Fabián Ezequiel Gallina
c9886b39eb Un-indent after "pass" and "return" statements
* lisp/progmodes/python.el (python-indent-block-enders): New var.
(python-indent-calculate-indentation): Use it.

* test/automated/python-tests.el
(python-indent-block-enders): New test.
(python-info-current-defun-2): Fix test.

Fixes: debbugs:13888
2013-03-25 22:55:11 -03:00
Glenn Morris
929aeac608 Merge from emacs-24; up to 2012-12-23T02:41:17Z!rgm@gnu.org 2013-02-27 22:30:48 -08:00
Fabián Ezequiel Gallina
b85f342318 * automated/python-tests.el
(python-tests-with-temp-buffer): Doc fix.
(python-tests-with-temp-file): New macro.
(python-tests-shell-interpreter): New var.
(python-shell-get-process-name-1)
(python-shell-internal-get-process-name-1)
(python-shell-parse-command-1)
(python-shell-calculate-process-environment-1)
(python-shell-calculate-process-environment-2)
(python-shell-calculate-process-environment-3)
(python-shell-calculate-exec-path-1)
(python-shell-calculate-exec-path-2)
(python-shell-make-comint-1)
(python-shell-make-comint-2)
(python-shell-get-process-1)
(python-shell-get-or-create-process-1)
(python-shell-internal-get-or-create-process-1): New tests.
2013-02-25 12:02:05 -03:00
Paul Eggert
52b823c8af Spelling fixes. 2013-02-24 23:49:40 -08:00
Fabián Ezequiel Gallina
4dddd5dcda Added intial test suite for python.el.
* automated/python-tests.el
(python-tests-with-temp-buffer): New macro.
(python-tests-look-at): New function.
(python-tests-look-at-1)
(python-tests-look-at-2)
(python-indent-pep8-1)
(python-indent-pep8-2)
(python-indent-pep8-3)
(python-indent-inside-paren-1)
(python-indent-inside-paren-2)
(python-indent-after-block-1)
(python-indent-after-block-2)
(python-indent-dedenters-1)
(python-indent-after-backslash-1)
(python-indent-after-backslash-2)
(python-nav-beginning-of-defun-1)
(python-nav-beginning-of-defun-2)
(python-nav-end-of-defun-1)
(python-nav-end-of-defun-2)
(python-nav-beginning-of-statement-1)
(python-nav-end-of-statement-1)
(python-nav-forward-statement-
(python-nav-backward-statement-1)
(python-nav-backward-statement-2)
(python-nav-beginning-of-block-1)
(python-nav-end-of-block-1)
(python-nav-forward-block-1)
(python-nav-lisp-forward-sexp-safe-1)
(python-nav-forward-sexp-1)
(python-nav-forward-sexp-2)
(python-nav-forward-sexp-3)
(python-nav-up-list-1)
(python-nav-backward-up-list-1)
(python-imenu-prev-index-position-1)
(python-info-current-defun-1)
(python-info-current-defun-2)
(python-info-current-defun-3)
(python-info-current-symbol-1)
(python-info-current-symbol-2)
(python-info-current-symbol-3)
(python-info-statement-starts-block-p-1)
(python-info-statement-starts-block-p-2)
(python-info-statement-ends-block-p-1)
(python-info-statement-ends-block-p-2)
(python-info-beginning-of-statement-p-1)
(python-info-beginning-of-statement-p-2)
(python-info-end-of-statement-p-1)
(python-info-end-of-statement-p-2)
(python-info-beginning-of-block-p-1)
(python-info-beginning-of-block-p-2)
(python-info-end-of-block-p-1)
(python-info-end-of-block-p-2)
(python-info-closing-block-1)
(python-info-closing-block-2)
(python-info-line-ends-backslash-p-1)
(python-info-beginning-of-backslash-1)
(python-info-continuation-line-p-1)
(python-info-block-continuation-line-p-1)
(python-info-block-continuation-line-p-2)
(python-info-assignment-continuation-line-p-1)
(python-info-assignment-continuation-line-p-2)
(python-info-looking-at-beginning-of-defun-1)
(python-info-current-line-comment-p-1)
(python-info-current-line-empty-p)
(python-util-goto-line-1)
(python-util-clone-local-variables-1)
(python-util-forward-comment-1): New tests.
2013-02-20 17:27:08 -03:00