Vim常用快捷鍵--正常的學習曲線

来源:https://www.cnblogs.com/vant/archive/2018/09/26/9704492.html
-Advertisement-
Play Games

vim可能對於初學者不太友好,學習曲線有點陡,特此整理了較為平滑的學習曲線的學習快捷鍵的方式,包含最常用的快捷鍵,讓初學者領悟vim的優點,想要進階學習請查找其它更好的教程 正常模式:可以使用快捷鍵命令,或按:輸入命令行 插入模式:可以輸入文本,在正常模式下,按i、a、o等都可以進入插入模式 可視模 ...


vim可能對於初學者不太友好,學習曲線有點陡,特此整理了較為平滑的學習曲線的學習快捷鍵的方式,包含最常用的快捷鍵,讓初學者領悟vim的優點,想要進階學習請查找其它更好的教程

正常模式:可以使用快捷鍵命令,或按:輸入命令行

插入模式:可以輸入文本,在正常模式下,按i、a、o等都可以進入插入模式

可視模式:正常模式下按v可以進入可視模式, 在可視模式下,移動游標可以選擇文本按V進入可視行模式, 總是整行整行的選中ctrl+v進入可視塊模式


  1. h或退格 --左移一個字元
    l或空格 --右移一個字元
    j --下移一行
    k: --上移一行
  2. x --剪切(常用來刪除)游標下的字元
  3. r --替換游標處的字元
  4. yy 或 Y --複製整行文本
  5. y0 --從游標當前位置複製到行首
  6. y$ --從游標當前位置複製到行尾
  7. p --在游標之後粘貼
  8. P --在游標之前粘貼
  9. [n]dd --刪除(剪切)1(n)行
  10. d0 --刪除(剪切)當前位置到行首的內容
  11. d$ 或 D --刪除(剪切)當前位置到行尾的內容
  12. d --刪除(剪切)在可視模式下選中的文本
  13. [n]u --取消一(n)個改動
  14. ctrl + r --重做最後的改動
  15. :earlier 4m --回到4分鐘前
  16. :later 55s --前進55秒
  17. :w --保存修改
  18. :x --保存並退出
    wq --保存並退出
    ZZ --保存並退出
  19. :saveas newfilename --另存為
  20. gg --到文件頭部
  21. G --到文件尾部
  22. H --把游標移到屏幕最頂端一行
  23. M --把游標移到屏幕中間一行
  24. L --把游標移到屏幕最底端一行
  25. /something --在後面的文本中查找something
  26. ?something --在前面的文本中查找something
  27. n --向後查找下一個
  28. N --向前查找下一個
  29. ctrl+w ctrl+p: 切換到前一個視窗
  30. ctrl+w ctrl+w: 切換到下一個視窗
  31. ctrl+w ctrl+r:旋轉視窗的位置
  32. ~ --反轉游標所在字元的大小寫
  33. :! cmd 執行外部命令
  34. :!! 執行上一次的外部命令
  35. Vex --垂直分割,左目錄右編輯視窗
  36. Sex --水平分割,上目錄下編輯視窗
  37. :split(:sp) --把當前窗水平分割成兩個視窗
  38. :split filename --水平分割視窗,併在新視窗中顯示另一個文件
  39. :vsplit(:vsp) --把當前視窗分割成水平分佈的兩個視窗
  40. :only --只保留當前視窗,關閉其它視窗
  41. :set spell-開啟拼寫檢查功能
  42. :set nospell-關閉拼寫檢查功能

Vim源代碼地址:

https://github.com/vim/vim

參考資料:

http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html

歡迎訪問我的GitHub: github.com/Vant1032


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 題目介紹:現在輸入一組數據,寫入學生的考試分數。已知學生數為N,學生編號為1到N,且0<N<=30000,每個學生都有一個分數;操作數為M且0<M<5000。輸入第一行為N M,接下來是1行N列數據代表學生的初試分數,接下來是M行操作數據。已知操作有兩種,分為Q和U。一次操作的格式為 C A B,當 ...
  • 線性表是一種隨機存取的結構,和鏈表不同,鏈表順序存取的結構。但是,線性表是一種順序存儲的結構,而鏈表是鏈式存儲結構。兩者都是線性的,但區別不同。 進入主題: 1.假如有一串數據元素,要求刪除其中的重覆元素。 首先想到的是用兩層迴圈,第一層從第一個元素開始,第二層從第一層元素的下一個元素開始。 就是假 ...
  • 1、指令:<%@ 指令名 屬性名="值"%> 1) page:page指令告訴servlet容器,這是一個Jsp頁面 pageEncoding 指頁面文本的字元集編碼 contentType 告訴Browser 和Servlet端,要使用哪個格式哪個字元集進行解析 獨立的@page指令,可以使用im ...
  • 在分散式系統中,服務發生異常是很正常的現象。為了處理這類“例外”,可以採取不同的應對策略,斷路器模式即是其中一種方法。這個模式的主要特點是其可以阻斷失敗的級聯影響,不會因為一個服務的失敗導致其它關聯服務一併失敗。 在Spring Cloud生態系統中有Hystrix類庫可以提供這個模式的解決方案,而 ...
  • 調用windows的imm32.dll完成窗體接收輸入法功能. 代碼如下 public ImeComponent(Form from) { var handle = from.Handle; hIMC = ImmGetContext(handle); this.handle = handle; } ...
  • 程式源代碼Gitee項目地址:https://gitee.com/xiao_ge_ge/WordCount.git 一:介紹: 這次作業的主要任務: WordCount的需求可以概括為:對程式設計語言源文件統計字元數、單詞數、行數,統計結果以指定格式輸出到預設文件中,以及其他擴展功能,並能夠快速地處 ...
  • Ocelot簡易教程(四)之請求聚合以及服務發現 上篇文章給大家講解了Ocelot的一些特性並對路由進行了詳細的介紹,今天呢就大家一起來學習下Ocelot的請求聚合以及服務發現功能。希望能對大家有所幫助。 作者:依樂祝 原文地址:https://www.cnblogs.com/yilezhu/p/9 ...
  • 最新寫的一個介面需要接收json參數,然後序列化為實體類然後再進行後面的邏輯處理。因為json中鍵值對比較多,逐一去手寫實體中的每個屬性太麻煩,於是尋思是否有這樣的工具可以將json轉換為實體類。 經過一番的資料查找,發現Visual Studio 2015可以將json轉換為實體類(若已經知道該技 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...