Як запустити emacs в режимі "нічого" (`basic-mode ')


9

Якщо я emacs test.shнабираю Emacs, наполягає на тому, щоб перевести мене в Shell-scriptрежим. Іншим разом я хочу редагувати файл, help.txtі тоді Emacs переводить мене в Textрежим. Але іноді я не хочу нічого цього, особливо коли я роблю велику пасту в Emacs з іншого джерела.

Як запустити Emacs в режимі "нічого"? Ніяких спеціальних відступів, пробілів тощо, і Emacs просто приймає символи під час їх введення.

ОНОВЛЕННЯ: Ось приклад. Скопіюйте наступний текст у буфер обміну, відкрийте emacs (навіть у основному режимі) та вставте.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<EntityDescriptor xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 ID="FARM20190311T2248"
 Name="https://www.example.com/"
 entityID="https://www.example.com/" validUntil="2020-03-11T22:48:12Z"><ds:Signature>
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>

Emacs наполягає на тому, щоб змінити інтервал (навіть у основному режимі та використовувати -q) для цього:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<EntityDescriptor xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 ID="FARM20190311T2248"
  Name="https://www.example.com/"
   entityID="https://www.example.com/" validUntil="2020-03-11T22:48:12Z"><ds:Signature>
   <ds:SignedInfo>
   <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>

Спробуйте той же експеримент з viабо nano. Ці програми (принаймні на моєму комп’ютері) не змінюють інтервал.

Я використовую GNU Emacs 24.5.1 на розтяжці Debian.


"Emacs [24.5.1] наполягає на зміні інтервалу (навіть у основному режимі та використанні -q)" - я не можу відтворити це в Emacs 25.3 або 26.1. Перевірте ще раз, emacs -Qщоб Debian не встановив якийсь сайт-lisp, який викликає це? Якщо це не змінить речі, спробуйте нову версію Emacs?
phils

1
Здається, що на ваше справжнє запитання тут задають і відповідають: emacs.stackexchange.com/questions/28008/…
npostavs

Відповіді:


15

Під час використання M-x find-file-literallyEmacs не буде використовувати режим, заснований на імені файлу. Натомість він використовується fundamental-modeяк основний режим.

З командного рядка ви можете використовувати щось подібне:

emacs --eval '(find-file-literally "yourfile.ext")'

Це не вирішує мою проблему. Я пояснив це питання на прикладі.
rlandster

11

Режими Emacs встановлюються для кожного відкритого файлу, тому відкриття Emacs у режимі "нічого" не обов'язково виконує те, що ви хочете. Кожен файл, який ви відкриєте після запуску Emacs, застосує власний режим.

За допомогою команди @clemera передбачено відкрити файл в основному режимі з командного рядка. Ви можете зробити те ж саме з уже запущених Emacs через M-x find-file-literally. Ви можете "вимкнути" основний режим для файлу, який ви вже відкрили, вибравши основний режим (який в основному є "нічого режимом"):M-x fundamental-mode


6

Я працюю:
GNU Emacs 25.2.2 (x86_64-pc-linux-gnu, GTK + версія 3.22.30) 2018-08-26, модифіковано Debian

$ emacs yourfile.txt --eval '(fundamental-mode)'

Ви повинні поставити --eval після імені файлу, або, як видається, встановити режим на основі імені файлу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.