summaryrefslogtreecommitdiff
path: root/lisp/progmodes/prog-mode.el
diff options
context:
space:
mode:
authorDmitry Gutov <dgutov@yandex.ru>2016-03-28 03:51:21 +0300
committerDmitry Gutov <dgutov@yandex.ru>2016-03-28 03:59:05 +0300
commit124c48619e2c68c497d9075e6e940142c174c77b (patch)
tree013cb50ed9f472ea2f7f036f310be00c4d98770b /lisp/progmodes/prog-mode.el
parente65c3079c65595d95749348366af9811fafff062 (diff)
downloademacs-124c48619e2c68c497d9075e6e940142c174c77b.tar.gz
emacs-124c48619e2c68c497d9075e6e940142c174c77b.tar.bz2
emacs-124c48619e2c68c497d9075e6e940142c174c77b.zip
Remove prog-indentation-context
* lisp/progmodes/prog-mode.el: (prog-indentation-context) (prog-first-column, prog-widen): Remove, as discussed in http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html. * doc/lispref/text.texi (Mode-Specific Indent): Remove references to them. * etc/NEWS: Ditto. * lisp/progmodes/python.el: (prog-widen, prog-first-column): Remove the compatibility aliases and all uses. Do not merge to master.
Diffstat (limited to 'lisp/progmodes/prog-mode.el')
-rw-r--r--lisp/progmodes/prog-mode.el68
1 files changed, 0 insertions, 68 deletions
diff --git a/lisp/progmodes/prog-mode.el b/lisp/progmodes/prog-mode.el
index 718b33932ed..3f25a0c0647 100644
--- a/lisp/progmodes/prog-mode.el
+++ b/lisp/progmodes/prog-mode.el
@@ -49,53 +49,6 @@
map)
"Keymap used for programming modes.")
-(defvar prog-indentation-context nil
- "When non-nil, provides context for indenting embedded code chunks.
-
-There are languages where part of the code is actually written in
-a sub language, e.g., a Yacc/Bison or ANTLR grammar also consists
-of plain C code. This variable enables the major mode of the
-main language to use the indentation engine of the sub-mode for
-lines in code chunks written in the sub-mode's language.
-
-When a major mode of such a main language decides to delegate the
-indentation of a line/region to the indentation engine of the sub
-mode, it should bind this variable to non-nil around the call.
-
-The non-nil value should be a list of the form:
-
- (FIRST-COLUMN (START . END) PREVIOUS-CHUNKS)
-
-FIRST-COLUMN is the column the indentation engine of the sub-mode
-should use for top-level language constructs inside the code
-chunk (instead of 0).
-
-START and END specify the region of the code chunk. END can be
-nil, which stands for the value of `point-max'. The function
-`prog-widen' uses this to restore restrictions imposed by the
-sub-mode's indentation engine.
-
-PREVIOUS-CHUNKS, if non-nil, provides the indentation engine of
-the sub-mode with the virtual context of the code chunk. Valid
-values are:
-
- - A string containing text which the indentation engine can
- consider as standing in front of the code chunk. To cache the
- string's calculated syntactic information for repeated calls
- with the same string, the sub-mode can add text-properties to
- the string.
-
- A typical use case is for grammars with code chunks which are
- to be indented like function bodies -- the string would contain
- the corresponding function preamble.
-
- - A function, to be called with the start position of the current
- chunk. It should return either the region of the previous chunk
- as (PREV-START . PREV-END), or nil if there is no previous chunk.
-
- A typical use case are literate programming sources -- the
- function would successively return the previous code chunks.")
-
(defun prog-indent-sexp (&optional defun)
"Indent the expression after point.
When interactively called with prefix, indent the enclosing defun
@@ -109,27 +62,6 @@ instead."
(end (progn (forward-sexp 1) (point))))
(indent-region start end nil))))
-(defun prog-first-column ()
- "Return the indentation column normally used for top-level constructs."
- (or (car prog-indentation-context) 0))
-
-(defun prog-widen ()
- "Remove restrictions (narrowing) from current code chunk or buffer.
-This function should be used instead of `widen' in any function used
-by the indentation engine to make it respect the value of
-`prog-indentation-context'.
-
-This function (like `widen') is useful inside a
-`save-restriction' to make the indentation correctly work when
-narrowing is in effect."
- (let ((chunk (cadr prog-indentation-context)))
- (if chunk
- ;; No call to `widen' is necessary here, as narrow-to-region
- ;; changes (not just narrows) the existing restrictions
- (narrow-to-region (car chunk) (or (cdr chunk) (point-max)))
- (widen))))
-
-
(defvar-local prettify-symbols-alist nil
"Alist of symbol prettifications.
Each element looks like (SYMBOL . CHARACTER), where the symbol