0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

微软全球开发者大会Build 2019中重磅发布了windows新版命令行

DPVg_AI_era 来源:lq 2019-05-10 09:15 次阅读

昨日,在微软全球开发者大会Build 2019中重磅发布了windows新版命令行——Windows Terminal。一改“历史厚重感”造型,样式变得多样丰富且新添功能,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 Console API, 输入引擎、渲染引擎和用户配置信息。本项目中的控制台主机代码实际上是 Windows 中的 conhost.exe 的源码。

控制台的主要目的是对已有控制台应用保持向后兼容性。

自从 2014 年有了 Windows 命令行以来,开发团队已经给控制台增加了很多新特性,包括窗口透明化、基于行的选择以及支持 ANSI / 虚拟终端序列 Virtual Terminal sequences, 24-bit color, 以及一个 Pseudoconsole ("ConPTY") 等等。

但是由于控制台主要的目标是维护向后兼容性,所以尽管这么多年社区一直希望我们能添加一些特性(例如 Tabs),但是我们不可能再增加这些特性。

诸多限制让团队决定开发一个全新的 Windows Terminal。

共享的组件

在对控制台进行大修的同时,我们对其代码库进行了大量的改进。主要是将逻辑实体清晰地划分为模块和类,引入了一些关键的扩展点,用更安全、更高效的STL容器替换了几个旧的、自制的集合和容器,并通过使用微软的 Wil header 库使代码更简单、更安全。

这项大修工作导致创建了几个对 Windows 上的任何终端实现都有用的关键组件,包括一个新的基于 DirectWrite 的文本布局和渲染引擎、一个能够存储 UTF-16 和 UTF-8 的文本缓冲区以及一个VT解析器/发射器。

构建一个全新终端

当开始构建全新终端应用程序时,我们探索并评估了几种方法和技术堆栈。最终决定继续使用 C++ 开发,并通过共享上述的现代化组件来实现我们的目标,并基于现代 Windows 应用程序平台和 UI 框架之上进行开发。

此外,我们意识到终端的渲染器和输入堆栈可以构建成可重用的 Windows UI 控件,方便其他人可以将其合并到其他应用程序中。

源码构建

该项目使用 git submodules 包含一些相关依赖,要确保子模块被更新,请在构建器使用如下命令检查:

gitsubmoduleupdate--init--recursive

OpenConsole.sln 需要在 Visual Studio 构建或者是使用 MSBuild 在命令行中构建。命令行构建的方法如下:

nugetrestoreOpenConsole.slnmsbuildOpenConsole.sln

团队还在 tools 目录下提供了一组常用的脚本可以帮助自动化处理构建和运行测试的过程。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微软
    +关注

    关注

    4

    文章

    6564

    浏览量

    103944
  • WINDOWS
    +关注

    关注

    3

    文章

    3524

    浏览量

    88399
  • GitHub
    +关注

    关注

    3

    文章

    466

    浏览量

    16381

原文标题:编程新霸!微软重磅推出命令行新工具,数小时冲击GitHub榜首

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Windows操作系统的常用命令

    Windows操作系统提供许多实用的命令行工具,通过命令行界面(Command Prompt)或Windows PowerShell,用户
    的头像 发表于 08-07 15:40 505次阅读
    <b class='flag-5'>Windows</b>操作系统<b class='flag-5'>中</b>的常用<b class='flag-5'>命令</b>

    微软发布Windows 11的Build 26120.1252更新

    今日,微软面向其Dev频道的Windows Insider项目成员隆重发布Windows 11的Bui
    的头像 发表于 07-16 14:42 568次阅读

    2024 TUYA全球开发者大会盛大启幕,Cube AI大模型重磅首发!

    2024TUYA全球开发者大会上,重磅推出AI大模型、AI开发工具、AI小程序开发基座等重量级产
    的头像 发表于 05-31 08:15 322次阅读
    2024 TUYA<b class='flag-5'>全球</b><b class='flag-5'>开发者</b><b class='flag-5'>大会</b>盛大启幕,Cube AI大模型<b class='flag-5'>重磅</b>首发!

    2024 TUYA全球开发者大会盛大启幕,Cube AI大模型重磅首发!

    2024 TUYA全球开发者大会上,重磅推出AI大模型、AI开发工具、AI小程序开发基座等重量级
    发表于 05-30 09:13 212次阅读
    2024 TUYA<b class='flag-5'>全球</b><b class='flag-5'>开发者</b><b class='flag-5'>大会</b>盛大启幕,Cube AI大模型<b class='flag-5'>重磅</b>首发!

    NVIDIA与微软扩展合作,帮助开发者更快构建和部署AI应用

    NVIDIA 在 Microsoft Build 开发者大会上展示与 Microsoft Azure 和 Windows PC 的集成解决
    的头像 发表于 05-23 10:14 373次阅读

    鸿蒙ArkUI-X跨平台开发:【命令行工具(ACE Tools)】

    ACE Tools是一套为ArkUI-X项目跨平台应用开发者提供的命令行工具,支持在Windows/Ubuntu/macOS平台运行,用于构建OpenHarmony/HarmonyOS、Android和iOS平台的应用程序,其功
    的头像 发表于 05-21 17:39 1626次阅读
    鸿蒙ArkUI-X跨平台<b class='flag-5'>开发</b>:【<b class='flag-5'>命令行</b>工具(ACE Tools)】

    微软Build 2024开发者大会来袭

    微软将于今年5月21日至23日,在西雅图盛大举办Build 2024开发者大会。作为科技界的年度盛事,此次大会备受瞩目,预计将公布人工智能(
    的头像 发表于 05-21 11:49 719次阅读

    HarmonyOS开发:【基于命令行(安装库和工具集)】

    使用命令行进行设备开发时,可以通过以下步骤安装编译OpenHarmony需要的库和工具。
    的头像 发表于 04-25 21:03 365次阅读
    HarmonyOS<b class='flag-5'>开发</b>:【基于<b class='flag-5'>命令行</b>(安装库和工具集)】

    HarmonyOS开发:【基于命令行开发环境)】

    在嵌入式开发,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenH
    的头像 发表于 04-25 17:54 1223次阅读
    HarmonyOS<b class='flag-5'>开发</b>:【基于<b class='flag-5'>命令行</b>(<b class='flag-5'>开发</b>环境)】

    微软Build 2021将展示全新ARM处理器设备与Windows人工智能

    据4月11日消息,微软将于近期举行一年一度的开发者大会——Build,本次大会将重点探讨Windows
    的头像 发表于 04-11 10:55 457次阅读

    微软发布Windows应用程序优化服务,激发开发者热情

    3 月 14 日,微软宣布面向全球开发者推出 Arm Advisory Service,以协助其在Arm设备上构建并优化Windows应用。此项服务自 2023年10月开始试运营以来,
    的头像 发表于 03-14 10:26 428次阅读

    idea如何输入命令行参数

    在许多软件开发和系统管理的任务,我们经常需要向应用程序传递命令行参数。命令行参数是在运行时传递给程序的值,用于指定程序的行为和配置选项。本文将详细介绍如何在不同的编程语言和操作系统
    的头像 发表于 12-06 15:01 1073次阅读

    eclipse怎么使用命令行

    。JDK是运行Java程序所必需的环境,而Eclipse则是一个基于Java开发的IDE。在确保安装完毕后,我们可以通过以下步骤来在命令行
    的头像 发表于 12-06 11:26 2416次阅读

    Uboot启动延时和读取命令行输入

    就会中断等待,进入命令行输入模式。 如果没有配置启动延时功能或者启动延时超过了设置的时间, U-Boot 运行启动命令行参数,启动命令参数在顶层配置文件,由 CONFIG_BOOTC
    的头像 发表于 12-04 17:16 1481次阅读

    如何在命令行配置DDS

    DDS这么好,那该如何配置和使用呢?我们先带大家入个门。 案例一:在命令行配置DDS 我们先来试一试在命令行配置DDS的参数。 启动第一个终端,我们使用best_effort创建一
    的头像 发表于 11-24 18:03 930次阅读
    如何在<b class='flag-5'>命令行</b><b class='flag-5'>中</b>配置DDS