gpt4 book ai didi

vim - 通过.vimrc在Vim中自动折叠#ifdef ..#endif

转载 作者:行者123 更新时间:2023-12-04 05:57:40 40 4
gpt4 key购买 nike

我已经在Internet上看到了部分解决方案,但是没有一个真正令我满意的解决方案:我必须在.vimrc中放入什么(理想情况下,我不想碰到任何语​​法/*.vim文件),使得所有.c/cpp/h我打开的文件,我会自动折叠#ifdef ... #endif节吗?

最佳答案

如果您想要的唯一折叠类型是#ifdef部分,则最简单的方法是使用以下内容创建文件~/.vim/after/ftplugin/c.vim(您可能还需要在cpp.vim中进行此操作,我不确定):

set foldmarker=#ifdef,#endif
set foldmethod=marker

如果您真的想将其放入 .vimrc中而不是使用 ~/.vim/after/结构,则可以执行以下操作:
autocmd FileType *.[ch]{,pp} call FoldPreprocessor()
function! FoldPreprocessor()
set foldmarker=#ifdef,#endif
set foldmethod=marker
endfunction

您可能还需要考虑使用:
set foldmarker=#if,#endif

这样就可以捕获 #if defined(...)#ifdef#ifndef#if 0等以及 #ifdef

使用语法折叠进行此操作更具挑战性,因为您必须更改语法规范,因为它不支持此标准。

关于vim - 通过.vimrc在Vim中自动折叠#ifdef ..#endif,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6522526/

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