Skip to main content

vimrc

scriptencoding=utf-8

"set mouse=a

set tags=./tags,../tags,../../tags,../../../tags,tags


function! Komment()
    if getline(".") =~ '\/\*'
        let hls=@/
        s/^\/\*//
        s/*\/$//
        let @/=hls
    else
        let hls=@/
        s/^/\/*/
        s/$/*\//
        let @/=hls
    endif
endfunction


function! C_comment()
    let hls=@/
    s/^/\/\//
    let @/=hls
endfunction


function! C2_comment()
    let hls=@/
    s/^/"/
    let @/=hls
endfunction

function! C3_comment()
    let hls=@/
    s/^/#/
    let @/=hls
endfunction

function! HTML_comment()
    let hls=@/
    s/^//
    let @/=hls
endfunction

function! UNcomment()
    let hls=@/

    if getline(".") =~ '\/\/'
        s/^\/\/// "for c
    elseif getline(".") =~ '\"'
        s/^"//
    elseif getline(".") =~ '#'
        s/^#//
    elseif getline(".") =~ '#$'
        s/^#$/$/
    endif

    let @/=hls
endfunction

map ,/ :call C_comment()
map ,\ :call Komment()
map ," :call C2_comment()
map ,# :call C3_comment()
map ,< :call HTML_comment()

map ,c :call UNcomment()


"colorscheme torte
"colorscheme default
"colorscheme delek
set nu
set hlsearch

set nocompatible
set backspace=2
set autoindent
"set cindent
set smartindent
set textwidth=90
set nowrapscan
set nobackup
set novisualbell
set nojoinspaces
set ruler
set tabstop=4
set shiftwidth=4
set keywordprg=man\ -a
set showcmd
set showmatch
set ignorecase
set incsearch
set autowrite
"set linespace=2
set linespace=1
set title
set keywordprg=wdic
"set statusline=\ %<%l:%v\ [%P]%=%a\ %h%m%r\ %F\
set statusline=%<%f\ %m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}%=%l,%c%V%8P
"set expandtab
set wildmenu
set laststatus=2
set matchpairs+=<:>
syntax on


" for programming
set formatoptions=qro
set showmatch
set foldmethod=marker foldmarker={{{,}}}


" dictionary
autocmd FileType perl :set dictionary=$HOME/vim71/runtime/syntax/perl.vim
autocmd FileType cgi :set dictionary=$HOME/vim71/runtime/syntax/perl.vim
autocmd FileType c :set dictionary=$HOME/vim71/runtime/syntax/c.vim
autocmd FileType sh :set dictionary=$HOME/vim71/runtime/syntax/shell.vim
autocmd FileType html :set dictionary=$HOME/vim71/runtime/syntax/html.vim
autocmd FileType php :set dictionary=$HOME/vim71/runtime/syntax/php.vim
autocmd FileType sql :set dictionary=$HOME/vim71/runtime/syntax/sql.vim



highlight NOTE1 cterm=bold ctermfg=Magenta guibg=Yellow guifg=Magenta
"match NOTE1 /NOTE/
au BufNew,BufRead * match NOTE1 /NOTE/

highlight TODO1 cterm=bold ctermfg=Magenta guibg=Blue guifg=Yellow
au BufNew,BufRead * match TODO1 /TODO/


autocmd BufRead *.mxml set filetype=mxml syntax=mxml


"" Jeff's cscope settings
"if has("cscope")
"" set csprg=/usr/bin/cscope
"set csprg=~/bin/cscope
"set csto=0
"set cst
"set nocsverb
"" add any database in current directory
"if filereadable("cscope.out")
"cs add cscope.out
"" else add database pointed to by environment
"elseif $CSCOPE_DB != ""
"cs add $CSCOPE_DB
"endif
"set csverb
"
"" Using 'CTRL-\' then a search type makes the vim window
"" "shell-out", with search results displayed on the bottom
"
"nmap s :cs find s =expand("")
"nmap g :cs find g =expand("")
"nmap c :cs find c =expand("")
"nmap t :cs find t =expand("")
"nmap e :cs find e =expand("")
"nmap f :cs find f =expand("")
"nmap i :cs find i ^=expand("")$
"nmap d :cs find d =expand("")
"
"" Using 'CTRL-spacebar' then a search type makes the vim window
"" split horizontally, with search result displayed in
"" the new window.
"
"nmap s :scs find s =expand("")
"nmap g :scs find g =expand("")
"nmap c :scs find c =expand("")
"nmap t :scs find t =expand("")
"nmap e :scs find e =expand("")
"nmap f :scs find f =expand("")
"nmap i :scs find i ^=expand("")$
"nmap d :scs find d =expand("")
"
"" Hitting CTRL-space *twice* before the search type does a vertical
"" split instead of a horizontal one
"
"nmap s :vert scs find s =expand("")
"nmap g :vert scs find g =expand("")
"nmap c :vert scs find c =expand("")
"nmap t :vert scs find t =expand("")
"nmap e :vert scs find e =expand("")
"nmap i :vert scs find i ^=expand("")$
"nmap d :vert scs find d =expand("")
"endif

highlight NOTE1 cterm=bold ctermfg=Magenta guibg=Yellow guifg=Magenta
"match NOTE1 /NOTE/
au BufNew,BufRead * match NOTE1 /NOTE/

highlight TODO1 cterm=bold ctermfg=Magenta guibg=Blue guifg=Yellow
au BufNew,BufRead * match TODO1 /TODO/

highlight SUNINNO1 cterm=bold ctermfg=Magenta guibg=Blue guifg=Yellow
au BufNew,BufRead * match SUNINNO1 /SUNINNO/

autocmd BufRead *.mxml set filetype=mxml syntax=mxml



set nolist
set listchars=tab:$_,trail:-,nbsp:%,extends:>,precedes:<
"set listchars=tab:^_,trail:-,nbsp:%,extends:>,precedes:<
"set listchars=tab:»·,eol:¬,trail:.,nbsp:.,extends:#,precedes:<

set encoding=utf-8
set fileencoding=utf-8


" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')

" let Vundle manage Vundle, required
    Plugin 'VundleVim/Vundle.vim'
" Installing plugins to /home/user/.vim/bundle
"Plugin 'VundleVim/Vundle.vim'
    Plugin 'Source-Explorer-srcexpl.vim'
    Plugin 'AutoComplPop'
    Plugin 'SrcExpl'

    Plugin 'The-NERD-tree'
"    map nt :NERDTreeToggle
    Plugin 'airblade/vim-gitgutter'
    Plugin 'vim-airline/vim-airline'
    Plugin 'vim-airline/vim-airline-themes'
    Plugin 'nanotech/jellybeans.vim'
    Plugin 'desert-warm-256'

" Plugin 'ctrlp'

"Helptags

call vundle#end()

"AirlineTheme term
let g:airline_theme='term'

colorscheme desert-warm-256

Comments

Popular posts from this blog

Linux Resources Monitoring

dstat Requirements:python Dstat is a versatile replacement for iostat, vmstat and ifstat http://linux.softpedia.com/get/System/Diagnostics/Dstat-1401.shtml  - download the source file  - tar -xvjf dstate-0.7.2.tar.bz2  - cd dstate-0.7.2  - sudo make install 사용법 dstat -cdngys --top-io-adv --top-bio-adv 창넓이가 크면 dstat -cdngys --top-io --top-bio dstat 기본옵션은 -cdngy 2. pktstat requirements: libpcap-devel, ncurses-devel pktstat man page 사용법:sudo pktstat -i eth0 -T -l 실행결과 interface: eth0    total: 43.9Mb (3s) cur: 12.3M (78%) min: 12.3M max: 15.8M avg: 14.5M bps    bps    %      b desc   1.4k   0%   4.3k arp  591.8   0%   1.2k ip proto 88 55.101.66.3 <-> igrp-routers  91.3k   0%  91.3k tcp a100236:4478 <-> console:ssh  42.6k   0% 216.4k tcp a100390:mailprox <-> console:ssh   1.1k   0%   ...

nginx로 다중 포트 설정 및 다중 react app 설정

nginx에 다중 포트 설정하기 react로 여러 webapp를 개발하고, 동일한 서버에 실행시킬 필요가 있다. 이때 간단히 nginx에서 다중포트로 여러 webapp를 동일한 서버에서 실행시킬 수 있다. /etc/nginx/sites-available/에 default 파일이 있다. 보통 port 80로 설정되어 있다. 이 파일을 복사해서 sub로 명명한다.   아래와 같이 포트 8080으로 정하고, react app를 build한 디렉터리를 root <dir>로 지정하고, $> sudo service nginx restart 하면 된다. $>sudo systemctl status nginx.service 로 nginx 상태 확인이 가능하면, $> netstat -ano | grep 8080 으로 8080 포트가 살아있는 또는 외부PC에서  $>telnet ip 8080으로 telnet 접속이 되는지 확인하면 된다. 종종 Nginx 500 Interval Server Error가 발생하는데, 이는 1) root <dir>에서 <dir> 주소가 정확하지 않거나, 2) 파일 권한이 없거나이다. chmod 755 <dir>하면 대부분 해결될 것이다. 그럼 오늘도 유익한 하루 되시길..   

SQLITE Result Codes

#define SQLITE_OK 0 /* Successful result */ /* beginning-of-error-codes */ #define SQLITE_ERROR 1 /* SQL error or missing database */ #define SQLITE_INTERNAL 2 /* Internal logic error in SQLite */ #define SQLITE_PERM 3 /* Access permission denied */ #define SQLITE_ABORT 4 /* Callback routine requested an abort */ #define SQLITE_BUSY 5 /* The database file is locked */ #define SQLITE_LOCKED 6 /* A table in the database is locked */ #define SQLITE_NOMEM 7 /* A malloc() failed */ #define SQLITE_READONLY 8 /* Attempt to write a readonly database */ #define SQLITE_INTERRUPT 9 /* Operation terminated by sqlite3_interrupt()*/ #define SQLITE_IOERR 10 /* Some kind of disk I/O error occurred */ #define SQLITE_CORRUPT 11 /* The database disk image is malformed */ #define SQLITE_NOTFOUND 12 /* NOT USED. Table or record not found */ #define SQLITE_FULL 13 /* Insertion failed because data...