vi查看制表符


在VC中编辑->高级菜单中有个“查看空白”,我总是打开的。
它将TAB制表符显示为箭头,空格显示为点号,颜色较浅,不影响阅读。
这样就可以发现空格和TAB的混用,以及行尾的空格。

在VI中,也有类似功能,可以查看TAB及行尾空格。
如下设置:
set list
set listchars=tab:>-,trail:-

set list是设置显示TAB,默认是用^I填充TAB。
listchars选项用来设置TAB和行尾空格的显示。
详见vi帮助:VIEWING TABS

有了查看空格的设置,makefile中反斜杠'/'分隔多行时,
行尾空格造成的错误就能看到了。

(金庆的专栏)

<think>我们讨论的是在vi编辑器中查看Python文件中的隐藏字符(如空格、制表符、换行符等)。在vivim中,可以通过设置选项来显示这些隐藏字符。 在vi/vim中,显示隐藏字符的常用方法: 1. 使用 `:set list` 命令:将隐藏字符以特定符号显示(默认情况下,制表符显示为“^I”,行尾显示为“$”)。 2. 可以通过 `:set listchars` 自定义显示符号。例如: :set listchars=tab:>-,trail:-,eol:$ 这会将制表符显示为“>---”(一个制表符由多个字符表示),行尾空格显示为“-”,行尾显示为“$”。 3. 若要永久生效,可以将这些设置添加到vim配置文件(~/.vimrc)中。 步骤: 1. 用vi打开文件:`vi filename.py` 2. 在命令模式下(按ESC键进入),输入: :set list 这样隐藏字符就会显示出来。 3. 要关闭显示,输入: :set nolist 另外,也可以使用cat命令的选项来查看文件中的隐藏字符(虽然不在vi中,但也是一个方法): cat -A filename.py 这将显示所有字符,包括隐藏字符(制表符显示为^I,行尾显示为$,等等)。 但是,用户明确要求使用vi查看,所以我们重点介绍vi的方法。 另外,引用[3]提到在Python文件中加入中文可能会遇到的编码问题,但这不是查看隐藏字符的问题,所以暂时不涉及。 根据引用[1]提到的在Python脚本中调用vi的方法,如果用户需要在Python脚本中打开vi显示隐藏字符,可以在调用vi之前设置环境变量或传递命令参数?但通常是在vi内部设置。 因此,如果用户想在Python脚本中调用vi并自动显示隐藏字符,可以在调用vi时通过-c选项传递命令: import subprocess subprocess.call(['vi', '-c', 'set list', 'filename.py']) 这样,vi启动后会立即执行'set list'命令,从而显示隐藏字符。 总结回答: 1. 打开文件后,在命令模式下输入`:set list`显示隐藏字符。 2. 可以自定义显示符号(使用listchars)。 3. 如果希望在每次打开vi时自动显示,可将设置加入~/.vimrc。 注意:在vi中,默认的显示方式可能不够直观,所以自定义符号会更友好。 相关问题: 1. 如何在vim中永久设置显示隐藏字符? 2. 如何用cat命令查看文件中的隐藏字符? 3. 如何自定义vim中制表符和空格的显示符号? 4. 在vim中如何同时显示行号? 5. 如何在Python脚本中调用vim并自动执行多个命令? </think>### 在vi查看Python文件隐藏字符的方法 在vi编辑器中查看Python文件的隐藏字符(如空格、制表符、换行符等),可通过以下步骤实现: #### 方法1:开启特殊字符显示模式 ```vim " 在vi命令模式下执行 :set list ``` - 效果: - 制表符显示为 `^I` - 行尾符显示为 `$` - 换行符显示为换行+`$` - 示例: ``` def test():$ print("Hello")^I# 注释$ ``` #### 方法2:自定义显示符号 ```vim " 在~/.vimrc配置或vi命令模式执行 :set listchars=tab:▸\ ,trail:·,eol:¬ :set list ``` - 效果: - `tab:▸`:制表符显示为 `▸` - `trail:·`:行尾空格显示为 `·` - `eol:¬`:换行符显示为 `¬` - 示例: ``` import os¬ path = "/usr"▸▸▸# 路径¬ ``` #### 方法3:二进制模式查看 ```vim " 以二进制模式打开文件 vi -b filename.py " 在vi中启用十六进制显示 :%!xxd ``` - 效果: - 显示所有字符的十六进制值 - 空格显示为 `20` - 制表符显示为 `09` - 换行符显示为 `0a` #### 方法4:语法高亮增强 在 `~/.vimrc` 添加: ```vim " 高亮显示行尾空格 highlight ExtraWhitespace ctermbg=red guibg=red match ExtraWhitespace /\s\+$/ " 高亮显示制表符 syn match Tab /\t/ hi Tab ctermbg=blue guibg=blue ``` 效果:行尾空格显示为红色背景,制表符显示为蓝色背景[^3] #### 临时关闭显示 ```vim :set nolist " 关闭特殊字符显示 :set paste " 粘贴模式(临时禁用自动缩进) ``` ### 注意事项 1. 配置持久化:将 `set listchars` 和语法高亮设置添加到 `~/.vimrc` 可使配置永久生效 2. Python缩进:建议用空格代替制表符,避免混用导致缩进错误 3. 编码问题:若文件含中文,需确保编码正确(如 `# -*- coding: utf-8 -*-`)[^3] ### 相关问题 1. 如何在VSCode中显示Python文件的隐藏字符? 2. vi如何批量替换文件中的制表符为空格? 3. 如何检测Python文件中的混合缩进问题? 4. 有哪些工具可以自动清理Python文件的隐藏字符? 5. 在Linux终端如何直接显示文件的隐藏字符?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值