شما هنوز به سیستم وارد نشده اید.

#1 2017-07-16 12:40:59

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

کانفیگ های vim

یه لحظه نگاهی به انجمن انداختم! باورتون نمیشه، کانفیگ ویم نداریم neutral چه وضعیه آخه؟

بیاین اینجا کانفیگ ها و قابلیت های مفیدی که تو ویم استفاده میکنید (پلاگین و ...) رو به اشتراک بذاریم که حتی بیشتر هم از ویم بهره ببریم smile حد اقل کاری هم که میشه کرد اینه که vimrc خودتونو پست کنید.

پلاگین ها:
من برای ویم از Vbundle استفاده میکنم که بتونم پلاگین ها رو به روز نگه دارم.
برای مجموعه ای عظیم از رنگ بندی ها (colorscheme) از vim-colorscheme استفاده میکنم.
nerdtree که یار همیشگی و فایل منجرمونه.
vim-surround به صورت عجیبی قوی و مفیده مخصوصا برای برنامه نویسی big_smile
tern_for_vim و vim-javascript که به درد برنامه نویسی javascript میخورن.
و از YouCompleteMe برای autocomplete استفاده میکنم که خیلی عالیه smile

حالا vimrc:
این قسمت اول مخصوص Vundle هست و ضروری:

set nocompatible              " be iMproved, required
filetype off                  " required

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()

و قسمت مربوط به پلاگین ها:

" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'

Plugin 'git://git.wincent.com/command-t.git'

" color
Plugin 'flazz/vim-colorschemes'

" the nerd tree
Plugin 'scrooloose/nerdtree'

" surround
Plugin 'tpope/vim-surround'

" auto completion
Plugin 'Valloric/YouCompleteMe'

" javascript auto completion
Plugin 'marijnh/tern_for_vim'

" javascript
Plugin 'pangloss/vim-javascript'

دوباره لازمه ی Vundle:

call vundle#end()            " required
filetype plugin indent on    " required

اینجا سینتکس و رنگ بندی:

syntax on
colorscheme 0x7A69_dark

حالا ctrl+f رو میذاریم تا باهاش nerdtree رو باز و بسته کنیم:

map <C-f> :NERDTreeToggle<CR>

این قسمت رو میذاریم تا هروقت یه فایلی رو باز میکنیم از همون جا که قبلا نشانگر موس بوده بازش کنه:

augroup resCur
  autocmd!
  autocmd BufReadPost * call setpos(".", getpos("'\""))
augroup END

شماره خط ها:

set number

مخصوص YouCompleteMe برای جلوگیری از ارور استفاده از پایتون ۳:

let g:ycm_server_python_interpreter = 'python2'

این قسمت مربوط به tern هست که توابع و autocompletion رو برای javascript فراهم میکنه:

let g:tern_show_argument_hints='on_hold'
let g:tern_map_keys=1

این قسمت برای اینه اولا indentation رو اتوماتیک کنیم و بعد به جای هر تب ۴ تا اسپیس بذاریم:

" indentation
set autoindent
set tabstop=4
set shiftwidth=4
set expandtab

برای اینکه به جای هر تب یه علامت عمودی بذاریم که خوندن کد راحت تر باشه:

set list lcs=tab:\│\

در نهایت این قسمت مربوط به کد های جاوااسکریپت هست که اگه امتحانش کنید خودتون میبینید خیلی مفید و قشنگه:

" javascript
let g:javascript_plugin_jsdoc = 1
let g:javascript_plugin_ngdoc = 1
let g:javascript_plugin_flow = 1
"set foldmethod=syntax
let g:javascript_conceal_function             = "ƒ"
let g:javascript_conceal_null                 = "ø"
let g:javascript_conceal_this                 = "@"
let g:javascript_conceal_return               = "↲"
let g:javascript_conceal_undefined            = "¿"
let g:javascript_conceal_NaN                  = "ℕ"
let g:javascript_conceal_prototype            = "¶"
let g:javascript_conceal_static               = "•"
let g:javascript_conceal_super                = "Ω"
let g:javascript_conceal_arrow_function       = "⇀"
set conceallevel=1

smile

آخرین ویرایش توسط mazhar (2017-07-16 12:41:51)

آفلاین

پانوشت انجمن

پشتیبانی توسط تیم آرچ لینوکس ایران و نیرو گرفته با FluxBB