Vim icon indicating copy to clipboard operation
Vim copied to clipboard

`:cur[sor]`

Open elazarcoh opened this issue 3 years ago • 1 comments

What this PR does / why we need it: Add cursors by search pattern. fixes #7152 Can add cursor at a specific location using special indicator. Currently I'm using \#.

Feature: Consider this example: (cursor indicated by |)

def foo():
|def bar(): 
def bizbaz():
def moo():
  1. :cur def (all matches)
    |def foo():
    |def bar():
    |def bizbaz():
    |def moo():
    
  2. :cur 2 def (limit number of matches)
    def foo():
    |def bar():
    |def bizbaz():
    def moo():
    
  3. :cur de\#f (at specified location)
    de|f foo():
    de|f bar():
    de|f bizbaz():
    de|f moo():
    
  4. :cur \#de\#f (multiple cursor)
    |de|f foo():
    |de|f bar():
    |de|f bizbaz():
    |de|f moo():
    
  5. :cur def \w+\# (using regex)
    def foo|():
    def bar|():
    def bizbaz|():
    def moo|():
    
  6. vj :'<,'>cur def (in selection range)
    def foo():
    |def bar():
    |def bizbaz():
    def moo():
    

Edit: Added cursor from current word/selection in case of empty pattern

  1. :cur (select current word as pattern)
    |def foo():
    |def bar():
    |def bizbaz():
    |def moo():
    
  2. :cur 2 (select current word as pattern, with limit)
    def foo():
    |def bar():
    |def bizbaz():
    def moo():
    
  3. lvll:'<,'>cur 2 (the selection is used for pattern, similar to * in visual mode)
    def foo():
    d|ef bar():
    d|ef bizbaz():
    def moo():
    

Which issue(s) this PR fixes

Special notes for your reviewer:

elazarcoh avatar Feb 16 '22 08:02 elazarcoh