gpt4 book ai didi

c# - 在 Scintilla.NET 中更改语法颜色

转载 作者:太空狗 更新时间:2023-10-29 23:16:09 28 4
gpt4 key购买 nike

我已经用 Scintilla.NET 弄乱了一两个小时,但我遇到了一个看起来应该很容易解决的问题。我似乎无法找到一种方法来更改 Scintilla.NET 中关键字的实际突出显示颜色。据我所知,他们的文档非常缺乏,我在那里找不到任何帮助。我在这里也看到了很多对我没有帮助的问题。似乎无论我做什么,关键字的突出显示总是深蓝色,这在我的表单主题上非常难以阅读。

到目前为止,我已经将这种 XML 样式放在一起并使用 C# 代码加载该样式。我将几个示例中的 XML 放在一起,C# 代码来自他们网站上的一个问题。

<?xml version="1.0" encoding="utf-8"?>
<ScintillaNET>

<Language Name="65c816 asm">
<Indentation TabWidth="4"/>
<Lexer LineCommentPrefix=";" >
<Keywords List="0" Inherit="False">
adc adc and asl bcc bcs beq bit bmi bne bpl
bra brk brl bvc bvs clc cld cli clv cmp cop
cpx cpy dec dex dey eor inc inx iny jmp jsr
lda ldx ldy lsr mvn mvp nop ora pea pei per
pha phb phd phk php phx phy pla plb pld plp
plx ply rep rol ror rti rtl rts sbc sec sed
sei sep sta stp stx sty stz tax tay tcd tcs
tdc trb tsb tsc tsx txa txs txy tya tyx wai
wdm xba xce
</Keywords>
</Lexer>
<Style Name="CHARACTER" ForeColor="#00AAFF"/>
<Style Name="NUMBER" ForeColor="#00AA00"/>
</Language>
</ScintillaNET>

C#代码如下:

scintilla1.Lexing.LexerLanguageMap["65c816 asm"] = "cpp";
scintilla1.ConfigurationManager.CustomLocation = System.IO.Path.GetFullPath("65c816.xml");
scintilla1.ConfigurationManager.Language = "65c816 asm";
scintilla1.ConfigurationManager.Configure();

最佳答案

看来我犯的错误是没有包装我的 <Style><Styles> 里面标签。这样做之后它似乎工作。发完问题直接发现有点尴尬。

现在工作:

<?xml version="1.0" encoding="utf-8"?>
<ScintillaNET>

<Language Name="65c816 asm">
<Indentation TabWidth="4"/>
<Lexer LineCommentPrefix=";" >
<Keywords List="0" Inherit="False">
adc adc and asl bcc bcs beq bit bmi bne bpl
bra brk brl bvc bvs clc cld cli clv cmp cop
cpx cpy dec dex dey eor inc inx iny jmp jsr
lda ldx ldy lsr mvn mvp nop ora pea pei per
pha phb phd phk php phx phy pla plb pld plp
plx ply rep rol ror rti rtl rts sbc sec sed
sei sep sta stp stx sty stz tax tay tcd tcs
tdc trb tsb tsc tsx txa txs txy tya tyx wai
wdm xba xce
</Keywords>
</Lexer>
<Styles>
<Style Name="CHARACTER" ForeColor="#00AAFF"/>
<Style Name="NUMBER" ForeColor="#00AA00"/>
</Styles>
</Language>
</ScintillaNET>

关于c# - 在 Scintilla.NET 中更改语法颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14432106/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com