1

現在のポイントがインデントのポイントにあるかどうかをテストする機能はありますか?つまり、ポイントは。の可能な結果ですback-to-indentation

4

3 に答える 3

2
(defun point-at-indentation-p ()
  (if (= (save-excursion (back-to-indentation) (point)) (point))
      (message "I'm at indentation")
    (message "I'm elsewhere")))

非常に単純なもののように見えます...なぜ他の方法でそれを行うのかわかりません。

于 2012-11-09T17:35:20.293 に答える
1

次のコードはt、ポイントが現在の行の最初の非空白文字にある場合に返されnilます。それ以外の場合は、次のコードが返されます。

(looking-back "^\\s-*")
于 2012-11-09T12:01:17.853 に答える
1

そんな機能は思い出せません。私が使用します

(and (looking-at "[^ \t]\\|$")
     (save-excursion (skip-chars-backward " \t") (bolp)))

使用はlooking-back機能しますが、looking-backアルゴリズム的に非効率的であるため、一部の病的なケースでは犬の動きが遅くなる可能性があることに注意してください。

于 2012-11-09T14:31:31.200 に答える