Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1522651
  • 博文数量: 226
  • 博客积分: 3997
  • 博客等级: 少校
  • 技术积分: 2369
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-19 17:26
个人简介

Never save something for a special occasion. Every day in your life is a special occasion.

文章分类

全部博文(226)

文章存档

2018年(5)

2017年(11)

2016年(1)

2015年(17)

2014年(14)

2013年(30)

2012年(5)

2011年(52)

2010年(107)

分类: 信息化

2013-06-02 07:08:21

SI剪贴板


有时需要频率使用 Ctrl+C/V,例如代码文档化时为下面的函数添加 @param,有没有快捷的方法?
/*!
  * @brief 获取端口映射
  * @param [in] controlURL
  * @param [in] servicetype
  ...
  */
LIBSPEC int
UPNP_GetGenericPortMappingEntry(const char * controlURL,
                                const char * servicetype,
const char * index,
char * extPort,
char * intClient,
char * intPort,
char * protocol,
char * desc,
char * enabled,
char * rHost,
char * duration)
答案时使用SI的Clip,见help:
Clip Window
The Clip Window is a floating and dockable window that displays clips. You can drag and drop text onto the Clip Window and drag text from the Clip Window onto your files.
菜单   Edit->Copy to Clip / Paste from Clip
快捷键 Ctrl+Del/Ins
操作方法:
1、双击选择单词(如参数controlURL),Ctrl+Ins 打开Clip Window。按住Ctrl将单词拖拽到ClipWindow空白处创建新剪贴板 a。
2、依次拖拽其它单词,创建剪贴板 b~g。
3、复制“* @param [in] ”
4、粘贴,Ctrl+Ins,a,Enter
5、重复以上步骤,将a换成 b/c/d/e/f/g
6、换下一批参数内容:
双击选择单词(如参数desc),Ctrl+Ins,a,Enter。
重复以上步骤,将其它内容依次写入剪贴板 b/c/d/e/f/g。
...



ClipWindow中默认剪贴板 ClipBoard 表示Windows系统剪贴板,不可被删除。
按住Ctrl进行拖拽表示 Copy,否则表示 Cut。
拖拽到ClipWindow的剪贴板x,表示改写剪贴板x的内容。拖拽到空白处表示创建新剪贴板。


SI多剪贴板这个功能确实做得不错,(题外话,Ctrl+M 书签功能也很值得GUI编程学习)。
如果快捷键熟练,很快就可以搞定。
有没有更懒的方法?
有,使用SI脚本(Macro Language)。编写宏
macro InsertFunctionHeader()
{
// 取得当前函数名
// 提取当前函数参数列表(从函数名所在行到第一个{中识别参数列表(),分离各个参数名)
// 插入函数的doxygen说明
}


阅读(3229) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

冷雨夜19872014-05-13 09:47:47

楼主能不能写一个InsertFunctionHeader,来完成这个功能的?可以自动获取参数列表的?