小编Men*_*ックス的帖子

在"插入"模式下遍历文本

而在插入模式在Vim中,有没有什么办法来遍历文本移动一些字符向前和向后除了使用箭头键?

如果我按h,j,kl在插入模式下,实际的字符显示在屏幕上,而不是在文本上移动.

我现在这样做的方式是不得不求助于Ctrl+ [(Esc)然后遍历文本; 但显然这不是很有成效.

vi vim

311
推荐指数
6
解决办法
9万
查看次数

有没有VIM Git时间表?

到目前为止,我试图了解如何:Glog结合使用:Gdiff,创建一个很好的概述,如Atom编辑器的git-time-machine插件:

在此输入图像描述

概述存在3个窗口

  1. 在左侧:工作副本中的当前文件.
  2. 在右侧:该文件的先前版本之一.
  3. 在底部:一个快速修复列表,其中包含历史记录中的条目.

当我从quickfix列表中选择一个提交时,该版本将被放置在右侧窗口中.不要忘记突出显示的差异.

有人能帮我吗?:)

git vim vim-fugitive neovim

6
推荐指数
1
解决办法
814
查看次数

为什么字符串末尾的'\ b'没有效果?

以下是代码:

#include <stdio.h>

int main(int argc, char* argv[])
{
    printf("WORD\b\b WORD\b\b");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

生成此输出:

WO WORD
Run Code Online (Sandbox Code Playgroud)

问题是为什么最后一个\b对第二个单词没有影响,当它们位于字符串的末尾时更具体?

c backspace

5
推荐指数
1
解决办法
193
查看次数

如何在Vim中使用foldmethod缩进来创建折叠?

我正在尝试学习如何在Vim中使用折叠。手动折叠效果很好,但我想知道如何通过缩进折叠。我希望它像这样工作:

+------
   +--- | //Place marker here and press 'zf'
   +---
+------
Run Code Online (Sandbox Code Playgroud)

将导致:

+------
<fold>
+------
Run Code Online (Sandbox Code Playgroud)

但是我得到

E350: Cannot create fold with current 'foldmethod'

任何想法为什么我会收到此错误?

另外,有没有办法在花括号之间创建折叠呢?

vim

5
推荐指数
1
解决办法
3566
查看次数

有没有办法退出无模式的vi而不关闭窗口?

作为初学者,我开始学习一些关于vim的新命令选项,在尝试使用无模式vi时,通过输入命令vim -y [name of the file to edit]我没有找到回到终端的方法但是关闭它.

我知道上面的命令vim在插入模式下运行而不允许命令模式,但我的问题是有什么方法可以在停留在同一个终端时退出vi吗?

linux vi vim terminal

4
推荐指数
1
解决办法
293
查看次数

如何映射vim视觉模式来替换我选择的文本部分?

我希望替换我的部分文字,由视觉模式选择。例如:

我有一个简单的文本文件:

------------------
hello there hehe
She's not here
------------------
Run Code Online (Sandbox Code Playgroud)

我要把所有的“他”变成“她”。

我想做的不是键入%s命令,而是在视觉模式下:

  1. v选择“他”
  2. 按某个热键,vim 提示我输入新文本
  3. 我输入新文本,按Enter,完成。

我想我们可以用 vmap 来做到这一点?但如何实现呢?谢谢!

vim select dictionary replace mode

4
推荐指数
1
解决办法
2881
查看次数

C++中的编译和链接

我正在寻找一篇关于c ++编译和链接的详细文章.我对他们了解很多,但我确实错过了一些微妙的观点.

c++ linker compilation

2
推荐指数
1
解决办法
253
查看次数

C中结构内部的结构

typedef char tCadena[TCAD];
typedef struct{
    int i; 
    int f;
    tCadena cola[TCOL];
}tCola;
typedef struct{
    tCadena nombre[TCAD];
    int numfich;
    tCola cola;
}tImpresora;
typedef struct{
    tImpresora impresora;
    int ocupado;
}tElementoImpresora;
typedef tElementoImpresora tablaImp[MAXIMP];
Run Code Online (Sandbox Code Playgroud)

所以,我有这些结构,我有一个叫做可变thingtablaImp 我想去的内部结构,并设置i了的第一个结构0.我尝试过:

tablaImp thing;
thing.impresora.cola.i=0;
Run Code Online (Sandbox Code Playgroud)

但它告诉我它不是结构的一部分.如何进入第一个结构?谢谢.

c struct

2
推荐指数
1
解决办法
77
查看次数

VIM:如何将光标移动到屏幕左侧?

我知道0移动到行的开头和行$的末尾,但我正在处理带有nowrapset的长行.我想跳到屏幕的左侧.

我该怎么办?

我们在这里时,如何跳到屏幕右侧?

vim

2
推荐指数
1
解决办法
349
查看次数

printf 中如何处理 '\0'?

#include<stdio.h>
#include<conio.h>

int main()
{
    char arr[]="\0";
    if(printf("%s",arr))
        printf("not empty");
    else
        printf("empty");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

这里我认为\0将被视为数组中的 1 个字节并printf返回 1 个字节,因此不应打印空。但输出就是返回的empty意思。那么如何服用呢?printf0printf\0

c printf

0
推荐指数
1
解决办法
2万
查看次数

关于在C中使用指针进行2D数组定义

当我们定义2D数组时,如:

int *a[5];
Run Code Online (Sandbox Code Playgroud)

"5"定义了哪个维度?第一个还是第二个?

c pointers multidimensional-array

0
推荐指数
1
解决办法
91
查看次数