VimChina 发表于 2004-4-11 08:34:52

Vim 不能自动缩进和高亮显示代码

写shell脚本的时候不能自动缩进,也不能高亮显示代码。
以前的1.1 Final也不能自动缩进。
是我的Vim少了什么文件吗? :?:

------------------------------------------------------------------------------
问题的解决办法(根据兄弟们的回帖整理):
打开你的home目录下的.vimrc文件,加上下面两行内容(如果没有这个文件,就自己建一个):
syntax on
set autoindent

其中" syntax on "是语法加亮模式开启
set autoindent是自动缩进
另,如果你想让VIM显示行号,再加上这一句:
set number

不过我再1.2 pre6里的konsole里使用Vim的时候,不能自动缩进和高亮显示,文本模式下使用Vim时没有问题。

------------------------------------------------------------------------------

jin_liu 发表于 2004-4-11 09:25:49

Re: Vim 不能自动缩进和高亮显示代码

写shell脚本的时候不能自动缩进,也不能高亮显示代码。
以前的1.1 Final也不能自动缩进。
是我的Vim少了什么文件吗? :?:
Sorry I am not sure,maybe you try:
add the followingto the file $HOME/.vimrc(if it doesn'texist,just create)
syntax on

樱家冢 发表于 2004-4-11 10:18:35

:set syntax on
that will be ok.
If still can't, try to run vim instead of vi.

VimChina 发表于 2004-4-11 11:23:31

I created the .vimrc file:

--------------------------
set syntax on
set number
-------------------------
but there is something wrong :

jin_liu 发表于 2004-4-11 11:29:50

I created the .vimrc file:

--------------------------
set syntax on
set number
-------------------------
but there is something wrong :
And it's OK now ?? :mrgreen:

VimChina 发表于 2004-4-11 11:34:07

I created the .vimrc file:

--------------------------
set syntax on
set number
-------------------------
but there is something wrong :
And it's OK now ?? :mrgreen:
yeah ,it works well !
Thank you for your help !

VimChina 发表于 2004-4-11 12:55:59

发现还是不能自动缩进,郁闷 :-(

Veldrin 发表于 2004-4-11 15:43:28

:set autoindent

VimChina 发表于 2004-4-11 15:54:47

:set autoindent

Thanks !
It works well now !

jackey 发表于 2004-4-12 01:07:04

tell me how to make it works, so i can fix it later.

VimChina 发表于 2004-4-12 16:01:13

tell me how to make it works, so i can fix it later.
我已经在发问的第一帖上整理好了解决方法,请验收:mrgreen:


问题的解决办法(根据兄弟们的回帖整理):
打开你的home目录下的.vimrc文件,加上下面两行内容(如果没有这个文件,就自己建一个):
syntax on
set autoindent

其中" syntax on "是语法加亮模式开启
set autoindent是自动缩进
另,如果你想让VIM显示行号,再加上这一句:
set number

不过我再1.2 pre6里的konsole里使用Vim的时候,不能自动缩进和高亮显示,文本模式下使用Vim时没有问题。

yang97e 发表于 2004-5-17 12:14:57

如果 大家只是 用 C 语言

可以在 .vimrc中 加入

set cin

这样至少 C 的自动缩进是正常的

watercloud 发表于 2004-5-19 14:02:06

拷贝一份/usr/share/vim/vim61/vimrc_example.vim 到 ~/.vimrc即可。


我自己的如下:


" An example for a vimrc file.
"
" Maintainer:   Bram Moolenaar <[email protected]>
" Last change:2002 May 28
"
" To use it, copy it to
"   for Unix and OS/2:~/.vimrc
"             for Amiga:s:.vimrc
"for MS-DOS and Win32:$VIM\_vimrc
"         for OpenVMS:sys$login:.vimrc

" When started as "evim", evim.vim will already have done these settings.
if v:progname =~? "evim"
finish
endif

" Use Vim settings, rather then Vi settings (much better!).
" This must be first, because it changes other options as a side effect.
set nocompatible

" allow backspacing over everything in insert mode
set backspace=indent,eol,start

set shiftwidth=4
set tabstop=4

set autoindent          " always set autoindenting on
if has("vms")
set nobackup          " do not keep a backup file, use versions instead
else
set backup            " keep a backup file
endif
set history=50          " keep 50 lines of command line history
set ruler               " show the cursor position all the time
set showcmd             " display incomplete commands
set incsearch         " do incremental searching

" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries
" let &guioptions = substitute(&guioptions, "t", "", "g")

" Don't use Ex mode, use Q for formatting
map Q gq

" This is an alternative that also works in block mode, but the deleted
" text is lost and it only works for putting the current register.
"vnoremap p "_dp

" Switch syntax highlighting on, when the terminal has colors
" Also switch on highlighting the last used search pattern.
if &t_Co > 2 || has("gui_running")
syntax on
set hlsearch
endif

" Only do this part when compiled with support for autocommands.
if has("autocmd")

" Enable file type detection.
" Use the default filetype settings, so that mail gets 'tw' set to 72,
" 'cindent' is on in C files, etc.
" Also load indent files, to automatically do language-dependent indenting.
filetype plugin indent on

" For all text files set 'textwidth' to 78 characters.
autocmd FileType text setlocal textwidth=78

" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid or when inside an event handler
" (happens when dropping a file on gvim).
autocmd BufReadPost *
    \ if line("'\"") > 0 && line("'\"") <= line("$") |
    \   exe "normal g`\"" |
    \ endif

endif " has("autocmd")
colors evening

set cin
set bdir=~/.vimbk
function CloseWindow()
      let s:win_name="/dev/null"
      if s:win_name== "/dev/null"
                exec "close"
      endif
endfunction

function RunCmd(cmd)
      if a:cmd == ""
                return
      endif

      exec "w"
      exec "sp! /dev/null"
      exec "r! ".a:cmd ." 2>&1"
      exec "w"
      exec "normal \<C-W>J"
      exec "normal \<C-W>8-"
      normal gg
endfunction

function RunCurrentFile()
      let s:filename=argv(argidx())
      if s:filename == ""
                return
      endif
      call RunCmd("./".s:filename)
endfunction

map <F12> <ESC>:call RunCurrentFile()<CR>
map <F11> <ESC>:call CloseWindow()<CR>
map <F10> <ESC>:call RunCmd("make")<CR>

"set fileencoding=utf-8
"set encoding=utf-8

set encoding=gb2312



加了三个函数用来处理三个快捷键:
F12    运行当前打开的文件,并分割一个窗口存放输出结果
F11   关闭当前窗口
F10   运行make

另外需要建立一个~/.vimbk目录,用来存放备份文件。

watercloud 发表于 2004-5-19 21:47:37

我的另一个版本的.vimrc


# cat ~/.vimrc
source /usr/share/vim/vim62/vimrc_example.vim
set nobk
set ai
set cin
set encoding=gb2312
color darkblue
"set guifont=Terminal
set guifont=SimSun

"map <F12> <ESC>:sp /dev/null<CR>:r !perl thread3.pl<CR>:w<CR><C-w>J<C-w>8-gg
function CloseWindow()
      let s:win_name="/dev/null"
      if s:win_name== "/dev/null"
                exec "close"
      endif
endfunction

function RunCmd(cmd)
      if a:cmd == ""
                return
      endif

      exec "w"
      exec "sp! /dev/null"
      exec "r! ".a:cmd ." 2>&1"
      exec "w"
      exec "normal \<C-W>J"
      exec "normal \<C-W>8-"
      normal gg
endfunction

function RunCurrentFile()
      let s:filename=argv(argidx())
      if s:filename == ""
                return
      endif
      call RunCmd("./".s:filename)
endfunction

map <F12> <ESC>:call RunCurrentFile()<CR>
map <F11> <ESC>:call CloseWindow()<CR>
map <F10> <ESC>:call RunCmd("make")<CR>
页: [1]
查看完整版本: Vim 不能自动缩进和高亮显示代码