最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

oeasy教您玩轉vim - 21 - 狀態(tài)橫條

2021-08-19 11:26 作者:oeasy  | 我要投稿

狀態(tài)橫條

回憶上節(jié)課內容??

  • 我們上次研究了標尺

  • 標尺

    • 開啟 se ru

    • 關閉 se noru

  • 行號

    • 開啟 se nu

    • 關閉 se nonu

  • 命令位置

    • 開啟 se showcmd

    • 關閉 se noshowcmd

  • 跳轉

    • 用29G跳轉行號

    • 用19|跳轉列號

    • 用29%跳到整個文件 29% 的位置

準備環(huán)境

# 下載素材git clone http://github.com/overmind1980/vimtutorial.git#進入目錄cd vimtutorial#還是從最簡單的vim開始設置起vi -u NONE oeasy.java

設置光標行

  • 來看一個開關option

  • 光標行 cursorline

    • 光標 cursor

    • line

  • :set cursorline

  • h 'cursorline'

    • cursorline 加了單引號

    • 說明 cursorline 是一個屬性 option

設置光標列

  • 有行就有列

  • 光標行 cursorcolumn

    • 光標 cursor

    • column

  • :set cursorcolumn

  • h 'cursorcolumn'

    • cursorcolumn 加了單引號

    • 說明 cursorcolumn 是一個屬性 option

改變底下的狀態(tài)橫條

  • 有了行列位置

  • 再配合標尺ruler

  • 光標位置就很明確了

  • :h ruler 的時候

  • 偶然發(fā)現了一個新天地 statusline

    • statusline 意思是狀態(tài)橫條

    • 在倒數第 2 行

    • statusline 也是一個可以 set 的東西

    • 我們來查看一下手冊

    • :h statusline

    • 好像可以直接給 statusline 賦值

    • 我直接賦一個 oeasy

  • :set statusline=oeasy

  • 然后還需要設置 laststatus

    • 設置 laststatus = 0,不顯式狀態(tài)行

    • 設置 laststatus = 1,僅當窗口多于一個時,顯示狀態(tài)行

    • 設置 laststatus = 2,總是顯式狀態(tài)行

  • :set laststatus=2

statusline上可以放什么呢?

  • :h 'statusline'

顯示屬性

  • 除了字符串常量之外是否能顯示一些別的屬性呢?

    • 繼續(xù)翻幫助手冊

    • 找到相關的 items

    • 各種 items 有不同的屬性(數字、文本、標志)

    • 每個 item 對應一個字母

    • 這個字母需要通過 % 來進行轉義

    • F 對應文件名

  • :set statusline=[oeasy]%F

    • 此時,狀態(tài)條就顯示 [oeasy]當前文件名

標志屬性

  • 繼續(xù)翻看屬性

    • Flag 是標志位

    • m 是一個關于是否已經修改的標志位

    • %m 追加進入 statusline

  • :set statusline=[oeasy]%F%m

  • 修改文件后會顯示未保存的 [+]

    • 觀察效果

  • 保存后 [+] 會消失

    • 暗中觀察...

數值屬性

  • 查到狀態(tài)欄細節(jié)

    • N 代表 Number 代表 item 是一個數值類型

    • 行號 l、列號 c、百分比 p 都是數值類型

    • [、] 把數值型變量分開

    • %% 可以把 % 轉義顯示出來

  • :set statusline=[oeasy]%F%m[%l,%c]%p%%

  • 狀態(tài)欄數值還可以隨著光標變化??

控制寬度

  • 可以用格式來控制寬度

  • %-0{MinWidth}.{MaxWidth}{item}

  • %-040.40F就是用 40 的固定寬度顯示F

  • 如果超過范圍的話就會把前面部分隱藏

  • :set statusline=[oeasy]%-040.40F%m[%l,%c]%p%%

  • 一行總共 80 字符

  • 后面的部分怎么辦?

成組

  • 我們可以把行和列組成一個 items group

  • () 來封裝這個組

    • 標尺組的寬度固定為10

    • %(、) 進行轉義

    • :set statusline=%([%l,%c]%)

    • 這樣就可以統(tǒng)一設置這個標尺組的寬度

    • :set statusline=%-010.10([%l,%c]%)

  • 同理文件名和文件是否修改也可以編成一組

    • :set statusline=%(%F%m%)

最終整合

  • 最終整合總共分為三部分

    • 文件 %-040.40(%F%m%)

    • 標尺 %-030.30([%l,%c]%)

    • 比例 %p%%

  • 關于狀態(tài)橫條還有一個總開關

    • :set laststatus=0 關閉

    • :set laststatus=2 開啟

總結

  • 我們這次了解到了狀態(tài)橫條

    • 通過轉義表示 item

    • 控制 item 寬度的方法

    • item 成組的方法

    • 還有一個總開關 laststatus

  • 但是每次都要寫很長的一段話來配置很麻煩啊

  • 我們能否寫一個配置文件,讓 vim 每次自動配置好呢???

  • 下次再說 *


oeasy教您玩轉vim - 21 - 狀態(tài)橫條的評論 (共 條)

分享到微博請遵守國家法律
永州市| 侯马市| 凌源市| 简阳市| 永寿县| 宁波市| 花垣县| 北川| 格尔木市| 万载县| 钟山县| 平定县| 台山市| 开封县| 海伦市| 安平县| 湘潭市| 武功县| 玉田县| 资溪县| 姜堰市| 天等县| 保亭| 托克逊县| 宜宾市| 尚志市| 舞阳县| 吴川市| 祁阳县| 喀什市| 武宁县| 集贤县| 镇远县| 兖州市| 益阳市| 合水县| 旬邑县| 乌审旗| 左权县| 政和县| 越西县|