微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

有没有任何文本编辑器(对于 Windows),它对混合空格和制表符有很好的支持,对于像C/C++#/ Java这样的语言(以及 Python / Ruby等的奖励点)?
即Tabs将用于缩进,并且空格将用于对齐.

例如,说→表示选项卡,.表示空格,■表示光标的当前位置.

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

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

我希望能够按⏎确认键,然后看到:

template<class T1,→ .........■
}

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

template<class T1,→ .........int baz) {
  →  →  ■
}

当然,如果我按Backspace或Shift-Tab或其他什么,它应该清除到适当的停止 – 这可能是与当前类型相同类型的缩进的开始.还有那样的东西.

注意:

我意识到许多编辑器(SciTE,Visual Studio,可能还有Emacs,Vim等)都可以使用正则表达式(或原始解析代码)编写脚本,以便做一些有效的工作,哦80%的时间.

但是,我正在寻找一些希望得到更强大支持的东西,同时支持当前的语言来弄清楚要做什么.毕竟,编辑器错误不应该比首先手动缩进更难解决 – 否则我只是手动操作而不是使用该功能

解决方法

不确定这是否有资格成为答案.但是,我的 gvim与当前的vimrc完全符合您要求的标签和空格.
我强烈建议使用 Gvim.这是个人选择的问题,可能有更好或更差的编辑.

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

您将找不到的是lexing支持或智能 – 至少以可用的方式.

看一下截图.这是我改编的vimrc链接.

编辑我真的怀疑是否有编辑乌托邦可以这么说.您可能必须根据“正确的工作工具”原则取得平衡.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐