Skip to content

Instantly share code, notes, and snippets.

@yamamo2shun1
Last active April 27, 2023 01:22
Show Gist options
  • Save yamamo2shun1/5831f1a244fd092c058ee945d52a0088 to your computer and use it in GitHub Desktop.
Save yamamo2shun1/5831f1a244fd092c058ee945d52a0088 to your computer and use it in GitHub Desktop.
My vim setting
call plug#begin('~/.vim/plugged')
Plug 'prabirshrestha/asyncomplete.vim'
Plug 'prabirshrestha/asyncomplete-lsp.vim'
Plug 'prabirshrestha/vim-lsp'
Plug 'mattn/vim-lsp-settings'
Plug 'mattn/vim-lsp-icons'
Plug 'mattn/vim-goimports'
Plug 'hrsh7th/vim-vsnip'
Plug 'hrsh7th/vim-vsnip-integ'
Plug 'rhysd/vim-clang-format'
Plug 'kana/vim-operator-user'
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'ryanoasis/vim-devicons'
Plug 'flazz/vim-colorschemes'
Plug 'lambdalisue/fern.vim'
Plug 'lambdalisue/fern-git-status.vim'
Plug 'lambdalisue/fern-hijack.vim'
Plug 'lambdalisue/nerdfont.vim'
Plug 'lambdalisue/fern-renderer-nerdfont.vim'
Plug 'lambdalisue/glyph-palette.vim'
Plug 'yuki-yano/fern-preview.vim'
Plug 'dense-analysis/ale'
Plug 'tokorom/vim-swift-format'
Plug 'rust-lang/rust.vim'
" Plug 'twitvim/twitvim'
Plug 'vim-jp/vimdoc-ja'
call plug#end()
packadd termdebug
set guifont=DroidSansMono\ Nerd\ Font\ Mono\ 12
set guifontwide=DroidSansMono\ Nerd\ Font\ Mono\ 12
set encoding=utf-8
set fileencodings=utf-8,iso-2022-jp,euc-jp,sjis
set number
set ignorecase
set smartcase
set wrapscan
set incsearch
set whichwrap=b,s,h,l,<,>,[,]
set hlsearch
set tabstop=4
set shiftwidth=4
"set wildmenu
set wildignorecase
set wildmode=longest,list
set showmatch
"set clipboard^=unnamedplus
set clipboard+=unnamed
set wildcharm=<Tab>
set mouse=a
set termguicolors
set helplang=ja
syntax enable
set background=dark
colorscheme hybrid
filetype plugin indent on
let g:rustfmt_autosave = 1
let &t_8f="\<Esc>[38;2;%lu;%lu;%lum"
let &t_8b="\<Esc>[48;2;%lu;%lu;%lum"
let g:termdebugger="gdb-multiarch"
let g:termdebug_wide=160
"let g:lsp_diagnostics_enabled = 1
"let g:lsp_diagnostics_echo_cursor = 1
"let g:asyncomplete_auto_popup = 1
"let g:asyncomplete_auto_completeopt = 0
let g:asyncomplete_popup_delay = 100
let g:lsp_text_edit_enabled = 0
let g:lsp_settings = {
\ 'clangd': {'cmd': ['/usr/bin/clangd']},
\ 'clang-format': {'cmd': ['/usr/bin/clang-format']}
\}
let g:clang_format#command="/usr/bin/clang-format"
let g:airline#extensions#tabline#enabled = 1
let g:airline_powerline_fonts = 1
let g:fern#default_hidden = 1
let g:fern#disable_default_mappings = 1
let g:fern#renderer = 'nerdfont'
function! s:init_fern() abort
nmap <buffer><expr>
\ <Plug>(fern-my-expand-or-collapse)
\ fern#smart#leaf(
\ "\<Plug>(fern-action-collapse)",
\ "\<Plug>(fern-action-expand)",
\ "\<Plug>(fern-action-collapse)",
\ )
nmap <silent> <buffer> <Space> <Plug>(fern-my-expand-or-collapse)
nmap <silent> <buffer> <C-m> <Plug>(fern-action-enter)
nmap <silent> <buffer> <BS> <Plug>(fern-action-leave)
nmap <silent> <buffer> r <Plug>(fern-action-reload)
nmap <silent> <buffer> o <Plug>(fern-action-open:edit)
nmap <silent> <buffer> i <Plug>(fern-action-hidden-toggle)
endfunction
augroup my-glyph-palette
autocmd! *
autocmd FileType fern call glyph_palette#apply()
autocmd FileType nerdtree,startify call glyph_palette#apply()
autocmd FileType fern call s:init_fern()
augroup END
"if executable('sourcekit-lsp')
" au User lsp_setup call lsp#register_server({
" \ 'name': 'sourcekit-lsp',
" \ 'cmd': {server_info->['sourcekit-lsp']},
" \ 'whitelist': ['swift'],
" \ })
"endif
"let twitvim_enable_python = 1
"let twitvim_browser_cmd = 'google-chrome'
"let twitvim_force_ssl = 1
"let twitvim_count = 40
let g:ale_linters = {
\ 'swift': ['swift-format'],
\}
let g:vim_swift_format_use_ale = 1
set termwinkey=<C-x>
let mapleader = "\<SPACE>"
nnoremap <leader>f <cmd>Fern . -reveal=% -drawer<cr>
nnoremap d h
nnoremap s j
nnoremap t k
nnoremap h l
nnoremap f 0
nnoremap l $
nnoremap b x
nnoremap g y
nnoremap r p
nnoremap R P
nnoremap <C-t> gt
nnoremap <C-c> D
nnoremap m o
nnoremap <C-m> i<Return><Esc>
nnoremap <C-a> <C-w>
nnoremap <C-a>a <C-w>w
noremap <C-w> <Tab>
noremap! <C-w> <Tab>
noremap <C-n> <C-[>
noremap! <C-n> <C-[>
inoremap <C-w> <Tab>
inoremap <C-d> <Left>
inoremap <C-s> <Down>
inoremap <C-t> <Up>
inoremap <C-h> <Right>
inoremap <C-f> <Home>
inoremap <C-l> <End>
vnoremap <C-d> <Left>
vnoremap <C-s> <Down>
vnoremap <C-t> <Up>
vnoremap <C-h> <Right>
vnoremap <C-f> <Home>
vnoremap <C-l> <End>
cnoremap <C-w> <C-i>
cnoremap <C-d> <Left>
cnoremap <C-s> <Down>
cnoremap <C-t> <Up>
cnoremap <C-h> <Right>
cnoremap <C-f> <Home>
cnoremap <C-l> <End>
@yamamo2shun1
Copy link
Author

tmuxのTrueColor対応に伴う設定追加と、vim-colorschemes導入とカラースキーム設定の追加。

@yamamo2shun1
Copy link
Author

macOSでクリップボードを使う場合の設定を追記(Linuxと違ったため)。

@yamamo2shun1
Copy link
Author

fern.vimとrust.vimを導入。

@yamamo2shun1
Copy link
Author

  • <leader>をSPACEキーに割り当てる
  • <leader>fでFernをドロワー表示する
  • Fernでファイルをoで開いたときにFernドロワーを表示したままにする

@yamamo2shun1
Copy link
Author

分割ウィンドウを移動するキーバインドを設定

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment