emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Brittleness of called-interactively-p


From: Dmitri Paduchikh
Subject: Re: Brittleness of called-interactively-p
Date: Fri, 17 Jul 2015 09:52:02 +0500
User-agent: Gnus/5.13 (Gnus v5.13)

Richard Stallman <address@hidden> writes:

RS> Can you try using called-interactively-p and provide a bug report
RS> showing concretely how it fails?

The following is probably similar to what T. V. Raman describes.

Debugger entered--Lisp error: (quit)
  funcall((closure ((i . 11809182) (frame2) (frame1) (origi . 3) t) nil (setq 
frame1 frame2) (setq frame2 (backtrace-frame i (function 
called-interactively-p))) (setq i (1+ i))))
  (progn (funcall get-next-frame) (not (and (eq (nth 1 frame2) (quote apply)) 
(eq (nth 3 frame2) inneradvice))))
  (while (progn (funcall get-next-frame) (not (and (eq (nth 1 frame2) (quote 
apply)) (eq (nth 3 frame2) inneradvice)))))
  (if (and (eq (nth 1 frame2) (quote apply)) (progn (funcall get-next-frame) 
(advice--p (indirect-function (nth 1 frame2))))) (funcall get-next-frame) 
(while (progn (funcall get-next-frame) (not (and (eq (nth 1 frame2) (quote 
apply)) (eq (nth 3 frame2) inneradvice))))) (funcall get-next-frame) (funcall 
get-next-frame))
  (let ((inneradvice (nth 1 frame1))) (if (and (eq (nth 1 frame2) (quote 
apply)) (progn (funcall get-next-frame) (advice--p (indirect-function (nth 1 
frame2))))) (funcall get-next-frame) (while (progn (funcall get-next-frame) 
(not (and (eq (nth 1 frame2) (quote apply)) (eq (nth 3 frame2) inneradvice))))) 
(funcall get-next-frame) (funcall get-next-frame)))
  (while (advice--p (nth 1 frame1)) (let ((inneradvice (nth 1 frame1))) (if 
(and (eq (nth 1 frame2) (quote apply)) (progn (funcall get-next-frame) 
(advice--p (indirect-function (nth 1 frame2))))) (funcall get-next-frame) 
(while (progn (funcall get-next-frame) (not (and (eq ... ...) (eq ... 
inneradvice))))) (funcall get-next-frame) (funcall get-next-frame))))
  (progn (funcall get-next-frame) (while (advice--p (nth 1 frame1)) (let 
((inneradvice (nth 1 frame1))) (if (and (eq (nth 1 frame2) (quote apply)) 
(progn (funcall get-next-frame) (advice--p (indirect-function ...)))) (funcall 
get-next-frame) (while (progn (funcall get-next-frame) (not (and ... ...)))) 
(funcall get-next-frame) (funcall get-next-frame)))) (- i origi 1))
  (if (and (eq (nth 1 frame2) (quote apply)) (progn (funcall get-next-frame) 
(advice--p (indirect-function (nth 1 frame2))))) (progn (funcall 
get-next-frame) (while (advice--p (nth 1 frame1)) (let ((inneradvice (nth 1 
frame1))) (if (and (eq (nth 1 frame2) (quote apply)) (progn (funcall 
get-next-frame) (advice--p ...))) (funcall get-next-frame) (while (progn 
(funcall get-next-frame) (not ...))) (funcall get-next-frame) (funcall 
get-next-frame)))) (- i origi 1)))
  (let* ((i origi) (get-next-frame (function (lambda nil (setq frame1 frame2) 
(setq frame2 (backtrace-frame i (function called-interactively-p))) (setq i (1+ 
i)))))) (if (and (eq (nth 1 frame2) (quote apply)) (progn (funcall 
get-next-frame) (advice--p (indirect-function (nth 1 frame2))))) (progn 
(funcall get-next-frame) (while (advice--p (nth 1 frame1)) (let ((inneradvice 
(nth 1 frame1))) (if (and (eq ... ...) (progn ... ...)) (funcall 
get-next-frame) (while (progn ... ...)) (funcall get-next-frame) (funcall 
get-next-frame)))) (- i origi 1))))
  advice--called-interactively-skip(3 (t ad-Advice-backward-sexp #[256 
"\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] 1) (t apply 
ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 
3 2389807 "^p"] 1))
  run-hook-with-args-until-success(advice--called-interactively-skip 3 (t 
ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 
3 2389807 "^p"] 1) (t apply ad-Advice-backward-sexp #[256 
"\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] 1))
  called-interactively-p(interactive)
  ad-Advice-backward-sexp(#[256 "\211\204.\300\262.\301.[!\207" [1 
forward-sexp] 3 2389807 "^p"] 1)
  apply(ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 
forward-sexp] 3 2389807 "^p"] 1)
  #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp #[256 
"\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 nil 
"^p"](1)
  #[0 "\300\301!\210\302\207" [#[128 "\300\301\302.#\207" [apply 
ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 
3 2389807 "^p"] nil] 5 nil "^p"] 1 nil] 2 "\n\n(fn)"]()
  funcall(#[0 "\300\301!\210\302\207" [#[128 "\300\301\302.#\207" [apply 
ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 
3 2389807 "^p"] nil] 5 nil "^p"] 1 nil] 2 "\n\n(fn)"])
  #[0 "\304\242;\205.\306\304\242.\"AC\304\307\240\210`\300 \306.
\"A\211\204X.\310.G!\203$.\311\312\313\314\315\316\317\301!\320\"\321\322%D\323\312\313\324\325\316\317.!\326\"\327\330%\311EDC\217\210.`=\203$.\331\332\333`D\"\210\202$.\303.!\247\204t.\302.!\247\204l.\334\335\336C\"address@hidden"address@hidden"\210\202#.\337.!\204\377..B\262.\202#.\211\203
 address@hidden 
.\331\332\302.!\206.\333`.E.b\210\"\210\202#.\211\262.\210.\266\203\2051.\304\307\240\210\202.\207"
 [#[0 "\304 \305`[!\210n\203*.o\204*.\306`S!\307\232\203*.\310\311 
8\204*.\312.\313\314!\210)\315\202\225.`.W\203K.\316 \203=.\314u\210    
\202\225.\317 \203F.\315\202\225.       \202\225.\320\n\304 
\321#\203^.\322\224b\210\323\322!\202\225.\324 
\211\325\232\203j.\326\202\223.\211\327\232\203t.\330\202\223.\211\203\222.\331\332.\"\203\222.\333.\"\203\222.\212\334.!)\204\222.\335\202\223.\211\262.\207"
 [forward-sexp-function smie-backward-token-function 
sh-smie--sh-operators-back-re smie-grammar line-beginning-position 
forward-comment syntax-after (15) 3 syntax-ppss nil forward-sexp -1 ";" 
sh-smie--looking-back-at-continuation-p sh-smie--newline-semi-p looking-back 
greedy 1 match-string-no-properties sh-smie--default-backward-token ")" 
"case-)" "(" "case-(" string-match "\\`[a-z]" assoc sh-smie--sh-keyword-p " 
word "] 5 "\n\n(fn)"] #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp 
#[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 
nil "^p"] #<subr car> #[257 "address@hidden" [] 2 1636664] (halfsexp) 
smie-grammar assoc nil zerop err funcall make-byte-code 0 
"\300\301!\210\302\207" vconcat vector [1 nil] 2 "\n\n(fn)" scan-error 257 
"\301.8`.X\203.\302.8\202.\211\300b\210\303\304\305.\306.\211`.W\203%.\307\202&.\310\\\"E\"\207"
 [2 3 throw return t buffer-substring-no-properties -1 1] 12 "\n\n(fn ERR)" 
throw return t signal cl-assertion-failed (numberp (funcall op-forw toklevels)) 
smie--associative-p] 14 "\n\n(fn)"]()
  funcall(#[0 "\304\242;\205.\306\304\242.\"AC\304\307\240\210`\300 \306.
\"A\211\204X.\310.G!\203$.\311\312\313\314\315\316\317\301!\320\"\321\322%D\323\312\313\324\325\316\317.!\326\"\327\330%\311EDC\217\210.`=\203$.\331\332\333`D\"\210\202$.\303.!\247\204t.\302.!\247\204l.\334\335\336C\"address@hidden"address@hidden"\210\202#.\337.!\204\377..B\262.\202#.\211\203
 address@hidden 
.\331\332\302.!\206.\333`.E.b\210\"\210\202#.\211\262.\210.\266\203\2051.\304\307\240\210\202.\207"
 [#[0 "\304 \305`[!\210n\203*.o\204*.\306`S!\307\232\203*.\310\311 
8\204*.\312.\313\314!\210)\315\202\225.`.W\203K.\316 \203=.\314u\210    
\202\225.\317 \203F.\315\202\225.       \202\225.\320\n\304 
\321#\203^.\322\224b\210\323\322!\202\225.\324 
\211\325\232\203j.\326\202\223.\211\327\232\203t.\330\202\223.\211\203\222.\331\332.\"\203\222.\333.\"\203\222.\212\334.!)\204\222.\335\202\223.\211\262.\207"
 [forward-sexp-function smie-backward-token-function 
sh-smie--sh-operators-back-re smie-grammar line-beginning-position 
forward-comment syntax-after (15) 3 syntax-ppss nil forward-sexp -1 ";" 
sh-smie--looking-back-at-continuation-p sh-smie--newline-semi-p looking-back 
greedy 1 match-string-no-properties sh-smie--default-backward-token ")" 
"case-)" "(" "case-(" string-match "\\`[a-z]" assoc sh-smie--sh-keyword-p " 
word "] 5 "\n\n(fn)"] #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp 
#[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 
nil "^p"] #<subr car> #[257 "address@hidden" [] 2 1636664] (halfsexp) 
smie-grammar assoc nil zerop err funcall make-byte-code 0 
"\300\301!\210\302\207" vconcat vector [1 nil] 2 "\n\n(fn)" scan-error 257 
"\301.8`.X\203.\302.8\202.\211\300b\210\303\304\305.\306.\211`.W\203%.\307\202&.\310\\\"E\"\207"
 [2 3 throw return t buffer-substring-no-properties -1 1] 12 "\n\n(fn ERR)" 
throw return t signal cl-assertion-failed (numberp (funcall op-forw toklevels)) 
smie--associative-p] 14 "\n\n(fn)"])
  smie-next-sexp(#[0 "\304 
\305`[!\210n\203*.o\204*.\306`S!\307\232\203*.\310\311 
8\204*.\312.\313\314!\210)\315\202\225.`.W\203K.\316 \203=.\314u\210   
\202\225.\317 \203F.\315\202\225.       \202\225.\320\n\304 
\321#\203^.\322\224b\210\323\322!\202\225.\324 
\211\325\232\203j.\326\202\223.\211\327\232\203t.\330\202\223.\211\203\222.\331\332.\"\203\222.\333.\"\203\222.\212\334.!)\204\222.\335\202\223.\211\262.\207"
 [forward-sexp-function smie-backward-token-function 
sh-smie--sh-operators-back-re smie-grammar line-beginning-position 
forward-comment syntax-after (15) 3 syntax-ppss nil forward-sexp -1 ";" 
sh-smie--looking-back-at-continuation-p sh-smie--newline-semi-p looking-back 
greedy 1 match-string-no-properties sh-smie--default-backward-token ")" 
"case-)" "(" "case-(" string-match "\\`[a-z]" assoc sh-smie--sh-keyword-p " 
word "] 5 "\n\n(fn)"] #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp 
#[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 
nil "^p"] #<subr car> #[257 "address@hidden" [] 2 1636664] halfsexp)
  smie-backward-sexp(halfsexp)
  smie-forward-sexp-command(-1)
  #[256 
"\211\204.\301\262.\203..!\207\302`.\"\206.\303.!b\210\211\304W\205#.\305 
\207" [forward-sexp-function 1 scan-sexps buffer-end 0 backward-prefix-chars] 4 
2389495 "^p"](-1)
  ad-Advice-forward-sexp(#[256 
"\211\204.\301\262.\203..!\207\302`.\"\206.\303.!b\210\211\304W\205#.\305 
\207" [forward-sexp-function 1 scan-sexps buffer-end 0 backward-prefix-chars] 4 
2389495 "^p"] -1)
  apply(ad-Advice-forward-sexp #[256 
"\211\204.\301\262.\203..!\207\302`.\"\206.\303.!b\210\211\304W\205#.\305 
\207" [forward-sexp-function 1 scan-sexps buffer-end 0 backward-prefix-chars] 4 
2389495 "^p"] -1)
  forward-sexp(-1)
  #[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"](1)
  ad-Advice-backward-sexp(#[256 "\211\204.\300\262.\301.[!\207" [1 
forward-sexp] 3 2389807 "^p"] 1)
  apply(ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 
forward-sexp] 3 2389807 "^p"] 1)
  #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp #[256 
"\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 nil 
"^p"](1)
  #[0 "\300\301!\210\302\207" [#[128 "\300\301\302.#\207" [apply 
ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 
3 2389807 "^p"] nil] 5 nil "^p"] 1 nil] 2 "\n\n(fn)"]()
  funcall(#[0 "\300\301!\210\302\207" [#[128 "\300\301\302.#\207" [apply 
ad-Advice-backward-sexp #[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 
3 2389807 "^p"] nil] 5 nil "^p"] 1 nil] 2 "\n\n(fn)"])
  #[0 "\304\242;\205.\306\304\242.\"AC\304\307\240\210`\300 \306.
\"A\211\204X.\310.G!\203$.\311\312\313\314\315\316\317\301!\320\"\321\322%D\323\312\313\324\325\316\317.!\326\"\327\330%\311EDC\217\210.`=\203$.\331\332\333`D\"\210\202$.\303.!\247\204t.\302.!\247\204l.\334\335\336C\"address@hidden"address@hidden"\210\202#.\337.!\204\377..B\262.\202#.\211\203
 address@hidden 
.\331\332\302.!\206.\333`.E.b\210\"\210\202#.\211\262.\210.\266\203\2051.\304\307\240\210\202.\207"
 [#[0 "\304 \305`[!\210n\203*.o\204*.\306`S!\307\232\203*.\310\311 
8\204*.\312.\313\314!\210)\315\202\225.`.W\203K.\316 \203=.\314u\210    
\202\225.\317 \203F.\315\202\225.       \202\225.\320\n\304 
\321#\203^.\322\224b\210\323\322!\202\225.\324 
\211\325\232\203j.\326\202\223.\211\327\232\203t.\330\202\223.\211\203\222.\331\332.\"\203\222.\333.\"\203\222.\212\334.!)\204\222.\335\202\223.\211\262.\207"
 [forward-sexp-function smie-backward-token-function 
sh-smie--sh-operators-back-re smie-grammar line-beginning-position 
forward-comment syntax-after (15) 3 syntax-ppss nil forward-sexp -1 ";" 
sh-smie--looking-back-at-continuation-p sh-smie--newline-semi-p looking-back 
greedy 1 match-string-no-properties sh-smie--default-backward-token ")" 
"case-)" "(" "case-(" string-match "\\`[a-z]" assoc sh-smie--sh-keyword-p " 
word "] 5 "\n\n(fn)"] #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp 
#[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 
nil "^p"] #<subr car> #[257 "address@hidden" [] 2 1636664] (nil) smie-grammar 
assoc nil zerop err funcall make-byte-code 0 "\300\301!\210\302\207" vconcat 
vector [1 nil] 2 "\n\n(fn)" scan-error 257 
"\301.8`.X\203.\302.8\202.\211\300b\210\303\304\305.\306.\211`.W\203%.\307\202&.\310\\\"E\"\207"
 [2 3 throw return t buffer-substring-no-properties -1 1] 12 "\n\n(fn ERR)" 
throw return t signal cl-assertion-failed (numberp (funcall op-forw toklevels)) 
smie--associative-p] 14 "\n\n(fn)"]()
  funcall(#[0 "\304\242;\205.\306\304\242.\"AC\304\307\240\210`\300 \306.
\"A\211\204X.\310.G!\203$.\311\312\313\314\315\316\317\301!\320\"\321\322%D\323\312\313\324\325\316\317.!\326\"\327\330%\311EDC\217\210.`=\203$.\331\332\333`D\"\210\202$.\303.!\247\204t.\302.!\247\204l.\334\335\336C\"address@hidden"address@hidden"\210\202#.\337.!\204\377..B\262.\202#.\211\203
 address@hidden 
.\331\332\302.!\206.\333`.E.b\210\"\210\202#.\211\262.\210.\266\203\2051.\304\307\240\210\202.\207"
 [#[0 "\304 \305`[!\210n\203*.o\204*.\306`S!\307\232\203*.\310\311 
8\204*.\312.\313\314!\210)\315\202\225.`.W\203K.\316 \203=.\314u\210    
\202\225.\317 \203F.\315\202\225.       \202\225.\320\n\304 
\321#\203^.\322\224b\210\323\322!\202\225.\324 
\211\325\232\203j.\326\202\223.\211\327\232\203t.\330\202\223.\211\203\222.\331\332.\"\203\222.\333.\"\203\222.\212\334.!)\204\222.\335\202\223.\211\262.\207"
 [forward-sexp-function smie-backward-token-function 
sh-smie--sh-operators-back-re smie-grammar line-beginning-position 
forward-comment syntax-after (15) 3 syntax-ppss nil forward-sexp -1 ";" 
sh-smie--looking-back-at-continuation-p sh-smie--newline-semi-p looking-back 
greedy 1 match-string-no-properties sh-smie--default-backward-token ")" 
"case-)" "(" "case-(" string-match "\\`[a-z]" assoc sh-smie--sh-keyword-p " 
word "] 5 "\n\n(fn)"] #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp 
#[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 
nil "^p"] #<subr car> #[257 "address@hidden" [] 2 1636664] (nil) smie-grammar 
assoc nil zerop err funcall make-byte-code 0 "\300\301!\210\302\207" vconcat 
vector [1 nil] 2 "\n\n(fn)" scan-error 257 
"\301.8`.X\203.\302.8\202.\211\300b\210\303\304\305.\306.\211`.W\203%.\307\202&.\310\\\"E\"\207"
 [2 3 throw return t buffer-substring-no-properties -1 1] 12 "\n\n(fn ERR)" 
throw return t signal cl-assertion-failed (numberp (funcall op-forw toklevels)) 
smie--associative-p] 14 "\n\n(fn)"])
  smie-next-sexp(#[0 "\304 
\305`[!\210n\203*.o\204*.\306`S!\307\232\203*.\310\311 
8\204*.\312.\313\314!\210)\315\202\225.`.W\203K.\316 \203=.\314u\210   
\202\225.\317 \203F.\315\202\225.       \202\225.\320\n\304 
\321#\203^.\322\224b\210\323\322!\202\225.\324 
\211\325\232\203j.\326\202\223.\211\327\232\203t.\330\202\223.\211\203\222.\331\332.\"\203\222.\333.\"\203\222.\212\334.!)\204\222.\335\202\223.\211\262.\207"
 [forward-sexp-function smie-backward-token-function 
sh-smie--sh-operators-back-re smie-grammar line-beginning-position 
forward-comment syntax-after (15) 3 syntax-ppss nil forward-sexp -1 ";" 
sh-smie--looking-back-at-continuation-p sh-smie--newline-semi-p looking-back 
greedy 1 match-string-no-properties sh-smie--default-backward-token ")" 
"case-)" "(" "case-(" string-match "\\`[a-z]" assoc sh-smie--sh-keyword-p " 
word "] 5 "\n\n(fn)"] #[128 "\300\301\302.#\207" [apply ad-Advice-backward-sexp 
#[256 "\211\204.\300\262.\301.[!\207" [1 forward-sexp] 3 2389807 "^p"] nil] 5 
nil "^p"] #<subr car> #[257 "address@hidden" [] 2 1636664] ";")
  smie-backward-sexp(";")
  smie-indent-keyword()
  run-hook-with-args-until-success(smie-indent-keyword)
  smie-indent-calculate()
  smie-indent-virtual()
  smie-indent-after-keyword()
  run-hook-with-args-until-success(smie-indent-after-keyword)
  smie-indent-calculate()
  #[0 "\212\301y\210\302\303w\210`\300\242Y\203.\300\303\240\210\304 
\206.\301)\207" [(941) 0 "       " nil smie-indent-calculate] 2 "\n\n(fn)"]()
  funcall(#[0 "\212\301y\210\302\303w\210`\300\242Y\203.\300\303\240\210\304 
\206.\301)\207" [(941) 0 "       " nil smie-indent-calculate] 2 "\n\n(fn)"])
  smie-indent-line()
  #[256 "\304 \203\f.\305\306 \307 \"\207\310=\204#.   \204'.i\311 
V\204#.\n=\203'.\312.!\207\313 `\311  \210        \314=\203G.`=\203G.\313 
=\203G.\315 \202r.\205r.\212\316y\210\317 \210\320 )\311 
.Z\212\321y\210\322.!?\205o.`.W\205o.\323`.#)\266\202\207" 
[indent-line-function tab-always-indent this-command last-command use-region-p 
indent-region region-beginning region-end indent-to-left-margin 
current-indentation insert-tab buffer-chars-modified-tick complete 
completion-at-point 0 forward-sexp point-marker 1 zerop indent-rigidly] 10 
2133678 "P"](nil)
  ad-Advice-indent-for-tab-command(#[256 "\304 \203\f.\305\306 \307 
\"\207\310=\204#.  \204'.i\311 V\204#.\n=\203'.\312.!\207\313 `\311  \210    
    \314=\203G.`=\203G.\313 =\203G.\315 \202r.\205r.\212\316y\210\317 
\210\320 )\311 .Z\212\321y\210\322.!?\205o.`.W\205o.\323`.#)\266\202\207" 
[indent-line-function tab-always-indent this-command last-command use-region-p 
indent-region region-beginning region-end indent-to-left-margin 
current-indentation insert-tab buffer-chars-modified-tick complete 
completion-at-point 0 forward-sexp point-marker 1 zerop indent-rigidly] 10 
2133678 "P"] nil)
  apply(ad-Advice-indent-for-tab-command #[256 "\304 \203\f.\305\306 \307 
\"\207\310=\204#.    \204'.i\311 V\204#.\n=\203'.\312.!\207\313 `\311  \210  
      \314=\203G.`=\203G.\313 =\203G.\315 \202r.\205r.\212\316y\210\317 
\210\320 )\311 .Z\212\321y\210\322.!?\205o.`.W\205o.\323`.#)\266\202\207" 
[indent-line-function tab-always-indent this-command last-command use-region-p 
indent-region region-beginning region-end indent-to-left-margin 
current-indentation insert-tab buffer-chars-modified-tick complete 
completion-at-point 0 forward-sexp point-marker 1 zerop indent-rigidly] 10 
2133678 "P"] nil)
  indent-for-tab-command(nil)
  call-interactively(indent-for-tab-command nil nil)
  command-execute(indent-for-tab-command)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]