最强NeoVim移动插件推荐Leap.nvim
_李牧_
2022年11月17日 14:48

我的 leap 和 flit的配置. lua

-- leap config

require('leap').add_default_mappings()

-- Disable auto jump first match

-- require('leap').opts.safe_labels = {}

require('leap').opts.highlight_unlabeled_phase_one_targets = true

vim.keymap.set({'x', 'o', 'n'}, 'r', '<Plug>(leap-forward-to)')

vim.keymap.set({'x', 'o', 'n'}, 'R', '<Plug>(leap-backward-to)')

-- flit config

require('flit').setup {

 keys = { f = 'f', F = 'F', t = 't', T = 'T' },

 -- A string like "nv", "nvo", "o", etc.

 labeled_modes = "v",

 multiline = true,

 opts = {}

}

------------------------

视频笔记:

# 1 内容精简

1. vim 中的移动推荐 leap.vim 和 flit.vim

2. leap 的配置 vim leap

3. flit.vim 的配置 , 无公式

# 2 评判依据

## 2.1 亲自使用体验 这个是最关键的

## 2.2 两者的设计理念

## 2.3 [[📽️Youtube]] 

## 2.4 [LibHunt - Trending open-source projects and their alternatives](https://www.libhunt.com/)

## 2.5 [Sneak vs Hop and Why? : neovim](https://www.reddit.com/r/neovim/comments/vkp2v0/sneak_vs_hop_and_why/)

# 3 功能演示

[[👟VimLeap]]

# 4 主要移动插件, 涉及两个方面,移动和屏幕增强

[[📖HowToRead]]

## 4.1 移动插件

### 4.1.1 old version

- VimSneak

- [[👟VimEasyMotion]]

### 4.1.2 中间版本

- lightspeed

### 4.1.3 最新版本

- [[👟VimLeap]]

- [[👟VimHop]]

## 4.2 f 增强插件

- [[CleverF]]

- [[VimQuickScope]]

- flit.vim

[[👟VimHop]] is the best

# 5 推荐的是 leap 和 flit

[[👟VimLeap]]

# 6 compare with others

- if change buffer

- if contains direction

- use hop again

- less key press

- if label overlap the target

- support operator

- 是否需要考虑上下文

## 6.1 主要还是Hop和Leap的比较

[Neovim - Sneak is a better way to navigate text - YouTube](https://www.youtube.com/watch?v=HkY3LoQqKVA&t=18s)

## 6.2 搜索方向

Hop 不用考虑方向的问题, 思维负担更小, leap 就这一个问题, 这个用映射解决一下

## 6.3 高亮界面设计

- 一个关键的区别在于高亮的问题, leap的高亮更舒服, 但是不是绝对关键,  Hop的`HopWord` 模式, 也不能, hop画面变化太大

- hop的画面损失太大了, 很多地方都做了修改, 这样对文章的整体印象就比较差

- Hop的高亮有一个问题就是这种大面积的覆盖, 会让你忘记这个文章基本的模样

- 是否修改目标词