function! s:gvimrc_colorscheme(colors_name)
  if a:colors_name == 'luna'
    "highlight vimshellError gui=underline
    highlight vimshellError gui=undercurl
    "highlight! link vimshellError Constant
  elseif a:colors_name == 'mustang'
    highlight vimshellError gui=undercurl
  endif
endfunction

command! -nargs=1 GvimrcColorscheme colorscheme <args> | call <SID>gvimrc_colorscheme(<q-args>)
let g:unite_colorscheme_command = 'GvimrcColorscheme'

if g:V.is_mac()
  set background=light
  " GvimrcColorscheme macvim
  " GvimrcColorscheme newspaper
  " GvimrcColorscheme pencil
  GvimrcColorscheme solarized

  "  for macvim.vim with dark
  "hi! link Error WarningMsg
  "hi VertSplit    gui=NONE guifg=DarkSlateGray guibg=NONE
  "hi StatusLineNC gui=NONE guifg=SlateGray guibg=Gray5
  "hi Pmenu        guibg=LightSteelBlue1 guibg=DarkSlateGray
  "hi MatchParen   guifg=White guibg=Gray25
else
  " GvimrcColorscheme aldmeris
  GvimrcColorscheme solarized

  " GvimrcColorscheme koehler
  " GvimrcColorscheme mrkn256
  " GvimrcColorscheme neverland2-darker
  " GvimrcColorscheme neverland-darker
  " GvimrcColorscheme luna
  " GvimrcColorscheme newspaper
  " GvimrcColorscheme monokai
endif

hi Folded guibg=NONE guifg=GRAY ctermfg=0

if g:V.is_mac()
  set guifont=Menlo:h12
elseif vimproc#system('hostname') =~ '^linari'
  let &guifont = 'Menlo Bold 12'
  let &guifontwide = 'Hiragino Kaku Gothic Pro Bold 12'
else
  let &guifont = 'Menlo Bold 9'
  let &guifontwide = 'Hiragino Kaku Gothic Pro Bold 9'
endif
let s:gvimrc_default_fonts = {
      \ 'guifont': &guifont,
      \ 'guifontwide': &guifontwide}
function! s:set_default_guifonts()
  let &guifont = s:gvimrc_default_fonts.guifont
  let &guifontwide = s:gvimrc_default_fonts.guifontwide
endfunction
nnoremap <M-0> :<C-u>call <SID>set_default_guifonts()<Cr>

if g:V.is_mac()
  set transparency=2
  let g:transparency = &transparency
endif

set guioptions-=T " no icons on the top of window
set guioptions-=r " no right-hand scrollbar at any time
set guioptions-=l " no left-hand scrollbar at any time
set guioptions-=L " no left-hand scrollbar at any time
set guioptions-=m " no gui menu (not for MacVim?)
set guioptions+=c " console dialogs. no popup allowed

set mouse=a " only on gui

function! s:relative_tranparency(diff)
  let &transparency = a:diff + &transparency
  let g:transparency = &transparency
endfunction

if g:V.is_mac()
  nnoremap <up> :<C-u>call <SID>relative_tranparency(5)<Cr>
  nnoremap <down> :<C-u>call <SID>relative_tranparency(-5)<Cr>
  inoremap <up> <C-o>:call <SID>relative_tranparency(5)<Cr>
  inoremap <down> <C-o>:call <SID>relative_tranparency(-5)<Cr>
endif

if has('gui')
  winpos 99 0
  set columns=500
  set lines=100
  VimShell
  normal! <C-u>
  redraw!
endif
" }}}
" for vimshell {{{
function! GvimrcVimshellColor()
  hi! link Error WarningMsg
endfunction
" }}}
" scala syntax tweaks {{{
"highlight scalaNameDefinition gui=underline
highlight scalaNameDefinition gui=italic
"hi scalaType gui=underline
"hi scalaTypeCase gui=underline
" }}}
" tabline for gui {{{
function GuiTabLabel()
  "return printf("%s/%s", expand('%:p:h:h:t'), expand('%:p:h:t'))

  " depends on kana's tabpagecd
  let cwd = get(t:, 'cwd', getcwd())
  let tmp = printf("%s/%s",
        \ fnamemodify(cwd, ':p:h:h:t'),
        \ fnamemodify(cwd, ':p:h:t'))
  return tmp . repeat(' ', 20 - len(tmp))
endfunction

set guitablabel=%!GuiTabLabel()
" }}}
" vim: foldmethod=marker