微软推出令人耳目一新的命令行工具,迅速登顶github趋势榜首!
这不再是你记忆中的传统命令行。
许多用户对Windows系统上黑底白字的命令行界面感到厌倦:
然而,在昨天的微软全球开发者大会 Build 2019上,微软推出的Windows Terminal引起了全场的惊叹——命令行界面竟然可以如此有趣?
是的,微软让这个充满“历史厚重感”的命令行变得生动、时尚,并且加入了许多新功能和个性化设置,让Windows上的编程体验变得更加友好。
此外,微软已将该工具上传至GitHub,并在短短几小时内冲上了趋势榜第一名!
不再是你记忆中的传统命令行
现在,让我们详细了解一下Windows Terminal这些令人兴奋的新功能吧!
Windows Terminal将支持多标签页面功能,提供代码高亮主题和自定义设置。
它支持在同一屏幕上显示多种字体和emoji,并提供了基于GPU加速的字体渲染。不同标签页可以使用不同的主题,以满足不同工作域对代码高亮模式的需求。
Windows Terminal还支持通过插件创建各种扩展。
它被设计为访问PowerShell、cmd.exe和Windows子系统Linux(WSL)等环境的中心位置。
Windows Terminal将在微软商店提供下载,预计于六月中旬面向开发者提供预览版,而1.0正式版将于今年冬季发布。微软表示,Windows Terminal不会立即取代旧版命令提示符,以确保用户的兼容性,但微软有意将Windows Terminal设为Windows的默认命令行工具。
数小时,冲击GitHub趋势榜第一!
这个爆款项目包含以下源代码:
Windows Terminal Windows 控制台主机 (conhost.exe) 两个项目之间共享的组件 ColorTool 展示如何使用Windows控制台API的示例项目 Windows Terminal
这些内容在上一节已详细介绍,这里不再赘述。
Windows 控制台主机
Windows 控制台主机程序conhost.exe是Windows原生的命令行体验,它实现了Windows的命令行基础架构,同时提供Windows控制台API、输入引擎、渲染引擎和用户配置信息。本项目中的控制台主机代码实际上是Windows中的conhost.exe的源码。
控制台的主要目的是保持对现有控制台应用程序的向后兼容性。
自从2014年Windows命令行以来,开发团队已经为控制台增加了许多新功能,包括窗口透明化、基于行的选择以及支持ANSI/虚拟终端序列、24位颜色和一个Pseudoconsole ("ConPTY")等。
但由于控制台主要目标是维护向后兼容性,尽管社区多年来一直希望添加一些新功能(如Tabs),但我们无法再增加这些功能。
这些限制促使团队决定开发一个全新的Windows Terminal。
共享的组件
在对控制台进行大修的同时,我们对其代码库进行了大量改进。主要是将逻辑实体清晰地划分为模块和类,引入了一些关键的扩展点,用更安全、更高效的STL容器替换了几个旧的、自制的集合和容器,并通过使用微软的Wil头文件库使代码更简单、更安全。
这项大修工作导致创建了几个对Windows上的任何终端实现都有用的关键组件,包括一个新的基于DirectWrite的文本布局和渲染引擎、一个能够存储UTF-16和UTF-8的文本缓冲区以及一个VT解析器/发射器。
构建一个全新终端
在开始构建全新终端应用程序时,我们探索并评估了几种方法和技术堆栈。最终决定继续使用C++开发,并通过共享上述的现代化组件来实现我们的目标,并基于现代Windows应用程序平台和UI框架进行开发。
此外,我们意识到终端的渲染器和输入堆栈可以构建成可重用的Windows UI控件,方便其他人将其合并到其他应用程序中。
源码构建
该项目使用git submodules包含一些相关依赖,要确保子模块被更新,请在构建器中使用以下命令检查:
git submodule update --init --recursive
OpenConsole.sln需要在Visual Studio中构建或者使用MSBuild在命令行中构建。命令行构建的方法如下:
nuget restore OpenConsole.sln msbuild OpenConsole.sln
团队还在tools目录下提供了一组常用的脚本,可以帮助自动化处理构建和运行测试的过程。
GitHub地址:
https://www.php.cn/link/1ff655edaac1ca6a033c5290110d7a55
以上就是编程新霸!微软重磅推出命令行新工具,数小时冲击GitHub榜首的详细内容,更多请关注php中文网其它相关文章!
编程怎么学习?编程怎么入门?编程在哪学?编程怎么学才快?不用担心,这里为大家提供了编程速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号