在vim中打开的文件的目录下创建新文件?

qxgroojn  于 2022-11-11  发布在  其他
关注(0)|答案(8)|浏览(323)

我发现自己正处于一个位置,我想在打开的文件所在的目录中创建一个新文件。我如何在vim中打开的文件所在的目录中创建一个新文件?还有,有没有一个地方我可以自己学习这些东西?谷歌搜索没有帮助。

nr9pn0ug

nr9pn0ug1#

在Vim中,通过:edit filename:split filename之类的命令创建新文件,就像编辑现有文件一样。要将它们持久化到磁盘,您需要(可选地键入内容并)通过:write持久化它们。
像命令提示符一样,Vim也有一个 current directory 的概念(:pwd列出了它)。所有文件路径都是相对于它的。你不需要复制当前文件的路径,有一些很好的快捷方式:%指的是当前文件,:h是其目录的修饰符,减去文件名(cp.:help filename-modifiers)。因此,

:e %:h/filename
:w

将在当前打开的文件所在的目录中创建一个名为filename的新文件,并写入该文件。
或者,有些人喜欢Vim总是切换到当前文件的目录。

:set autochdir

~/.vimrc文件中(在Vim启动时读取)。

:e filename
:w

最后,Vim有一个很棒的内置:help。学习导航和搜索!

ldioqlga

ldioqlga2#

你应该试试“nerdtree”插件。2在nerdtree窗口中,你键入键m,文件操作选项将显示给你

sgtfey8w

sgtfey8w3#

如果您想要创建一个新文件,并在当前文件旁边的窗口中显示它,您可以尝试以下操作:

:vsp newfile

vsp代表vertical split,它将屏幕分成两半,一个显示当前文件,另一个显示新文件(也适用于sp,这是一个水平分割)。
根据上面@MartinLyne的注解,这将在您打开vim的文件的目录中创建文件。要对此进行调整,您可以按如下所示更改当前工作目录:

:cd %:p:h

此命令将当前工作目录更改为活动文件所在的目录,这意味着运行vsp命令(或上面的任何命令)将在该目录中创建文件。

xtfmy6hx

xtfmy6hx4#

当 你 * * 在 不 存在 的 位置 打开 Vim * * 比如
x1月 1 日
然后 * * 在 vim 内 创建 一 个 新 目录 * * , 只 在 正常 模式 下 运行
:! mkdir -p /etc/<some_folder/<next_folder>
接下来 像 平常 一样 保存 您 文档 :w :x ZZ ( 无论 您 喜欢 什么 )
就 这样 了

dxpyg8gm

dxpyg8gm5#

我通常用途:

:tabnew my-file

然后添加一些内容并:

:w

它将使用新文件创建新选项卡。
(我使用Vim 8)

lpwwtiir

lpwwtiir6#

我已经迟到了,但是另一个选择是使用:E:Explore(或者它的拆分替代方案:Vexplore/:Sexplore == :Vex/:Sex)打开NERDtree。
在NerdTree中,您可以创建一个新文件,文件名为%,并输入文件名。:w/保存后,它会自动打开并创建该文件。

0vvn1miw

0vvn1miw7#

这是给Gvim的!输入这个来查看当前目录。

:cd

然后将其更改为

:cd desktop/somefolder

然后保存或创建新文件

:enew asd.cpp

现在再次查看文件

:cd
ulydmbyx

ulydmbyx8#

使用NERDtree

ma <FILENAME>
 ma <DIRECTORY NAME> + /

相关问题