zoukankan      html  css  js  c++  java
  • 黑科技抢先尝


    微软在几天前的build大会上展示了 `Windows Terminal`的威力,由于官宣要在6月中旬才上`Microsoft store`,还有一个多月要等呢。好在代码已公布在 github, 于是决定自己 build 后体验一番。遇到不少坑,大概整理一下流程,分享给大家。如果大家如果发现问题,欢迎指正。
    **官方短视频如下:** https://v.qq.com/x/page/p0869ovd7aw.html
    build大会中的完整版视频(含英文字幕): https://v.qq.com/x/page/e0870hucdzs.html

    将Window 10 升级到1903版本

    试过用Windows 10 更新助手(Windows 10 update assistant)来升级Windows 10, 发现只能升级到1809版本。而编译 github 上的 Microsoft terminal 代码必须使用Window 10的1903版本.
    因为不升级,解决其他所有的问题,最后会报这个错(代号DEP 3321):
    Windows-need-update

    好在前不久听说了工具网站 MSDN, 我告诉你上可以下载到该版本的镜像。

    1557627006164

    关于版本选择,到底选Consumer版还是Business版呢?经大佬Edi Wang指点,得悉如下信息:

    • 如果你的 Windows 是 家庭版或专业版,请选择 Consumer
    • 如果你的 Windows 是 企业版,请选择 Business

    至于ed2k://资源的下载,你使用百度云盘的离线下载也好,使用迅雷也行。


    敲黑板: 安装好Windows 10 1903版后,如果不打算编译代码可直接跳到标题直接安装预编译版本继续阅读~


    安装好git, 从github上clone代码

    首先需要安装好 git for Windowshttps://gitforwindows.org/),然后使用 git 去 clone 一份代码。

    Microsoft Terminal 的 github仓库是:
    https://github.com/microsoft/Terminal

    对应的 clone地址是:

    https://github.com/microsoft/Terminal.git

    打开命令行,使用cd命令,切换到自己平时存vs项目的路径(比如我切换到D:Coding)。

    接着只需要在Git Bash中输入如下命令即可:

    git clone https://github.com/microsoft/Terminal.git
    

    1557625927965

    等 clone 完成,就可以进行下一步了。

    确保 Clone 仓库完成后,还可以使用以下命令Clone子模块:

    git submodule update --init --recursive
    

    安装 VS 2019 和 .NET core 3.0 SDK

    先安装 vs 2019 professional 或 enterprise版本,github上的文档提到了要编译 window terminal 必须勾选上:

    • Desktop Development with C++
    • Universal Windows Platform Development
    • Windows SDK version 10.0.18362.0

    再安装好.net core 3.0 SDK,比较简单,就不再详述。

    在vs的设置里,勾选.NET core下的"Use preview SDK"(使用.NET Core SDK预览版),重启 VS。

    img3

    在 vs 2019 中打开Windows terminal项目(对应文件夹Terminal)下的OpenConsole.sln, 如果不勾选"使用.NET Core SDK预览版"直接编译,很可能会报下面的 Error:

    1557627653748


    重定解决方案目标

    在上一步中,用vs2019打开OpenConsole.sln时,系统会提示你将项目重新定位到 v142。 对于“Windows SDK版本”,请选择“10.0.18362.0”。 将“Platform Toolset”设置为“Upgrade to v142”。
    1557632133871

    然后往下拖,按下图设置:

    1557632360926

    设置完后,单击最下面的OK。

    当然,如果误点了"取消",也能通过右键单击整个Solution -> Retarget solution来设置:
    Retarget


    设置好编译平台和启动的项目

    在你尝试再次build之前,请确保你已经选择好与你的计算机匹配的编译平台(Solution Platform)。

    不知道你一开始打开Solution OpenConsole.sln时编译平台和启动项目是什么样的,我的是这样的:

    1557631342884

    要正确地 build,这里需要根据自己电脑的实际情况来设置。比如我的x64的,就配置如下:

    1557629911752

    否则会出现很多错误。


    编译成功后出现一个新的Powershell

    解决完编译时的各种状况之后,Ctrl + F5 运行项目。

    唉,和之前的Powershell有何不一样呢?按Ctrl + T之后会多了个菜单,同一个窗口中可以有多个Tab,而其他功能暂时没进来,等正式版。

    尝试新的跨平台 PowerShell https://aka.ms/pscore6 
    

    1557632560061

    任务栏中相应的图标为:

    1557634914551

    Ctrl + T之后, 右上角会出现一个以+开头的菜单

    1557632764029

    但你在菜单中切换到cmd的时候,视频中的酷炫效果就有一点出来的迹象了:

    1557632951609

    接下来,介绍一下如何在上面这个新的cmd中使用Linux命令,以我最熟悉的Ubuntu为例来介绍吧。


    安装Ubuntu

    在Microsoft store里搜索到Ubuntu,然后购买,安装。这实际上就是WSL (Windows Subsystem for Linux)。

    1557633269919

    当然,你想体验其他版本的 Linux,也是可以的,比如Arch Linux

    1557633347262


    在编译出来的命令行中使用Linux命令

    安装完WSL版的 Linux 后,还需要开启WSL的权限:

    以"管理员权限"另开一个PowerShell窗口,

    1557633727047

    然后输入如下命令:

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    

    1557633836814

    等这里的命令完成,就可以在build出来的 Terminal 中执行 Linux 命令了。

    先在cmd中输入 ubuntu, 需要花一点点时间启动 Ubuntu, 设置好用户名和密码。

    然后就可以愉快地玩Ubuntu了,下面我随便输入了几个命令 ps, touch, ls等,如下图所示。

    1557633540178


    ## 直接安装预编译版本

    如果自己不想配置和build,可以下载build好的体验一把:

    https://pan.baidu.com/s/1Xrh-0KbsBmh-zJYsdtYqnA 口令: y233

    当然,这个预编译版本的来源是:
    https://twitter.com/thebookisclosed/status/1125480984068153344.

    另外,Scott Hanselman写了一篇相关文章:
    A new Console for Windows - It's the open source Windows Terminal - Scott Hanselman
    https://www.hanselman.com/blog/ANewConsoleForWindowsItsTheOpenSourceWindowsTerminal.aspx,有园友已经将其部分内容翻译成了中文,见 提前体验让人"回归Windows怀抱"的Windows Terminal - 三升水

    安装预编译版本的方法

    解压下载到的文件 WindowsTerminal_SelfSigned_x86_x64_arm64.7,解压之。

    选择后缀名为.cer的证书文件,右击选择"安装证书"。

    1557666142919

    1557666174961

    1557666206499

    1557666264381

    图中蓝色的两处人选其一即可。

    接下来,点另一个后缀名为.msixbundle的文件,就可以安装了:

    1557666483104

    如果要卸载,也很简单。只需在开始菜单中输入应用和功能,找到相应的软件,点卸载即可。

    1557666551031


    ## 使用自定义主题

    安装完 Ubuntu 之后,就可以体验有3类Tab风格的Terminal了,具体安装方法见前文。

    ctrl + T,打开另一个 Tab, 此时会看到设置按钮,点击之,会弹出一个 profile.json的文件。

    然后用我上传的主题文件 profile-my.json 的内容替换其中的内容,保存,一会就看到新的主题样式了。比如,新的PowerShell的样式如下:

    1557667349751
    当然了,你还可以根据自己的需要在这个配置的基础上自由发挥,不过提醒一点设置字体时要小心,如果该字体终端中找不到,切换类型时整个 Terminal 会崩掉。

    为不同类型的 Tab 加上图标

    可以在这个位置添加图标:

    %LOCALAPPDATA%packagesMicrosoft.WindowsTerminal_8wekyb3d8bbweRoamingState
    

    我在该文件夹中放入了一些32x32的PNG,然后在profile.json中可以用ms-appdata://开头的路径来引用图片资源。

    图标可从这里获得:
    icons

    然后将下面新的profile-withIcons.json文件的内容替换之前的设置.
    profile-withIcons.json

    弄完后文件夹中的内容是这样的:
    dir

    最后的使用效果是:

    icons


    其他版本的主题文件:

    profiles_Scott.json

    profiles_baiyue.one.json

    profile.json中更多配置参数的含义,各位需要自己去Solution Terminal中搜索相应的字段(C++代码)看看了~


    ## 使用 Emoji 表情

    切换到WSL后,就可以体验 Emoji表情啦,一开始我用拼音输入法键入了几个,发现该方法下暂时不方便输入 Emoji 表情。

    好在在Windows 10上还有另外两种方式可以输入Emoji 表情:

    • Windows 10自带的 Emoji 表情输入,有快捷键
    • 使用第三方 Emoji 表情工具,复制了贴进去

    对于第一种方式,我也是刚会不久,Windows 10 中使用 【Win + .】 或 【Win + ;】可调出表情输入面板,然后继续使用 Win + . 可以选中表情。当然这里的. 和 ; 都是英文状态下的半角符号。
    win10-emoji

    对于对二种方式,这里推荐一个字符网站http://cn.piliapp.com/symbol/(可能需要Kēxué地上网),找到自己想要的表情,点页面上方的复制,然后贴到 Terminal 中就好了。比如我随便输入了几个,效果如下:

    emoji-BravoYeung

    要临时放大字体怎么办,按 Ctrl + 鼠标滚轮 即可。

    emoji2
    后面这张图基本上覆盖了官方宣传视频中的所有 Emoji 表情 。


    **备份地址:**

    https://github.com/yanglr/WindowsDevTools/tree/master/awosomeTerminal


    **其他玩法:**

    Build and install Windows Terminal from Azure DevOps ? Keep IT tidy

    https://blog.stomsvik.com/posts/2019/terminal-azure-devops/

    如有什么疑问或建议,欢迎及时留言交流~


    **参考:**

    Terminal/README.md at master · microsoft/Terminal
    https://github.com/microsoft/Terminal/blob/master/README.md

    Windows 10 上WSL (Windows上的Linux 子系统)的安装指南 | Microsoft Docs
    https://docs.microsoft.com/zh-cn/windows/wsl/install-win10

    Donovan Brown | Building the new Windows Terminal with Visual Studio 2019
    http://www.donovanbrown.com/post/Building-the-new-Windows-Terminal-with-Visual-Studio-2019

    Windows Terminal profile.json
    https://gist.github.com/fcharlie/7530d36175bc5249f1ae92be536238cd



    作者简介:Bravo Yeung,计算机硕士,知乎干货答主(获81K 赞同, 38K 感谢, 235K 收藏)。曾在国内 Top3互联网视频直播公司工作过,后加入一家外企做软件开发至今。


    如需转载,请加微信 iMath7 申请开白!


    欢迎在留言区留下你的观点,一起讨论提高。如果今天的文章让你有新的启发,学习能力的提升上有新的认识,欢迎转发分享给更多人。


    欢迎各位读者加入 .NET技术交流群,在公众号后台回复“加群”或者“学习”即可。


    大白技术控 公众号名片

    文末彩蛋

    微信后台回复“asp”,给你:一份全网最强的ASP.NET学习路线图。


    回复“cs”,给你:一整套 C# 和 WPF 学习资源!


    回复“core”,给你:2019年dotConf大会上发布的.NET core 3.0学习视频!

  • 相关阅读:
    Design Tutorial: Inverse the Problem
    The Number Off of FFF
    "Money, Money, Money"
    No Pain No Game
    Group
    Vases and Flowers
    Codeforces Round #466 (Div. 2)
    ST表
    Wildcard Matching
    HDOJ 3549 Dinitz
  • 原文地址:https://www.cnblogs.com/enjoy233/p/awesome_windows_terminal_build_and_trial.html
Copyright © 2011-2022 走看看