square开源vim,tmux配置在linux上使用
首先安装需要的软件
apt-get install vim ack-grep git tmux gnome-terminal ctags xclip silversearcher-ag
这里tmux需要1.8版本,用tmux -V查看,如果不是可以下载自己编译。整个配置只能在gnome-terminal里面使用。
下载square开源配置
git clone git://github.com/square/maximum-awesome.git
因为配置文件是给mac os用的,linux下需要手动复制
cp -v tmux.conf ~/.tmux.conf cp -v vimrc ~/.vimrc cp -v vimrc.bundles ~/.vimrc.bundles cp -v vimrc.bundles.local ~/.vimrc.bundles.local cp -v vimrc.local ~/.vimrc.local
接着下载vundle自动管理插件
git clone git://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
vundle自动安装插件
vim +BundleInstall +qall
gnome-terminal使用solarized配色
git clone git://github.com/sigurdga/gnome-terminal-colors-solarized.git cd gnome-terminal-colors-solarized ./install.sh
根据提示选择完成配色
修改vim配置,使用solarized配色
vim ~/.vimrc.lcoal
找到colorscheme desert后,注释掉这行,下面添加
set background=dark "有dark和light两种可选
colorscheme solarized
修正gnome-terminal 下tmux颜色问题
echo "alias tmux=\"TERM=screen-256color-bce tmux\"" >> ~/.bashrc
终端启动时自动启动tmux
在~/.bashrc最后添加
if [[ ! $TERM =~ screen ]];then
TERM=screen-256color-bce tmux
fi
tmux下复制内容进粘贴板
修改~/.tmux.conf
找到 bind-key -t vi-copy y copy-pipe "reattach-to-user-namespace pbcopy"
这行,修改为
bind-key -t vi-copy y copy-pipe "xclip -i -sel p -f | xclip -i -sel c "
square配置的tmux使用方法
先按ctrl+a 进入命令模式后
: 命令行
L 清除历史
q 显示分割屏号
[ 进入复制模式
] 粘贴
v 复制模式中开始选择
y 拷贝选择
# 列出粘贴缓存
? 查看当前按键绑定
回车 重新布局
r 刷新当前窗口
空格 下一个窗口
退格 前一个窗口
c 新建窗口
t 下个窗口
T 上个窗口
1~9 选择窗口
! 分离当前分屏幕成新窗口
, 重命名窗口
h 选择左边分割屏
j 选择上边分割屏
k 选择下边分割屏
l 选择右边分割屏
v,% 垂直分割屏幕
s," 水平分割屏幕
ctrl+o 多个分割屏旋转
+ 使用垂直布局
= 使用水平布局
x,& 退出当前屏幕
alt+1~5 5种布局方式切换
ctrl+方向键 改变分屏幕大小1个单位
alt+方向键 改变分屏幕大小5个单位
vim使用
普通模式:
i 插入 a添加 o下一行插入
h j k l 四个方向移动游标
w,W 向后跳一个词 b,B 向前跳一个词
0 游标到行首 $游标至行尾
f " 找到该行向后双引号 f x 找到下一个字母x F相反
t " 找到该行向后双引号前一个位置 t x 找字母 T相反
{ }上下段落
v i " 选取目前游标所在的这个双引号内的内容 "hello world" 选中hello world
v i w 选取游标所在词
g g 整个文件第一行 G 最后一行
z t 当前行放置屏幕上方 z b当前行放置屏幕下方
/ 搜索 n 下一个结果 N上个一个结果
* 搜索游标所在的词
D 删除游标位置后所有内容
x 删除一个字
. 重复上一个动作
dd 剪切整行
3dd 删除3行
yy 复制一行
3yy 复制3行,包含游标那行
p 粘贴 4p 粘贴4行
: w 保存
:q 离开 加!强制离开
:tabe 新开tab gT 切换tab
:new 水平分割窗口 :vnew 垂直分割窗口
ctrl+z vim放置后台 fg 恢复vim
vi -o a b 水平分割开启a,b文件 vi -O a b 垂直分割开启a,b
vi -p a b 以tab视窗开启
:bp 上一个开启的文件 :bn下一个开启的文件
:ls 查看buffer
:bd 关闭已经开启的buffer
:b3 切换至buffer里面编号为3的档案
:b 文件名 切换为buffer里指定文件名
:tab ba 已开启buffer转tab
:vsplit filename 垂直分割屏幕打开文件
:sp filename 水平分割
ctrl+w w h j k l 分屏切换 < > + - 分屏大小切换 c q 退出
通过寄存器实现不同文件之间复制:
举例:
doc1:"ayy :wq
doc2:"ap
查看寄存器::reg
a可以替换
vim 插件使用方法
ack.vim(已经被ag替换)
按, a 激活
:ack 待查内容 文件名
搜索结果中操作 o to open (same as enter)
go to preview file (open but maintain focus on ack.vim results)
t to open in new tab
T to open in new tab silently
h to open in horizontal split
H to open in horizontal split silently
v to open in vertical split
gv to open in vertical split silently
q to close the quickfix window
ag.vim
按, a 激活
:Ag 待查内容 路径
syntastic
源码检查插件
vim-gitgutter
按, g 激活
You don't have to do anything: it just works.
With one exception the plugin diffs your saved buffers, i.e. the files on disk. It produces the same result as runninggit diff
on the command line. The exception is realtime updating: in this case the plugin diffs the (unsaved) buffer contents against the version in git.
You can explicitly turn vim-gitgutter off and on (defaults to on):
- turn off with
:GitGutterDisable
- turn on with
:GitGutterEnable
- toggle with
:GitGutterToggle
.
And you can turn line highlighting on and off (defaults to off):
- turn on with
:GitGutterLineHighlightsEnable
- turn off with
:GitGutterLineHighlightsDisable
- toggle with
:GitGutterLineHighlightsToggle
.
Furthermore you can jump between hunks:
- jump to next hunk:
]h
- jump to previous hunk:
[h
.
Both of those take a preceding count.
To set your own mappings for these, for example gh
and gH
:
nmap gh <Plug>GitGutterNextHunk nmap gH <Plug>GitGutterPrevHunk
Finally, you can force vim-gitgutter to update its signs across all visible buffers with :GitGutterAll
.
See the customisation section below for how to change the defaults.
Align
按, l 激活
对齐工具,还为研究具体用法
tagbar
按, ] 激活
利用ctags显示源码里函数变量等
ctrlp.vim
ctrl + p激活
很强大的文件查找插件
vim-indent-guides
缩进工具
greplace.vim
查找替换插件
vim-colors-solarized
vim的solarized配色
snipmate.vim
代码块补全
vim-fugitive
一款git插件
vim-repeat
替代 . 重复功能
nerdtree
树形文件浏览工具
vim-surround
进到visual mode并选取文字后S"把选取文字加上双引号
cs"' =把周围的双引号换成单引号
cs]) =把周围的方括号换成小括号
ds" =删除周围的双引号
cst =删除周围的tag
yss" =把整行加上双引号
yss( =把整行加上小括号,但小括号与内容会有空格存在
yss) =同上,但不会有空格
yss{ =把整行加上大括号,但大括号与内容会有空格存在
yss} =同上,但不会有空格
vim-indentobject
v i i 选取相同缩排层级的文字
v a i 同上,但会连带上一层级也一并
//以下还未细看
vim-ruby
vim-bundler
jshint.vim
vim-coffee-script
vim-javascript
vim-tmux-navigator
kwbdi.vim
vim-pastie
vim-unimpaired
matchit.zip
vim-commentary
vim-protobuf
vim-vividchalk
mustache.vim
vim-cucumber
vim-ragtag
vundle
vim-endwise
vim-rails
vim-slim
typescript-vim
vim-sensible
square开源vim,tmux配置在linux上使用的更多相关文章
- [编译] 7、在Linux下搭建安卓APP的开发烧写环境(makefile版-gradle版)—— 在Linux上用命令行+VIM开发安卓APP
April 18, 2020 6:54 AM - BEAUTIFULZZZZ 目录 0 前言 1 gradle 安装配置 1.1 卸载系统默认装的gradle 1.2 下载对应版本的二进制文件 1.3 ...
- Linux上后台保持Terminal交互运行的三种方式:nohub、screen和tmux
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 后台运行 Linux上,如果一个进程需要保持后台运行,尤其是在Linux服务器上,后台运行程序.避免因为SSH连接断开而导致进程停止运行时,该怎么 ...
- 如何在Linux上使用VIM进行.Net Core开发
对于在Linux上开发.Net Core的程序员来说, 似乎都缺少一个好的IDE. Windows上有Visual Studio, Mac上有Visual Studio for Mac, 难道Linu ...
- 【转】Linux上vi(vim)编辑器使用教程
Linux上vi(vim)编辑器使用教程 ------------------------------------------------------------ ikong ------------ ...
- Linux上使用VIM进行.Net Core
如何在Linux上使用VIM进行.Net Core开发 对于在Linux上开发.Net Core的程序员来说, 似乎都缺少一个好的IDE.Windows上有Visual Studio, Mac上有Vi ...
- 在Linux上安装Elasticsearch Kibaba.md
在Linux上安装Elasticsearch Kibaba Kibana是一个开源为elasticsearch 引擎提供数据和数据分析 1.下载安装 切换到root账户,按顺序依次执行以下命令 rpm ...
- Kibana在Linux上安装部署及使用说明
Kibana安装及使用说明 Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索.查看交互存储在Elasticsearch索引中的数据. 官方地址:https://www. ...
- 将linux上的Java代码上传到码云
将linux上的Java代码上传到码云 1.在linux上直接输入命令获取git sudo apt-get install git 显示资源被占用,按照图中方法强制安装 2.建立与教材配套的目录结构 ...
- Linux上安装git
Linux上安装git Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. 而国外的GitHub和国内的Coding都是项目的托管平台.但是在使用Git工具的时候 ...
随机推荐
- vim和tmux主题颜色不一致问题
没开tmux时使用vim 以及 开了tmux后使用vim 主题颜色不一致.随便打开一个.py文件,发现着色较深,非常影响阅读. 开始在.tmux.conf 中设置set -g defaul ...
- crontab定时任务配置记录
一.前言 今天简单记录下crontab的配置 二.crontab目录 /etc/crontab 文件 这是系统运行的调度任务 /var/spool/cron 目录 用户自定义的crontab任务放在此 ...
- MongoDB与.NET结合使用二(安全)
真实的部署环境为了防止外部攻击,肯定是要修改端口和设置用户账号保护数据的安全性,这一篇文章重点来设置这些内容. Mongodb中mongo.exe 是客户端测试程序,mongod.exe为服务器端程序 ...
- C++ 模板与泛型编程
<C++ Primer 4th>读书笔记 所谓泛型编程就是以独立于任何特定类型的方式编写代码.泛型编程与面向对象编程一样,都依赖于某种形式的多态性. 面向对象编程中的多态性在运行时应用于存 ...
- 将Eclipse代码导入到AndroidStudio的两种方式
版权声明: 欢迎转载,但请保留文章原始出处 作者:GavinCT 出处:http://www.cnblogs.com/ct2011/p/4183553.html 说到使用AndroidStudio,除 ...
- 【软件架构】IM架构设计(安卓版)
1. 架构总览 2. 模块介绍 2.1 协议封装与任务流程 2.1.1 协议与任务的封装 协议有协议头(协议头因为格式相同,被抽象出来)和协议体组成,协议有两类:请求协议(request)和回复协议( ...
- 25款顶级的jQuery表格插件
jQuery 表格插件可以让你创建各种各样的表格布局,表格布局是报纸和杂志中最常见的布局,现在的网站中也很常见,在这篇文章中,我向大家推荐25个jQuery 的表格插件,你可以任意控制表格的行和列,用 ...
- Windows对象操作:浏览器窗口信息
属性(值或者子对象):opener:打开当前窗口的源窗口,如果当前窗口是首次启动浏览器打开的,则opener是null,可以利用这个属性来关闭源窗口. 属性:Windows.shuxing; 方法(函 ...
- Oracle 函数中动态执行语句
函数: 1 create or replace function fn_test(tablename in varchar2) return number is sqls ); rtn ):; beg ...
- hive函数 -- split 字符串分割函数
hive字符串分割函数 split(str, regex) - Splits str around occurances that match regexTime taken: 0.769 secon ...