我想在 Vim 中按下一个按钮并折叠所有代码,以便只显示特定(和可变)缩进级别的代码。例如,当我只想查看方法名称而不是缩进的例程时,这非常有用。
“ Vim: Fold top level folds only ”问题有一个缩进级别的解决方案,但每次更改级别时都需要设置环境。
当我的光标处于缩进级别(比如级别 2)时,我希望整个文件在所有方法中都折叠到该缩进级别。
这是否内置于 Vim 的某个地方?有谁知道一个很好的插件可以做到这一点?
我正在编写一个在LaTeX中编辑特定环境的函数.
环境基本上是这样的:
\begin{quicktikz}
...some stuff...
\end{quicktikz}
Run Code Online (Sandbox Code Playgroud)
或者像这样:
\begin*{quicktikz}
...some stuff...
\end{quicktikz}
Run Code Online (Sandbox Code Playgroud)
我想编写一个在环境中调用时在两者之间切换的函数.由于我的Vim知识不是全部,我想出一个简单的解决方案:
let save_cursor=getpos(".")\begin{quicktikz}使用:?\\begin{quicktikz}\|\\begin\*{quicktikz}{并向左移动:normal 0f{h*
normal xnormal a*<esc>call setpos('.',save_cursor)除了步骤3之外,我知道如何完成所有这些操作.如何检查光标下的字符是否等于*?
如果您知道更好的方法,欢迎分享这一点.
我希望将源代码格式化程序Uncrustify与Vim 集成.以下两个选项中的任何一个都足够了.
gq按下时).选项1是优选的.我试过了
set formatprg=uncrustify\ -c ~/misc/uncrustify.cfg --no-backup
Run Code Online (Sandbox Code Playgroud)
即我用命令行选项调用Uncrustify.这不起作用.Vi给出了E518: Unknown option: ~/misc/uncrustify.cfg错误.
对于选项2,我在vimrc文件中尝试了以下内容
autocmd bufwritepost *.cpp ! ~/bin/uncrustify -c ~/misc/uncrustify.cfg --no-backup <afile>
Run Code Online (Sandbox Code Playgroud)
保存后文件格式化,但我必须手动将文件重新加载到Vim中.
我希望我的Vim运行一些命令,例如setlocal spell spelllang=en_us当我编辑扩展名为的文件时en,例如abc.en.我该如何实现呢?
正如指出的使用的std ::的unique_ptr的一个std :: unordered_set,这是不容易找到一个指针T*中std::unordered_set<std::unique_ptr<T>>。在 C++20 之前,我们被迫构造一个std::unique_ptr<T>.
感谢无序容器提案的异构查找(http://wg21.link/P0919r3和http://wg21.link/p1690r1),这个问题在 C++20 中得到解决。但是可用的解决方案对我来说看起来很笨拙(即使按照 C++ 标准)。似乎我需要从头开始实现不是一个,而是两个函子(用于透明散列和透明比较):
template<class T>
struct Equal {
using is_transparent = void;
bool operator()(const std::unique_ptr<T>& lhs, const std::unique_ptr<T>& rhs) const {
return lhs == rhs;
}
bool operator()(const std::unique_ptr<T>& lhs, const T* rhs) const {
return lhs.get() == rhs;
}
bool operator()(const T* lhs, const std::unique_ptr<T>& rhs) const {
return lhs == rhs.get();
}
};
template<class …Run Code Online (Sandbox Code Playgroud) 我没有启用python/ruby.我的问题:我经常要编写如下内容:
%macro(200701);x gzip /home/test/200701.txt;run;
%macro(200702);x gzip /home/test/200702.txt;run;
%macro(200703);x gzip /home/test/200703.txt;run;
%macro(200704);x gzip /home/test/200704.txt;run;
%macro(200705);x gzip /home/test/200705.txt;run;
%macro(200706);x gzip /home/test/200706.txt;run;
%macro(200707);x gzip /home/test/200707.txt;run;
%macro(200708);x gzip /home/test/200708.txt;run;
%macro(200709);x gzip /home/test/200709.txt;run;
%macro(200710);x gzip /home/test/200710.txt;run;
%macro(200711);x gzip /home/test/200711.txt;run;
%macro(200712);x gzip /home/test/200712.txt;run;
%macro(200801);x gzip /home/test/200801.txt;run;
%macro(200802);x gzip /home/test/200802.txt;run;
%macro(200803);x gzip /home/test/200803.txt;run;
%macro(200804);x gzip /home/test/200804.txt;run;
%macro(200805);x gzip /home/test/200805.txt;run;
%macro(200806);x gzip /home/test/200806.txt;run;
%macro(200807);x gzip /home/test/200807.txt;run;
%macro(200808);x gzip /home/test/200808.txt;run;
%macro(200809);x gzip /home/test/200809.txt;run;
%macro(200810);x gzip /home/test/200810.txt;run;
%macro(200811);x gzip /home/test/200811.txt;run;
%macro(200812);x gzip /home/test/200812.txt;run;
Run Code Online (Sandbox Code Playgroud)
在Vim有这么快的方法吗?
我通常会输入:
%macro(200701);x gzip /home/test/200701.txt;run;
Run Code Online (Sandbox Code Playgroud)
然后发出以下命令:
yy11p10<up>13<right>r2<down>r3<down>r4<down>... …Run Code Online (Sandbox Code Playgroud) 许多b+树示例都是使用整数键实现的,但是我见过一些同时使用整数键和字符串键的其他示例,我学习了b+树基础,但我不明白字符串键是如何工作的?
在Intellij Idea中,有一个功能.假设我myCamelCase在代码中的某处使用过变量.然后,如果我键入mCC并按Ctrl- Enter或某些此类组合键,它会扩展为myCamelCase.Vim有类似的东西吗?
谁能告诉我如何在 Vim 中更改 Python 颜色。我已经看到以下语法,但我不确定如何使其永久化。
:hi pythonComment ctermfg=2 gui=italic guifg=#408010
Run Code Online (Sandbox Code Playgroud) 我试图删除一行中的单词,如果它们包含一个特定的字符串.以下是文本示例:
host-a, host-b, host-c+test, host-d, host-e+test
Run Code Online (Sandbox Code Playgroud)
我想删除任何包含的内容+test,结果为:
host-a, host-b, host-d
Run Code Online (Sandbox Code Playgroud)
同样,我需要逐行应用它,而不是文件中的所有行.它将在宏中使用.
我怎样才能做到这一点?
vim ×8
vi ×2
b-tree ×1
c ×1
c++ ×1
c++20 ×1
camelcasing ×1
cursor ×1
macros ×1
python ×1
repeat ×1
string ×1
uncrustify ×1
unique-ptr ×1