有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

支持混合空格和制表符的c#编辑器?

对于C++/C#/Java等语言(以及Python/Ruby/等),是否有任何文本编辑器(适用于Windows)支持良好的混合空格和制表符
i、 e.制表符将用于缩进,空格将用于对齐


例如,假设表示选项卡,.表示空间,表示光标的当前位置

如果我的文本编辑器中有以下内容:

template<class T1,
.........class T2>
class Foo
{
  → template<int M,
  → .........int N>
  → void foo(int bar,■
}

我希望能够按下⏎ 输入键,然后查看:

template<class T1,
.........class T2>
class Foo
{
  → template<int M,
  → .........int N>
  → void foo(int bar,
  → .........■
}

在此之后,我应该能够键入下一个参数,关闭括号,然后按⏎ 输入,并使用制表符/空格使光标自动返回到正确位置,如图所示:

template<class T1,
.........class T2>
class Foo
{
  → template<int M,
  → .........int N>
  → void foo(int bar,
  → .........int baz) {
  →  →  ■
}

当然,如果我按了Backspace或Shift Tab或其他任何键,它应该会清除到相应的停止位置——这可能是与当前缩进类型相同的缩进的开始。诸如此类

注:

我意识到许多编辑器(SciTE、Visual Studio,可能还有Emacs、Vim等)都可以使用正则表达式(或原始解析代码)编写脚本来完成80%的工作

但是我正在寻找一些更强大的支持,以及对当前语言的词法分析支持,以确定要做什么。毕竟,首先修复编辑器错误应该不会比手动缩进更难——否则我只会手动操作,而不会使用该功能


共 (1) 个答案

  1. # 1 楼答案

    不确定这是否符合回答条件。然而,我对当前vimrc的gvim完全符合您对选项卡和空格的要求。 我强烈建议使用Gvim。这是个人选择的问题,可能有更好或更差的编辑

    您可以使用se syn=命令突出显示vim上的任何语言

    你找不到的是词法分析支持或intelli sense——至少是可用的方式

    看一下屏幕截图。这里有一个链接到我改编的vimrc

    编辑我真的怀疑是否存在所谓的编辑乌托邦。你可能需要在“适合工作的正确工具”原则的基础上取得平衡

    enter image description here