写点什么

宏命令重返 Visual Studio

  • 2016-06-16
  • 本文字数:756 字

    阅读完需:约 2 分钟

几年以前(Visual Studio 2010 时代),Visual Studio 中包含了一款非常受欢迎的基于 VBA Macro 语言搭建的宏系统。从 VS2012 版本开始,这个功能就已经从 Visual Studio 中删除,用户不能再使用这个功能,或是寻求第三方替代方案。为了解决这个问题,Microsoft 的 Justin Clareburt宣布在Visual Studio 2013 和2015 中恢复宏命令,这是通过一个叫Macros for Visual Studio 的新扩展实现的。

这个扩展使得用户可以使用几个功能,包括选择记录以及重新执行活动文档操作和IDE 指令。宏命令可以重新执行很多次,可以指定快捷键,其产生的宏文件可以在Visual Studio 中编辑。扩展还可以使用Visual Studio DTE APIs 来实现 IDE 的更多操作,而不仅仅是记录键盘操作。

对 DTE APIs 的访问为实现这个扩展添砖加瓦。示例脚本中包含了如何以编程方式调整字体大小、设置断点以及修改活动解决方案中的所有文件的演示。

值得注意的是,现有的扩展中有一些限制。第一个,也是最严重的是,还在使用 VS2010 版本宏命令的开发者会发现不能使用这个扩展,因为现在的宏命令是使用 JavaScript 编写的。另外一个限制是它不能记录用户在 Visual Studio 中输入的对话框。第三,宏命令不能调用其他的宏命令。最后一点,宏命令没有处理异步事件的能力(例如构建阶段完成需要的可变时间),因此尝试执行这些实践的脚本可能会发生未定义行为。

扩展由 C#编写,基于 MIT 许可证发布,如果想要研究它的运行情况,你可以在 GitHub 上获取它。通过Visual Studio Gallery 也可以获得该扩展直接安装,并在你的IDE 中使用。

查看英文原文 Macros Return to Visual Studio


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-06-16 19:001945
用户头像

发布了 218 篇内容, 共 68.5 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

架构实战营心得

阿拉阿拉幽幽

开源一夏 | 分治算法其实很有趣

宇宙之一粟

开源 分治法 8月月更

Kubernetes深入学习之二:编译和部署镜像(api-server)

程序员欣宸

Kubernetes 8月月更

常见网络协议考察知识点

浅羽技术

https 网络协议 HTTP TCP/IP 8月月更

面试常见IO问答知识点

浅羽技术

io nio AIo bio 8月月更

多线程常见面试问答知识点

浅羽技术

线程 多线程 线程池 进程 8月月更

Java反射是什么

TimeFriends

8月月更

css入门

楠羽

#开源

数字藏品app:如何开发?

开源直播系统源码

数字藏品 数字藏品软件开发 数字藏品开发 数字藏品系统

携手HMS Core统一扫码服务, 兴业证券优理宝App提升用户扫码体验

HarmonyOS SDK

扫码

阿里云首期云原生加速器第二次集结活动成功举办,秒云获阿里云加速器荣誉伙伴认证

MIAOYUN

阿里云产品集成认证 阿里云产品生态集成认证 阿里云云原生加速器 阿里云首期云原生加速器 阿里云加速器荣誉伙伴

Databend v0.8 新版本上线!

Databend

开源社区 云平台 大数据 开源 databend

备受资本市场关注的Zebec,是如何运作的?

BlockChain先知

云原生(二十九) | Kubernetes篇之自建高可用k8s集群优化

Lansonli

云原生 k8s 8月月更

最全面的Zebec Protocol全景解读,一文读懂Web3基建设施

股市老人

聊聊动态线程池的9个场景

马丁玩编程

GitHub 开源 动态线程池

深究索引:Mysql索引模型及其不同结构优劣势

知识浅谈

8月月更

毕业设计 - 电商秒杀项目

阿拉阿拉幽幽

Spring避坑指南:Spring声明式事务@Transactional避坑

崔认知

Spring避坑指南 避坑指南 @Transactional避坑

【项目实战】创建一个github库上传本地项目

小明Java问道之路

git GitHub 项目实战 8月月更

备受资本市场关注的Zebec,是如何运作的?

鳄鱼视界

【JVM】HotspotJVM内存区域解析

小明Java问道之路

JVM JVM内存结构 JVM内存模型 8月月更 JVM内存区域

ClickHouse 挺快,esProc SPL 更快

dvlinker

数据库 oracle sql Clickhouse SPL

开源 DevOps 工具,你值得拥有!

SoFlu-JavaAI开发助手

详解 Sqllogictest

Databend

大数据 databend Sqllogictest

你必须要会uvloop!让Python asyncio异步编程性能直逼Go协程性能

HullQin

Go golang 后端 websocket 8月月更

面试突击78:@Autowired 和 @Resource 有什么区别?

王磊

SpringCloud

vivo 基于 JaCoCo 的测试覆盖率设计与实践

vivo互联网技术

DevOps JACOCO

MAUI + Masa Blazor 开发界面跟随系统主题切换的App

MASA技术团队

.net blazor MASA MAUI Xamarin

Databend 源码阅读系列(一): 开篇

Databend

源码阅读 源码剖析 云平台 大数据 开源 databend

宏命令重返Visual Studio_.NET_Jeff Martin_InfoQ精选文章