Tangaoo an embedded software engineer

Zsh Vim Tmux零碎知识集

2021-08-13
tangoo

Vim 零碎知识汇总,方便查阅。

ZSH

  • 参考这篇文章

  • 重要的几个步骤
    • 安装 zsh
    • 安装 oh-my-zsh
    • 配置插件 目前用到3个 z git(自带)zsh-autosuggestions (安装步骤上文有)
  • 安装 powerlevel10k 主题,还需要安装nerdfonts 字体,这里选择 Hack Nerd Font

VIM

1. 插件

1.1 Vundle (重要)

  • 一款插件管理软件,安装后会更改 ~/.vimrc 脚本,通过 Vundle 安装的插件都安装在 ~/.vim/vundle 目录下面。具体见官网和 .vimrc .vim。
  • 貌似现在有更优秀的 vim 插件管理软件vim-plug,后面有时间在替换。

1.2 LeaderF (重要)

  • 通过 Vundle 安装,见 .vimrc 脚本。LeaderF 主要用来做快速搜索用。

  • ripgrep 搭配 Leaderf 使用,做字符串搜索。

  • 在树莓派上遇到提示 vim 不支持python,编译源码支持比较繁琐,直接安装gtk版本即可。

sudo apt-get install vim-gtk
vim --version | grep python

1.3 gtags (重要)

  • gtags 并不是 vim 插件,是 GNU GLobal source code tag 项目,但是可以搭配 vim ecmas web 等用。
  • 安装 brew install global 出错,直接下载源码三步编译。
  • 设置 gtags 可以与 LeaderF 完美结合,而且 LeaderF 会管理 gtags 生成的 tag 文件,这样避免污染源文件。LeaderF gtags -h 可查看帮助。

1.4 SuperTab

  • Tab 补全。

1.5 nerdtree

  • 目录树

1.6 lightline

set laststatus=2  #状态栏常显
  • 目录树

2. .vimrc 配置文件

3. vim 常用技巧

3.1 折叠

  • 创建折叠 zf + 光标所在位置往下的行数/ %匹配/ 选中
  • 删除创建折叠 zd
  • 打开折叠 zo
  • 关闭折叠 zc
  • 跳到下一个折叠 zj
  • 跳到上一个折叠 zk
  • 打开所有折叠 zR
  • 关闭所有折叠 zM

tmux

Tmux 是一个终端复用器(terminal multiplexer),非常有用,属于常用的开发工具。

命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称”窗口”),在里面输入命令。用户与计算机的这种临时的交互,称为一次”会话”(session) 。

会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。 一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。

为了解决这个问题,会话与窗口可以”解绑”:窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话”绑定”其他窗口。

1. 基础概念

  • session
  • window
  • pane

2. 操作简介

参考链接,阮一峰 tmux 教程

用一段时间后在总结。

# -----------------------------------------------------------------------------
# Tmux 基本配置 - 要求 Tmux >= 2.3
# 如果不想使用插件,只需要将此节的内容写入 ~/.tmux.conf 即可
# -----------------------------------------------------------------------------

# C-b 和 VIM 冲突,修改 Prefix 组合键为 Control-Z,按键距离近
set -g prefix C-z

set -g base-index         1     # 窗口编号从 1 开始计数
set -g display-panes-time 10000 # PREFIX-Q 显示编号的驻留时长,单位 ms
set -g mouse              on    # 开启鼠标
set -g pane-base-index    1     # 窗格编号从 1 开始计数
set -g renumber-windows   on    # 关掉某个窗口后,编号重排

setw -g allow-rename      off   # 禁止活动进程修改窗口名
setw -g automatic-rename  off   # 禁止自动命名新窗口
setw -g mode-keys         vi    # 进入复制模式的时候使用 vi 键位(默认是 EMACS)

3. 最简单工作流程

  • 新建会话tmux new -s my_session。
  • 在 Tmux 窗口运行所需的程序。
  • 按下快捷键Ctrl+b d将会话分离。
  • 下次使用时,重新连接到会话tmux attach-session -t my_session。

ripgrep

ripgrep 是一个搜索神器。


上一篇 LDD3 读书笔记

下一篇 LKMPG 读书笔记

Comments

Content