Jackson
  • 請先讀我
  • 目錄
  • LYNX INDOOR2
    • LYNX INDOOR 2
    • 歡迎
    • 讓我們開始吧
    • 01. 放置攝影機
    • 02. 攝影機供電
    • 03. 下載 TEND SECURE APP
    • 04. 啟動 TEND SECURE APP
    • 攝影機 LED 燈
    • 有限的兩年製造商的保修
  • Vim
    • 序
    • 安裝
    • 普通模式指令
      • 移動
      • 搜尋
      • {motion}
      • 視窗、標籤頁、緩衝區
      • 拼寫檢查器
      • 文件管理器
    • 可視模式
    • 插入模式指令
    • Ex命令模式指令
      • 自動補齊
      • [range] {address}
      • 視窗、標籤頁
      • 緩衝區
      • 暫存器
      • ex-flags
      • Quickfix
      • tags
      • 文件管理器
    • 終端模式
    • 搜尋模式指令
      • {pattern}
      • magic
    • 環境設定
      • 環境變數
      • 映射
      • try catch
      • autocmd
      • 編輯器高亮顏色
    • 設定 help 文件中文版
    • 交換文件
    • 比較檔案
      • 解決 git 衝突
    • 函數庫
    • 插件推薦
      • 代碼
        • vim-snippets
        • coc
          • coc-snippets
          • coc-phpls
          • coc-json
          • ccls
          • VimScript Language Server
          • coc-prettier
        • deoplete
        • ale
          • C
          • HTML
          • Javascript
        • tabnine
        • php-cs-fixer
        • NERD Comment
        • ctags
      • 外觀
        • Dracula
        • NERDTree
        • airline
        • css color
        • coc-explorer
        • purity
        • startify
        • vim-mundo
      • 插件管理器
        • vim-plug
        • 原生插件管理
        • Vundle
      • Git
        • vim-fugitive
        • gv.vim
      • 分析插件
      • surround
      • Auto Pairs
      • visual-star-search
      • vim-tmux-navigator
    • 什麼是 vimrc
      • 設定檔案配置
      • ftplugin
  • 終端
    • 序
    • bash 腳本
      • 基礎
      • 環境變數
      • 正規表示式
      • 參數
      • 常用內建指令
        • 輸出
        • 捕捉中斷
        • shell 選項
      • 條件判斷
      • 迴圈
      • 函式
      • Windows 上使用 bash
      • 更新 bash
    • 指令
      • bash
        • 程序
        • 使用者與群組
        • 分析網路,檢測並與網路介面卡進行互動
        • 查看檔案與目錄
        • 建立與修改檔案或目錄
        • 搜尋
        • 壓縮與打包
        • 備份
        • 重導向
        • 寄信
        • 操作終端機
        • 另外安裝的指令
          • jq JSON 剖析器
          • wget
      • zsh
        • alias
      • Linux
        • 排程
      • 目錄路徑
      • 萬用字元
    • tmux
      • 未進 tmux 的終端指令
      • 進入到 tmux 指令
      • 進入到 tmux 的快捷鍵
      • 命令提示指令
      • 配置 tmux
      • 插件推薦
        • 插件管理器
        • vim-tmux-navigator
    • 插件推薦
      • 外觀
        • Gogh
        • purity
        • Dracula
        • powerline
      • zsh
        • zsh-syntax-highlighting
        • zsh-autosuggestions
  • Git
    • 序
    • 常用指令
    • 切換帳號
  • 作業系統
    • kali
      • 快捷鍵
      • E: unable to locate package
      • 中文亂碼和中文輸入
      • 命令提示字元修改成 Windows 格式
    • mac os
      • 架站 MAMP
        • Apache
        • PHP
        • MySQL
        • phpMyAdmin
        • localhost https
    • Ubuntu
      • 安裝 PHP
      • 安裝 Nginx
  • AWS
    • 序
    • Amazon EC2
  • WordPress
    • localhost ftp 連線問題
    • 強制修改信箱帳號
    • bitnami 登入 Wordpress
  • 影片剪輯
    • 序
    • 自動生成字幕
  • 其它
    • 鍵盤符號中英文
Powered by GitBook
On this page
  • 說明
  • 每個映射命令包含的模式
  • 映射指令說明
  • 設定 Leader
  • 更改 leader
  • 設定遞迴映射語法
  • 設定避免遞迴映射語法
  • 刪除映射語法
  • 刪除一個映射
  • 刪除所有映射
  • 常用指令
  • 特殊按鍵

Was this helpful?

  1. Vim
  2. 環境設定

映射

說明

介紹映射的使用方式,這些指令都可以寫在設定檔裡。

:help index 查看內建按鍵綁定列表

:map {command} 查看 :map 指令 command 開頭的映射 例如: :map g 查看 :map g 開頭的映射

每個映射命令包含的模式

命令

一般

可視

選擇

插入

操作元等待

命令行

Lang-Arg

cmap

✓

imap

✓

lmap

✓

✓

✓

map

✓

✓

✓

✓

map!

✓

✓

nmap

✓

omap

✓

smap

✓

vmap

✓

✓

xmap

✓

後面每個映射指令都會使用前綴字加上映射指令 例如 刪除 map 指令為 unmap 刪除 nmap 指令為 nunmap 刪除 vmap 指令為 vunmap 以此類推

映射指令說明

語法

說明

{cmd}

如上表中的 map, nmap, vmap 等

{lhs}

映射鍵

{rhs}

映射鍵執行的功能

Leader

此為設定鍵值的變數,預設為 \

silent

要在定義一個映射時不在命令行上回顯該映射 可以使用 silent 作為第一個參數

例如:

:map <silent> ,h /Header<CR>

設定 Leader

預設 leader 為 \

更改 leader

:let mapleader = ","

如上 Leader 變成 ,

使用 leader 範例 :map <Leader>a i

輸入 \a 會變成 i 假如 Leader 變數為 \ i 為插入模式

若要加在 .vimrc 需在頂部新增 因為此設定只在定義後有效

若要設定為特殊字元,需要轉義

.vimrc
" 將 leader 設定為空白鍵
let mapleader = "\<space>"

設定遞迴映射語法

{cmd} {lhs} {rhs}

前面指定模式英文加上 map map, nmap, vmap...

舉例

:imap a b 插入模式輸入 a 輸出 b

:imap b a 插入模式輸入 b 輸出 a

因為遞迴的關係 輸入 a 會輸出 b 又因為輸入 b 會輸出 a 造成無限循環,導致設定失敗 這時就要用避免遞迴映射語法

設定避免遞迴映射語法

{cmd} {lhs} {rhs}

前面指定模式英文加上 noremap noremap, nnoremap, vnoremap...

舉例

:inoremap a b 插入模式輸入 a 輸出 b

:inoremap b a 插入模式輸入 b 輸出 a

因為避免遞迴的關係 輸入 a 會輸出 b 輸入 b 會輸出 a 兩者不互相影響

刪除映射語法

刪除一個映射

{cmd} {lhs}

前面指定模式英文加上 unmap unmap, nunmap ,vunmap...

舉例

:unnmap gq 刪除 gq 映射

刪除所有映射

:mapclear 清除所有映射

常用指令

:map 顯示映射指令表

:h key-notation 查看按鍵英文名稱

特殊按鍵

特殊按鍵的符號表

符號

按鍵

<bs>

退隔鍵

<cr> 或 <enter>

Enter 鍵

<del>

Delete 鍵

<down>

箭頭下

<end>

End 鍵

<esc>

Esc 鍵

<f1> ~ <f12>

F1 ~ F12 鍵

<home>

Home 鍵

<insert>

Insert 鍵

<nop>

無操作

<pagedown>

下翻鍵

<pageup>

上翻鍵

<right>

箭頭右

<space>

空白鍵

<tab>

Tab 鍵

<up>

箭頭下

Previous環境變數Nexttry catch

Last updated 4 years ago

Was this helpful?