雑記帳

ちょっとした文章とかメモ書きとか。

Vim(GVim)を設定してみた。(in Ubuntu10.10)

Ubuntuでプログラミングをしていて、いい加減geditでの全て入力しないといけないことから開放されたかったのでVim(GVim)を設定してみました。

何故Vimかというと、UbuntuのXが起動しなくなった(正確にはデスクトップにログイン出来なくなった)時に端末上でお世話になったのがVimだったからです。

あちらこちらのサイトを参考に(※)設定をしてみました。

————————————————————————

追記:以下の設定は若干古く、Emacs23とGVimの現在の設定をGithubにあげたのでそちらも合わせて参考になさってください。
Github:https://github.com/cosmo0920/vim-emacs_Setting

Githubの設定ではEmacsでCUDAのシンタックスハイライトも掛かるようになっています。

————————————追記終わり—————————————-

 

この設定はよく使っている開発環境や、Ubuntu上で文字化けを起こさせない事を重視した設定です。

現在の設定はこちら:

"----------------------------------------------------
" インデント・タブ
"----------------------------------------------------
" オートインデントを有効にする
set autoindent
"タブの空白の数
set tabstop=4
"強調表示(色付け)のON/OFF設定
if has("syntax")
syntax on
endif
" ウィンドウの幅より長い行は折り返して、次の行に続けて表示する
set wrap
"-----------------------------------------------
"エンコーディング・改行設定
"-----------------------------------------------
"起動時に文字エンコーディングを自動選択
set fileencodings=euc-jisx0213,utf-8,cp932,iso-2022-jp-3
"改行コードの自動認識
set fileformats=unix,dos,mac
"保存時文字コードを指定
setl fenc=utf-8
"改行コード指定
setl ff=unix
"------------------------------------------------
"エディタの動作
"------------------------------------------------
" 行番号を表示する
set number
" 括弧入力時の対応する括弧を表示
set showmatch
"新しい行を作ったときに高度な自動インデントを行う
set smartindent
"検索時に大文字を含んでいたら大/小を区別
set smartcase
" 検索がファイル末尾まで進んだら、ファイル先頭から再び検索する。(有効:wrapscan/無効:nowrapscan)
set wrapscan
" カーソルが何行目の何列目に置かれているかを表示する。(有効:ruler/無効:noruler)
set ruler
"------------------------------------------------
"Remenber Window Position
"------------------------------------------------
let g:save_window_file = expand('~/.vimwinpos')
augroup SaveWindow
  autocmd!
  autocmd VimLeavePre * call s:save_window()
  function! s:save_window()
    let options = [
		'set columns=' . &columns,
      \ 'set lines=' . &lines,
      \ 'winpos ' . getwinposx() . ' ' . getwinposy(),
      \ ]
    call writefile(options, g:save_window_file)
  endfunction augroup END
"---------------------------------------------------
if filereadable(g:save_window_file)
  execute 'source' g:save_window_file
endif
"----------------------------------------------------
" オートコマンド
"----------------------------------------------------
if has("autocmd")
    " ファイルタイプ別インデント、プラグインを有効にする
    filetype plugin indent on     " カーソル位置を記憶する
    autocmd BufReadPost *
        \ if line("'\"") > 0 && line("'\"") <= line("$") |         \   exe "normal g`\"" |         \ endif endif "---------------------------------------------------
" Default GUI Size
"---------------------------------------------------
if has("gui_running")
  set lines=45 columns=85
endif "--------------------------------------------------
"Default Font Size
"--------------------------------------------------
set guifont=VL\ ゴシック\ 8
"--------------------------------------------------
"スクリプトの登録
"--------------------------------------------------
"------cd.vim------
au   BufEnter *   execute ":lcd " . expand("%:p:h")
"------------------

こんな感じです。

VimはC-pやddや:w,:qといったキーボードで慣れればスイスイ補完なり編集が出来るのでなかなか強力ですね!

参考になれば。

(※)参考にさせていただいたサイト様(順不同):
http://www.crimson-snow.net/tips/unix/vim.html
http://blog.blueblack.net/item_110
http://nanasi.jp/articles/howto/user-manual/user-manual-config.html

追記:当然の事ながら、コマンドライン上のVimと、GUI付きのGVim用の設定は分ける事も出来ます。

Windowsや、Mac OSX上などでは.vimrcと.gvimrcファイル(Windowsでは_vimrc/_gvimrc)は違った意味を持つのでそこに個別の設定をすれば良いと思います。

例えば、CUI上ではVimを起動させた時にはターミナルの大きさを変化させたくないがGUI付きで起動させた時は変化させたいと言う時に有効です。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。