Mac 上终端配置

Mac 上终端配置

初始化了一下自己的 mac 笔记本,所以重新记一下终端配置,最终的完成版的需求是这样的:

  • 存在的指令需要显示绿色进行提示:

    在这里插入图片描述

  • 不存在的指令则是显示红色进行提示:

    在这里插入图片描述

  • 同时具备对指令进行提示

  • 一个看起来还不错的 UI

同样的配置 linux(WSL) 上应该也可以跑

记一下,省得换电脑配置就丢了

oh my zsh

官网为:https://ohmyz.sh/,安装方式为:

# curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# wget
sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

这是一个终端,是其他的工具的骨架,其他的 theme/插件也好,都是依赖 zsh 进行实现的

iterm2

官方地址为:https://iterm2.com/,安装方式为到官网下载对应的 pkg

这个和下面会使用的 theme/插件的兼容性最好,mac 原生的终端兼容性确实会差一些

powerlevel10k

地址为:https://github.com/romkatv/powerlevel10k,这个是 theme,也就是 icon 之类的样式应用。官方建议是安装 Meslo Nerd Font

我首先要说明一下,这个 theme,在安装了 emoji 后和 mac 的原生 terminal 兼容性很差,大概是这样:

在这里插入图片描述

icon 是不可读的样式,但是在 iterm2 上显示就很好,所以这个是否安装就是一个可选项

我个人是觉得挺好看的,同时新配置的时候加了一个 timestamp,这样能知道上一个 command 是在多久前运行的,我自己的话,有的时候查看一下 docker push 花了多久,具体效果请看 VCR bushi

在这里插入图片描述

theme 本身的安装方式为:

# Clone the repository:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

# Users in China can use the official mirror on gitee.com for faster download.
# 中国用户可以使用 gitee.com 上的官方镜像加速下载.
git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

随后在 ~/.zshrc 中进行配置:

ZSH_THEME="powerlevel10k/powerlevel10k"

最后重启 zsh:

exec zsh

这个时候会自动开启配置,如果没有的话执行以下命令:

p10k configure

显示配置如下:

在这里插入图片描述

官方文档建议说安装推荐的字体,我是另外下载 ttf 安装了,不过看起来好像可以直接通过终端下载,也是一样的

大概会有这么几种样式以供选择:

在这里插入图片描述

我是选择了 lean,看起来没这么晃眼睛

zsh-autosuggestions

这是一个可以显示之前用过的命令的插件,就是我上面显示的 ls 之类的,安装方式为:

# zsh 安装
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

随后加到 zsh 的配置:

plugins=(
    # other plugins...
    zsh-autosuggestions
)

再 source 一下即可

zsh-syntax-highlighting

这个就是上面显示红/绿色的指令,刚开始学习 k8s 的时候挺方便的,因为刚开始打 kubectl 总是会错,这个时候有这个提示和上面的 autosuggestions 就方便很多:

在这里插入图片描述

官方提供的一些案例如下:

在这里插入图片描述

安装方式为使用 brew 安装:

brew install zsh-syntax-highlighting

git 地址为:https://github.com/zsh-users/zsh-syntax-highlighting

一些其他的 plugin

这个可以在 oh my zsh 的 git 上以及对应的 wiki 上看到:https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins

这里就不完整列举了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/364728.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

spark window源码探索

核心类: 1. WindowExec 物理执行逻辑入口,主要doExecute()和父类WindowExecBase 2. WindowFunctionFrame 窗框执行抽象,其子类对应sql语句的不同窗框 其中又抽象出BoundOrdering类, 用于判断一行是否在界限内(Bound), 分为RowBoundOrdering…

2024美赛MCM 问题 C 网球运动的动量(Momentum in Tennis)

2024 MCM Problem C: Momentum in Tennis In the 2023 Wimbledon Gentlemen’s final, 20-year-old Spanish rising star Carlos Alcaraz defeated 36-year-old Novak Djokovic. The loss was Djokovic’s first at Wimbledon since 2013 and ended a remarkable run for one o…

直播团队职责

一、内容策划 直播团队的内容策划人员是整个直播活动的核心,他们需要负责策划直播的主题、内容、形式以及时间安排等。同时,他们还需要负责邀请嘉宾、安排活动等,确保直播内容丰富、有趣、有价值。 二、主播管理 主播是直播活动的关键人物…

提升CKA考试胜算:一文带你全面了解RBAC权限控制!

RBAC概述 RBAC引入了四个新的顶级资源对象。Role、ClusterRole、RoleBinding、 ClusterRoleBinding。同其他 API 资源对象一样,用户可以使用 kubectl 或者 API 调用等 方式操作这些资源对象。kubernetes集群相关所有的交互都通过apiserver来完成,对于这…

计算机网络第4章(网络层)

4.1、网络层概述 简介 网络层的主要任务是实现网络互连,进而实现数据包在各网络之间的传输 这些异构型网络N1~N7如果只是需要各自内部通信,他们只要实现各自的物理层和数据链路层即可 但是如果要将这些异构型网络互连起来,形成一个更大的互…

《云原生安全攻防》-- 云原生安全概述

从本节课程开始,我们将正式踏上云原生安全的学习之旅。在深入探讨云原生安全的相关概念之前,让我们先对云原生有一个全面的认识。 什么是云原生呢? 云原生(Cloud Native)是一个组合词,我们把它拆分为云和原生两个词来…

存内计算芯片研究进展及应用—以基于NorFlash的卷积神经网络量化及部署研究突出存内计算特性

文章目录 存内计算的背景存算一体技术发展历程 存内计算芯片研究现状SRAM存内计算DRAM存内计算ReRAM/PCM存内计算MRAM存内计算NOR Flash存内计算 基于 NOR Flash 的卷积神经网络量化卷积神经网络基本结构卷积神经网络量化方法研究实验及结果分析心得 参考文献 如果我能看得更远…

C语言基础:头歌练习数组练习

(字符串插入) 任务描述 题目描述:输入两个字符串a和b,将b串中的最大字符插入到a串中最小字符后面。 样例输入: MynameisAmy MynameisJane 样例输出: MynameisAymy 题目分析:a字符串中最小的字符是A…

HTML+CSS:全景轮播

效果演示 实现了一个简单的网页布局,其中包含了五个不同的盒子,每个盒子都有一个不同的背景图片,并且它们之间有一些间距。当鼠标悬停在某个盒子上时,它的背景图片会变暗,并且文字会变成白色。这些盒子和按钮都被放在一…

安科瑞智能微型断路器在某银行网点的设计与应用

【摘要】:随着人工智能、移动互联等现代信息技术和通信技术在电力行业的应用,实现电力系统各个环节人机交互、万物互联,打造状态全方面感知、信息合理处理、应用便捷灵活的泛在电力物联网已成为必然趋势。本文主要对智能微型断路器在银行网点…

OpenCV学习记录——平滑处理

文章目录 前言一、图像噪声二、图像平滑处理三、完整应用代码 前言 当我们用树莓派进行opencv图像处理时,摄像头所获取的图像质量通常会有所下降,此时,需要多种手段来优化图像的质量,提高图像识别的准度。今天所记录的是当图片经过…

前端_关于CSS中外边距塌陷问题

问题描述: 当子级块级元素修改带动父级块级元素整体向下移动 我们希望当自级块级元素修改时,父级元素保持不动,解决方法有三个: 原代码: 方案一:为父级元素添加一个内边距 方案二:为父级元素添加overflo…

详解 websocket

目录 一、什么是websocket 二、websocket 的用途 三、websocket 特点 四、websocket 帧 五、websocket URL 格式 六、发送消息 七、关闭会话的方式 八、关闭帧错误码 九、简单的websocket 代码 一、什么是websocket WebSocket该协议在规范RFC 6455中进行了描述&#…

网络原理TCP/IP(1)

在网络通信中,协议非常重要 协议进行了分层 应用层就是对应着应用程序,是程序员打交道最多的这一层,调用系统提供的网络api写出来的代码都是属于应用层的 应用层有很多现成的协议,但是更多的还是程序员需要根据实际场景自定义协议…

服务攻防-端口协议桌面应用QQWPS等RCEhydra口令猜解未授权检测

知识点: 1、端口协议-弱口令&未授权&攻击方式等 2、桌面应用-社交类&文档类&工具类等 章节点: 1、目标判断-端口扫描&组合判断&信息来源 2、安全问题-配置不当&CVE漏洞&弱口令爆破 3、复现对象-数据库&中间件&…

ComposeForDesktop之gradle下载器

文章 目录 前言一、简要的代码片段二、小工具获取 前言 最近使用gradle编译安卓的时候又出现了gradle下载超时的问题,经常性地手动下载再复制到目录,确实每次都做,每次都很繁琐。 于是有了今天这个软件地诞生,先放个截图。 一…

C++面试宝典第26题:螺旋矩阵

题目 给你一个正整数n,生成一个包含1到n的平方的所有元素,且元素按顺时针顺序螺旋排列成n x n的正方形矩阵。 示例: 输入:n = 3 输出:[[1,2,3],[8,9,4],[7,6,5]] 解析 螺旋矩阵是指按照顺时针(或逆时针)螺旋顺序排列元素的二维矩阵。比如:给定一个如下的3x3矩阵,按顺…

2024美赛数学建模F题思路分析 - 减少非法野生动物贸易

1 赛题 问题F:减少非法野生动物贸易 非法的野生动物贸易会对我们的环境产生负面影响,并威胁到全球的生物多样性。据估计,它每年涉及高达265亿美元,被认为是全球第四大非法交易。[1]你将开发一个由数据驱动的5年项目,…

jupyter notebook显示的扩展很少,只有四五个--解决方案

如下:安装好只有四五个扩展 可以先删除 conda remove jupyter_nbextensions_configurator 然后使用pip安装 pip install jupyter_contrib_nbextensions jupyter contrib nbextensions install --user pip install jupyter_nbextensions_configurator jupyter nbex…

ChatGPT真有很多人在用吗?——回答一位知友的问题

先上结论 是的。数据不会撒谎,用户拿脚投票,ChatGPT发布仅五天内就达到了100万用户,是有史以来增长最快的消费者应用程序。2023年全球前50款AI工具就收获了240亿次访问,其中ChatGPT收获了146亿次访问。 一些想法和思考 我的一些…