当前位置: 首页 > 工具软件 > SpaceVim > 使用案例 >

SpaceVim

谢高峯
2023-12-01

SpaceVim

github
英文手册
中文手册
教程
扩展组件

更新

git -C ~/.SpaceVim pull .

问题

miniconda带的python可能会导致import socket 的 UnicodeFormat的错误…现在正在解决issue

配置目录

~/.SpaceVim.d/init.toml

主题

先在配置文件中加入

[[layers]]
  name = "colorscheme"

然后启动SpaceVim时会自动装自带的主题

修改即可更改主题

[options]
  colorscheme = "onedark"

如果用github上的主题

[options]
  colorscheme = "OceanicNext"
  colorscheme_bg = "dark"

# 添加自定义主题:https://github.com/mhartington/oceanic-next
[[custom_plugins]]
  name = "mhartington/oceanic-next"
  merged = 0

设置默认缩进

(1) Config ~/.SpaceVim.d/init.toml
你可能想让默认的缩进为4个空格,那么在~/.SpaceVim.d/init.toml中加入

[options]
default_indent = 4

python

在配置文件中加入

[[layers]]
  name = "lang#python"

安装flake8 isort jedi yapf
flake8 : for syntax checking feature
yapf : for formatting code
autoflake : for uppress unused imports
isort : for sort your imports

关闭vim兼容模式

vimcompatible = false

快捷键导航

默认情况下,快捷键导航将在输入延迟超过 1000ms 后打开,你可以通过修改 vim 的 ‘timeoutlen’ 选项来修改成适合自己的延迟时间长度。

快捷键

功能快捷键
进入配置文件SPC f v d
高亮代码对齐线SPC t h i
显示/隐藏行号SPC t n
跳转到标签iSPC i
下一个窗口Tab
上一个窗口Shift Tab
竖分屏sv 需要关闭vim兼容模式
横分屏sg 需要关闭vim兼容模式
关闭其他窗口so(only)
打开新tapst(tabnew)
跳转到标签1(默认’’) 1
关闭窗口q 或者 s + q 关闭当前buffer,关闭当前 buffer (:close) 不能关闭最后一个buffer
下一页Ctrl+f PgDnmok
上一页Ctrl+b PgUp
下滚3行Ctrl+e
上滚3行Ctrl+y
}跳到之后的第一个空行
选中上一个粘贴?gp
跳到命令头Ctrl+a Command
向前移动光标Ctrl+b Command
向后移动光标Ctrl+f Command
让界面卡住ctrl +s 恢复 ctrl + q issue
进入/退出vimfileF3
g跳到头
shift g跳到尾
*向前查找选择的
# V向后查找选择的
jk离开插入模式
Ctrl+wDelete backward path
H光标移至屏幕最上方(Vim 原生功能,无映射)
L光标移至屏幕最下方(Vim 原生功能,无映射)
SPCj 0 跳至行首(并且标记原始位置)
SPCj $ 跳至行尾(并且标记原始位置)
SPC b N h在左侧新建一个窗口,并在其中新建空白 buffer
SPC b N j在下方新建一个窗口,并在其中新建空白 buffer
SPC b N k在上方新建一个窗口,并在其中新建空白 buffer
SPC b N l在右侧新建一个窗口,并在其中新建空白 buffer
SPC b N n在当前窗口新建一个空白 buffer
SPC f s保存文件
SPC f S保存所有文件
.切换显示隐藏文件(文件树中)
gd跳至定义处
ctrl + r重做
u回退
.重做上一个动作
gh(v)select mode
SPC ccomment lines
SPC ; 数字 j\k注释几行
SPC l r运行(python)
SPC [前加空行
SPC ]后加空行
:terminal终端
F2tagbar(需要安装ctags)
n向下移动n行
dd删除游标所在的那一整行(常用)
nc向下删除n行

问题

buffer 可以理解为一个文件
一个tab里可以有多个window,window是用来显示buffer的,sq可以关闭当前窗口显示的buffer,这时,所有显示了这个buffer的窗口都会被关闭

vim 快捷键

本质是光标移动
前加数字是重复动作的次数

功能快捷键
q!丢弃修改并退出
wq保存并退出
x删除当前选中的字符
i a o当前位置编辑 当前后一个位置编辑 下一行编辑
w e $ 0移动到这个词后一个字符上,移动到这个词后一个字符上,移动到行末,移动到行首
dw删除选中词(同时删除词后的一个字符,往往是空格)
de删除选中词
d$删除本行之后的所有字符
ne/w移动n个词
dnw删除n个词
dd删除整行,并存储在vim register中
2dd删除两行
n方向某方向移动n次
uundo
U让某行还原
p在光标位置下一行粘贴
r替换,输入r后输入字符替换当前字符
ce删除词,并进入insert模式
ctrl g查看当前位置
G移动到底部
gg移动到顶部
数字+G移动到指定行
/词正向搜索
?词反向搜索
nN切换到上下一个
%光标放在()[]{}上,%可以在匹配的括号间跳转
?/old/new/(g)用new替换old,使用g的话就是对该行中所有替换,否则只替换第一个
:#,#s/old/new/g第#行到第#行中
:%s/old/new/g全文件中
:%s/old/new/gc全文件中,询问是否替换
:!+shell命令执行外部命令
v选择后 :+w可以选中区域保存
r 文件将文件内容加在光标位置
r !命令将命令输出加在光标位置
o O在下一行开空行,在上一行开空行
A在行末编辑
e下一个词末
R不只替换一个
:set ic无视大小写搜索 取消:set noic,仅当次搜索/ignore\c
:set hls高亮 取消:nohlsearch
:set is部分匹配
:help 命令帮助
ctrl D提示\在:下使用
TAB补全
:set number显示行号
yy复制当前行

参考

[1]https://www.jianshu.com/p/623dd0bf4557#三、开始尝试

 类似资料:

相关阅读

相关文章

相关问答