Warum beginnt Emacs hier mit solch einem albernen Tabulatorabstand?

Warum beginnt Emacs hier mit solch einem albernen Tabulatorabstand?

Dies erscheint in einer Linux-Version von Emacs 24.3.1.

Starten Sie einen Puffer, geben Sie ein octave-mode(möglicherweise müssen Sie aus einem Paket installieren) und geben Sie etwas wie das Folgende ein:

function foo = bar(x,y)

Wenn Sie jetzt zur Zeile darunter gehen und auf drücken, TABum loszuhämmern, springt der Cursor 8 Stellen weiter!

Nachdem Sie sich von dem Herzklopfen und der Hyperventilation erholt haben, bemerken Sie, dass TABEmacs zur Besinnung kommt und die ganze Zeile auf 2 Leerzeichen zurücksetzt, wenn Sie nach dem Eintippen von etwas drücken. Die restlichen Zeilen darunter verhalten sich genauso.

Was ist der Gedanke oder Grund für dieses Verhalten?

Antwort1

Da man Emacs so programmieren kann, dass er praktisch alles macht, passe ich lediglich an oder korrigiere, was nötig ist, und suche selten nach der Logik der Standardeinstellungen.

(add-hook 'octave-mode-hook (lambda ()
  (setq indent-tabs-mode t)
  (setq tab-stop-list (number-sequence 2 200 2))
  (setq tab-width 2)
  (setq indent-line-function 'insert-tab) ))

verwandte Informationen