1

helm-semantic-or-imenu または helm-org-in-buffer-headings を使用してジャンプした後、現在の行を再センタリングしたいと思います。つまり、helm-swoop と同じです。出来ますか?

4

1 に答える 1

1

は使用しませんがhelm、 のためにこれを行いisearchます。どの関数が実際に行にジャンプするかを把握し (おそらく呼び出された関数、たとえばhelm-semantic-or-imenuの場合のように何らかの内部ヘルパー関数isearch)、それに次のアドバイスを追加します。

(defun recenter-no-redraw (&optional arg)
  "Like `recenter', but no redrawing."
  (interactive "P")
  (let ((recenter-redisplay nil))
    (recenter arg)))

(advice-add 'isearch-search
            :after
            (lambda (&rest args)
              "Recenter"
              (when isearch-success
                (recenter-no-redraw))))

再描画しないバージョンの を定義した理由を思い出せませんrecenter(何年もそのように使用してきました)。recenterプレーンでも動作するはずです。

于 2016-04-27T17:32:59.137 に答える