如何用Vim的:split命令同时打开Haskell文件与ghci交互环境?
如何在Vim的Split窗口中运行ghci交互式解释器
嘿,完全懂你的需求——一边在Vim顶部编辑《Write Yourself a Scheme》里的Haskell代码,一边在底部split窗口直接跑ghci调试,对吧?确实:split默认是用来打开文件的,但我们有几个简单的技巧能实现你想要的效果,下面给你拆解几种实用方法:
方法1:直接用终端协议启动ghci(推荐,Vim 8.0+/Neovim通用)
直接在Vim的命令行输入:
:split term://ghci
执行后,顶部会保留你当前的Haskell文件,底部split窗口会直接启动ghci交互式环境。如果想自定义底部窗口的高度,比如让它占10行,只需要在命令前加行数:
:10split term://ghci
方法2:先创建空Split窗口再启动ghci
如果习惯分步操作,可以先创建空split窗口:
:split
然后在这个空窗口里输入终端命令启动ghci:
:terminal ghci
之后用Ctrl+w j切换到底部ghci窗口,Ctrl+w k切回顶部编辑窗口就行。
方法3:设置快捷键一键触发(适合高频使用)
如果你经常需要这个场景,可以在你的~/.vimrc(Neovim是init.vim)里添加一行快捷键映射,比如:
nnoremap <leader>gh :split term://ghci<CR>
以后在普通模式下按<leader>gh(默认leader键是反斜杠\),就能一键打开底部的ghci窗口,不用每次输入长命令。
小提示
- 在ghci的终端窗口里,按
Ctrl+\ Ctrl+n可以切换到Vim普通模式,方便调整窗口或切换标签;按i就能回到ghci的交互状态。 - 退出ghci时,直接在ghci里输入
:quit,或者在Vim普通模式下输入:q就能关闭这个split窗口。
内容的提问来源于stack exchange,提问作者Jonathan Dewein
相关产品推荐
相关产品推荐

