やったこと
- nordの導入(
set cursorline
でハマった) - 欧文フォントをInconsolataに変更(結城浩先生のマネ)
- クリップボードの共通化
- インサートモードで行内ではemacsっぽいキーバインド
- vimrcをかんたんに開けるようにした
できるようになりかけてること
うーむ
やりたいと思っていること
ここまでの.vimrc
gvimrc:
" set guifont=Menlo:h18 set guifont=Inconsolata:h18 "set guifontwide=M+\ 2c\ thin:h18 " set guifontwide=ヒラギノ明朝\ ProN\ W3:h16 set guifontwide=ヒラギノ角ゴシック\ W2:h16 set lines=40 set columns=120
vimrc:
" URL: " Author: " Description: Personal .vimrc file " " All the plugins are managed via vim-plug, run :PlugInstall to install all " the plugins from Github, :PlugUpdate to update. Leader key is the spacebar. " vim-plugでプラグイン管理: {{{1 call plug#begin() Plug 'Lokaltog/vim-easymotion' " better move commands Plug 'ctrlpvim/ctrlp.vim' " あいまい検索 Plug 'itchyny/lightline.vim' " custom statusline Plug 'vim-jp/vimdoc-ja' " help in Japanese Plug 'sjl/gundo.vim' " visualize the undo tree Plug 'arcticicestudio/nord-vim' " color scheme Plug 'micke/vim-hybrid' " color scheme Plug 'jacoborus/tender.vim' " color scheme Plug 'cocopon/iceberg.vim' " color scheme call plug#end() " basic settings {{{1 syntax on " シンタックスハイライトをオン set nocompatible " set backspace=start,eol,indent " set whichwrap=b,s,[,],<,>,~ " set mouse= let mapleader = "\<space>" " leaderキーをspaceに変更 *1 p122 " 検索オプション set incsearch " インクリメンタルサーチ set hlsearch " 検索時にハイライト set ignorecase " 検索時大文字小文字を無視 set nowrapscan " ファイル末まで検索後、頭に戻らない set wildmenu " タブによる自動補完を有効化 set wildmode=list:longest,full " 最長マッチまで補完し自動補完メニューを開く " 編集オプション filetype plugin indent on " ファイルタイプに基づいたインデントを有効化 set tabstop=4 " タブ幅を4に set expandtab " タブをスペースに変換 set shiftwidth=4 " インデントに使われるスペースの数 set autoindent " 新しい行を始めるときに自動でインデント set smartindent set ambiwidth=double set clipboard=unnamed,unnamedplus " Use system clipboard " 折りたたみオプション set foldmethod=indent " 折りたたみ設定 *1 p65/68 " set nofoldenable " Open all folds when entering Vim. set foldlevel=99 " なるべく折りたたみを開く set nrformats-=octal set hidden set history=2000 " 履歴を10000件持つようにする set virtualedit=block " key remap {{{1 " 矢印キーを押しても何もしない noremap <Up> <Nop> noremap <Down> <Nop> noremap <Left> <Nop> noremap <Right> <Nop> " swap ; and : *4 nnoremap ; : vnoremap ; : nnoremap q; q: vnoremap q; q: nnoremap : ; vnoremap : ; noremap <Space>h ^ noremap <Space>l $ " insert mode / emacs like " inoremap <C-n> <Down> " doesn't work " inoremap <C-p> <Up> " doesn't work inoremap <C-b> <Left> inoremap <C-f> <Right> inoremap <C-a> <C-o>^ inoremap <C-e> <C-o>$ inoremap <C-h> <BS> inoremap <C-d> <Del> " swapファイルをひとつのところにまとめる (*1 p31) set directory=$HOME/.vim/swap// " undo {{{1 " すべてのファイルで永続アンドゥ (*1 p39) set undofile set undodir=$HOME/.vim/undodir " leader+gでGundoToggle noremap <leader>gu :GundoToggle<cr> " 見た目の設定(カラースキーム含む) {{{1 set number " 行番号表示 set laststatus=2 " ステータス行を常に表示 set list " 不可視文字の表示 set listchars=tab:»-,trail:-,eol:↲,extends:»,precedes:«,nbsp:% set scrolloff=5 " 最低でも表示する行数 set cursorline " Highlight cursor line set t_Co=256 set termguicolors " hybrid colorscheme {{{2 " let g:lightline = { 'colorscheme': 'hybrid' } " set background=dark " let g:hybrid_italic=0 " hybridでitalicをオフ " colorscheme hybrid " nord colorscheme {{{2 let g:lightline = { 'colorscheme': 'nord' } let g:nord_cursor_line_number_background = 1 colorscheme nord " vimrc関係 *3 {{{1 " 現在のバッファが空っぽならば :drop それ以外なら :tab drop になるコマンド function! SmartDrop(tabedit_args) if expand('%') == "" && !&modified let drop_cmd = "drop " else let drop_cmd = "tab drop " endif silent execute drop_cmd . a:tabedit_args endfunction command! -nargs=* SmartDrop call SmartDrop(<q-args>) nnoremap <silent> <Leader>v :<C-u>SmartDrop ~/.vim/vimrc<CR> nnoremap <silent> <Leader>gv :<C-u>SmartDrop ~/.vim/gvimrc<CR> " 出典リスト {{{1 " 1: マスタリングVim Ruslan Osipov " 2: Vim & Emacsエキスパート活用術 SD別冊 " 3: https://github.com/cohama/.vim/blob/master/init.vim " 4: https://github.com/deris/dotfiles/blob/master/.vimrc " " modeline(?) {{{1 " vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker: