I screwed up my vimrc and now solarized doesn't work. I think I fixed it but now I'm worried about the rest of my vimrc. Can someone tell me if it's properly organized?

set nocompatible              " be iMproved, required
set pastetoggle=<F2>
filetype off                  " required
set smartindent
set spell spelllang=en_us
set relativenumber
set number
set showcmd
set cursorline
set wildmenu
set lazyredraw
set showmatch
set incsearch           " search as characters are entered
set hlsearch            " highlight matches
set background=dark
" move vertically by visual line
nnoremap j gj
nnoremap k gk

imap <expr> <CR> pumvisible() ? "\<c-y>" : "<Plug>delimitMateCR"
set rtp+=~/.vim/bundle/Vundle.vim

call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'Chiel92/vim-autoformat'
Plugin 'tpope/vim-fugitive'
Plugin 'rust-lang/rust.vim'
Plugin 'vim-airline/vim-airline'
Bundle 'airblade/vim-gitgutter'
Bundle 'Conque-Shell'
Bundle 'altercation/vim-colors-solarized'
Bundle 'Valloric/YouCompleteMe'
Bundle 'scrooloose/syntastic'
Bundle 'scrooloose/nerdtree'
Bundle 'tpope/vim-sensible'
Bundle 'Raimondi/delimitMate'

call vundle#end()            " required
filetype plugin indent on
colorscheme solarized
syntax enable
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*

let g:syntastic_always_populate_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0
let g:syntastic_cpp_compiler = "g++"
let g:syntastic_cpp_compiler_options = "-std=c++11 -Wall"
let g:syntastic_c_remove_include_errors = 1
let g:syntastic_cpp_remove_include_errors = 1
let g:syntastic_auto_loc_list = 0

let g:syntastic_always_populate_loc_list = 1
let g:ycm_enable_diagnostic_signs = 1
let g:ycm_goto_buffer_command = 'same-buffer' "[ 'same-buffer', 'horizontal-split', 'vertical-split', 'new-tab' ]
let g:ycm_filetype_whitelist = { '*': 1 }
let g:ycm_key_invoke_completion = '<C-Space>'
let g:ycm_global_ycm_extra_conf = '~/.ycm_extra_conf.py'
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0

closed as primarily opinion-based by Tumbler41, DJMcMayhem, Tommy A, EvergreenTree, statox Jul 13 '16 at 8:04

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 4
    This is very subjective. How I like to organize my vimrc may not be how you or someone else likes to. – Tumbler41 Jul 12 '16 at 19:23
  • 1
    Obviously if you have mappings that overwrite each other, things could change, but at that point you should just remove the mapping you don't want. So short answer: Yes. – Tumbler41 Jul 12 '16 at 20:11
  • 2
    Yes, although the order of the commands may be important. In particular, I suggest that you load plugins at the beginning of your vimrc file (perhaps just after the set nocompatible). – Karl Yngve Lervåg Jul 12 '16 at 20:12
  • 2
    You could consider using explicit folds in vimrc ({{{ and }}}) that is what helps me organize my vimrc into well defined sections. – grochmal Jul 12 '16 at 22:32
  • 1
    This is not totally related but you could be interested in this question about how to fold a vimrc a improve its structure (of course that will not help you with the content) – statox Jul 13 '16 at 8:04

Browse other questions tagged or ask your own question.