zoukankan      html  css  js  c++  java
  • vim——黑暗时代的最强编辑器

     

    vim 文本换行

    gq{motion} % format the line that {motion} moves over
    {Visual}gq % format the visually selected area
    gqq        % format the current line
    gf    open file under current cursor

     VIM

    setlocal all
    setlocal   ...  Like ":set" but set only the value local to the current buffer or window. 
    setglobal  ...   Like ":set" bu set only the global value for a local option without changing the local value.
    
    For buffer-local and window-local options:
            Command                      global value                  local value
          :set option=value                 set                           set
     :setlocal option=value                  -                            set
    :setglobal option=value                 set                            -
         :set option?                      -                           display
     :setlocal option?                       -                           dispaly
    :setglobal option?                     display                         -
    

    VIM

    'formatoptions' 'fo'  string(Vim default: "tcq", Vi default: "vt")
                          local to buffer
    This is a sequence of letters which describes how automatic formatting is to be done.
    NOTE: This option is set to the Vi default value when 'compatible' is set and to the Vim default value when 'compatible' is reset.
    
    ls help
     u            an unlisted buffer (only displayed when [!] is used)
        %        the buffer in the current window
        #         the alternate buffer for ":e #" and CTRL-^
          a       an active buffer: it is loaded and visible
          h       a hidden buffer: It is loaded, but currently not displayed in a window
            -      a buffer with 'modifiable' off
            =     a read-only buffer
            ?      a terminal buffer without a job
              +    a modified buffer
              x    a buffer with read errors
    
    Unless I'm missing something, Vim already does that. If I highlight some text using the mouse or by typing v and moving the cursor, I see at the bottom of the screen
    
    -- VISUAL --                                        12
    
    set showcmd
    
    echo len("foo")
    echo strlen("foo")
    
    zf{motion} or {Visual}zf             Operator to create a fold.
                                                   This only works when 'foldmethod' is "manual" or "marker". The new fold will be closed for the "manual" method. 'foldenable' will be set.
    Also see |fold-create-marker|.
    
    zo                            Open one fold under the cursor. When a count is given, that many folds deep will be opened. In Visual mode one level of folds is opened for all lines in the selected area.
    
    zc                            Close one fold under the cursor. When a count is given, that many folds deep are closed. In Visual mode one level of folds is closed for all lines in the selected area. 'foldenable' will be set.
    

     VIM Search

    Multiple repeats                 multi-repeat
                                     :g  :global  E148
    
    :[range]g[lobal]/{pattern}/[cmd]
                                        Execute the Ex command [cmd] (default ":p") on the
                                        lines within [range] where {pattern} matches.
    
    :[range]g[lobal]!/{pattern}/[cmd]
                                        Execute the Ex command [cmd] (default ":p") on the
                                        lines within [range] where {pattern} does NOT match.
    
    :[range]v[global]/{pattern}/[cmd]
                                        Same as :g!
    
    Instead of the '/' which surrounds the {pattern}, you can use any other single
    byte character, but not an alphabetic character, '\', '"' or '|'.
    This is useful if you want to include a '/' in the search pattern or replacement
    string.
    

     VIM Echo

    :!echo %                        --> filename
                 The arguments of ":!" are expanded, see :_%
    :!echo "%"                      --> filename or 'filename"
                 Like the previous example. Whether you see the double
                 quotes or not depends on your 'shell'.
    :echo %                          --> nothing
                  The '%' is an illegal character in an expression.
    :echo "%"                       --> %
                  This just echoes the '%' character.
    :echo expand("%")          --> filename
                  This calls the expand() function to expand the '%'.
    
                                               filename-modifiers
    :_%   ::8   ::p   ::.   ::~  ::h  ::t  ::r  ::e  ::s  ::gs  ::S
        %:8  %:p  %:.  %:~  %:h  %:t  %:t  %:r  %:e  %:s  %:gs  %:S
    The file name modifiers can be use after "%", "#", "#n", "<cfile>", "<sfile>",
    "<afile>" or "<abuf>". They are also used with the fnamemodify() function.
    

    Bibliography

    http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html

    https://www.cs.swarthmore.edu/oldhelp/vim/silly.html

    https://gist.github.com/awidegreen/3854277

  • 相关阅读:
    20191317王鹏宇第四章学习笔记
    20191317王鹏宇2.3.1测试
    树莓派openeuler安装openssl及其实践
    树莓派实验指导第三章实验
    树莓派openeuler的安装以及ukui桌面的安装并安装远程桌面vnc
    20191317王鹏宇鲲鹏服务器测试
    反汇编测试
    信息安全系统设计与实现第八周:《Unix/Linux系统编程》第五章学习笔记
    团队作业三
    信息安全系统设计与实现第七周:《Unix/Linux系统编程》第四章学习笔记
  • 原文地址:https://www.cnblogs.com/anyboo/p/2660353.html
Copyright © 2011-2022 走看看