我想使用空格而不是制表符。我发现这SO post似乎解决了这个问题。我使用了接受的答案,但我仍然遇到问题。如果我在以非空格开头的行的开头按Tab键,则Tab键可以正常工作。但是,如果我点击IndentWidth
上方的任意位置并按Tab键,则最多可以选中8个空格。
E.g。
我的IndentWidth
是2.我的文字是ABCDEFGHI
。我用句号表示空格。
如果我点击A
并点按标签前面,我的文字会变为..ABCDEFGHI
(这是正确的)
如果我点击B
并点按标签前面,我的文字会变为A.BCDEFGHI
(这是正确的)
如果我点击C
并点击标签前面,我的文字会变为AB......CDEFGHI
(这不正确)
此外,如果光标位于行的前导空格中的任何位置,当我按Tab键时,光标移动到第一个非空格字符,然后从那里移动标签。
E.g。
我的IndentWidth
是2.我的文字是....WXYZ
。我用句号表示空格。
如果我点击前四个空格中的任意位置并点击标签,光标将移至W
,然后我的文字变为........WXYZ
。 (这不正确)
更新
我忽略了提到我在代码中专门设置了缩进属性,如下所示:
scintilla.Indentation.ShowGuides = true;
scintilla.Indentation.IndentWidth = 2;
scintilla.Indentation.TabIndents = true;
scintilla.Indentation.UseTabs = false;
我刚尝试在设计时在属性编辑器中将IndentWidth
设置为2,现在它似乎正常工作。
结论:在设计时将属性设置为运行时,编辑器的行为方式会有所不同。