C# 闪烁止动器
我想用空格代替制表符。我发现这似乎解决了这个问题。我使用了公认的答案,但我仍然有一个问题。如果我在以非空格开头的行的开头按tab键,则tab键可以正常工作。但是,如果我单击C# 闪烁止动器,c#,scintilla,C#,Scintilla,我想用空格代替制表符。我发现这似乎解决了这个问题。我使用了公认的答案,但我仍然有一个问题。如果我在以非空格开头的行的开头按tab键,则tab键可以正常工作。但是,如果我单击IndentWidth上方行上的任意位置并按tab键,它最多可标记8个空格 例如 我的IndentWidth是2。我的文本是ABCDEFGHI。我用句点来表示空间 如果我单击A前面并点击选项卡,我的文本将变成。ABCDEFGHI(这是正确的) 如果我在B前面单击并点击选项卡,我的文本将变成A.BCDEFGHI(这是正确的) 如
IndentWidth
上方行上的任意位置并按tab键,它最多可标记8个空格
例如
我的IndentWidth
是2。我的文本是ABCDEFGHI
。我用句点来表示空间
如果我单击A
前面并点击选项卡,我的文本将变成。ABCDEFGHI
(这是正确的)
如果我在B
前面单击并点击选项卡,我的文本将变成A.BCDEFGHI
(这是正确的)
如果我在C
前面单击并点击选项卡,我的文本将变成AB……CDEFGHI
(这是不正确的)
另外,如果光标位于行的前导空格中的任何位置,当我按tab键时,光标移动到第一个非空格字符,然后从那里开始制表符
例如
我的IndentWidth
是2。我的文本是…WXYZ
。我用句点来表示空间
如果我单击前四个空格中的任意位置并点击tab,光标将移动到W
,然后我的文本将变成…WXYZ
。(这是不正确的)
更新
我忽略了提到我在代码中专门设置了缩进属性,如下所示:
scintilla.Indentation.ShowGuides = true;
scintilla.Indentation.IndentWidth = 2;
scintilla.Indentation.TabIndents = true;
scintilla.Indentation.UseTabs = false;
我刚刚在设计时在属性编辑器中将IndentWidth
设置为2,现在它似乎工作正常
结论:在设计时设置属性与运行时设置属性时,编辑器的行为方式存在一些脱节