×
Create a new article
Write your page title here:
We currently have 3,187 articles on s23. Type your article name above or create one of the articles listed here!



    s23
    3,187Articles
    (Redirected from VIvisualEdit)

    http://www.friedhoff.org/img/viemacspolice.png

    One of / The most popular console text editors in Unix / Linux.

    • i edit befor cursor
    • a edit after cursor
    • o edit new line befor cursor
    • O edit new line after cursor
    • r replace char
    • cw change word
    • dw delete word
    • x delete
    • 7x dlete 7 chars
    • dd delete line
      w write file
      wq write quit
      q! force quit
    • [Ctrl]+ ZZ quit writing if needed

    Use / [string] to search ( n for next)

    Use [Ctrl+V]  to enter escape codes
         Ie. [Ctrl+V] [backspace] makes a ^H (ie to use in .profile when you do a stty erase ^H)
    

     Character  
     h, j, k, l Left, down, up, right (, , , ) 
    
     Text  
     w, W, b, B Forward, backward by word 
     e , E End of word 
     ), ( Beginning of next, previous sentence 
     }, { Beginning of next, previous paragraph 
     ]], [[ Beginning of next, previous section 
     
    
     Lines  
     0, $ First, last position of current line 
     ^ First character of current line (ignore spaces) 
     +, - First character of next, previous line 
     n| Column n of current line 
     H Top line of screen 
     M Middle line of screen 
     L Last line of screen 
     nH n (number) of lines after top line 
    nL n (number) of lines before last line 
    
    
    Screens  
    [CTRL-F], [CTRL-B] Scroll forward, backward one screen 
    [CTRL-D] [CTRL-U] Scroll down, up one-half screen 
    [CTRL-E] [CTRL-Y] Show one more line at bottom, top of window 
    z [RETURN] Reposition line with cursor: to top of screen 
    z. Reposition line with cursor: to middle of screen 
    z- Reposition line with cursor: to bottom of screen 
    [CTRL-L] [CTRL-R] Redraw screen (without scrolling) 
    
    
    Searches  
    /pattern Search forward for pattern 
    ?pattern Search backward for pattern 
    n, N Repeat last search in same, opposite direction 
    /, ? Repeat previous search forward, backward 
    fx Search forward for character x in current line 
    Fx Search backward for character x in current line 
    tx Search forward for character before x in current line 
    Tx Search backward for character after x in current line 
    ; Repeat previous current-line search 
    ' Repeat previous current-line search in opposite direction 
    
    
    Line number  
    [CTRL-G] Display current line number 
    nG Move to line number n 
    G Move to last line in file 
    :n Move to line number n 
    
    
    Marking position  
    mx Mark current position as x 
    `x Move cursor to x 
    `` Return to previous mark or context 
    'x Move to beginning of line containing mark x 
    '' Return to beginning of line containing previous mark 
    
    
    Insert  
    i, a Insert text before, after cursor 
    I, A Insert text at beginning, end of line 
    o, O Open new line for text below, above cursor 
    
    
    Change  
    r Change character 
    cw Change word 
    cc Change current line 
    C Change to end of line 
    R Type over characters 
    s Delete character and substitute text 
    S Delete current line and substitute text 
    
    
    Delete, move  
    x Delete character 
    X Delete character before cursor 
    dw Delete word 
    dd Delete current line 
    D Delete to end of line 
    p, P Put deleted text after, before cursor 
    "np Put text from delete buffer number n after cursor (for last nine deletions)
     
    
    Yank  
    yw Yank (copy) word 
    yy Yank current line 
    "ayy Yank current line into named buffer a 
    p, P Put yanked text after, before cursor 
    "aP Put text from buffer a before cursor 
    
    
    Other commands  
    . Repeat last edit command 
    u, U Undo last edit; restore current line 
    J Join two lines 
    ex edit commands  
    :d Delete lines 
    :m Move lines 
    :co or :t Copy lines 
    :.,$d Delete from current line to end of file 
    :30,60m0 Move lines 30 through 60 to top of file 
    :.,/pattern/co$ Copy from current line through line containing pattern to end of file
     
    
    Exit Commands
    ZZ Write (save) and quit file 
    :x Write (save) and quit file 
    :wq Write (save) and quit file 
    :w Write (save) file 
    :w! Write (save) file (overriding protection) 
    :30,60w newfile Write from line 30 through line 60 as newfile 
    :30,60w>> file Write from line 30 through line 60 and append to file
     
    :w %.new Write current buffer named file as file.new 
    :q Quit file  
    :q! Quit file (overriding protection) 
    Q Quit vi and invoke ex 
    :e file2 Edit file2 without leaving vi 
    :n Edit next file 
    :e! Return to version of current file at time of last write (save) 
    :e# Edit alternate file 
    % Current filename 
    # Alternate filename 
    
    Command Line Options
    vi file Invoke vi editor on file
     
    vi file1 file2 Invoke vi editor on files sequentially 
    view file Invoke vi editor on file in read-only mode
     
    vi -R file Invoke vi editor on file in read-only mode 
    vi -r file Recover file and recent edits after system crash
     
    vi + file Open file at last line 
    vi +n file Open file directly at line number n
     
    vi +/pattern file Open file directly at pattern
     
    ex file Invoke ex editor on file from UNIX 
    
    

    lol[edit]

    ~$ vi
    ?
    File empty: Nothing to search
    help
    The default buffer ist empty
    Alt-Q
    q isn't a vi command
    Ctrl-Q
    alt-x
    alt-F4
    q
    q isn't a vi command
    ESC
    F10
    *reset knopf drück*
    
    :q!  (ohne speichern raus)
    


    VI cursor keys bug , ABCD instead of arrows[edit]

    If it happens to you that the cursor keys dont seem to work in Insert Mode anymore, but instead they insert the characters A,B,C and D, then use :set term=cons25 and read here http://www.vim.org/tips/tip.php?tip_id=550

    <jargon />

    remove empty lines[edit]

    :g/^$/d


    replace stuff with regex[edit]

    all of file

    :%s/word/new word/g
    

    from here to end of file

    :,$s/word/new word/g
    

    tabulate lines[edit]

    To add tabs to the beging of lines (no need to be at the begining of the line)

    :>
    

    Add tabs to the begining of the next 4 lines

    :,+3>
    

    Add tabs to lines 5 to 8

    :5,8>
    

    Add tabs to all lines

    :%>
    


    Guides & HowTos[edit]

    http://www.gentoo.org/doc/en/vi-guide.xml

    Tabbed vi / open multiple files[edit]

    If you open multiple files with vi(m) like vim *.txt you switch to the next file with :next or :wn.

    If you start vim with the -p switch vim -p *.txt you get a tab for each file. You can switch between tabs with gt or just :quit from a file and be automatically in the next file. :qa closes all tabs.

    Cookies help us deliver our services. By using our services, you agree to our use of cookies.

    Recent changes

  • MattisManzel • 21 hours ago
  • Vaxima • 1 day ago
  • Vaxima • 1 day ago
  • Vaxima • 1 day ago
  • Cookies help us deliver our services. By using our services, you agree to our use of cookies.