You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Vim状态栏中显示wrap/nowrap选项值?

实现Vim状态栏显示wrap/nowrap状态的正确方法

你之前的命令set statusline +=%{execute(':set wrap')}无效的原因是:execute(':set wrap')是用来设置wrap选项的命令,而非获取它的当前状态。要在状态栏显示状态,需要读取选项的当前值并转换为可读文本。

具体实现方式如下:

  • 用Vim的选项引用语法&wrap获取wrap的当前状态(1代表开启,0代表关闭)
  • 结合Vim的三元表达式,将布尔值转为直观的文本:%{&wrap ? 'wrap' : 'nowrap'}
  • 将这段代码追加到你的statusline配置中

示例配置

如果还没有自定义过statusline,可以使用这个基础配置:

set statusline=%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P\ %{&wrap ? 'wrap' : 'nowrap'}

如果已有statusline配置,仅追加状态显示部分即可:

set statusline+=\ %{&wrap ? 'wrap' : 'nowrap'}

说明

  • &wrap:直接引用wrap选项的当前值
  • ? ::Vim的条件表达式,实现"如果开启显示wrap,否则显示nowrap"的逻辑
  • \ :添加空格,让状态栏内容的分隔更清晰

配置完成后,执行:set wrap或:set nowrap,就能看到状态栏同步显示对应的状态文本了。

内容的提问来源于stack exchange,提问作者Jim Bollinger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 17:01:08