summaryrefslogtreecommitdiff
path: root/Misc
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>1996-12-17 22:05:07 +0000
committerBarry Warsaw <barry@python.org>1996-12-17 22:05:07 +0000
commitfb2fe47564ae53a014013e245bad8af0446ade01 (patch)
treecf3e4728f7c0efa0435f2914cab564c2031e87ca /Misc
parent99e80c96abcda91f0b0394e992858304e471251f (diff)
downloadcpython-fb2fe47564ae53a014013e245bad8af0446ade01.tar.gz
(py-delete-function): new variable
(py-delete-char): funcall py-delete-function.
Diffstat (limited to 'Misc')
-rw-r--r--Misc/python-mode.el8
1 files changed, 7 insertions, 1 deletions
diff --git a/Misc/python-mode.el b/Misc/python-mode.el
index 545d893333..99f51d6fe6 100644
--- a/Misc/python-mode.el
+++ b/Misc/python-mode.el
@@ -275,6 +275,9 @@ Currently-active file is at the head of the list.")
(and (fboundp 'make-obsolete-variable)
(make-obsolete-variable 'py-mode-hook 'python-mode-hook))
+(defvar py-delete-function 'backward-delete-char-untabify
+ "*Function called by `py-delete-char' when deleting characters.")
+
(defvar py-mode-map ()
"Keymap used in `python-mode' buffers.")
@@ -992,7 +995,10 @@ See the `\\[py-execute-region]' docs for an account of some subtleties."
;; Functions for Python style indentation
(defun py-delete-char (count)
"Reduce indentation or delete character.
+
If point is at the leftmost column, deletes the preceding newline.
+Deletion is performed by calling the function in `py-delete-function'
+with a single argument (the number of characters to delete).
Else if point is at the leftmost non-blank character of a line that is
neither a continuation line nor a non-indenting comment line, or if
@@ -1011,7 +1017,7 @@ argument delets that many characters."
(py-continuation-line-p)
(not py-honor-comment-indentation)
(looking-at "#[^ \t\n]")) ; non-indenting #
- (backward-delete-char-untabify count)
+ (funcall py-delete-function count)
;; else indent the same as the colon line that opened the block
;; force non-blank so py-goto-block-up doesn't ignore it