Life wasn’t meant to be this way. We wake up every morning and try to get through it just to go to bed and wake up again the next day. Is that what we’re thinking? Is that what we want? I’m not sure, actually I’m sure it’s not what we want at all. Yet it’s what we do. We are here to figure things out and try to attempt new things meeting new people. That’s what life is about I think? I guess? Either way, here we are. Now, if we wanted to do something a little different, we could. Life could be much different than it currently is. But, we have to accept that it could be different. Either way? It won’t be useful to any of us until we decide that is what we want. But what do we want for real now? I mean, we could guess all day long what we want, but we cannot fully express ourselves for some reason. Does it matter? I’m not sure. I’d rather not think about everything which could go wrong with this plan, but well you have to take into account all the different angles, don’t you? Some woul...
So, I added the following to my vimrc:
" Change Leader Key to a comma, that '\' is so hard to reach
let mapleader = ","
" Set the maximum width of text to 80 characters
set textwidth=80
" Optional visual indicator for the 80th column
set colorcolumn=80
" Show line numbers
set number
" File type detection, plugins, and smart indentation
filetype plugin indent on
" formatoptions settings:
" t: Auto-wrap text using textwidth
" c: Auto-wrap comments using textwidth
" q: Allow formatting of comments with "gq"
set formatoptions+=tcq
" Tabs and Spaces Setup
set expandtab " Use spaces instead of tabs
set tabstop=4 " Number of spaces that a tab counts for
set shiftwidth=4 " Number of spaces to use for each step of autoindent
set softtabstop=4 " Number of spaces that a tab counts for while editing
" Enable syntax highlighting
syntax enable
" Always show the status line
set laststatus=2
" Define the format (File path, Modified flag, Type, Line/Col, Percentage)
set statusline=%f\ %m\ %y\ %=%l:%c\ %p%%
set statusline+=\ %{wordcount().words}\ words
" Enable spell check
set spell
" Spell check look and feel
hi clear SpellBad
hi SpellBad cterm=underline ctermfg=red ctermbg=NONE
hi SpellBad gui=undercurl
" ==============================================================================
" KEY MAPPINGS
" ==============================================================================
" Insert date with comment tag in INSERT mode
inoremap <C-d> <C-R>=strftime("# %a %b %d %I:%M:%S %p %Z %Y")<CR>
" Save file with Ctrl+S in INSERT mode
inoremap <C-s> <Esc>:w<CR>a
" Comment out a line of code with //
nnoremap <Leader>/ I// <Esc>
" Uncomment a single line in NORMAL mode
nnoremap <Leader>u :s/^\/\/ //e<CR>
" ==============================================================================
" LANGUAGE SPECIFIC SETTINGS & ABBREVIATIONS
" ==============================================================================
" Java specific rules
augroup java_settings
autocmd!
" Turn on C-indenting ONLY for Java files
autocmd FileType java setlocal cindent
autocmd FileType java iabbrev <buffer> pvm public static void main(String[] args) {<CR>}<Esc>O
" Auto-close curly braces and drop to a new line
autocmd FileType java inoremap {<CR> {<CR>}<Esc>O
augroup END
" Perl specific rules
augroup perl_settings
autocmd!
" Perl Header Template
autocmd FileType perl iabbrev <buffer> perlheader #!/usr/bin/perl<CR>use strict;<CR>use warnings;<CR><CR>
" Perl MySQL Connection Template (with safety paste toggle)
autocmd FileType perl iabbrev <buffer> dbconnect <C-O>:set paste<CR>use DBI;<CR><CR>my $dsn = "DBI:mysql:database=dbname;host=localhost";<CR>my $user = "username";<CR>my $password = "password";<CR><CR>my $dbh = DBI->connect($dsn, $user, $password, { RaiseError => 1, AutoCommit => 1 })<CR>or die "Connection failed: " . DBI->errstr;<CR><C-O>:set nopaste<CR>
augroup END
Comments
Post a Comment