Giter Site home page Giter Site logo

nvim's Introduction

windows nvim markdown

在powershell中执行以下代码

md ~\AppData\Local\nvim\autoload
$uri = 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
(New-Object Net.WebClient).DownloadFile(
  $uri,
  $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath(
    "~\AppData\Local\nvim\autoload\plug.vim"
  )
)

在nvim中执行以下命令

:call mkdp#util#install()

将查询结果输出到buffer

显示:hi
:enew|pu=execute('hi')

显示:lua print(vim.inspect(package.loaded))
enew|pu=execute('lua print(vim.inspect(package.loaded))')

显示:lua print("Leaderf gtags -s %s --top --auto-preview")
enew|pu=execute('lua print(\"Leaderf gtags -s %s --top --auto-preview\")')

显示:lua print(vim.fn.printf("Leaderf gtags -s %s --top --auto-preview", vim.fn.expand('<cword>')))

:echo  printf('Leaderf gtags -s %s --top --auto-preview', expand('<cword>'))
:execute  printf('Leaderf gtags -s %s --top --auto-preview', expand('<cword>'))

nvim 设置选项

查看所有可配置选项
:h option-list

查询某个选项当前配置,以background为例
:set background?

1. markdown keybind
Key Function
`+` 跳转到下个锚点
`+tab 跳转到下个锚点(并换行)
`+1 我最常用的标题
`+2 一级标题
`+3 二级标题
`+space 分割线
`+s 代码大块
`+h 红色字体
`+m 复选框可在[x],表示打勾
`+l 添加链接
`+p 添加图片
`+c 文字居中
`+u 一行红色字
`+a
可折叠代码段,用于添加log
`+e
可折叠图片
`+j 斜体
`+k 粗体
`+d 删除线
`+b 一行代码块
`+n 显示看起来像按键
space+mm
开启做表模式,配合"|".":"可以控制对齐方式
space+mt
格式化表格
2. 基本操作
Key Function
2-1. 光标移动
W 光标向上移动5行
S 光标向下移动5行
A 光标向左移动5行
D 光标向右移动5行
a 光标向左边单词移动
d 光标向右边单词移动
2-2. 删除
CTRL+j 删除光标所在单词
CTRL+h 向前删除字母
CTRL+z 删除多余的空格
SPACE+ENTER 取消 [删除多余空格] 后的高亮
j j 删除整行
2-3. 进入插入模式
s 删除当前字母并进入插入模式
e 当前光标后插入
2-4. 选定文本复制/粘贴/删除
v 进入选择文本模式(行文本选择模式)
ENTER 区域选择
CTRL+v 进入选择文本模式(矩形的文本选择)
CTRL+c 复制
p 粘贴
CTRL+r
在插入模式下粘贴
j 删除选定区域
3. 分屏操作
Key Function
wd 右分屏
wa 左分屏
ww 上分屏
ws 下分屏
ALT+d 窗口焦点右移
ALT+a 窗口焦点左移
ALT+w 窗口焦点上移
ALT+s 窗口焦点下移
CTRL+ALT+d 当前窗口变宽
CTRL+ALT+a 当前窗口变窄
CTRL+ALT+w 当前窗口变高
CTRL+ALT+s 当前窗口变矮
wn 新tab标签
gn 标签焦点向右移动
gp 标签焦点向左移动
H buffer焦点左移
L buffer焦点右移
SPACE+we 窗口排部由上下变左右
SPACE+wo 窗口排部由左右变上下
4. nvim-tree
Key Function
n new新建文件
r rename重命名文件
c copy文件
x cut文件
p paste粘贴文件
d delete文件
gn 复制文件名
gp 复制文件绝对路径
q 关闭nvim-tree窗口
CTRL+b 收起展开的部分
CTRL+t 在新tab打开文件
b 跳到父节点
5. 编程相关
Key Function
5-1. gtags + LeaderF
ALT+. 函数定义查看
ALT+, 函数被调用位置
ALT+p 召回最后的搜索结果
SPACE+js 变量相关的结果
SPACE+jf 查找光标所在include文件的路径
SPACE+ji 显示当前光标所在的include文件被那些文件include
CTRL+o 返回gtags操作之前的位置
CTRL+i 前进到gtags操作之后的位置
5-2. lsp
J 变量/函数声明
SPACE+jt type定义
SPACE+jd 函数定义
SPACE+jD 函数声明
SPACE+jr 变量/函数引用位置
SPACE+jn 变量/函数重命名
SPACE+j[ 跳到诊断上一个
SPACE+j] 跳到诊断下一个
SPACE+jw 列出所有诊断内容
SPACE+jo 未知
SPACE+jp 当前文件的所属的根位置
p 预览搜索结果
ALT+n预览下翻页
ALT+m预览上翻页
5-3. LeaderF和fzf
CTRL+u 显示当前buf中的所有tag
CTRL+e 打开预览页面CTRL+j下一行 CTRL+k上一行
SPACE+jh 回顾历史查询
SPACE+jl 行模式查看整个文件
? 在当前文件查找某个单词
SPACE+ff 查找某个文件
SPACE+fg 查找某个文件属于git管理
SPACE+fh 查看搜索的历史纪录
fa 模糊搜索内容
fr 精确搜索内容
SPACE+fa 模糊搜索内容
SPACE+fr 精确搜索内容
SPACE+rg 全盘模糊搜索内容
Ctrl+o 横向分屏
Ctrl+e 竖向分屏
Ctrl+r 预览结果
预览搜索翻页CTRL+jCTRL+k
6. 多光标编辑
Key sub-Key sub-sub-Key Function
CTRL+k 标记当前单词
CTRL+k 标记下一个相同单词
q 取消标记当前标记的单词
n 跳转到下一个相同的单词
N 跳转到上一个相同的单词
I 插入在词头
a 插入在词尾
d 删除选中单词
c 删除选中单词后写入
u 撤销编辑
k 取消所有选定
CTRL+v 选定区域开始
CTRL+k 标记当前选定区域
v 如果使用n跳过,可用v划定相同区域后CTRL+k
CTRL+UP 向上添加光标
CTRL+DOWN 向下添加光标
I 插入在词头
i 插入在当前位置
A 插入在词尾
x 删除字母
c c 删除整行后编辑
u 撤销编辑
j 选定的行集体向下移动
k 选定的行集体向上移动
7. tig和lazygit
Key Function
SPACE+gt tig
SPACE+gT 当前文件 commit 列表
SPACE+gb tig blame 当前文件
SPACE+gn 跳到下一个修改块
SPACE+gp 跳到上一个修改块
SPACE+gl 高亮修改块
h 显示当前修改块内容
SPACE+gg lazygit
SPACE+gf tig中grep
8. 使用{}包裹选定内容
Key sub-Key Function
CTRL+m 选定要包裹的内容
S+{ 使用{}包裹内容
S+} 使用{}包裹内容
将光标移动到被包裹内容中 修改/删除包裹符号
cs+{ 原符号+( 新符号 使用()替换{}包裹内容
js+{ 待删除的符号 删除包裹符号

GTags错误排查

错误代码

gutentags: gtags-cscope job failed, returned: 1

解决步骤

  1. 添加错误日志追踪功能
let g:gutentags_define_advanced_commands = 1

2.打开运行出错的文件,并命令行打开日志

:GutentagsToggleTrace
会将错误信息打印到:messages中

gtags.conf更新

global下载

查看主机global的版本
gtags --version

下载对应的版本,展开tar包
wget https://ftp.gnu.org/pub/gnu/global/global-6.6.4.tar.gz -O Global.tar.gz

tar xzvf Global.tar.gz

cp global-6.6.4/gtags.conf ~/.gtags.conf

ccls编译方法

旧
bear --libear /usr/lib/x86_64-linux-gnu/bear/libear.so make install

新
bear --library /lib/x86_64-linux-gnu/bear/libexec.so -- make install

查看按键映射

vim键盘映射

:map
:nmap
:vmap
:verbose nmap ???

nvim's People

Contributors

fzhzhen1987 avatar

Watchers

 avatar

nvim's Issues

ttt

正直なところ、このプロジェクトに取り組んでいると、毎日大きなプレッシャーを感じています。週末もろくに休めず、常に仕事のことを考えています。
CISや画像認識、その関連分野については、まったくの未経験で、深く考える必要があると感じています。
できる限りの努力をしていますが、画像認識の仕様書を理解するのは非常に難しく、Markの仕様書に関しては80%程度理解しています。大体の内容は把握できています。
バーコード認識に関しては、最近時間が取れず、理解度は約50%です。
バーコードの結合テストに問題が生じないか、大変心配しています。

わからないことや不明点があるときは、誰かと議論したいですし、少なくともPLと話し合うべきだと思います。ただ、吉田さんが忙しいのも承知しています。
問題は自分一人で解決するしかなく、Markの仕様書を理解しようとした時のように、かなりの時間と労力を費やす必要があり、それが苦痛です。
この状態が続くのは望んでいません。

事を成し遂げたいと強く願っています。これは私の本心からの言葉です。よく考えた上で、吉田さんに伝えるべきだと思いました。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.