6

これは私を夢中にさせており、私は一日中それを続けています.

シリアル デバイスと通信するためのプロセス フィルターを作成しようとしています。それは問題なく動作しますが、テキストをバッファーに挿入するときは、バッファーにテキストを入力するときと同じように、テキストが表示されるようにバッファーをスクロールする必要があります。シリアル ラインのさまざまな情報を示す複数のバッファーにテキストを挿入します。そのままでは、シリアル コマンドを発行するたびに、各スクロール バーを下にドラッグしてテキストを表示する必要があります。

「ポイント」を変更すると、挿入ポイントが変更されるだけです。ウィンドウのスクロールは続きません。スクロール機能と「recenter」を呼び出そうとしても、何も起こらないようです。ウィンドウをスクロールするにはどうすればよいですか?

また、入力できないようにバッファを変更したり、ウィンドウをクリックして「ポイント」の位置を変更したりしたいと思います。私が使用すべきモードなどはありますか?

誰かが助けてくれたら、どうもありがとう、

デビッド。

4

4 に答える 4

5

あなたの問題は、ポイント位置がバッファに接続されていないという事実に起因しているのではないかと思います(異なる場所に同じバッファを表示する異なるウィンドウを持つことができるため)。

あなたはこのようなことを試すことができます:

(with-selected-window (get-buffer-window YOUR-BUFFER)
  (goto-char (point-max)))
于 2012-11-23T16:07:11.463 に答える
2

(set (make-local-variable 'window-point-insertion-type) t)バッファに入れたいと思うかもしれません。

于 2012-11-23T18:24:34.887 に答える
0

(goto-char (point-max))バッファを最後までスクロールする必要があります。Emacs では、アクティブなカーソルをビューポートの外に置くことはできません。エクスカーション保存コマンドのいずれかで呼び出しをラップしていますか?

編集を禁止するには、次のようにします。(toggle-read-only 1)

于 2012-11-23T14:07:58.483 に答える