gpt4 book ai didi

unix - 如何在 VIm 和终端中始终拥有相同的当前目录?

转载 作者:行者123 更新时间:2023-12-04 13:17:46 25 4
gpt4 key购买 nike

我想我的终端当前目录跟随我的 VIM 之一。

例子:

在终端:

> pwd
=> /Users/rege
> vim

然后在vim中
:cd /Users/rege/project
<Ctrl-z>(for suspend)

在终端
> pwd
=> /Users/rege/project

我正在使用 MacOS、zsh、tmux。

我需要这个,因为当我尝试在 VIM 中使用标签时,标签是从我的终端目录而不是 vim 一 checkin 项目。

因此,当我更改 VIM 当前目录时,我需要始终更改终端当前目录。

最佳答案

挂起 Vim 后,你在 shell 中发出什么样的命令?不是 Vim 的 :!command足够?

set autochdir , 当你从一个文件跳转到另一个文件时,Vim 的当前目录会跟随你。使用此设置,一个简单的 :!ctags -R .将始终创建 tags当前文件所在目录下的文件。

另一个有用的设置是 set tags=./tags,tags;$HOME它告诉 Vim 寻找 tags文件在当前文件的目录中,然后在“当前目录”中,直到它到达你的~/ .您可以修改端点以满足您的需要。这允许您使用 tags在编辑属于该项目的任何文件时,位于项目的根目录。

所以,基本上,你可以在不离开 Vim 的情况下走很长一段路。

如果你真的需要回到 shell 来发出你的命令,:shell (或 :sh )使用 Vim 的当前目录启动一个新的 shell。完成后,您只需 $ exit回到 Vim:

$ pwd
/home/romainl
$ vim
:cd Projects
:sh
$ pwd
/home/romainl/Projects
$ exit

关于unix - 如何在 VIm 和终端中始终拥有相同的当前目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12239952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com