作者ric2k1 (Ric)
看板EE_DSnP
标题Re: [问题] 关於.txt档 (关於 vi 里面的 tab)
时间Wed Mar 25 21:50:10 2009
: → Trumen:老师那我再问一个 请问要怎麽把tab改成四个空白~~? 03/20 00:17
: 推 ric2k1:在 vi 底下: (1) vi youFile.txt 03/20 00:53
: → ric2k1:(2) :1, $ s/<tab>/ /g 03/20 00:54
: → ric2k1: (上面这个 <tab> 是要你按 tab 的意思) 03/20 00:54
: → Trumen:E486: 找不到 ^I <--跑出了这个讯息囧 03/23 16:33
: → Trumen::1, $ s/<tab>/ /g 请问老师左边的指令是一次打完吗? 03/23 16:34
: 推 ric2k1:找不到 ^I 表示内文中并没有 tab (tab = ^I)... 03/23 17:15
: → ric2k1:你有打 ":" 吗? 你确定内文中有 tab 吗? 03/23 17:16
: → ric2k1:可用 "cat -v -t -e yourFile" 确定是否有 tab 03/23 17:17
: → Trumen:喔喔我懂老师的意思了~~不过我是想要每次按tab他都是跳四格 03/24 14:40
: → Trumen:有没有办法说在按tab前就先设定好它会跳四格呢? 03/24 14:40
: → Trumen:改好了! 谢谢老师! 03/25 17:26
剪贴一下 vi 的 help.
For more information, you can do ":help set" when vi'ing any file.
Then do "/tab" (or /<anyString>) to search for the thing you want to see
in this help message.
至於 "set" 在 vi 里面的用法, 你可以:
1. 只针对某个正在 vi 的档案下指令
[例如]
:set softtabstop=3
:set shiftwidth=3
:set noexpandtab
2. 一劳永逸, 以後每次 vi 都适用:
在你的 home directory (i.e. cd ~) vi 一个档案 ".vimrc",
将你要设定的东西 (如上面那三行) 写入.
========================================================================
*'tabstop'* *'ts'*
'tabstop' 'ts' number (default 8)
local to buffer
Number of spaces that a <Tab> in the file counts for. Also see
|:retab| command, and 'softtabstop' option.
Note: Setting 'tabstop' to any other value than 8 can make your file
appear wrong in many places (e.g., when printing it).
There are four main ways to use tabs in Vim:
1. Always keep 'tabstop' at 8, set 'softtabstop' and 'shiftwidth' to 4
(or 3 or whatever you prefer) and use 'noexpandtab'. Then Vim
will use a mix of tabs and spaces, but typing Tab and BS will
behave like a tab appears every 4 (or 3) characters.
2. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use
'expandtab'. This way you will always insert spaces. The
formatting will never be messed up when 'tabstop' is changed.
3. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use a
|modeline| to set these values when editing the file again. Only
works when using Vim to edit the file.
4. Always set 'tabstop' and 'shiftwidth' to the same value, and
'noexpandtab'. This should then work (for initial indents only)
for any tabstop setting that people use. It might be nice to have
tabs after the first non-blank inserted as spaces if you do this
though. Otherwise aligned comments will be wrong when 'tabstop' is
changed.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.43.193
1F:→ ric2k1:不过请小心: 照上面那样做你在 vi Makefile 时就囧掉了... 03/25 21:52
2F:→ ric2k1:(OS: 把我的 tab 还给我 !!) 03/25 21:53
3F:推 timrau:法一:Ctrl-V <tab>以输入真正的\t 03/25 22:24
4F:→ timrau:法二:在~/.vimrc里写filetype indent on 03/25 22:24