Enjoy coding
Enjoy coding
iTerm配置
主题选择
- Solarized Dark
- LiquidCarbon
字体选择
- Cousine for Powerline(需要安装Powerline字体库), 18pt, Regular
Powerline 字体安装
- 官方: Powershell github: https://github.com/powerline/fonts
- 这里也已经给出了安装步骤
git clone https://github.com/powerline/fonts.git --depth=1
cd fonts
./install.sh
cd ..
rm -rf fonts
oh-my-zsh安装与配置
前提条件
- oh-my-zsh依赖zsh, 如果计算机中没有则使用
brew install zsh
安装zsh
安装oh-my-zsh
- 官方: oh-my-zsh: https://github.com/robbyrussell/oh-my-zsh
- 这里也已经给出了安装步骤
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
配置oh-my-zsh
- 安装bunnyruni主题(oh-my-zsh自带了很多主题但是没有这个主题)
- 官方: bunnyruni: https://github.com/jopcode/oh-my-zsh-bunnyruni-theme
- 这里也已经给出了安装步骤
mkdir -p $ZSH_CUSTOM/themes && curl https://raw.githubusercontent.com/jopcode/oh-my-zsh-bunnyruni-theme/master/bunnyruni.zsh-theme -L -o $ZSH_CUSTOM/themes/bunnyruni.zsh-theme
- 修改.zshrc配置文件
- 打开配置文件.zshrc
- 修改ZSH_THEME为ZSH_THEME="bunnyruni", 大约是在第10行
- 执行
exec $SHELL
使配置生效
终端命令行高亮
- 安装zsh-syntax-highlighting
- 官网: zsh-syntax-highlighting: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md
- 这里也给出了安装步骤
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
source ./zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
终端命令提示
- 安装zsh-autosuggestions
- 官网: zsh-autosuggestions
: https://github.com/zsh-users/zsh-autosuggestions/blob/master/INSTALL.md - 这里也给出了安装步骤
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
- 在.zshrc配置文件中找到plugins所在的那一行, 该为
plugins=(git zsh-autosuggestions)
在终端打开github
- 安装git-open
- 官网: git-open: https://github.com/paulirish/git-open
- 这里也给出了安装步骤
git clone https://github.com/paulirish/git-open.git $ZSH_CUSTOM/plugins/git-open
- 在.zshrc配置文件中找到plugins所在的那一行, 该为
plugins=(git zsh-autosuggestions git-open)
VIM 配置
安装VIM
- macOS 自带的vim版本太低, 要下载最新版本的VIM
brew install macvim --with-override-system
, 关于brew源的配置请看homebrew配置: https://www.cnblogs.com/megachen/p/9156811.html- 执行
vim --version
是否为8.*的, 如果是则表示安装成功
配置文件(在这之前先安装并配置Vundle)
- 已经给出了配置文件, 在配置文件中也给出了说明, 直接拷贝即可, 但是建议不要删除配置文件中的内容而是不断地在对应的位置(在配置文件中已经注释了哪种配置要写到哪里)追加
" ************************** Basic Settings ************************* set nocompatible " required, so don't remove it. filetype off " required, so don't remove it. syntax on set hlsearch set ts=4 " set tab space set expandtab set sw=4 set ic " ignore case set ai set ci set nu " show line number set ruler set wildmenu set showcmd hi Pmenu ctermbg=lightblue set nofoldenable set encoding=utf8 " set foldmethod=indent set clipboard=unnamed " let vim share the clipboard with system -> really useful. set completeopt-=preview set completeopt=longest,menu set relativenumber au BufWinLeave * silent mkview " au BufRead * silent loadview " " ******************* Customized Keyboard Mapping *********************** nnoremap <space> za " open/close code folding. let mapleader = "@" " ******************* Keyboard Mapping For CompleteParameter.vim Plugin *************** " ************* Github: https://github.com/tenfyzhong/CompleteParameter.vim ********** inoremap <silent><expr> ( complete_parameter#pre_complete("()") smap <c-j> <Plug>(complete_parameter#goto_next_parameter) imap <c-j> <Plug>(complete_parameter#goto_next_parameter) smap <c-k> <Plug>(complete_parameter#goto_previous_parameter) imap <c-k> <Plug>(complete_parameter#goto_previous_parameter) " *** Warning area(You'd better don't modify anything here) ** " It's necessary to set ycm_global_ycm_extra_conf variable here so that the YCM can work. let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/.ycm_extra_conf.py' let g:ycm_key_invoke_completion = '<c-k>' " code hint " auto complete when you input 2 characters let g:ycm_semantic_triggers = { \ 'c,cpp,python,java,go,erlang,perl': ['re!\w{2}'], \ 'cs,lua,javascript': ['re!\w{2}'], \ } " close code syntax checking let g:ycm_show_diagnostics_ui = 0 let g:ycm_min_num_of_chars_for_completion=1 let g:indentLine_char = "┆" let g:indentLine_enabled = 1 let g:autopep8_disable_show_diff=1 " ================ Setting for vim status line =============== set rtp+=~/.vim/bundle/powerline/powerline/bindings/vim set guifont=Sauce\ Code\ Powerline:h14.5 set laststatus=2 set encoding=utf-8 set t_Co=256 set number set fillchars+=stl:\ ,stlnc:\ set term=xterm-256color set termencoding=utf-8 set background=light " ============================================================ set rtp+=~/.vim/bundle/Vundle.vim set rtp+=~/.vim/bundle/CompleteParameter.vim call vundle#begin() " different from other Plugins, this `Plugin 'gmarik/Vundle.vim'` statement should " be written here. Plugin 'gmarik/Vundle.vim' call vundle#end() " required, so don't remove it. filetype plugin indent on " required, so don't remove it. " ********************** Plugin Area ************************ " Install Plugin " autocmd vimenter * NERDTree Plugin 'tmhedberg/SimpylFold' Plugin 'Valloric/YouCompleteMe' Plugin 'scrooloose/nerdtree' Plugin 'kien/ctrlp.vim' " use ctrl + p to search files Plugin 'scrooloose/nerdcommenter' " commenter: \cc \cu -> use `\cc` to comment code, use `\cu` to uncomment code Plugin 'Yggdroot/indentLine' Plugin 'powerline/powerline'
-
如果已经将上面的配置文件拷贝到了.vimrc中
- 执行
vim
- 在normal模式下执行
PluginInstall
安装插件, 注意在安装YCM的时候非常地慢, 请耐心等待
- 文件中的
hi Pmenu ctermbg=lightblue
语句是这是VIM弹出菜单的背景颜色, 通过normal模式下:hi查看, 颜色的值为0-255, 每一个字符表示的颜色都可以添加前缀light和dark - 使用ctrl + p键可以在当前目录下进行全局搜索
- \cc注释一行, \cu取消注释
- 在normal模式下, 使用:NERDTree打开目录
- 在normal模式下, 使用za可以折叠和打开代码
- 执行
-
关于YCM的配置
- 官网: YCM: https://github.com/Valloric/YouCompleteMe/blob/master/README.md#mac-os-x
- 执行的命令
cd ~/.vim/bundle/YouCompleteMe ./install.py --clang-completer
效果图
- 如果要更美观的VIM配置, 请看VIM配置篇
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· 开发的设计和重构,为开发效率服务
· 从零开始开发一个 MCP Server!
· Ai满嘴顺口溜,想考研?浪费我几个小时
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想