1
xlcoder166 2019-12-21 20:13:41 +08:00
点: ! 执行命令
|
2
jworg 2019-12-21 20:15:00 +08:00 1
1, Ctrl + z 后台,fg 回来; 2, :! 执行 shell 命令; 3, vim 应该像 Emacs 有类似 eshell 的玩意,你可以搜一搜
|
3
tinyproxy 2019-12-21 20:17:15 +08:00 via iPhone 1
tmux
|
4
Meltdown 2019-12-21 20:24:31 +08:00 via Android
或者另外开几个标签,alt 加数字来回切
|
5
zeny620 2019-12-21 20:27:53 +08:00 3
:terminal
|
6
blessingsi 2019-12-21 20:44:12 +08:00 via Android
:shell
|
7
sazima 2019-12-21 20:47:20 +08:00
tmux
|
8
nightwitch 2019-12-21 20:51:33 +08:00
python 不太清楚,vim 可以在 vim 内直接调用 make 编译 makefile,也有 make 命令可以使用。
F5 一键编译单文件 autocmd filetype c set makeprg=gcc\ -O2\ -lpthread\ -std=c99\ -g\ %\ -o\ %< autocmd filetype c nnoremap <F5>:silent make\|redraw!\|cw<CR> 要边写,边编译,边 debug 的话,tmux 或者 screen 应该是跑不掉的 |
9
rudyyuan 2019-12-21 20:54:53 +08:00 via Android
推荐下俺的博客,欢迎跟我一起学习
https://vimjc.com |
10
weixiangzhe 2019-12-21 20:59:31 +08:00 via Android
vim 里现在也带 terminal 的,然后楼上说的都对
|
11
iamtricker 2019-12-21 21:51:16 +08:00
可以试试 tmux,也挺方便的。
|
12
luassuns 2019-12-21 23:19:15 +08:00
asyncrun
|
13
rayhy 2019-12-21 23:21:48 +08:00
可以设置成类似 vscode 那样,按一下 ctrl+`就出来一个 terminal
|
14
hellos 2019-12-21 23:32:35 +08:00 via Android
:! python %
|
15
hellos 2019-12-21 23:33:54 +08:00 via Android
:!python %
|
16
sunwei0325 2019-12-22 02:37:59 +08:00
tmux 配合 'benmills/vimux' 这个插件
|
17
cf020031308 2019-12-22 02:42:38 +08:00
用 tmux 分屏分窗都可以,一边用 vim,另一边还在命令行里,要编译要怎样随便。
vim 是个编辑器,专注于编辑功能就好。不要在编辑器里做该用 shell 做的事情,这一点也不酷。不要学 Emacs。 |
18
MrUser 2019-12-22 08:54:28 +08:00
yum install screen
$ screen $ vim file.ext ^a # ctrl+a 创建一个新窗口 $ cd ~/projects/xxx && make # 在新窗口 cd 并 make ^aa # 按两次 ctrl+a 回上一个窗口 |
19
MrUser 2019-12-22 08:55:43 +08:00
更正:^a,c 才是创建窗口,即:ctrl+a, ctrl+c
到上一个窗口: ^a,p 到下一个窗口: ^a,n |
20
wjidea 2019-12-22 09:38:54 +08:00
tmux 走一波
|
21
zealot0630 2019-12-22 10:09:37 +08:00 via Android
为什么要切换,编译运行调试都可以在 vim 里面做啊
|
22
jdhao 2019-12-22 13:01:48 +08:00
推荐楼上说的 asyncrun.vim ,利用了 vim 和 neovim 的 job 特性,可以直接异步执行程序然后把程序输出的结果输出到 quickfix list 中,不会阻塞 vim。使用 !python test.py 缺点是会阻塞 vim,程序执行的时候你不能执行任何操作了,只能等待命令结束,返回结果。
之前还写了一篇文章介绍 asyncrun 执行 python 程序,其他语言应该是一样设置的: https://jdhao.github.io/2019/12/09/vim_asynchronous_command_run/ |
23
yujincheng08 2019-12-22 13:33:59 +08:00
asyncrun.vim 确实不错的
|
24
CenN 2019-12-22 14:00:03 +08:00 via iPhone
tmux
另外可以用 when-changed |
25
Tink 2019-12-22 15:12:09 +08:00 via iPhone
tmux
|
26
PTLin 2019-12-22 15:52:55 +08:00
用:terminal,然后<C-w>w 循环切换窗口。
|
28
rainbowchou 2019-12-22 23:10:37 +08:00
我觉得你可以 把 vimtutor 走一遍,进阶的之后再说
|
29
fps23dot9999 2019-12-23 09:30:08 +08:00
1. Ctrl-Z 后台,fg 切回
2. tmux 3. vim8.0 以上支持:terminal 4. normal 命令前加!,调用 shell 命令 |
30
numgao OP @fps23dot9999 多谢回复 学习了不少!但有没有那种按 f5 之类的就能快捷编译的快捷键之类的呢
|
31
numgao OP @rainbowchou 是的 还是新手
|
32
fps23dot9999 2019-12-24 09:44:59 +08:00
@numgao 用 vim 的 make 集成,:help make,:help quickfix。8 楼都给了方案了。
|
33
tomychen 2020-03-17 16:42:00 +08:00
terminal 分屏
tmux + tmux 分屏 |