set nocompatible
let mapleader = ","
let g:mapleader = ","
" Make a simple "search" text object.
vnoremap <silent> s //e<C-r>=&selection=='exclusive'?'+1':''<CR><CR>
\:<C-u>call histdel('search',-1)<Bar>let @/=histget('search',-1)<CR>gv
omap s :normal vs<CR>
command! -complete=shellcmd -nargs=+ Shell call s:RunShellCommand(<q-args>)
function! s:RunShellCommand(cmdline)
echo a:cmdline
let expanded_cmdline = a:cmdline
for part in split(a:cmdline, ' ')
if part[0] =~ '\v[%#<]'
let expanded_part = fnameescape(expand(part))
let expanded_cmdline = substitute(expanded_cmdline, part, expanded_part, '')
endif
endfor
botright new
setlocal buftype=nofile bufhidden=wipe nobuflisted noswapfile nowrap
call setline(1, 'You entered: ' . a:cmdline)
call setline(2, 'Expanded Form: ' .expanded_cmdline)
call setline(3,substitute(getline(2),'.','=','g'))
execute '$read !'. expanded_cmdline
setlocal nomodifiable
close
1
endfunction
"Fast saving
nmap <leader>w :w!<cr>
nmap <leader>f :find<cr>
if has("win32")
source $VIMRUNTIME/mswin.vim
behave mswin
set guifont=courier_new:h10:cANSI
endif
"
"Fast reloading of the .vimrc
map <leader>s :source ~/.vimrc<cr>
"Fast editing of .vimrc
map <leader>e :e! ~/.vimrc<cr>
"When .vimrc is edited, reload it
autocmd! bufwritepost vimrc source ~/.vimrc
set ffs=unix,dos,mac
nmap <leader>fd :se ff=dos<cr>
nmap <leader>fu :se ff=unix<cr>
filetype plugin indent on
set ruler
set scrolloff=0
set lazyredraw
set mouse=a
set guitablabel=%{tabpagenr()}.%t\ %m
"autocmd GUIEnter * simalt ~x
set number
syntax enable
set expandtab
set tabstop=4
set cindent shiftwidth=4
set hlsearch
set foldcolumn=4
set foldmethod=syntax
set foldlevelstart=99
set noswapfile
set guioptions+=b
set shortmess+=A
set directory=$VIMRUNTIME/tmp
autocmd FileType make setlocal noexpandtab
color desert
"set encoding=chinese
"set fileencoding=chinese
"set termencoding=chinese
set fileencodings=ucs-bom,utf-8,chinese,taiwan,latin1
"internationalization
"I only work in Win2k Chinese version
"if has("multi_byte")
"set termencoding=chinese
"set encoding=utf-8
"set fileencodings=utf-8,chinese,ucs-bom
"endif
"if you use vim in tty,
"'uxterm -cjk' or putty with option 'Treat CJK ambiguous characters as wide' on
"if exists("&ambiwidth")
"set ambiwidth=double
"endif
if has('gui_running') && has("win32")
au GUIEnter * simalt ~x
endif
set hid
set tags=~/tags/stdc.tag,tags
"set browsedir=buffer
set history=500
set showtabline=2
set wildmenu
set novisualbell
set noerrorbells
set laststatus=2
function! CurDir()
let curdir = substitute(getcwd(), '/Users/amir/', "~/", "g")
return curdir
endfunction
set statusline=\ %F%m%r%h\ %w\ \ CWD:\ %r%{CurDir()}%h\ \ \ Line:\ %l/%L:%c/%p%%\ \ \ \ FMT:%{&ff}\ [%Y]\ \ \ ASCII[%02.4BH]\
set incsearch
set ignorecase
set smartcase
set matchtime=3
set backspace=indent,eol,start
set cinoptions=:0g0t0(sus
set cinwords=if,elseif,else,for,while,try,except,finally,def,class
set formatoptions+=mM
""""""""""""""""""""""""""""""
" Vim Grep
""""""""""""""""""""""""""""""
let Grep_Skip_Dirs = 'RCS CVS SCCS .svn'
let Grep_Cygwin_Find = 1
""""""""""""""""""""""""""""""
" Visual
""""""""""""""""""""""""""""""
" From an idea by Michael Naumann
function! VisualSearch(direction) range
let l:saved_reg = @"
execute "normal! vgvy"
let l:pattern = escape(@", '\\/.*$^~[]')
let l:pattern = substitute(l:pattern, "\n$", "", "")
if a:direction == 'b'
execute "normal ?" . l:pattern . "^M"
else
execute "normal /" . l:pattern . "^M"
endif
let @/ = l:pattern
let @" = l:saved_reg
endfunction
"Basically you press * or # to search for the current selection !! Really useful
vnoremap <silent> * :call VisualSearch('f')<CR>
vnoremap <silent> # :call VisualSearch('b')<CR>
"Map space to / and c-space to ?
map <space> /
map <c-space> ?
"Smart way to move btw. windows
map <C-j> <C-W>j
map <C-k> <C-W>k
map <C-h> <C-W>h
map <C-l> <C-W>l
"Tab configuration
map <leader>tn :tabnew %<cr>
map <leader>te :tabedit
map <leader>tc :tabclose<cr>
map <leader>tm :tabmove
try
set switchbuf=usetab
set stal=2
catch
endtry
"Switch to current dir
map <leader>cd :cd %:p:h<cr>
if has("autocmd")
autocmd FileType python set complete+=kD:/bin/pydiction iskeyword+=.,(
endif " has("autocmd")
:nnoremap <silent> <F5> :!start cmd /c "%:p:r:s,$,.exe," & pause<CR>
noremap <F6> <ESC><ESC>:w!<CR> :!start cmd /c "dmd -m64 %" & pause<CR>
noremap <silent> <F7> :Tlist<CR>
"noremap <F6> :make<CR>
"noremap <S-F6> :make clean;make<CR>
noremap <F1> <C-o>
noremap <F2> <Tab>
noremap <F3> <C-W>gf<CR>
noremap <C-s> :w<CR>
noremap! <C-s> <ESC><ESC>:w<CR>a
noremap <C-o> :browse tabnew<CR>:cd %:p:h<CR>
"noremap <Tab> <C-W>w:cd %:p:h<CR>:<CR>
"noremap <S-Tab> <C-W>W:cd %:p:h<CR>:<CR>
noremap <C-c> "+y
noremap <C-v> "+p
noremap! <C-c> <ESC><ESC>"+y
noremap! <C-v> <ESC><ESC>"+p
"map <F12> :Project<CR>
let Tlist_File_Fold_Auto_Close = 1
let Tlist_GainFocus_On_ToggleOpen = 1
let Tlist_Exit_OnlyWindow = 1
let Tlist_Show_One_File = 0
let Tlist_Process_File_Always = 1
let Tlist_Close_On_Select = 0
let proj_flags="cgFims"
分享到:
相关推荐
Linux Vi配置文件,内含常用vi编辑配置及软件开发使用的快捷键操作 自动补全、允许鼠标操作
### VI的简单配置及配置文件集锦 #### 知识点概述 对于UNIX/Linux系统的新手用户来说,学会高效地使用VI(Visual Editor)是非常重要的。VI是UNIX/Linux环境下非常强大的文本编辑器之一,虽然其功能强大,但对于...
**vi配置文件详解** 在Linux和Unix-like操作系统中,`vi`(Visual Editor)是一款非常流行的文本编辑器,它的增强版`vim`(Vi Improved)则提供了更多的功能和改进。`vi`配置文件,通常称为`.vimrc`,是用户自定义`...
### Ubuntu下vi编辑器的配置方法 #### 一、引言 在Ubuntu系统中,vi(Visual Editor)是一款非常强大的文本编辑器,特别是在Linux环境下进行编程、系统管理和文本处理时非常实用。本文将详细介绍如何在Ubuntu系统中...
这个.vimrc配置是我一直使用的,简单但是挺实用的。有自动缩进,语法高亮,行号显示等,实用这个配置用vi编写c/c++代码已经够用了。 下载后,将vimrc文件拷贝到home目录下,重命名为.vimrc即可
在Linux世界中,`vi`(Visual Editor)是一款经典的文本编辑器,它的增强版`vim`(Vi IMproved)在保留原有功能的基础上增加了许多新特性。对于Linux或Ubuntu用户来说,掌握`vim`的配置是提升开发效率的关键步骤。...
"vi配置文件.txt"文档可能会提供更具体的.vimrc配置示例或解释,你可以根据这些示例进一步定制你的编辑器环境,使其更适合你的工作习惯。 总之,vi编辑器的配置文件.vimrc是个性化编辑器体验的关键,而.vimrc中的...
在这个“vi配置+插件 .vimrc 解压可用”的主题中,我们将深入探讨`Vim`的配置文件`.vimrc`以及如何管理和使用`Vim`插件。 首先,`.vimrc`是`Vim`的初始化配置文件,位于用户的主目录下(通常在Unix/Linux系统中是`~...
在Linux环境中,`vi`编辑器是一个非常常用的文本编辑工具,但其默认配置可能并不完全符合每个用户的习惯。为了提高工作效率并使`vi`更加友好,我们可以自定义配置,使其更适应个人的需求。这里我们将详细解释如何...
下载后放在root或home目录下即可。
文本编辑器Vi 简介 Vi是一个功能强大的全屏幕文本编辑器,是UNIX 上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。 pVi没有菜单,只有命令。 注意:Vi命令并不锁住所编辑的文件,因此多个用户可能同时...
本篇文章将详细探讨`VI`环境配置中的重要知识点,以及如何利用附件进行高级配置。 首先,`VI`(Vim Improved)是在`VI`的基础上发展起来的,它增强了原版`VI`的功能,提供了丰富的语法高亮、自动补全和多窗口编辑等...
9. **配置连接板** - 右键点击子 VI 的前面板图表,选择“显示连接板”,并设置为单输入无输出模式。 10. **连接引用句柄** - 将连接板的接线端与“数值输入控件”的引用句柄相连,完成子 VI 的创建。 #### 四、...
3. **运行子VI**:当你在运行的VI(如test1.vi)中调用另一个VI(如test2.vi),可以通过将“打开VI引用节点”放置在前面板上,配置好需要打开的VI的路径,然后在程序框图中添加适当的触发条件来执行这个操作。...
本篇文章将详细探讨Linux环境下VI配置文件以及常用的插件,尤其是对于C语言开发者的应用场景。 首先,VI编辑器的配置文件是`.vimrc`,它位于用户的主目录下(通常是`~/.vimrc`)。这个文件包含了用户自定义的快捷键...
### VI/VIM 快捷键及配置详解 #### 一、VI/VIM 概述 VI/VIM(Vi IMproved)是一种广泛使用的文本编辑器,最初由 Bill Joy 开发,随后由 Bram Moolenaar 扩展为 VIM。VI 是 UNIX 系统的标准编辑器之一,而 VIM 则在...
Linux 环境变量配置及 vi 基本操作详解 Linux 环境变量配置是 Linux 系统中一个非常重要的概念,它允许用户自定义环境变量,以便更好地控制系统的行为。环境变量可以在系统中设置多个文件中,例如 /etc/profile、/...
这个是vim的配置文件,在家目录下直接解压即可使用。
选择器会自动配置,用于区分各种可能的数据类型。 4. **编写多态逻辑** 在程序框图中,你需要为每种数据类型编写相应的处理代码。数据类型选择器会将控制流导向正确的小巷(Goto Case Structure),这样你就可以在...
详解 MAC/Linux Vi配置环境变量及Java环境变量配置 vi基础 1、vi的基本概念 (1)基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式...