国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

VIM工程的編譯 / VI的快捷鍵記錄

這篇具有很好參考價值的文章主要介紹了VIM工程的編譯 / VI的快捷鍵記錄。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

VIM工程的編譯 / VI的快捷鍵記錄

概述

裝了debain12.4, 用VI的時候, 只是簡單的用. 感覺不順手.
去查VI的快捷鍵, 不同資料雖然說的大概相同,但是細節(jié)說的不一樣.

就想去看看對應的源碼, 看看代碼里面怎么說, 畢竟代碼是不會騙人的.
沒有一個集成環(huán)境, 不好看代碼. 好多main(), 不知道看哪個…
用IDA看, 是從VimMain()開始的. 由于沒有一個舒服的IDE環(huán)境來單步, 看著也不方便(最主要的是, 如果不能單步調試, 邏輯是看不出來的).
VIM工程的編譯 / VI的快捷鍵記錄,vi,計算機維護,linux,vi

認慫了, 還是得看vi軟件本身帶的幫助.

筆記

在debian12.4下, 沒有vim, 只有vi.

lostspeed@debian12d4x64:~$ type vim
bash: type: vim: 未找到
lostspeed@debian12d4x64:~$ which vim
lostspeed@debian12d4x64:~$ 

lostspeed@debian12d4x64:~$ type vi
vi 已被錄入哈希表 (/usr/bin/vi)
lostspeed@debian12d4x64:~$ which vi
/usr/bin/vi

查看vi版本

lostspeed@debian12d4x64:~$ vi --version -a
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled May 04 2023 10:24:44)
Included patches: 1-1378, 1499
Modified by team+vim@tracker.debian.org
Compiled by team+vim@tracker.debian.org
Tiny version without GUI.  Features included (+) or not (-):
+acl               +file_in_path      -mouse_urxvt       -tcl
-arabic            -find_in_path      +mouse_xterm       -termguicolors
+autocmd           +float             +multi_byte        -terminal
-autochdir         -folding           -multi_lang        +terminfo
-autoservername    -footer            -mzscheme          +termresponse
-balloon_eval      +fork()            -netbeans_intg     +textobjects
-balloon_eval_term -gettext           +num64             -textprop
-browse            -hangul_input      -packages          -timers
++builtin_terms    +iconv             +path_extra        +title
-byte_offset       +insert_expand     -perl              -toolbar
-channel           -ipv6              -persistent_undo   +user_commands
+cindent           -job               -popupwin          -vartabs
-clientserver      +jumplist          -printer           +vertsplit
-clipboard         -keymap            -profile           +vim9script
+cmdline_compl     -lambda            -python            -viminfo
+cmdline_hist      -langmap           -python3           +virtualedit
+cmdline_info      -libcall           -quickfix          +visual
+comments          -linebreak         -reltime           +visualextra
-conceal           +lispindent        -rightleft         +vreplace
-cryptv            +listcmds          -ruby              +wildignore
-cscope            +localmap          +scrollbind        +wildmenu
+cursorbind        -lua               -signs             +windows
-cursorshape       -menu              +smartindent       +writebackup
-dialog            -mksession         -sodium            -X11
-diff              +modify_fname      -sound             +xfontset
-digraphs          +mouse             -spell             -xim
-dnd               -mouseshape        -startuptime       -xpm
-ebcdic            -mouse_dec         -statusline        -xsmp
-emacs_tags        -mouse_gpm         -sun_workshop      -xterm_clipboard
-eval              -mouse_jsbterm     -syntax            -xterm_save
+ex_extra          -mouse_netterm     +tag_binary        
-extra_search      +mouse_sgr         -tag_old_static    
-farsi             -mouse_sysmouse    -tag_any_white     
   system vimrc file: "/etc/vim/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -Wdate-time -g -O2 -ffile-prefix-map=/build/vim-JA6Vy9/vim-9.0.1378=. -fstack-protector-strong -Wformat -Werror=format-security -DSYS_VIMRC_FILE=\"/etc/vim/vimrc\" -DSYS_GVIMRC_FILE=\"/etc/vim/gvimrc\" -DTINY_VIMRC -DSYS_TINYRC_FILE=\"/etc/vim/vimrc.tiny\" -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 
Linking: gcc -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o vim -lSM -lICE -lXt -lX11 -lXdmcp -lSM -lICE -lm -ltinfo -lselinux -lacl -lattr 

可以看到debian12.4中用的VI就是VIM, 版本為 vim9.0-1499
去下載vim源碼 https://github.com/vim/vim.git
遷出到本地, 切到9.0-1499版本
VIM工程的編譯 / VI的快捷鍵記錄,vi,計算機維護,linux,vi

工程的編譯

參考 INSTALLpc.txt

工程的編譯 - 命令行vim

打開vs2019本地x64命令行
cd /d D:\3rd_prj\text_edtor\vim\src
nmake -f .\Make_mvc.mak

VIM工程的編譯 / VI的快捷鍵記錄,vi,計算機維護,linux,vi
VIM工程的編譯 / VI的快捷鍵記錄,vi,計算機維護,linux,vi

工程的編譯 - GUI版vim

打開vs2019本地x64命令行
cd /d D:\3rd_prj\text_edtor\vim\src
nmake -f .\Make_mvc.mak GUI=yes

VIM工程的編譯 / VI的快捷鍵記錄,vi,計算機維護,linux,vi
VIM工程的編譯 / VI的快捷鍵記錄,vi,計算機維護,linux,vi

備注

看了vim的Make_mvc.mak的歷史記錄, 人家真是手寫出來的.

現(xiàn)在VS2017, VS2019只支持CMake的模板工程, 已經(jīng)不支持MakeFile(nmake)的工程向導模板了.
如果是老工程, 只能用nmake來編譯Makefile.mk, 在源碼工程中單步就成問題了.

如果有剛需, 可以自己按照Make_mvc.mak的包含關系, 構造一個VS的工程.
如果只是想玩一玩, 花這個時間就不值當了.

VIM的幫助文件位置

\vim\runtime\doc\ *.txt 都是幫助文件相關的.
進入vim中, 按F1 或者 :help 顯示的都是 \vim\runtime\doc\ *.txt

vim各種快捷鍵, 看著頭疼, 還是簡單的用一下吧.

VIM官方教程

將 vim\vimtutor.bat 拷貝到 vim\src\vimtutor.bat
運行 vim\src\vimtutor.bat, 就出現(xiàn)教程
VIM工程的編譯 / VI的快捷鍵記錄,vi,計算機維護,linux,vi
按照教程走, 30分鐘就能初步使用vim.

這個教程挺好的, 就是看著教程走, 按照教程操作看到的教程文本, 很自然, 在使用中學習vim的使用.
這個教程的目的是讓使用者將vim當作普通編輯器來用.

vim 常用快捷鍵

將教程中說的, 摘錄一下. 覺得不適合自己現(xiàn)狀的操作, 就不摘錄了.

vi中的單詞使用空格分開的, 對于中文連在一起, 是算一個單詞的.
對于中文文檔, 最好不要按照單詞來操作. 刪掉一個單詞, 就等于刪掉了一句話

啟動vi時, 指定要編輯哪個文件

vi xx_file.txt

正常模式

不管處于任何模式, 只要按一下ESC鍵, 就回到了正常模式.
只有在正常模式下, 才可以輸入命令來讓vim干活.

光標的移動

hjkl 這4個鍵管著上下左右移動的光標移動, 不用死記, 如果移動方向不是自己想要的, 就這4個鍵, 自己試試就行, 直到可以將光標移動到自己想要的位置.

退出不保存

:q!

退出保存

:wq

只保存不退出

:w

另存到指定文件

:w file_save_to

移動到行首

0

移動到行尾

$

刪除一個字符

x

刪除單詞

移動光標到單詞的首字母, 然后按下 dw

刪除到單詞結尾

de

刪除到行尾

d$

刪除整行(剪切整行到剪貼板)

dd

在本行的下面一行粘貼

p

刪除N行

Ndd

撤銷(undo)

u

重做(redo)

CTRL + R

進入插入模式

i

替換一個字符

先輸入r, 進入替換模式, 然后輸入一個字符后, 替換了原來的字符, 自動進入正常模式

進入附加模式

a

從當前光標開始刪除到單詞尾部, 并進入編輯模式

ce
對于中文, 不存在單詞這一說, ce就是將光標后的整句話都刪除了.
如果不是以空格為分隔的內容, 不要用ce來操作.
如果是中文文章, 就用x就行, 一次就刪除一個字符. 如果要刪除多個字符, 就Nx

從當前光標開始刪除到行尾, 并進入編輯模式

c$

顯示當前行列位置

CTRL + G

跳到文件結尾

G

跳到指定行

NG

跳到文件開頭

gg

查找時忽略大小寫

如果不忽略大小寫, 大概率查找時, 找不到東西.
因為我們只知道內容, 不知道內容的大小寫. e.g. linux配置文件中的關鍵字

:set ic

查找(搜索)

:/xx_to_find
n 和 N 是查找下一個, 只是查找方向不同, 一般就用n來查找下一個就行

逆向查找

:?xx_to_find

在查找過程中導航

CTRL + O 回上一個呆過的地方.
CTRL + I 去下一個呆過的地方

匹配括號(大{},中[],小()括號就可以)

%

在VIM界面上, 執(zhí)行外部命令

:! xx_cmd
e.g. :! dir

復制/粘貼

將光標落在想要復制的內容上.
按下v, 進入拷貝模式, 然后移動光標到想要拷貝的內容結束的地方, 按下y, 進行拷貝.
然后將光標落在想要粘貼的地方, 按下p, 進行粘貼.

顯示行號

:set number

備注

VIM的操作命令, 遠不止官方教程這么少.
不過官方教程這些操作, 已經(jīng)讓我很煩了.

最多就是用VI在linux下簡單編輯一下配置文件, 如果沒看官方教程這么多, 用起來不順手.文章來源地址http://www.zghlxwxcb.cn/news/detail-822257.html

END

到了這里,關于VIM工程的編譯 / VI的快捷鍵記錄的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • vim 快捷鍵

    基本上 vi/vim 共分為三種模式,分別是普通模式(Command mode),輸入模式(Insert mode)和底線命令模式(Last line mode)。 這三種模式的作用分別是: 1、普通模式: 用戶剛剛啟動 vi/vim,便進入了普通模式。此狀態(tài)下敲擊鍵盤動作會被Vim識別為普通命令,而非輸入字符。比如我

    2024年02月05日
    瀏覽(34)
  • 5-Linux操作系統(tǒng) vi/vim編譯器

    5-Linux操作系統(tǒng) vi/vim編譯器

    一、vi編譯器介紹 ??Vi編輯器是所有Unix及Linux系統(tǒng)下標準的編輯器,類似于windows系統(tǒng)下的notepad(記事本)編輯器,由于在Unix及Linux系統(tǒng)的任何版本,Vi編輯器是完全相同的,因 此可以在其他任何介紹vi的地方都能進一步了解它,Vi也是Linux中最基本的文本編輯器,學會它后,

    2024年02月08日
    瀏覽(31)
  • Vim快捷鍵及使用技巧

    ● 普通模式:打開文件時的默認模式,在其他模式下按下ESC鍵都可返回到該模式。 ● 插入模式:按i/o/a鍵進入該模式,進行文本編輯操作,不同之處在于插入字符的位置在光標之前還是之后。 ● 命令行模式:普通模式下輸入冒號(:)后會進入該模式,在該模式下輸入命令

    2024年02月10日
    瀏覽(28)
  • vim多文件切換快捷鍵設置

    vim多文件切換快捷鍵設置

    vim中在打開多個文件時,會有多個文件進行切換的需求。按:bn切換到下一個文件,按:bp切換到上一個文件。 為了便捷操作,將切換命令設置成快捷鍵。 進入/home/yys個人目錄下,vim .vimrc進入vimrc文件。 注意:yys是我個人設置的的賬號名稱,每個人的名稱會不一樣! 在vimrc文件

    2024年02月12日
    瀏覽(22)
  • Vim 光標跳轉行尾快捷鍵

    在Vim中,你可以使用以下方法跳轉到文件的末尾: 普通模式下,按下 Shift + G :這會將光標直接跳轉到文件的最后一行。 命令模式下,輸入 :$ :這會將光標定位到最后一行。 普通模式下,按下 Shift + g ,然后輸入行號和 G :這會將光標跳轉到指定行號的行,其中行號為文件

    2024年02月15日
    瀏覽(19)
  • Linux Vim撤銷和恢復撤銷快捷鍵

    Linux Vim撤銷和恢復撤銷快捷鍵

    使用 Vim 編輯文件內容時,經(jīng)常會有如下 2 種需求: 對文件內容做了修改之后,卻發(fā)現(xiàn)整個修改過程是錯誤或者沒有必要的,想將文件恢復到修改之前的樣子。 將文件內容恢復之后,經(jīng)過仔細考慮,又感覺還是剛才修改過的內容更好,想撤銷之前做的恢復操作。 基于這 2 種

    2024年04月26日
    瀏覽(23)
  • 【硬件記錄】烽影青軸機械鍵盤的燈光控制鍵 如何設置?如何設置鍵盤 跑馬燈特效?附:烽影RGB三代快捷鍵 | 【SCI】計算機/期刊 論文中的 Preliminaries作為目錄,一般表示什么意思?

    ? 李白:任世人厭我、妒我、恨我、愛我、笑我、哭我,我只當風曾來過。 ? ??作者主頁: 追光者♂?? ???????? ??個人簡介: ? ??[1] 計算機專業(yè)碩士研究生?? ? ??[2] 2022年度博客之星人工智能領域TOP4?? ? ??[3] 阿里云社區(qū)特邀專家博主?? ? ??[4] CSDN-人工智能領

    2024年02月02日
    瀏覽(54)
  • 【vim 學習系列文章 19 -- 映射快捷鍵調用兩個函數(shù) A 和B】

    請閱讀 【嵌入式開發(fā)學習必備專欄 之 Vim】 在 Vim 中,如果想通過按下 gcm 來調用兩個函數(shù),比如 FunctionA 和 FunctionB ,需要先定義這兩個函數(shù),然后創(chuàng)建一個映射。這個映射將會在被觸發(fā)時依次調用這兩個函數(shù)。 首先,確保 .vimrc 文件中包含了這兩個函數(shù)的定義,以及一個用

    2024年04月13日
    瀏覽(24)
  • vim 使用/進行關鍵字搜索,跳轉到下一個搜索結果的快捷鍵

    在命令行中使用 `/` 或 `?` 向下或向上搜索指定的字符,字符可手動輸入 或 粘貼指定寄存器里的字符輸入。通過 ` n ` 或 ` N ` 繼續(xù) 原方向 或 反向跳 轉到下一個匹配到的位置。 此外還可以同時進行多個匹配()的搜索,不同匹配項之間使用` | `隔開即可。只要找到滿足這

    2024年02月10日
    瀏覽(93)
  • blender的快捷鍵記錄

    按鍵 作用 備注 R 旋轉物體 移動、旋轉或縮放物體時,按下X、Y或Z鍵:按X、Y或Z軸方向移動、旋轉或縮放 S 縮放物體 G 移動物體 TAB鍵 切換為編輯模式 CTRL + A 彈出應用菜單 物體模式旋轉縮放后應用旋轉與縮放,再進入編輯模式 SHIFT + 鼠標右鍵 移動游標位置 SHIFT + D 復制物體

    2024年02月12日
    瀏覽(15)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包