[Dev-Boo]SharpDevelop修改快捷键

SharpDevelop是一款开放源码的IDE,对于 Boo 语言提供了良好的支持。然而,其默认的 Ctrl+Space 代码提示快捷键与中文输入法切换冲突。本文介绍了如何修改 SharpDevelop 的 addin 文件,将快捷键从 Ctrl+Space 改为 Ctrl+Oem5,从而避免冲突。通过查找并编辑 ICSharpCode.SharpDevelop.addin 文件中的 XML 元素,可以实现快捷键的自定义,这对于没有 MSDN 文档的开发者来说是一个实用的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用SharpDevelop开发boo很好用,项目组织,代码提示什么的.

SharpDevelop是一款很好的open IDE,如果写一些简单的dotnet产品使用#Develop会很容易上手.

#Develop对boo已经支持代码提示(快捷键:Ctrl+Space),可惜跟中文系统的输入法切换冲突了.

我也为这个烦恼了一阵,虽说可以用,但不能主动调出提示也很不方便,我曾经尝试修改#Develop的源码(因为我当时以为是硬编码),当然也尝试各种我所能想到的办法,都不可行(可能我用的方法不对).

今天只是随意在网上查了一下,看到老外有人给出提示修改ICSharpCode.SharpDevelop.addin文件(在AddIns目录下)修改Ctrl+N的快捷键.我猜想会不会同相也可以修改Ctrl+Space,vi想找了一下真被我找到了.

修改内容如下:
想找ICSharpCode.SharpDevelop.addin文件,检索"ControlSpace"将定位到Tag:

editaction class="ICSharpCode.SharpDevelop.DefaultEditor.Actions.CodeCompletionPopup" id="CodeCompletionPopup" style="COLOR: #cc0000" keys="ControlSpace" 

(注:Control和Space之间有一个或运算符,blogger没能打出来)

这个文件是以XML文件格式组织的,比如我想把原来的"Ctrl+Space"改为"Ctrl+",则我修改后为:

editaction class="ICSharpCode.SharpDevelop.DefaultEditor.Actions.CodeCompletionPopup" id="CodeCompletionPopup" style="COLOR: #cc0000" keys="ControlOem5" 

(注:Control和Oem5之间有一个或运算符,blogger没能打出来)

格式很简单(做dotnet的朋友应该都很熟悉),如:"Ctrl+U"的描述为"ControlU","Ctrl+Z"的描述为"ControlZ"...

一些特殊的符号可以查MSDN的System.ConsoleKey这个枚举,如果手头没装MSDN,那可以试试我的办法,在booish里输入这段代码:

print System.Console.ReadKey().Key

很简单一行Boo代码,调用System.Console的ReadKey方法等待一个按键输入,然后通过打印Key属性得到ConsoleKey枚举对象.

下面是我运行的结果:

>>>print Console.ReadKey().Key
Oem5

而前面这个""是我的输入,后面的"Oem5"则是我想等到的ConsoleKey的结果.

是不是很简单?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值