Вкладка Emacs не работает - PullRequest
22 голосов
/ 23 января 2012

Я установил Emacs на мою коробку FreeBSD 8.2.Все работает нормально, но я не могу использовать вкладки.Когда я редактирую файл с помощью emacs и tab, ничего не происходит.

Что может быть причиной этого?

Ответы [ 2 ]

36 голосов
/ 23 января 2012

Если вы новичок в Emacs, вы можете ожидать нажатия TAB для вставки литерала \T. По разным причинам это не так, как работает большинство режимов Emacs. В большинстве режимов редактирования ваш код автоматически вставляется по мере необходимости (<tab> привязано к indent-for-tab-command, а не self-insert). Если строка, на которую вы TAB ссылаетесь, уже находится на правильном уровне отступа, может показаться, что ничего не произошло.

Подобное автоматическое выравнивание проще и последовательнее, чем ручное, но оно не дает вам такой гибкости, когда нужно точно определить, сколько пробелов будет присутствовать в начале каждой строки (а также вызывает некоторые проблемы, когда вы хотите, например, разделить табуляцией некоторые поля). Вы можете автоматически сделать отступ для региона, используя C-M-\ (это Ctrl + Alt + \).

Если вы абсолютно точно положите в свой код буквально \T, вы можете сделать это, используя C-q TAB (нажмите и отпустите Ctrl + q, а затем нажмите TAB). Как правило, это делается для выравнивания столбцов в других редакторах; если это то, что вы делаете, вероятно, лучше использовать align-regexp вместо литералов табуляции.

0 голосов
/ 18 августа 2013

В основном и текстовом режиме я использую C-<TAB>. Я не знаю, в каких других режимах это работает, но, за небольшим исключением, простой текст - единственный раз, когда мне нужен фактический \t символ.

...