yanbe /.vimrc

Finding best IM settings for Mac Kotoeri
set nocompatible

set enc=utf-8
set fencs=iso-2022-jp,euc-jp,cp932
set ambiwidth=double
"set t_Co=256
set updatetime=399

set ignorecase
set smartcase
set wrapscan
set incsearch
set hlsearch

"set autoindent
"set smartindent
set cindent
set tabstop=2
set shiftwidth=2
set smarttab
set expandtab

"set number
set ruler
set nolist
set showmatch
set wrap
set title
set showcmd
set cmdheight=1
set previewheight=4
set laststatus=2
set statusline=%F\ %=%c\ %l/%L\ %m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}
set wildmenu
set backspace=2
set scrolloff=5
set textwidth=78
set formatoptions+=mM
let format_join_spaces = 4
let format_allow_over_tw = 1
set nobackup
set history=1000
set mouse=a
set hidden
let mapleader=","

if has('migemo')
  set migemo
end

if has('gui_macvim')
  set imdisable
end
"set imactivatekey=C-space
set iminsert=0
set imsearch=0
inoremap  :set iminsert=0
inoremap  :set iminsert=0
nnoremap / :set imsearch=0/
nnoremap ? :set imsearch=0?
"set imdisable

filetype plugin indent on
syntax on
hi Search term=reverse ctermbg=DarkBlue ctermfg=NONE
autocmd FileType ruby set tabstop=2 tw=0 sw=2 expandtab
autocmd FileType eruby set tabstop=2 tw=0 sw=2 expandtab
autocmd BufNewFile,BufRead app/*/*.rhtml set ft=mason fenc=utf-8
autocmd BufNewFile,BufRead app/**/*.rb set ft=ruby fenc=utf-8
autocmd BufNewFile,BufRead app/**/*.yml set ft=ruby fenc=utf-8
autocmd BufNewFile,BufRead *.m set ft=objc fenc=utf-8
autocmd FileType c hi Comment ctermfg=darkcyan
autocmd FileType cpp hi Comment ctermfg=darkcyan
autocmd BufNewFile,BufRead tex textwidth=78
autocmd BufWritePost * mkview
autocmd BufReadPost * loadview

" rails.vim
"let g:rails_level=4
"let g:rails_default_file="app/controllers/application.rb"
"let g:rails_default_database="sqlite3"

" rubycomplete.vim
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType ruby,eruby let g:rubycomplete_buffer_loading = 1
autocmd FileType ruby,eruby let g:rubycomplete_rails = 1
autocmd FileType ruby,eruby let g:rubycomplete_classes_in_global = 1

autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType java setlocal omnifunc=javacomplete#Complete

let g:vjde_lib_path="/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Classes/classes.jar:/usr/local/gwt-mac-1.5.0/gwt-user.jar"

let g:AutoComplPop_Behavior = {
      \  'java':[
      \    {
      \      'command'  : "\\",
      \      'pattern'  : '\.\k\k$' ,
      \      'excluded' : '^$' ,
      \      'repeat'   : 0,
      \    },
      \    {
      \      'command'  : "\",
      \      'pattern'  : '\k\k$' ,
      \      'excluded' : '^$' ,
      \      'repeat'   : 0,
      \    },
      \  ]
      \}

let g:AutoComplPop_NotEnableAtStartup = 1
let g:SuperTabMappingForward = ''
let g:SuperTabMappingBackward = ''

let g:python_highlight_all=1
let g:python_slow_sync=1

let g:SuperTabLongestHighlight = 1

let g:AutoComplPop_CompleteoptPreview = 1

let g:Tex_FormatDependency_dvi='pdf'
let g:Tex_CompileRule_dvi = 'platex --interaction=nonstopmode $*'
"let g:Tex_CompileRule_ps = 'dvips -Ppdf -o $*.ps $*.dvi'
let g:Tex_CompileRule_pdf = 'dvipdfmx $*.dvi'
let g:Tex_DefaultTargetFormat = 'pdf'

" search
nmap n nzz
nmap N Nzz
nmap * *zz
nmap # #zz
nmap g* g*zz
nmap g# g#zz

" buffer move 
"map  :bn
"map  :bp
"map 1 :e #1
"map 2 :e #2
"map 3 :e #3
"map 4 :e #4
"map 5 :e #5
"map 6 :e #6
"map 7 :e #7
"map 8 :e #8
"map 9 :e #9

" tab move
map  :tabn
map  :tabp

" fuzzy finder
"map b :FuzzyFinderBuffer
map d :FuzzyFinderDir
"map e :FuzzyFinderFile
map r :FuzzyFinderMruFile
let g:FuzzyFinderOptions = { 'Base':{}, 'Buffer':{}, 'File':{}, 'MruFile':{}, 'FavFile':{}, 'Dir':{}, 'Tag':{}, 'TaggedFile':{}}
let g:FuzzyFinderOptions.MruFile.max_item=20


" enhance line editing in command mode
map  
map  
map  
map  
map  

" mac copy & paste
"nmap y :.w !pbcopy
"nmap p :r !pbpaste

if has("gui_mac")
  set transparency=240
else
  set transparency=10
end

if has("gui_running")
  colorscheme inkpot
  set columns=80
  set lines=52
  set linespace=-1
  if has("mac")
    set gfn=Monaco:h11
  else
    set gfn=Osaka-Mono:h14
  end
  set gfw=HiraMaruPro-W4:h12
  set guioptions-=r
  set guioptions-=L
  "highlight IMLine guibg=DarkGreen guifg=Black
  "highlight Normal guifg=#1e1e27 guibg=#cfbfad
  
  "map  :qgT
  "map  :tabnew
  "map  :new
  "map  :browse tabe
  "map  :browse split
  "map  :tabn
  "map  :tabp
  "map  :tabn
  "map  :tabp
  "imap  :tabn
  "imap  :tabp
else
	"let g:inkpot_black_background=1
	"colorscheme inkpot256
	colorscheme inkpot16
end


function HtmlEscape()
  silent s/&/\&/eg
  silent s//\>/eg
endfunction

function HtmlUnEscape()
  silent s/<//>/eg
  silent s/&/\&/eg
endfunction

vmap   :call HtmlEscape()
vmap   :call HtmlUnEscape()

function! s:replace(s, t, r)
  return substitute(a:s, '\C\V' . escape(a:t, '\'), escape(a:r, '&~\'), 'g')
endfunction