Emacs c++选项卡写入空格删除
Emacs c++ tabs writing spaces removing
我看到了很多关于emacs和选项卡/空间主题的问题,但没有人谈论这个:
我在C++模式下使用emacs,制表符作为缩进字符,如果我按enter键以换行emacs自动缩进制表符,但如果我试图删除那个"制表符",我只删除一个空格。
我知道emacs使用空格创建制表符,但如果我想删除那个"制表符",我想直接删除4(或8(个空格,而不是一个接一个,在python模式下可以按预期工作,但在c++模式下不行。有一个变量可以用于此或任何解决方案吗?
您的Backspace键(<DEL>
(可能绑定到命令backward-delete-char-untabify
。将其绑定到其他内容,例如delete-backward-char
。
从Elisp手册,节点程序模式:
在大多数编程语言中,缩进应该因行而异行来说明程序的结构。因此,在大多数编程语言模式,键入
<TAB>
将更新当前线路。此外,
<DEL>
通常绑定到backward-delete-char-untabify
,后者向后删除将每个选项卡视为相等数量的空格,以便您可以删除一列缩进,而不必担心空白由空格或制表符组成。
IOW,您不喜欢的行为默认在您使用的编程模式中提供。
实际上,如果您在c++-mode
中,则<DEL>
绑定到命令c-electric-backspace
。该函数的文档(C-h f c-electric-backspace
(告诉您:
c-electric-backspace
是一个交互式编译的Lisp函数cc-cmds.el
。
(c-electric-backspace ARG)
删除前面的字符或空白。
如果
c-hungry-delete-key
是非nil
(由模式上的"/h"
指示行(,则消耗所有前面的空白。然而,如果前缀提供了自变量,或者c-hungry-delete-key
是nil
,或者点是在文字内部,然后是变量中的函数c-backspace-function
被调用。
默认情况下,用户选项c-backspace-function
(C-h v
(的值似乎是。。。CCD_ 22。因此,您可以自定义该选项,将其设置为其他功能,例如delete-backward-char
。这将只更改C++和C模式的行为。
- 使用另一个字符串从字符串中删除空格
- 如何删除已输入的书以及如何使标题,语言和名称在上面放置空格不会出错?
- 如何插入 4 个空格宽的制表符并将它们删除两个空格?
- 可视代码 删除函数括号内的空格
- 用于删除句点和空格的函数
- Emacs c++选项卡写入空格删除
- 如何删除基于空格的字符串
- 从字符数组中删除双空格
- 循环以从字符数组中删除过多的空格 (C++)
- 从文本文件中读取数据并删除所有换行符空格,并在 C++ 控制台中显示
- 从文件中读取多行.txt字符串删除空格并创建新文件进行输出
- 使用正则表达式删除前导/尾随空格,引号除外
- 从字符串中删除空格未生效
- 为什么在写入文件时删除空格无法读取文件
- 解锈化代码格式化程序删除C++单行中的空格
- c++ 如何删除特定字符串中的空格
- 删除空格后如何将其插入字符串中
- 如何删除字符串中的所有空格并将数据存储在两者之间
- 如何修改数组,从中删除空格,然后将其存储在新数组中
- 如何修复我的代码以删除字符串中的空格