Chinaunix首页 | 论坛 | 博客
  • 博客访问: 33212
  • 博文数量: 23
  • 博客积分: 920
  • 博客等级: 准尉
  • 技术积分: 225
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-22 20:03
文章分类
文章存档

2010年(23)

我的朋友

分类: LINUX

2010-09-12 13:12:32

配置完用vim编写程序代码就能自动对齐了 很方便呢

1.在终端输入gedit ~/.vimrc
2。在弹出的窗口中
粘帖上
set fileencodings=utf8,gbk,gb2312,cp936 "设置字符编码
"set fenc=utf8 "设置默认编码
set number "设置显示行号
syntax on     "语法高亮
set autoindent "设置自动对齐继承前一行的缩进方式
set cindent "使用c样式的缩进
set smartindent "设置智能对齐
set tabstop=4   "设置tab键为4空格
filetype on   "检文件的类型
filetype plugin on "载入文件类型插件
filetype indent on "为特定文件类型载入相关缩进文件
set wildmenu "增强模式中的命令行自动完成操作
set shiftwidth=4 "设置行之间交错时使用4空格
set showmatch     "设置高亮显示匹配的括号
set mouse=a     "设置鼠标可用
set cursorline "设置光标所在行显示高亮线
set hlsearch "搜索逐字符高亮
set incsearch

set ruler "在状态行上显示光标所在的位置的行号和列号
set cmdheight=2 "命令行(在状态行下)的高度,默认为1,这里为2

set iskeyword+=_,$,@,%,#,- "带有如下符号的单词不要被换行符分割

"set fillchars=vert:\ ,stl:\ ,stlnc:\ "在被分割的窗口中显示空白,便于阅读
"设置鼠标可用
set selection=exclusive
set selectmode=mouse,key
set report=0   "通过使用commands命令告诉我们哪一行修改过
"colorscheme torte "设置vim主题颜色

"----------------------------------
"模仿windows中的快捷键
"----------------------------------
vmap "yy
vmap "yp
vmap "yd
vmap ggvG$

"----------------------------------
"窗口操作的快捷键
"----------------------------------
nmap wv v "垂直分割当前窗口
nmap wc c "关闭当前窗口
nmap ws s "水平分割当前窗口


"设置的ctags的快捷键
set tags=tags;
set autochdir "自动在上一级目录中查找
let Tlist_Sort_Type="name" "按照名称排序
map :Tlist

"F5编译和运行C程序
map :call CompileRunGcc()
func! CompileRunGcc()
exec "w"
exec "!gcc % -o %<"
exec "! ./%<"
endfunc

"F6编译和运行C++程序
map :call CompileRunGcc()
func! CompileRunGcc()
exec "w"
exec "!g++ % -o %<"
exec "! ./%<"
endfunc

autocmd BufNewFile *.[ch],*.sh,*.cpp,*.C, exec ":call SetTitle()"
autocmd BufNewFile * normal G
func SetTitle()
if &filetype == 'sh'
    call setline(1,  "\#########################################################################")
    call setline(2,  "\# Copyright (c) 2010--Meng Along")
    call setline(3,  "\# ")
    call setline(4,  "\# This source code is released for free distribution under the terms of ")
call setline(5,  "\# the GNU General Public License")
    call setline(6,  "\# ")
    call setline(7,  "\# ")
    call setline(8,  "\# Author:  Meng Along<>")
    call setline(9,  "\# File Name: ".expand("%"))
    call setline(10,  "\# Description: ")
    call setline(11, "\#########################################################################")
    call setline(12, "\#!/bin/bash")
    call setline(13, "")
else
    call setline(1, "\/*")
    call setline(2,  " * Copyright (c) 2010--Meng Along")
    call setline(3,  " *")
    call setline(4,  " * The source code is released for free distribution under ")
call setline(5,  " * the terms of the GNU General Public License")
    call setline(6,  " *")
    call setline(7,  " *")
    call setline(8,  " * Author:  Meng Along<>")
    call setline(9,  " * Created Time: ".strftime("%c"))
    call setline(10,  " * File Name: ".expand("%"))
    call setline(11, " * Description: ")
    call setline(12, " *  ")
    call setline(12, " */")
    call setline(13, "")
  if &filetype == 'c'
    call setline(14, "\#include ")
    call setline(15, "\#include ")
    call setline(16, "")
    call setline(17, "int main(int argc, char *argv[])")
    call setline(18, "{")
    call setline(19, "\t")
    call setline(20, "\treturn 0;")
    call setline(21, "}")
    autocmd BufNewFile * normal 18G
  elseif &filetype == 'h'
    call setline(14, "\#ifndef __H")
    call setline(15, "\#define __H")
    call setline(16, "")
    call setline(17, "")
    call setline(18, "")
    call setline(19, "\#endif")
    autocmd BufNewFile * normal 16G
  elseif  &filetype == 'cpp'
    call setline(14, "\#include ")
    call setline(15, "using namespace std;")
    call setline(16, "")
    call setline(17, "int main(int argc,char * argv[])")
    call setline(18, "{")
    call setline(19, "")
    call setline(20, "\treturn 0;")
    call setline(21, "}")
    autocmd BufNewFile * normal 19G
  else
     call setline(14,"\#include ")
     call setline(15,"\#include ")
     call setline(16,"\#include ")
     autocmd BufNewFile * normal 16G

  endif
  
endif
endfunc
 
就ok了

阅读(351) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-09-13 14:52:39

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com