zoukankan      html  css  js  c++  java
  • MAC终端zsh配置

    MAC平台下的zsh还是最好用的,不过配置起来确实略微麻烦,尤其是涉及到FQ访问gitHub比较麻烦,没有网络还真不行。

    1 下载安装iTerm2

    官网地址: http://www.iterm2.com/

    设置iTerm2无限滚屏:怕错过什么重要信息,那设置成无限滚屏吧!

    Preferences - Profiles - Terminal - Scrollback Buffer - Unlimited scrollback

     【常用快捷键

    • ⌘ + k (command + k): 清屏(有时需要查找特定信息,避免上一次输出的干扰,可以先清屏再执行)
    • ⌃ + a (control + a):光标放行首(麻麻再也不担心我把光标移动到最后要靠手速了。)
    • ⌃ + e ( control + e):光标放行尾
    • ⌘ + f (command + f):(调出查找框)查找
    • ^ + c (control + c):取消当前行(当前行已经输入很多了,想删除,不需要按住delete键逐字符删滴- -)
    • ⌘ + enter (command + enter):切换全屏(沉浸于shell中,慢慢爱上敲回车的感觉……但是,忽地一下,shell铺满屏幕了!如果不知道这个快捷键的话,有点儿秀不起来呀。——个人感觉,手速快的时候,误触还是时有发生滴。)

    2 安装HomeBrew

    大部分Mac系统已经自带Homebrew,查看是否安装方法:

    brew --version

    若提示无brew命令,则执行如下命令安装,可以参照官网https://brew.sh/

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    3 更换终端默认Shell为zsh

    Bash作为大多数系统默认安装的Shell,大家都多少有所接触,Zsh和Bash类似都是一个Shell,但是Zsh更注重用户体验和与人的交互,OS X默认也安装好了Zsh,然而你想自己从头开始配置一个顺手的Zsh是比较浪费时间的,有人已经帮我们配置好了,这个流行的Zsh配置叫---Oh My ZSH!,直观的效果如下图所示,代码开源在github

    Mac OS X默认已经安装好了Zsh,你可以打开终端,输入zsh --version来确认,如果没有安装,请参考这个文档

    打开终端输入下面的命令,切换默认Shell为Zsh:

    chsh -s /bin/zsh

    关闭终端重新打开后,你将默认使用zsh作为终端Shell。然而你会发现,终端并没有变得多酷炫,接着往下走,安装Oh My ZSH!

    4 安装oh-my-zsh

    使用以下命令可以安装:

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

    我自己安装的时候是开了阿里郎代理,但是终端不知道为啥总是报错说 SSH:443 拒绝访问。但是可以直接用如下命令把仓库下载下来(或者直接下载zip文件也行):

    git clone git@github.com:ohmyzsh/ohmyzsh.git

    然后把上面那个install.sh 直接用浏览器打开复制到文件中,直接用sh执行。脚本中的逻辑是先把 ohmyzsh.git 克隆到~/.oh-my-zsh 目录,然后执行后面到初始化设置逻辑。既然仓库已经下载并拷贝过去了,那么就将install.sh 中下载和检查到逻辑注释掉,仅执行后半部分的初始化设置逻辑好了。

    5 修改oh-my-zsh 主题

    ls ~/.oh-my-zsh/themes
    vim ~/.zshrc           // 修改 ZSH_THEME的值,经典配色是agnoster
    source ~/.zshrc        // 生效
    
    // 如果想获得更多的主题可以从https://github.com/robbyrussell/oh-my-zsh/wiki/Themes#agnoster下载

    6 解决乱码问题

    由于agnoster和一些其他主题显示需要Powerline字符集支持,需要下载新的字符集

    git clone git@github.com:powerline/fonts.git
    cd fonts
    ./install.sh

    打开iTerm2:偏好设置 -> Profiles -> Text -> change Font -> Roboto Mono for Powerline

    7 隐藏zsh前面用户名/主机名

    修改vim ~/.zshrc文件,在文件底部增加:

    prompt_context() {}

    只保留用户名,隐藏主机名

    prompt_context() {
      if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
        prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
      fi
    }

    只保留主机名,隐藏用户名

    prompt_context() {
      if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
        prompt_segment black default "%(!.%{%F{yellow}%}.)$HOST"
      fi
    }

    8 厉害的zsh插件

    (1) AutoJump  -  从任意目录一键跳转任意目录

    下面着重介绍一个好用的插件AutoJump,举个连个栗子介绍下AutoJump的强大。

    正常情况下需要一层层敲入

    cd /Users/fanyu/Workspace/youku/new_reform/AppWrapper/OnePlayer

    如果用autojump 则只需敲 j OneP ,两下shift 会自动生成关联,选择对应数字就能进入。autojump 支持在任意目录进入任意目录

    【安装方法可参考】https://github.com/wting/autojump/wiki

    (2) zsh-autosuggestions

    计算题:我输入了echo hello指令,然后又输入了19条指令。接着又输入echo world指令。这个时候,我想找到历史指令echo hello,需要按几次上键?
    答案是:输入echo按*两下*上键就可以啦。

    autosuggestions插件会记录已经执行过的的指令。下次输入指令的时候,会智能提示。
    额外地,只输入几个字符,然后按上键查找历史指令的时候,结果集合里所有的指令都是以已输入字符开头的。

    (3) zsh-syntax-highlighting

    问题:mkdirmkdri有什么不一样。有时候,敲错了指令,但是出错了才意识到。zsh-syntax-highlighting可以提前发现这个小问题

    zsh-syntax-highlighting插件做了一件极简的事情:认识的指令显示为绿色,不认识的指令显示为红色。(当然,不认识的指令继续按回车,得到的将是:command not found错误提示。)
    额外地,它还能检查括号是不是匹配。

    8.1 安装autojump

    brew install autojump

     修改~/.zshrc文件,找到plugins字段,添加autojump。

    默认是这样的:
    plugins=(
      git
    )
    
    修改为:
    plugins=(
      git
      autojump
    )

     8.2 安装auto suggestions

    git clone git://github.com/zsh-users/zsh-autosuggestions ~/Documents/.zsh-suggestions
    
    ln -s ~/Documents/.zsh-suggestions ~/.oh-my-zsh/plugins/zsh-autosuggestions

    修改~/.zshrc文件,找到plugins字段,添加suggestions。修改后的样子大概是这样:

    plugins=(
      git
      autojump
      zsh-autosuggestions
    )

     8.3 安装syntax hightlighting

    git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/Documents/.zsh-syntax-highlighting
    
    ln -s ~/Documents/.zsh-syntax-highlighting ~/.oh-my-zsh/plugins/zsh-syntax-highlighting

     修改~/.zshrc文件,找到plugins字段,添加highlighting。修改后的样子大概是这样:

    plugins=(
      git
      autojump
      zsh-autosuggestions
      zsh-syntax-highlighting
    )
  • 相关阅读:
    java的堆和栈
    概率题
    并发复习在回顾
    hashmap和hashtable
    StringBuilder和StringBuffer
    WinSCP 工具
    网络桥接注意问题。
    虚拟机网络设置
    Spring任务计划
    Spring任务执行器(TaskExecutor)
  • 原文地址:https://www.cnblogs.com/kuliuheng/p/13791832.html
Copyright © 2011-2022 走看看