oeasy教您玩轉vim - 63 - # window分屏

 

窗口window

回憶上次

  • 我們這次瞭解了緩衝區buffer
  • ls可以查看buffer
  • 如下是buffer緩衝的一些flag

    • + 有修改未保存內容
    • - 可修改標籤關閉
    • = 只讀緩衝區
    • a 活躍緩衝區
    • u 沒有在列表裏面的緩衝區
    • h 隱藏緩衝區
    • x 有讀取錯誤的緩衝區
    • % 當前緩衝區
    • #swap替換文件的緩衝區
  • 可以在buffer跳轉

    • 可以通過bn[ext],選擇下一個buffer
    • 可以用b[uffer1]b2進入指定的 buffer
    • 也可以用文件名,比如b[uffer] oeasy.txt
    • 可以用bf[irst],打開第一個buffer
    • 可以用bl[ast],打開最後一個buffer
  • 不保存也可以跳轉

    • 設置 hidden
  • 跳轉的時候自動保存

    • 設置 autowrite
  • 可以用大寫字母設置跨文件標記mark

    • mA 添加標記
    • 'A 跳轉到標記
  • 關於強行跳轉和保存退出

    • 強制退出當前窗口 :q!
    • 不保存強行退出所有buffer :qall!
    • 保存所有未保存的文件:wall
    • 全部保存並退出:wqall
  • vim中打開的兩個文件緩存buffer
  • 可以放到兩個窗口裏面同時查看嗎?🤔

查詢手冊

  • 查一下手冊:h window

圖片描述

  • 三者定位

    • 上次的 buffer緩存 是內存中的文件緩存
    • 這次的 window窗口 是打開 buffer 的一個視角
    • tab 標籤是 window窗口的集合
  • 我們可以

    • 通過:sp[lit]來上下切分窗口
    • 且切分了之後
    • 我們可以在一屏幕內同時看到第1行和第1000行
    • 切分出窗口之後可以用:q退出當前窗口
    • 這樣就又回到單一窗口的狀態

在此切分

圖片描述

  • :sp[lit]切分 窗口之後

    • 可以切換窗口
    • ctrl-w ctrl-k切換到當前窗口上面的窗口
    • ctrl-w ctrl-j切換到當前窗口下面的窗口
    • ctrl-w

      • 意味着window
    • ctrl-k、ctrl-j

      • 意味着切換的方向
  • 切分之後可以再次切分 :sp[lit]

    • 再次切換
    • ctr-w再ctrl-k

      • 切換到當前窗口上面的窗口
    • ctrl-w再ctrl-j

      • 切換到當前窗口下面的窗口

縱向切分

  • 我們現在位於中間的一層
  • :vsp[lit]

    • v的意思是 vertical 垂直方向
    • 於是就可以把這個 window 再垂直方向上進行切分
  • 在左右切換的時候,使用

    • ctrl-w再ctrl-h

      • 切換到當前窗口左面的窗口
    • ctrl-w再ctrl-l

      • 切換到當前窗口右面的窗口

圖片描述

退出窗口

  • 退出當前window窗口

    • :q
  • 強制退出當前window窗口不保存

    • :q!
  • 不保存強行退出所有

    • buffer :qall!
  • 保存所有未保存的文件

    • :wall
  • 全部保存並退出

    • :wqall

設置window顯示與隱藏

  • :on[ly]

    • 保留當前window,其餘的都hidden
  • :hide

    • 隱藏當前window
  • 如果:set autowrite

    • hidden的時候就自動保存

調整高度

圖片描述

  • 調整窗口 window 高度減小

    • 高度減小

      • ctrl-w -
    • 高度減小N

      • :res[ize] -N
  • 調整窗口 window 高度增大

    • 高度增大

      • ctrl-w +
    • 高度增大N

      • :res[ize] -N
  • 設置當前窗口高度值爲N

    • :res[ize] N
    • 或者直接在正常模式下

      • z15cr
  • 總共是 80*24

    • 看着分配
  • 窗口高度都統一

    • ctrl-w再=

調整窗口 window 寬度

圖片描述

  • 調整窗口 window 寬度減小

    • 寬度減小

      • ctrl-w <
    • 窗口 window 寬度減小N

      • :vertical res[ize] -N
  • 調整窗口 window 寬度增大

    • 寬度增大

      • ctrl+w >
    • 寬度增大N

      • :res[ize] -N
    • 設置當前窗口寬度值爲N

      • :vertical res[ize] N
  • 窗口高度寬度都統一

    • ctrl-w再=
  • 總共是 80*24

    • 還是得看着分配看着分配

狀態橫條

圖片描述

  • :set laststatus=0不用狀態橫條
  • :set laststatus=1有多個窗口的時候,最底下有一個狀態橫條
  • :set laststatus=0各窗口有各自的狀態橫條

快速終端

  • 可以用:terminal或者:ter切換到命令模式
  • 只有vim8以上的版本才支持
  • 可以試試不?

    • 看起來是單獨新建了一個進程
  • 如何上下切換 窗口 window ?

    • 快捷鍵
  • 如何切出 shell ?

    • 試試 exit 命令

圖片描述

  • 想要縱向分屏出shell?

    • :vertical terminal
    • :vert ter

總結

  • 我們這次瞭解了 窗口window
  • 窗口是用來裝 緩衝buffer
  • buffer 是在內存裏面載入的硬盤文件
  • 窗口的切分

    • :sp[lit] 水平切分
    • :vsp[lit] 垂直切分
  • 窗口的切換

    • ctrl-w再ctrl-k

      • 切換到當前窗口上面的窗口
    • ctrl-w再ctrl-j

      • 切換到當前窗口下面的窗口
    • ctrl-w再ctrl-h

      • 切換到當前窗口左面的窗口
    • ctrl-w再ctrl-l

      • 切換到當前窗口右面的窗口
  • 窗口的隱藏和全屏

    • :hid[e]可以隱藏當前窗口

      • 隱藏的windowbuffer不保存
      • 除非設置了autowrite
    • :on[ly]可以全屏當前窗口

      • 其他的窗口都進入:hide狀態
  • 'laststatus' 可以設置狀態橫條
  • :terminal 可以開啓終端
  • 這次主要就是window窗口,還挺方便
  • 尤其多文件操作
  • 這個還有什麼可玩的嗎?🤔
  • 下次再說 👋

[Github地址] (GitHub - overmind1980/oeasyvim: 這是oeasy製作的的一套關於vim的教程 可以在 https://www.lanqiao.cn/teacher/courses/2840 做實驗 邀請碼FJWYIMGB 本教程從0基礎開始,到精通vim配置,和高級命令。希望能讓vim是你的開發更高效。)
[Gitee地址] (overmind1980/oeasyvim)
[藍橋實驗樓 邀請碼FJWYIMGB] (oeasy 教您零基礎玩轉編輯神器 vim_Linux - 藍橋雲課)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章