首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Scintilla.NET中更改语法颜色

在Scintilla.NET中更改语法颜色
EN

Stack Overflow用户
提问于 2013-01-21 11:27:02
回答 1查看 3.1K关注 0票数 5

我已经在Scintilla.NET上折腾了一两个小时,但我遇到了一个似乎很容易解决的问题。我似乎找不到一种方法来改变Scintilla.NET中关键字的实际高亮颜色,据我所知,他们的文档非常缺乏,我也找不到任何帮助。我也在这里看到了许多问题,这些问题对我也没有帮助。似乎无论我做什么,关键字的亮点总是深蓝色,这在我的表单主题上是非常难阅读的。

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

代码语言:javascript
复制
<?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#代码如下:

代码语言:javascript
复制
scintilla1.Lexing.LexerLanguageMap["65c816 asm"] = "cpp";
scintilla1.ConfigurationManager.CustomLocation = System.IO.Path.GetFullPath("65c816.xml");
scintilla1.ConfigurationManager.Language = "65c816 asm";
scintilla1.ConfigurationManager.Configure();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-21 11:31:56

看起来我犯的错误是没有把我的<Style>放在一个<Styles>标签里。在这样做之后,它似乎起作用了。在发布问题后直接发现是一件很尴尬的事情。

正在工作:

代码语言:javascript
复制
<?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>
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14432106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档