Нежелательные отступы при вводе скобок - PullRequest
0 голосов
/ 28 сентября 2018

Я использую Emacs в моем терминале Mac OS.Похоже, что когда я набираю открывающую (сдвиг + 9) или закрывающую (сдвиг + 0) скобку, помимо ожидаемого отображения скобок, он также неожиданно вставляет много пробелов.Я включил эффекты до и после ввода скобок, как показано ниже:

до ввода скобок

после ввода скобок

Я новичок в Emacs.Так что я не уверен, что это за ошибка.Может ли кто-нибудь дать мне какие-либо идеи о том, как я должен приступить к исправлению этой ошибки?Большое спасибо, ребята!

1 Ответ

0 голосов
/ 29 сентября 2018

«ObjC» в строке состояния означает, что Emacs решил использовать режим Object-C для этого буфера.Вероятно, это связано с тем, что расширение файла .m обычно является расширением, используемым для файлов Objective-C.

Режим Objective-C по умолчанию переопределяет текущую строку для вас, когда вы нажимаете некоторые знаки пунктуации, такие как (, {, ; и несколько других.Конечно, вы можете отключить его, но в вашем случае это обойдется вокруг реальной проблемы, заключающейся в том, что ваш файл не записан в режиме Objective-C, поэтому вы должны использовать другой режим , который будетне только решить эту насущную проблему, но и даст вам много других преимуществ.

Я не уверен, какой язык вы используете, но я думаю, что все, что вам нужно, это один из (или комбинация):

  • установите пакет Elisp, который обеспечивает поддержку вашего языка (например, mathematica-mode)
  • измените расширение ваших файлов на ожидаемое Emacs для этого языка.
  • изменить auto-mode-alist, чтобы сообщить Emacs, какой режим использовать для файлов, заканчивающихся на .m, например:

    (add-to-list 'auto-mode-alist '("\\.m\\'" . octave-mode))
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...