• Stars
    star
    1,105
  • Rank 40,718 (Top 0.9 %)
  • Language
    Vim Script
  • License
    MIT License
  • Created almost 10 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🔦 Improved incremental searching for Vim

⚠️ Deprecated This plugin is no longer necessary since the main functionality is now built into vim/neovim

See:

incsearch.vim

Build Status Build status

Introduction

incsearch.vim incrementally highlights ALL pattern matches unlike default 'incsearch'.

Concepts

1. Simple

incsearch.vim provides simple improved incremental searching.

2. Comfortable

You can use it comfortably like the default search(/, ?). It supports all modes (normal, visual, operator-pending mode), dot-repeat ., {offset} flags, and so on.

3. Useful

incsearch.vim aims to be simple, but at the same time, it offers useful features.

Incremental regular expression editing

You can see all patterns that the given regular expression matches all at once while incremental searching.

Usage

Installation

Neobundle / Vundle / vim-plug

NeoBundle 'haya14busa/incsearch.vim'
Plugin 'haya14busa/incsearch.vim'
Plug 'haya14busa/incsearch.vim'

pathogen

git clone https://github.com/haya14busa/incsearch.vim ~/.vim/bundle/incsearch.vim

Basic usage

map /  <Plug>(incsearch-forward)
map ?  <Plug>(incsearch-backward)
map g/ <Plug>(incsearch-stay)

<Plug>(incsearch-stay) doesn't move the cursor.

Additional usages

README introduces some features, but please see :h incsearch.vim for more information.

Automatic :nohlsearch

Farewell, nnoremap <Esc><Esc> :<C-u>nohlsearch<CR>! This feature turns 'hlsearch' off automatically after searching-related motions.

" :h g:incsearch#auto_nohlsearch
set hlsearch
let g:incsearch#auto_nohlsearch = 1
map n  <Plug>(incsearch-nohl-n)
map N  <Plug>(incsearch-nohl-N)
map *  <Plug>(incsearch-nohl-*)
map #  <Plug>(incsearch-nohl-#)
map g* <Plug>(incsearch-nohl-g*)
map g# <Plug>(incsearch-nohl-g#)

Emacs-like incsearch: move the cursor while incremental searching

Move the cursor to next/previous matches while incremental searching like Emacs.

Mapping description
<Over>(incsearch-next) to next match. default: <Tab>
<Over>(incsearch-prev) to prev match. default: <S-Tab>

Scroll-like feature while incremental searching

Mapping description
<Over>(incsearch-scroll-f) scroll to the next page match. default: <C-j>
<Over>(incsearch-scroll-b) scroll to the previous page match. default: <C-k>

🎉 Version 2.0 🎉

Now, incsearch.vim provides some (experimental) API. You can implement or use very useful yet another search command 🔎

Experimental API

  • :h incsearch#go()
  • :h incsearch-config

Starts incsearch.vim with your custom configuration. See help docs for more detail.

Converter feature

Example

function! s:noregexp(pattern) abort
  return '\V' . escape(a:pattern, '\')
endfunction

function! s:config() abort
  return {'converters': [function('s:noregexp')]}
endfunction

noremap <silent><expr> z/ incsearch#go(<SID>config())

incsearch.vim x fuzzy https://github.com/haya14busa/incsearch-fuzzy.vim incsearch-fuzzy.gif

Module extension

incsearch.vim x fuzzy x vim-easymotion https://github.com/haya14busa/incsearch-easymotion.vim incsearch-fuzzy-easymotion.gif

Author

haya14busa (https://github.com/haya14busa)

Special thanks

osyo-manga(https://github.com/osyo-manga), the author of the custom command line library, https://github.com/osyo-manga/vital-over, which incsearch.vim heavily depends on.

Links

VimConf2014

Document

:h incsearch.vim

More Repositories

1

vim-asterisk

❄️ *-Improved
Vim Script
363
star
2

is.vim

incremental search improved - successor of incsearch.vim
Vim Script
254
star
3

vim-operator-flashy

🔦 Highlight yanked area
Vim Script
162
star
4

vim-edgemotion

Move to the edge!
Vim Script
132
star
5

incsearch-fuzzy.vim

Vim Script
130
star
6

github-action-brandings

GitHub Actions Branding Cheat Sheet
JavaScript
128
star
7

incsearch-easymotion.vim

Vim Script
100
star
8

goplay

The Go Playground (https://play.golang.org/) client
Go
99
star
9

vim-auto-programming

Provide statistical complements for git project
Vim Script
92
star
10

goverage

go test -coverprofile for multiple packages
Go
87
star
11

action-cond

Conditional value for GitHub Action - missing expression for GitHub Actions
TypeScript
80
star
12

action-bumpr

💥 Bump semantic version tag on merging Pull Requests with specific lables.
Shell
79
star
13

nintendo-switch-checker

Go
67
star
14

vim-easyoperator-line

Select, yank, paste, delete, or other operation of lines.
Vim Script
56
star
15

vim-poweryank

Copy text over SSH
Vim Script
54
star
16

gopkgs

⚡ List Go packages FAST by using the same implementation as goimports
Go
53
star
17

dein-command.vim

utility comamnds of dein.vim with rich completion.
Vim Script
53
star
18

vim-debugger

🐾 Vim script debugger 🐛
Vim Script
50
star
19

action-update-semver

Updates major/minor release tags on a tag push
Shell
47
star
20

gosum

Sum/Union/Variant Type in Go and Static Check Tool of switch-case handling
Go
44
star
21

vim-gtrans

Google Translate in Vim
Vim Script
38
star
22

vim-metarepeat

Vim Script
37
star
23

vital-power-assert

💪 Power Assert in Vim script
Vim Script
32
star
24

vim-textobj-function-syntax

heuristic syntax-based text-object for function
Vim Script
31
star
25

gtrans

Command-line translator using Google Translate
Go
30
star
26

eew.vim

📣 緊急地震速報 on Vim
Vim Script
29
star
27

action-workflow_run-status

✅ The missing status check utility for workflow_run action.
TypeScript
28
star
28

vim-undoreplay

🎥 replay your edit
Vim Script
28
star
29

cachecmd

cache command!
Go
27
star
30

niconicomment.vim

📺 NicoNico like comments on Vim
Vim Script
27
star
31

vim-easyoperator-phrase

Select, yank, paste, delete, or other operation of phrase.
Vim Script
25
star
32

dotfiles

Vim Script
25
star
33

go-typeconv

Bring implicit type conversion into Go in a explicit way
Go
24
star
34

vim-open-googletranslate

Open Google Translate (https://translate.google.com/) from Vim.
Vim Script
23
star
35

vim-stacktrace

🔍 🐛 🐾 Stacktrace of Vim script
Go
20
star
36

vim-keeppad

🍵 Keep padding!
Vim Script
17
star
37

vim-migemo

Vim Plugin for C/Migemo
Vim Script
17
star
38

vim-signjk-motion

👞 j/k motion with Hit-A-Hint
Vim Script
12
star
39

misc

NewLisp
12
star
40

vim-go-client

[WIP] Vim 8.0 client written in go
Go
12
star
41

go-actions-toolkit

⚙️ (unofficial) Go implementation of actions/toolkit
Go
11
star
42

vim-gofmt

Formats Go source code asynchronously with multiple Go formatters.
Vim Script
11
star
43

incsearch-migemo.vim

Vim Script
10
star
44

hyperlink

Go
10
star
45

.vim

Vim Script
9
star
46

ghglob

ghglob is glob, or more like pattern matcher based on GitHub Actions's Filter pattern spec. [UNOFFICIAL]
Go
9
star
47

bump

bump returns next semantic version tag.
Shell
9
star
48

xtag

Finds latest release tag which matched with given tag with x wild card (a.k.a. xtag).
Shell
7
star
49

vim-ci-starterkit

Vim Script
7
star
50

vim-snoopy

snoop around the script-local things 🐶 🔎
Vim Script
6
star
51

revital.vim

Deprecated: please use vital.vim
Vim Script
6
star
52

tmpl

Template engine for CLI to format JSON data
Go
6
star
53

github-star-stats

JavaScript
5
star
54

unite-ghq

unite.vim interface for ghq
Vim Script
5
star
55

go-Intern-Machine-Learning

Go
5
star
56

incsearch-index.vim

[experimental] show searchindex incrementally
Vim Script
4
star
57

go-versionsort

Sort in natural version order like sort -V
Go
4
star
58

vital-string-interpolation

String interpolation library for vim
Vim Script
4
star
59

vim-textobj-number

Vim Script
4
star
60

offset

get file position from offset
Shell
4
star
61

vimdoc-marklet

Vimのhelpをブラウザで見るときの便利ブックマークレット
JavaScript
4
star
62

vim-print-debug

Vim Script
4
star
63

vim-auto-mkdir

Vim Script
4
star
64

vital-design-by-contract

🔮 Design by Contract in Vim script
Vim Script
4
star
65

vim-channel-server

Vim 8.0 server
Go
3
star
66

git-merge-sandbox

git-mergetoolを練習するサンドボックス
Vim Script
3
star
67

vital-hit-a-hint

Vim Script
3
star
68

vital-vim-syntax-echo

Vim Script
3
star
69

secretbox

secretbox provides utility wrapper of https://godoc.org/golang.org/x/crypto/nacl/secretbox
Go
2
star
70

git-mergetool-vimdiff-wrapper

git mergetool vimdiff wrapper
Shell
2
star
71

haya14busa.dev

HTML
2
star
72

git-note

2
star
73

action-docker-template

Docker container action template with release automation and reviewdog integration
Shell
2
star
74

alc-etm-searcher

Python
2
star
75

vital-exe-assert

🙋 Yet another assertion library for Vim script
Vim Script
2
star
76

vim-algorithms-and-data-structures

Vim Script
2
star
77

learning-programming-in-scala

コップ本
Scala
2
star
78

mjolvim-octotheme

Simple, Minimal, Beautiful theme for Octopress
CSS
2
star
79

aio-etm

Learn etymology using ALL IN ONE and online etymology dictionary
Python
1
star
80

vital-diff-parser

Vim Script
1
star
81

reading-vimplugin

Vimプラグイン読書会
CSS
1
star
82

chatgpt-discord-bot

JavaScript
1
star
83

hateburank

Go
1
star
84

hatebu-ranking-entries

Go
1
star
85

haya14busa-snippets

1
star
86

go-checkstyle

Go
1
star
87

vital-string-converter

Vim Script
1
star
88

vital-safe-string

Vim Script
1
star
89

gas-openskill

OpenSkill.js for Google Apps Script
JavaScript
1
star
90

haya14busa

haya14busa's public TODO list
1
star
91

tower-of-hanoi

Pythonでハノイの塔
Python
1
star
92

.peco

Shell
1
star
93

vital-snoop.vim

deprecated
Vim Script
1
star
94

viml-lint-string

Go
1
star
95

vim-hunk

Vim Script
1
star
96

github-actions-playground

Shell
1
star
97

clustabs

TypeScript
1
star
98

go-sarif

Go structs for the SARIF object model
Go
1
star
99

github-release-stats

WIP: GitHub Release Stats over time
Go
1
star
100

vital-vimlcompiler

Vim Script
1
star