微軟最爽命令列工具釋出!引誘開發者叛逃Mac,開源六小時衝上GitHub第二
曉查 栗子 乾明 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
WoW!Awesome!My God!
這是不少抱著Mac參加微軟Build大會的開發者,看到 命令列工具 Windows Terminal 後的第一反應。
隨即,就有人在Twitter上表示:我現在有點想買臺PC了。
為什麼要叛逃?
除了這個新的命令列工具之外,微軟還發布了完整核心的Linux子系統 WSL 2 。
當真是直擊開發者G點。
長期以來,Linux和Mac下的命令列工具自成一派,Windows卻是另一套命令系統。
這也是很多開發者不選擇Windows系統的原因。
今後還買什麼Mac,還裝什麼Linux系統?
Windows電腦也能和前兩者一樣輕鬆做開發了。
此外,收購了GitHub的微軟,還用100星以上的專案來訓練AI造福程式設計師,這個功能,能夠基於當前程式碼的上下文預測後面應該如何寫。
伴隨著Windows Terminal的推出,整合了此前的Powershell、cmd命令列工具,再加上升級版的WSL、AI輔助寫程式碼,還有什麼理由不投入微軟的懷抱?
什麼是Windows Terminal
Windows Terminal是微軟推出的新的命令列應用程式,提供多標籤、分割視窗、快捷鍵、完整的Unicode字元支援等功能。
最重要的是,它支援PowerShell,Cmd,WSL(Windows的Linux子系統)和SSH等命令列程式,可以說是全平臺制霸,簡化開發者的工作流程。
什麼Cygwin、MinGW、PuTTY,統統可以丟掉!
而且,顏值即正義!微軟還給Windows Terminal加入很多細節功能,讓它更美觀。
Windows Terminal使用的是基於DirectWrite/DirectX的GPU加速文字渲染引擎。
這個新的引擎支援顯示PC中存在的文字字元,意味著終端裡的漢字、日文不再亂碼,而且還能玩emoji表情。
在微軟展示的Demo中,你可以為自己的shell程式通過測試加入emoji表情提示。
此外,微軟還為它增加了一種新的等寬字,以增強現代外觀和感覺。這種字型不僅包括程式設計連字,而且它也是開源的,並有自己的repo。微軟表示,將來會開放下載。
Windows控制檯的主要目標是保持與現有命令列工具,指令碼等的向後相容性。
在Windows 10中,微軟一直致力於改善命令列體驗,讓自己更像Unix命令列環境。3年前,也是在Build開發者大會上,微軟開源了 跨平臺 Powershell工具。
但是Windows上cmd和Powershell並存的混亂局面也一直存在。今年6月,Windows Terminal將同時向下相容這兩種產品。
現在就能上手
如果你已經迫不及待地想要試試Terminal,可以通過下面的GitHub連結,下載、構建和執行這一命令列工具。
https://github.com/microsoft/Terminal
需要注意的是,這個專案使用git子模組處理一些依賴項,想要確保子模組更新,請在構建器使用如下命令檢查:
git submodule update --init --recursive
其中,OpenConsole.sln可在Visual Studio中構建,或者使用MSBuild通過命令列來構建:
nuget restore OpenConsole.sln
msbuild OpenConsole.sln
在/tools檔案中,還有一組指令碼,能夠用於自動化構建和執行測試的過程。
截止到現在, 這一專案已經在GitHub上斬獲了4200+標星。微軟正式宣佈之後,6小時就衝上了GitHub趨勢榜第二的位置。
Fork也已經有了240多次,關於專案開放的Issues也有180多個,內容基本上都是在反饋問題合提出建議。
比如設定無法開啟、無法通過觸控式螢幕使用新標籤按鈕等等,建議支援畫素圖形、要求突出顯示選項卡和按鈕等等。
很顯然,這一工具仍舊處於不斷完善和優化的階段,如果你想要參與其中,也可以通過GitHub平臺貢獻一份力量。
微軟表示,6月中旬將在Windows商店中釋出Terminal的預覽版,供早期使用者使用反饋。穩定版的Terminal 1.0版本,將會在今年冬天釋出。
大肆向開發者示愛
當然,微軟對開發者的一片真心,遠遠不止體現在命令列工具上。
win10有個Linux核心
今天一同釋出的,還有Win 10下的Linux子系統升級版 WSL 2 。
比起上一版,最重大的區別在於Win 10有了 Linux核心 。
WSL 2是基於Linux 4.19核心。它可以縮短Linux的啟動時間,還能簡化記憶體使用。
微軟說,這是一次“戲劇性升級”,把檔案系統繁重的操作 速度提升了一倍 :比如,安裝節點包管理器的操作。
另外,WSL 2還支援在本地執行Linux Docker,所以再也不需要虛擬機器了。
執行各種Linux應用,也不會像虛擬機器那麼慢,至少會像WSL 1一樣快,甚至更快。
和Terminal一樣,WSL 2也會在6月中旬正式到來。那時,就可以從Terminal直接訪問WSL 2了。
AI幫你寫程式碼
IntelliCode,是微軟一個AI輔助程式猿寫程式碼的工具。
團隊興奮地宣佈,現在它已經全面支援Python、C#、C++、JavaScript、XAML等各種語言了。
和前輩IntelliSense不同的是,這隻AI是微軟用數以千計的GitHub開源專案 (百星以上) 餵養長大的。
學習過這些資料之後,AI可以給出補全程式碼的智慧建議 (如上圖,左下角) 。還懂得聯絡上下文。
另外,團隊說還有個查詢重複編輯 (Repeated Edits) 的功能。
比如,你想引入一個輔助函式 (Helper Function) 的時候,就要重構程式碼。常規搜尋的話,工程量會很大,手動修改繁瑣又容易出錯。
如果有一個演算法可以追蹤你的編輯,只要用幾個示例就能發現你在重複編輯,就好了。 如上圖,發現錯誤一枚 。
團隊說,Intellicode的這個功能正在開發中,未來更新時會加入。
One More Thing
如果你真的不是開發者,不妨瞭解一下微軟今天釋出的隔空辦公大法 Teams 。
只要兩個人都開啟這個軟體,建立一個AR房間。再帶上AR眼鏡,就可以“共處一室”,隔空互動了。
不止能無障礙交流,揮灑創作靈感也完全不受限制。
如果,同事的外觀還能隨意改變,換成自己的女神,就完美了。
— 完 —
小程式|get更多AI學習乾貨
加入社群
量子位AI社群開始招募啦,量子位社群分:AI討論群、AI+行業群、AI技術群;
歡迎對AI感興趣的同學,在量子位公眾號(QbitAI)對話介面回覆關鍵字“微信群”,獲取入群方式。(技術群與AI+行業群需經過稽核,稽核較嚴,敬請諒解)
量子位 QbitAI · 頭條號簽約作者
վ'ᴗ' ի 追蹤AI技術和產品新動態
喜歡就點「在看」吧 !