Fish Shell 4.0 Beta 發布:Rust 重寫帶來重大改進
備受好評的 Fish shell 剛剛發布了新的 Beta 版本——4.0!這是一個重大的變化,因為這是其 重大重寫 後的首個版本。 Fish shell 最初是用 C 編寫的,但現在是用 Rust 編寫的。這意味著 shell 的核心代碼已被徹底更改。
Fish shell 4.0 的首個 Beta 版本帶來了許多變化,無論大小。以下是一些亮點:
- 改進的按鍵綁定: Fish 現在支持更多按鍵組合,使其更易於使用。
- 更好的自動建議: Fish 現在可以提供更好的命令建議,使其工作速度更快。
- 增強的腳本功能: 一系列改進將使編寫 Fish 腳本更容易。
- 更好的終端支持: Fish 現在更好地支持更廣泛的終端,使其更靈活。
目錄
- Fish Shell 4.0 Beta 的主要改進
- 下載 Fish 4.0b1 Beta
為什麼 Fish Shell 選擇 Rust?
Fish shell 的開發者選擇 Rust 作為其重寫目標語言,主要基於以下幾個關鍵原因:
Rust 是一種系統編程語言,具有 廣泛的平台支持、龐大而活躍的社區,並且很有可能在未來仍然保持其重要性。這是一個關鍵的考慮因素,因為開發者希望確保項目的長期可持續性。
開發者還認為 Rust 的 安全性和可靠性 功能將有助於防止錯誤並使 shell 更穩定。這尤其重要,因為 shell 用於控制計算機,錯誤可能造成嚴重後果。
更重要的是,Rust 在 線程安全 功能方面的獨特優勢為在 Fish shell 中啟用並發模式的挑戰提供了解決方案。這是開發者長期以來的目標,但在 C 中很難安全地實現。
最後,開發者考慮了其他語言,但最終認為 Rust 最適合。
他們排除了 Java、Python 和其他腳本語言,因為擔心啟動延遲和內存使用情況。
Go 語言由於其對 fork 系統調用的處理方式而被認為不太合適。
其他系統編程語言,如 D、Nim 和 Zig,被認為過於小眾,這意味著它們貢獻者較少,並且未來變得無關緊要的風險較高。
Fish Shell 4.0 Beta 的主要改進
Fish shell 的這個 Beta 版本 (4.0b1) 包括 將核心代碼從 C 重寫為 Rust。它提供了一些顯著的改進和修復:
首先,Fish 現在請求 XTerm 的 modifyOtherKeys 鍵盤編碼和 kitty 鍵盤協議的漸進式增強功能,這可能會允許綁定更多按鍵組合,具體取決於終端支持。
此外,bind 現在支持人類可讀的語法。 Fish 現在也可以構建為自安裝二進製文件。
其次,對腳本編寫和交互式使用進行了許多改進。例如,在命令輸入期間按 ctrl-c 將只會清除命令行,而不是打印 ^C 和新的提示符。
綁定現在也可以混合使用特殊的輸入函數和 shell 命令。 ctrl-r 歷史搜索現在使用 glob 語法,並且只對光標處的行或命令替換進行操作,從而更容易組合歷史記錄中的命令。縮寫現在可以限制為特定命令。
第三,有許多交互式改進,包括撤銷歷史不再在每個命令後被截斷,並且 ctrl-v 現在從粘貼的文本中去除 ASCII 控製字符。
還有一些新的或改進的綁定,包括 alt-o 用於在編輯器中打開當前命令,以及 shift-delete 用於刪除當前搜索項並在向上箭頭歷史搜索期間移動到下一個較舊的項。
還有一些完成方面的改進,例如特定於命令的製表符完成現在能夠提供第一個字符為句點的結果,並且選項完成現在使用模糊子序列過濾。
最後,此版本包括改進的終端支持,包括 Fish 現在標記提示符和命令輸出區域(通過 OSC 133)以啟用終端 shell 集成,並無條件報告工作目錄(通過 OSC 7)。
這只是此版本中許多更改的簡要概述。您可以在 GitHub 上的發布說明中找到更詳細的信息。
下載 Fish 4.0b1 Beta
這個 Beta 版本是 Fish 的一個重大進步。看到這款流行 shell 的未來發展令人興奮!如果您想嘗試一下,可以從 GitHub 上的 Fish 發行頁面 下載。
請注意,這是一個 Beta 版本,因此可能存在一些錯誤。 如果您正在將 Fish 用於重要的工作,最好等待最終版本發布。
但是,如果您喜歡嘗試新事物並幫助進行測試,請繼續嘗試!您可以在 Fish GitHub 頁面上報告您發現的任何問題。
以上是魚殼4.0β發行:重大改寫,並進行關鍵改進的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Linux系統管理員的主要任務包括系統監控與性能調優、用戶管理、軟件包管理、安全管理與備份、故障排查與解決、性能優化與最佳實踐。 1.使用top、htop等工具監控系統性能,並進行調優。 2.通過useradd等命令管理用戶賬戶和權限。 3.利用apt、yum管理軟件包,確保系統更新和安全。 4.配置防火牆、監控日誌、進行數據備份以確保系統安全。 5.通過日誌分析和工具使用進行故障排查和解決。 6.優化內核參數和應用配置,遵循最佳實踐提升系統性能和穩定性。

學習Linux並不難。 1.Linux是一個開源操作系統,基於Unix,廣泛應用於服務器、嵌入式系統和個人電腦。 2.理解文件系統和權限管理是關鍵,文件系統是層次化的,權限包括讀、寫和執行。 3.包管理系統如apt和dnf使得軟件管理方便。 4.進程管理通過ps和top命令實現。 5.從基本命令如mkdir、cd、touch和nano開始學習,再嘗試高級用法如shell腳本和文本處理。 6.常見錯誤如權限問題可以通過sudo和chmod解決。 7.性能優化建議包括使用htop監控資源、清理不必要文件和使用sy

Linux管理員的平均年薪在美國為75,000至95,000美元,歐洲為40,000至60,000歐元。提升薪資可以通過:1.持續學習新技術,如雲計算和容器技術;2.積累項目經驗並建立Portfolio;3.建立職業網絡,拓展人脈。

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

互聯網運行不依賴單一操作系統,但Linux在其中扮演重要角色。 Linux廣泛應用於服務器和網絡設備,因其穩定性、安全性和可擴展性受歡迎。

Linux操作系統的核心是其命令行界面,通過命令行可以執行各種操作。 1.文件和目錄操作使用ls、cd、mkdir、rm等命令管理文件和目錄。 2.用戶和權限管理通過useradd、passwd、chmod等命令確保系統安全和資源分配。 3.進程管理使用ps、kill等命令監控和控制系統進程。 4.網絡操作包括ping、ifconfig、ssh等命令配置和管理網絡連接。 5.系統監控和維護通過top、df、du等命令了解系統運行狀態和資源使用情況。

介紹 Linux是一個強大的操作系統,由於其靈活性和效率,開發人員,系統管理員和電源用戶都喜歡。但是,經常使用長而復雜的命令可能是乏味的

Linux適用於服務器、開發環境和嵌入式系統。 1.作為服務器操作系統,Linux穩定高效,常用於部署高並發應用。 2.作為開發環境,Linux提供高效的命令行工具和包管理系統,提升開發效率。 3.在嵌入式系統中,Linux輕量且可定制,適合資源有限的環境。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

WebStorm Mac版
好用的JavaScript開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。