Macbook 終端 git 命令補全和提示

Mac OS自帶的終端,用起來雖然有些不太方便,界面也不夠友好,關鍵是在windows上用習慣了自動補全功能,在Mac上一個個的拼寫單詞是真的難受,逼著我記英文單詞。
經過一天的磨合,我實在忍不了,在網上查到了iTerm2這個款終端工具,這是一款相對比較好用的終端工具。
iTerm2常用操作包括主題選擇、聲明高亮、自動填充建議、隱藏用戶名和主機名、分屏效果等。這里主要介紹我使用的自動補全建議、聲明高亮,另外幾個功能,如果有需求,可以在 參考資料 中找到。

iTerm2 下載與安裝

iTerm2下載地址:https://www.iterm2.com/downloads.html

注意:下載的是壓縮文件,解壓后直接雙擊執行程序文件,或者直接將它拖到 Applications 目錄下。

也可以直接使用Homebrew進行安裝:

brew cask install iterm2

iTerm2主題配置,請參考 Mac下iTerm2的安裝與配置
Homebrew 安裝方法請參考 macbook 安裝 Git 和 安裝 Homebrew

查看 Mac 系統是否使用 zsh

Mac系統默認使用bash作為終端,但是新的Mac系統已經默認使用zsh,查看方式:

cat /etc/shells

/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

bash與zsh切換命令:

chsh -s /bin/zsh
chsh -s /bin/bash

bash與zsh配置文件:

  1. bash的配置文件:~/.bash_profile
  2. zsh的配置文件:~/.zshrc

安裝配置 zsh

Zsh 和 bash 一樣,是一種 Unix shell,但大多數 Linux 發行版都默認使用 bash shell。但 Zsh有強大的自動補全參數和自定義配置功能等等,Github地址:https://github.com/robbyrussell/oh-my-zsh

  • 安裝命令:

sh -c “$(curl -fsSL https: //raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)”

  • 使用 Homebrew 進行安裝
    Mac 系統自帶了zsh, 一般不是最新版,如果需要最新版可通過Homebrew來安裝。

brew install zsh

可通過查看zsh的版本。

zsh --version

安裝完成以后,將zsh設置為默認的Shell

chsh -s /bin/zsh

安裝 oh-my-zsh

oh-my-zsh 幫我們整理了一些常用的 Zsh 擴展功能和主題:https://github.com/robbyrussell/oh-my-zsh

在終端輸入命令:

sh -c “$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)”

Cloning into '/root/.oh-my-zsh'...
remote: Counting objects: 712, done.
remote: Compressing objects: 100% (584/584), done.
remote: Total 712 (delta 15), reused 522 (delta 4), pack-reused 0
Receiving objects: 100% (712/712), 443.58 KiB | 27.00 KiB/s, done.
Resolving deltas: 100% (15/15), done.
Checking connectivity... done.
Looking for an existing zsh config...
Using the Oh My Zsh template file and adding it to ~/.zshrc
Copying your current PATH and adding it to the end of ~/.zshrc for you.
Time to change your default shell to zsh!__                                     ______  / /_     ____ ___  __  __   ____  _____/ /_
/ __ \/ __ \   / __ `__ \/ / / /  /_  / / ___/ __ \
/ /_/ / / / /  / / / / / / /_/ /    / /_(__  ) / / /
\____/_/ /_/  /_/ /_/ /_/\__, /    /___/____/_/ /_//____/                       ....is now installed!Please look over the ~/.zshrc file to select plugins, themes, and options.
p.s. Follow us at https://twitter.com/ohmyzsh.
p.p.s. Get stickers and t-shirts at http://shop.planetargon.com.

安裝完成以后,默認Shell的 ~/.bashrc 文件默認不再加載了,替代的是 ~/.zlogin~/.zshrc 。所以如果你在 ~/.bashrc 里配置了某些設置,需要把她們復制到 ~/.zshrc 中。

oh my zsh 其他安裝方式參考 Mac下iTerm2的安裝與配置

oh my zsh 目錄結構
進入~/.oh-my-zsh目錄后,看看該目錄的結構

ls ~/.oh-my-zsh

CODE_OF_CONDUCT.md SECURITY.md        log                themes
CONTRIBUTING.md    cache              oh-my-zsh.sh       tools
LICENSE.txt        custom             plugins
README.md          lib                templates

lib 提供了核心功能的腳本庫
tools 提供安裝、升級等功能的快捷工具
plugins 自帶插件的存在放位置
templates 自帶模板的存在放位置
themes 自帶主題文件的存在放位置
custom 個性化配置目錄,自安裝的插件和主題可放這里

安裝自動補全插件

在終端輸入命令:

cd ~/.oh-my-zsh/custom/plugins
git clone https://github.com/zsh-users/zsh-autosuggestions.git

安裝命令高亮插件

在終端輸入命令:

cd ~/.oh-my-zsh/custom/plugins
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git

配置 .zshrc 文件

在終端輸入命令:

vim ~/.zshrc

打開.zshrc 文件,進入vim 編輯器模式 (按i進入編輯模式)

~/.zshrc 中添加以下內容(我添加在文件末尾):

source ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

~/.zshrc 中修改 plugins=(git) 為:

plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

# Which plugins would you like to load?
# Standard plugins can be found in $ZSH/plugins/
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)source $ZSH/oh-my-zsh.sh

保存修改
按 esc 鍵 =>輸入:wq!=>按 enter 鍵 退出編輯

讓配置生效

在終端執行命令

source ~/.zshrc

vim 編輯器基本語法,請參考 macbook 安裝 Git 和 安裝 Homebrew


參考:
Mac下iTerm2的安裝與配置
mac git命令按Tab不能自動補全解決方法
如何配置MAC的終端自動補全命令行,并忽略大小寫
MacOS 安裝配置 zsh
Mac 終端配置 oh-my-zsh 和自動補全以及命令高亮
Mac 常用的 20 款效率神器推薦

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/42499.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/42499.shtml
英文地址,請注明出處:http://en.pswp.cn/news/42499.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

復習vue3,簡簡單單記錄

這里的知識是結合視頻以及其他文章一起學習,僅用于個人復習記錄 ref 和reactive ref 用于基本類型 reactive 用于引用類型 如果使用ref 傳遞對象,修改值時候需要寫為obj.value.attr 方式修改屬性值 如果使用reactive 處理對象,直接obj.att…

Lua學習記錄

Lua基礎了解 Lua的注釋通過 (-- 單行注釋,--[[ ]] 多行注釋)可以不加; 多個變量賦值,按順序賦值,沒有則為nil; function的簡單用法,多個返回值配合多重賦值,以end為結束標志 Lua下標從1開始&…

JSP-學習筆記

文章目錄 1.JSP介紹2 JSP快速入門3 JSP 腳本3.1 JSP腳本案例3.2 JSP缺點 4 EL表達式4.1 快速入門案例 5. JSTL標簽6. MVC模式和三層架構6.1 MVC6.2 三層架構 7. 案例-基于MVC和三層架構實現商品表的增刪改查 1.JSP介紹 概念 JSP(JavaServer Pages)是一種…

Azure存儲賬戶

存儲賬戶的概念 Azure存儲賬戶是Azure提供的一種云存儲解決方案,用于存儲和訪問各種類型的數據,包括文件、磁盤、隊列、表格和Blob(二進制大對象)數據。存儲賬戶可以基于訪問模式和冗余需求來選擇不同的類型,以滿足應…

【MySQL--->表的操作】

文章目錄 [TOC](文章目錄) 一、創建表二、查看表三、修改表四、刪除表drop table 表名; ![在這里插入圖片描述](https://img-blog.csdnimg.cn/15227b8335364d41bd01b4b4dd83ee55.png) 一、創建表 語句格式:create table 表名(列名 類型,…)字符集 校驗規則 存儲引擎;字符集和校…

我還不知道?Android組件化插件化模塊化

Android組件化、插件化和模塊化是針對Android應用程序開發的一種架構設計思想和開發方式。 組件化(Componentization): 組件化是將一個大型的Android應用程序拆分成多個獨立的組件(Module),每個組件可以獨…

python使用裝飾器記錄方法耗時

思路 python使用修飾器記錄方法耗時,目的是每當方法執行完后,可以記錄該方法耗時,而不需要在每個方法的執行前后,去創建一個臨時變量,來記錄耗時。 方式一(不推薦): 在每個方法的…

source insight 添加宏-文件頭加注釋

source insight 3.5 自帶的一些宏,在安裝目錄下的 utils.em 文件中,用戶也可以自己寫文件,命令為xxx.em ,然后把這個文件添加到項目中即可,添加后在菜單欄 Options -> Key Assignments 里輸入macro 就能顯示新添加的…

第一個ArkTS項目實踐-鴻蒙ArkTS

第一個ArkTS項目實踐-ArkTS 第一個ArkTS項目實踐-ArkTS自定義組件的組成配置屬性與布局配置屬性布局 改變組件狀態循環渲染列表數據代碼ToDoItem組件ToDoList頁面 效果參考資料 第一個ArkTS項目實踐-ArkTS 本篇文章是官網上視頻對ArkTS開發實踐的第一個視頻,主要是引…

Matplotlib數據可視化(三)

目錄 1.繪圖的填充 1.1 曲線下方區域的填充 1.2 填充部分區域 1.3 兩條曲線之間的區域填充 1.4 直接使用fill進行填充 1.繪圖的填充 繪圖的填充可以調用fill_between()或fill()進行填充。 1.1 曲線下方區域的填充 x np.linspace(0,1,500) y np.sin(3*np.pi*x)*np.exp…

【C語言】每日一題(找到所有數組中消失的數字)

找到所有數組中消失的數字,鏈接奉上。 這里簡單說一下,因為還沒有接觸到動態內存,數據結構,所以知識有限,也是盡力而為,結合題庫的評論區找到了適合我的解法,以后有機會,會補上各種…

如何在HTML中使用React

突發奇想 查了查真的可以,官方文檔: 在網站中添加 React – React 開始 引入js <!-- 開發環境使用 --><script src"https://unpkg.com/react18/umd/react.development.js"></script><script src"https://unpkg.com/react-dom18/umd/reac…

穿越數字奇境:探尋元宇宙中的科技奇跡

隨著科技的迅速發展&#xff0c;元宇宙正逐漸成為一個備受關注的話題&#xff0c;它不僅是虛擬現實的延伸&#xff0c;更是將現實世界與數字世界融合的未來典范。在這個神秘而充滿活力的數字奇境中&#xff0c;涉及了眾多領域和技術&#xff0c;為我們呈現出了一個無限的創新和…

創建Azure資源鎖

鎖的介紹 在Azure中&#xff0c;資源鎖是一種用于保護訂閱、資源組或者單個資源的機制。它可以防止對受鎖定的資源進行刪除或修改操作&#xff0c;幫助確保資源的連續可用性和安全性。 Azure中的資源鎖可以分為兩種類型&#xff1a; 刪除鎖&#xff08;CanNotDelete&#xf…

elementUI遇到的問題記錄

一、 組件&#xff1a;el-table 問題&#xff1a;使用動態數據創建多級表頭后&#xff0c;刷新頁面時&#xff0c;table行會串行&#xff0c;某些列丟失&#xff0c;圖片列未顯示圖片 解決方案&#xff1a;給el-table增加key <el-table :key"${Matn.random()}${ite…

javaScript:模板字符串讓你忘記字符串拼接

目錄 一.前言 二.模板字符串的使用 1.介紹 2.模板字符串 支持換行 模板字符串更適合元素寫入 innerHTML模板字符串寫法 3.模板字符串中&#xff0c;可以運行表達式 4.模板字符串中可以運行函數 三.總結 語法&#xff1a; 多行字符串&#xff1a; 變量插值&#xff1a; …

μCOS-Ⅲ_簡介

μCOS-Ⅲ簡介 文章目錄 μCOS-Ⅲ簡介前言一、什么是 C/OS-III&#xff1f;二、C/OS-III的特點三、C/OS-III的版本和參考資料1、C/OS-III版本2、C/OS-III源碼獲取3、C/OS-III參考資料 四、C/OS-III源碼簡介總結 前言 μcos-III是一個可以基于ROM運行的、可裁剪的、搶占式、實時…

uniapp Vue 使用 sip.js進行語音通話視頻通話

下載或者安裝 sip.js 到 uniapp 項目&#xff0c;APP 端在 menifest.json 中配置麥克風權限 menifest.json 中 app 權限配置選中&#xff1a; android.permission.RECORD_AUDIO android.permission.MODIFY_AUDIO_SETTINGS sip.js 低版本 如 V0.13.0 版本的寫法 <template&…

latex 筆記:cs論文需要的排版格式

主要針對英文文獻 1 基本環境 連字符 不同長度的"-"表示不同含義。 一個"-"長度的連字符用于詞中兩個"-"長度的連字符常用于制定范圍三個"-"長度的連字符是破折號數學中的負數要用數學環境下的-得到 強調 在正式文章中, 通常不…

神經網絡基礎-神經網絡補充概念-48-rmsprop

概念## 標題 RMSProp&#xff08;Root Mean Square Propagation&#xff09;是一種優化算法&#xff0c;用于在訓練神經網絡等機器學習模型時自適應地調整學習率&#xff0c;以加速收斂并提高性能。RMSProp可以有效地處理不同特征尺度和梯度變化&#xff0c;對于處理稀疏數據和…