Assembly emacs:如何关闭自动缩进?

Assembly emacs:如何关闭自动缩进?,assembly,emacs,indentation,auto-indent,Assembly,Emacs,Indentation,Auto Indent,谁能告诉我如何在emacs中关闭自动缩进 我试过的是推荐的- (when (fboundp 'electric-indent-mode) (electric-indent-mode -1)) 在我的模式中,挂钩不起作用。设置(电子缩进模式0)也不起作用。而且,这两种方法都无助于切换电缩进方式(setq电缩进抑制t) 正确的方法是什么?对于nasm模式,我只需在模式挂钩中调用(电缩进本地模式-1),这就足够了 对于asm模式,默认情况下它会将RET绑定到换行和缩进,因此您可以重新定义

谁能告诉我如何在
emacs
中关闭自动缩进

我试过的是推荐的-

  (when (fboundp 'electric-indent-mode)
    (electric-indent-mode -1))
在我的模式中,挂钩不起作用。设置
(电子缩进模式0)
也不起作用。而且,这两种方法都无助于切换电缩进方式(setq电缩进抑制t)


正确的方法是什么?

对于
nasm模式
,我只需在模式挂钩中调用
(电缩进本地模式-1)
,这就足够了


对于
asm模式
,默认情况下它会将RET绑定到
换行和缩进
,因此您可以重新定义
的键(定义键asm模式映射(kbd“RET”)#换行)
,并在模式挂钩中禁用
电缩进本地模式

电缩进模式默认情况下仅在Emacs 24.4之后才启用。它是一个全局次要模式,所以在主要模式挂钩中使用它没有多大意义。您可以通过M-x foo模式简单地切换任何次要模式。您可以使用C-hfoo模式来学习如何在Lisp中控制它。我不明白你说的“不工作”是什么意思,C-h v foo mode告诉变量在M-:(foo mode-1)之后为nil?你能提供一个最小的方法来重现这个问题吗,从
emacs-Q开始(没有初始化文件)?通常,将
electric indent inhibit
设置为
t
应在当前缓冲区中禁用它。它用于编辑程序集源。我想要的是明确地确定缩进,因为我使用的是不同的汇编语言等等。从
emacs-qfoo.s
(这会为我触发“汇编程序”模式)开始,当我输入
text
时,它应该只添加一个不带任何缩进gaga的换行符。标签相同,评论相同。相关:嗨,谢谢。这几乎奏效了。剩下的是:
标签:
和emacs将在“:”之后添加额外的空格,这样我就得到了多余的尾随空格和类似“label:”的行。为此,
(define key asm mode map):“nil)
谢谢,这解决了“:”的问题。不幸的是,仍然存在一些自动性:当我键入一个<代码> @ /代码>,然后将光标定位在它上面,按<代码>标签>代码>,它在代码< > /代码>之前添加了32个空白。