zoukankan      html  css  js  c++  java
  • my leader's vimrc and screenrc

    .screenrc

    #
    # This is an example for the global screenrc file.
    # You may want to install this file as /usr/local/etc/screenrc.
    # Check config.h for the exact location.
    #
    # Flaws of termcap and standard settings are done here.
    #
    
    #startup_message off
    
    #defflow on # will force screen to process ^S/^Q
    
    deflogin on
    #autodetach off
    
    vbell on
    vbell_msg "   Wuff  ----  Wuff!!  "
    
    # all termcap entries are now duplicated as terminfo entries.
    # only difference should be the slightly modified syntax, and check for
    # terminfo entries, that are already corected in the database.
    # 
    # G0     we have a SEMI-GRAPHICS-CHARACTER-MODE
    # WS    this sequence resizes our window.
    # cs    this sequence changes the scrollregion
    # hs@    we have no hardware statusline. screen will only believe that
    #       there is a hardware status line if hs,ts,fs,ds are all set.
    # ts    to statusline
    # fs    from statusline
    # ds    delete statusline
    # al    add one line
    # AL    add multiple lines
    # dl    delete one line
    # DL    delete multiple lines
    # ic    insert one char (space)
    # IC    insert multiple chars
    # nx    terminal uses xon/xoff
    
    termcap  facit|vt100|xterm LP:G0
    terminfo facit|vt100|xterm LP:G0
    
    #the vt100 description does not mention "dl". *sigh*
    termcap  vt100 dl=5\E[M
    terminfo vt100 dl=5\E[M
    
    #facit's "al" / "dl"  are buggy if the current / last line
    #contain attributes...
    termcap  facit al=\E[L\E[K:AL@:dl@:DL@:cs=\E[%i%d;%dr:ic@
    terminfo facit al=\E[L\E[K:AL@:dl@:DL@:cs=\E[%i%p1%d;%p2%dr:ic@
    
    #make sun termcap/info better
    termcap  sun 'up=^K:AL=\E[%dL:DL=\E[%dM:UP=\E[%dA:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:IC=\E[%d@:WS=1000\E[8;%d;%dt'
    terminfo sun 'up=^K:AL=\E[%p1%dL:DL=\E[%p1%dM:UP=\E[%p1%dA:DO=\E[%p1%dB:LE=\E[%p1%dD:RI=\E[%p1%dC:IC=\E[%p1%d@:WS=\E[8;%p1%d;%p2%dt$<1000>'
    
    #xterm understands both im/ic and doesn't have a status line.
    #Note: Do not specify im and ic in the real termcap/info file as
    #some programs (e.g. vi) will (no,no, may (jw)) not work anymore.
    termcap  xterm|fptwist hs@:cs=\E[%i%d;%dr:im=\E[4h:ei=\E[4l
    terminfo xterm|fptwist hs@:cs=\E[%i%p1%d;%p2%dr:im=\E[4h:ei=\E[4l
    
    # Long time I had this in my private screenrc file. But many people
    # seem to want it (jw):
    # we do not want the width to change to 80 characters on startup:
    # on suns, /etc/termcap has :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l:
    termcap xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
    terminfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
    
    #
    # Do not use xterms alternate window buffer. 
    # This one would not add lines to the scrollback buffer.
    #termcap xterm|xterms|xs ti=\E7\E[?47l
    #terminfo xterm|xterms|xs ti=\E7\E[?47l
    
    #make hp700 termcap/info better
    termcap  hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@'
    terminfo hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@'
    
    #wyse-75-42 must have defflow control (xo = "terminal uses xon/xoff")
    #(nowadays: nx = padding doesn't work, have to use xon/off)
    #essential to have it here, as this is a slow terminal.
    termcap wy75-42 nx:xo:Z0=\E[?3h\E[31h:Z1=\E[?3l\E[31h
    terminfo wy75-42 nx:xo:Z0=\E[?3h\E[31h:Z1=\E[?3l\E[31h
    
    #remove some stupid / dangerous key bindings
    bind ^x
    bind x
    bind ^k
    #bind L
    bind ^\
    #make them better
    bind \\ quit
    bind K kill
    bind I login on
    bind O login off
    bind } history
    bind X lockscreen
    #
    # Example of a user's .screenrc file
    #
    
    # This is how one can set a reattach password:
    # password ODSJQf.4IJN7E    # "1234"
    
    # no annoying audible bell, please
    vbell on
    
    # detach on hangup
    autodetach on
    
    # don't display the copyright page
    startup_message off
    
    # emulate .logout message
    pow_detach_msg "Screen session of $LOGNAME $:cr:$:nl:ended."
    
    # advertise hardstatus support to $TERMCAP
    # termcapinfo  * '' 'hs:ts=\E_:fs=\E\\:ds=\E_\E\\'
    
    # make the shell in every window a login shell
    #shell -$SHELL
    
    # autoaka testing
    # shellaka '> |tcsh'
    # shellaka '$ |sh'
    
    # set every new windows hardstatus line to somenthing descriptive
    # defhstatus "screen: ^En (^Et)"
    
    defscrollback 1000
    
    # don't kill window after the process died
    # zombie "^["
    
    # enable support for the "alternate screen" capability in all windows
    # altscreen on
    
    ################
    #
    # xterm tweaks
    #
    
    #xterm understands both im/ic and doesn't have a status line.
    #Note: Do not specify im and ic in the real termcap/info file as
    #some programs (e.g. vi) will not work anymore.
    termcap  xterm hs@:cs=\E[%i%d;%dr:im=\E[4h:ei=\E[4l
    terminfo xterm hs@:cs=\E[%i%p1%d;%p2%dr:im=\E[4h:ei=\E[4l
    
    #80/132 column switching must be enabled for ^AW to work
    #change init sequence to not switch width
    termcapinfo  xterm Z0=\E[?3h:Z1=\E[?3l:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l
    
    # Make the output buffer large for (fast) xterms.
    #termcapinfo xterm* OL=10000
    termcapinfo xterm* OL=100
    
    # tell screen that xterm can switch to dark background and has function
    # keys.
    termcapinfo xterm 'VR=\E[?5h:VN=\E[?5l'
    termcapinfo xterm 'k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~'
    termcapinfo xterm 'kh=\EOH:kI=\E[2~:kD=\E[3~:kH=\EOF:kP=\E[5~:kN=\E[6~'
    
    # special xterm hardstatus: use the window title.
    termcapinfo xterm 'hs:ts=\E]2;:fs=\007:ds=\E]2;screen\007'
    
    #terminfo xterm 'vb=\E[?5h$<200/>\E[?5l'
    termcapinfo xterm 'vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l'
    
    # emulate part of the 'K' charset
    termcapinfo   xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334,{\344,|\366,}\374,~\337'
    
    # xterm-52 tweaks:
    # - uses background color for delete operations
    termcapinfo xterm* be
    
    ################
    #
    # wyse terminals
    #
    
    #wyse-75-42 must have flow control (xo = "terminal uses xon/xoff")
    #essential to have it here, as this is a slow terminal.
    termcapinfo wy75-42 xo:hs@
    
    # New termcap sequences for cursor application mode.
    termcapinfo wy* CS=\E[?1h:CE=\E[?1l:vi=\E[?25l:ve=\E[?25h:VR=\E[?5h:VN=\E[?5l:cb=\E[1K:CD=\E[1J
    
    ################
    #
    # other terminals
    #
    
    # make hp700 termcap/info better
    termcapinfo  hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@'
    
    # Extend the vt100 desciption by some sequences.
    termcap  vt100* ms:AL=\E[%dL:DL=\E[%dM:UP=\E[%dA:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC
    terminfo vt100* ms:AL=\E[%p1%dL:DL=\E[%p1%dM:UP=\E[%p1%dA:DO=\E[%p1%dB:LE=\E[%p1%dD:RI=\E[%p1%dC
    termcapinfo linux C8
    # old rxvt versions also need this
    # termcapinfo rxvt C8
    
    
    ################
    #
    # keybindings
    #
    
    #remove some stupid / dangerous key bindings
    bind k
    bind ^k
    bind .
    bind ^\
    bind \\
    bind ^h
    bind h
    #make them better
    bind 'K' kill
    bind 'I' login on
    bind 'O' login off
    bind '}' history
    
    # Yet another hack:
    # Prepend/append register [/] to the paste if ^a^] is pressed.
    # This lets me have autoindent mode in vi.
    #register [ "\033:se noai\015a"
    #register ] "\033:se ai\015a"
    #bind ^] paste [.]
    
    ################
    #
    # default windows
    #
    
    # screen -t local 0
    # screen -t mail 1 mutt
    # screen -t 40 2 rlogin server
    
    # caption always "%3n %t%? @%u%?%? [%h]%?%=%c"
    ## alternative caption, gives window list, LOGNAME and current date:
    # caption always "%{wk}%?%-Lw%?%{bw}%n*%f %t%?(%u)%?%{wk}%?%+Lw %=%{mk}@%H %{yk}%D %{ck}%M%{wk} %{ck}%d %{gk}%c"
    # hardstatus alwaysignore
    # hardstatus alwayslastline "%Lw"
    
    # Red Hat's normal status line
    hardstatus string "[screen %n%?: %t%?] %h"
    
    # bind = resize =
    # bind + resize +1
    # bind - resize -1
    # bind _ resize max
    #
    # defnonblock 1
    # blankerprg rain -d 100
    # idle 30 blanker
    
    # Customize screenrc
    
    # kill splash screen
    startup_message off
    
    # replace C-a with C-t
    # escape        ^Tt
    
    # show original screen when exit from emacs/vi
    altscreen    on
    
    # disable flash screen bell
    vbell        off
    
    # An alternative hardstatus to display a bar at the bottom listing the
    # windownames and highlighting the current windowname in blue. (This is only
    # enabled if there is no hardstatus setting for your terminal)
    # hardstatus on
    hardstatus alwayslastline
    hardstatus string "%{.kw}%-w%{.BW}%n %t%{-}%+w %=%{..G} @%H %{..Y} %Y-%m-%d %c"
    
    # show caption at bottom of screen
    # caption always "%{= kw}%-w%{= BW}%n %t%{-}%+w %-= @%H - %Y-%m-%d %c"
    
    # scroll with shift-pgup/pgdn
    termcapinfo xterm|xterms|xs|rxvt ti@:te@

    .vimrc

    """"""""""""""""""""""""""""""""""""""
    " 编辑器设置
    """"""""""""""""""""""""""""""""""""""
    "开启语法高亮
    syntax enable
    syntax on
    
    let $VIM = "/home/paul/vim/"
    "配色
    colors desert 
    "设置高亮搜索
    set hlsearch
    
    "设置菜单语言为英文
    set langmenu=en_US
    set encoding=utf-8
    set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1 
    set termencoding=utf-8 
    source $VIMRUNTIME/delmenu.vim
    source $VIMRUNTIME/menu.vim
    "so supertab.vim
    
    
    " 去掉输入错误的提示声音
    set noeb
    
    " 在处理未保存或只读文件的时候,弹出确认
    set confirm
    
    " 不要用空格代替制表符
    "set noexpandtab
     
    " 用空格代替制表符
    set et
    
    "显示行号
    set number
    
    "Tab 宽度
    set ts=4
    
    "自动缩进
    set sw=4
    
    "禁止生成临时文件
    set nobackup
    set noswapfile
    
    "搜索忽略大小写
    set ignorecase
    
    " 总是显示状态行
    " set laststatus=2
    
    "C/C++ 风格的自动缩进
    set cin
    "设定 C/C++ 风格自动缩进的选项
    set cino=:0g0t0(sus
    
    "打开普通文件类型的自动缩进
    set ai
    
    "在编辑过程中,在右下角显示光标位置的状态行
    set ruler
    
    "显示匹配括号
    set showmatch
    
    "在insert模式下能用删除键进行删除
    set backspace=indent,eol,start
    
    "代码折叠, 命令 za
    set foldmethod=syntax
    set foldlevel=100  "启动vim时不要自动折叠代码
    
    "设置字体 
    set guifont=courier\ 10
    
    "自动换行
    set autoindent
    
    "设置编码
    set encoding=utf-8
    set fileencoding=utf-8
    set termencoding=utf-8
    set langmenu=utf-8
    set enc=utf-8
    set fenc=utf-8
    set fencs=utf-8
    
    "隐藏菜单栏
    set guioptions-=m
    set guioptions-=T
    
    """"""""""""""""""""""""""""""""""""""
    " 快捷键设置
    """"""""""""""""""""""""""""""""""""""
    
    "当前目录生成tags语法文件,用于自动完成,函数提示:code_complete.vim OmniCppComplete.vim ...
    "map <F5> :!ctags -R --c-kinds=+p --fields=+S . <CR>
    map <F1> :!ctags -R --c-kinds=+p --c++-kinds=+p --fields=+iaS --extra=+q . <CR>
    
    "函数和变量列表
    map <F6> :TlistToggle<CR> 
    
    "文件树状列表
    map <F8> :NERDTreeToggle<CR> 
    
    "映射复制、粘贴、剪贴ctrl+c ctrl+v ctrl+x
    "map <C-V> "+pa<Esc>
    "map! <C-V> <Esc>"+pa
    "map <C-C> "+y
    "map <C-X> "+x
    
    " 映射全选 ctrl+a
    map <C-A> ggVG
    map! <C-A> <Esc>ggVG
    
    "下面6个映射用于在不退出输入模式的情况下移动光标
    "具体方法就是同时按下ctrl和光标移动键(h or j or k or l)
    "crtl-b,ctrl-w等同于normal模式下的b和w(前移一个单词和后移一个单词)
    "注意,ctrl-h在输入模式下默认等同于backspace键(这和在shell下是一样的)
    imap <C-h> <C-o>h
    imap <C-j> <C-o>j
    imap <C-k> <C-o>k
    imap <C-l> <C-o>l
    imap <C-e> <C-o>e
    imap <C-b> <C-o>b
    imap <C-w> <C-o>w
    imap <C-x> <C-o>x
    
    " 多行缩进
    map <Tab> >
    map <S-Tab> <
    
    "全屏
    "map <F11> <Esc>:call libcallnr("gvimfullscreen.dll", "ToggleFullScreen", 0)<CR>
    
    "F1 后退 
    "F2 前进 
    "noremap <F1> <C-o>   
    "noremap <F2>  <Tab>   
    
    "F7 编译
    map <unique> <F7>   :call Compile()<CR>
    function! Compile()
    copen<CR>    <C-W>10_ 
    exec "w"
    exec "!g++ -g % -o %<"
    endfunction
    
    inoremap   <F10>   :call Debug()<CR>
    function! Debug()
    copen<CR>    <C-W>10_ 
    exec "w"
    exec "!gdb %<"
    endfunction
    
    "CTRL-s    保存(保持当前模式不变) 
    "CTRL-o    打开文件对话框
    noremap <C-s> :w<CR>   
    noremap! <C-s> <ESC><ESC>:w<CR>a   
    noremap <C-o> :browse tabnew<CR>:cd %:p:h<CR>   
    
    "Tab       跳至下一窗口 
    "SHIFT-Tab 跳至上一窗口
    noremap <Tab> <C-W>w:cd %:p:h<CR>:<CR>   
    noremap <S-Tab> <C-W>W:cd %:p:h<CR>:<CR> 
    
    """"""""""""""""""""""""""""""""""""""
    " 插件设置
    """"""""""""""""""""""""""""""""""""""
    "开启OmniCppComplete.vim
    "set nocp
    "filetype plugin on
    "设置当用户预先声明namespace时也能自动补全代码(如使用using std::string)
    "let OmniCpp_DefaultNamespaces = ["std"]
    "set completeopt=longest,menu
    
    "2Html插件,启用XHtml css
    "let html_number_lines=1
    "let html_use_css=1
    "let use_xhtml=1
    
    "fencview.vim 插件设置
    "let g:fencview_autodetect = 1  "打开文件时自动识别编码
    "let g:fencview_checklines = 10 "检查前后10行来判断编码
    
    "autocomplpop.vim 插件设置
    "let g:AutoComplPop_IgnoreCaseOption=1
    set ignorecase
    set mouse-=a
    " vimgdb setting
    "let g:vimgdb_debug_file = ""
    "run macros/gdb_mappings.vim 
    
    """""""""""""""""""""""""""""""""""""""""""
    
    ""python编程相关
    if has("autocmd")
      filetype plugin indent on
    
      " Python 文件的一般设置,比如不要 tab 等
      autocmd FileType python set foldmethod=indent
      autocmd FileType python set cinwords=if,elif,else,for,while,try,except,finally,def,class
    endif
    
    " doxgen 
    let g:doxygenToolkit_authorName="charis.yangc@alibaba-inc.com"
    let g:doxygenToolkit_briefTag_funcName="yes"
    
    "for snippetEmu
    let g:snip_set_textmate_cp=1
    "set cursorline
    " EnhanceCommentify
    "map <F2> <Esc><Esc>:call EnhancedCommentify('yes','comment')<CR>
    "map <F2> <Esc><Esc>:call EnhancedCommentify('yes','decomment')<CR>
    let g:EnhCommentifyFirstLineMode='yes'
    let g:EnhCommentifyRespectIndent='yes'
    let g:EnhCommentifyUseBlockIndent='yes'
    let g:EnhCommentifyAlignRight = 'yes'
    let g:EnhCommentifyPretty = 'yes'
    let g:EnhCommentifyBindInNormal = 'no'
    let g:EnhCommentifyBindInVisual = 'no'
    let g:EnhCommentifyBindInInsert = 'no'
    " NOTE: VisualComment,Comment,DeComment are plugin mapping(start with <Plug>),
    " so can't use remap here
    vmap <unique> <F2> <Plug>VisualComment
    nmap <unique> <F2> <Plug>Comment
    imap <unique> <F2> <ESC><Plug>Comment
    vmap <unique> <F3> <Plug>VisualDeComment
    nmap <unique> <F3> <Plug>DeComment
    imap <unique> <F3> <ESC><Plug>DeComment
    
    map <C-b> <esc>:BufExplorer<CR>
    " gz in command mode closes the current buffer
    map gz :bdelete<cr>
    " g[bB] in command mode switch to the next/prev. buffer
    map gb :bnext<cr>
    map gB :bprev<cr>
    " json highlight
    nmap <C-\>s :cs find s <C-R>=expand("<cword>")<CR><CR>
    nmap <C-\>g :cs find g <C-R>=expand("<cword>")<CR><CR>
    nmap <C-\>c :cs find c <C-R>=expand("<cword>")<CR><CR>
    nmap <C-\>t :cs find t <C-R>=expand("<cword>")<CR><CR>
    nmap <C-\>e :cs find e <C-R>=expand("<cword>")<CR><CR>
    nmap <C-\>f :cs find f <C-R>=expand("<cfile>")<CR><CR>
    nmap <C-\>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
    nmap <C-\>d :cs find d <C-R>=expand("<cword>")<CR><CR>

    .bashrc

     1 # .bashrc
     2 
     3 # Source global definitions
     4 if [ -f /etc/bashrc ]; then
     5     . /etc/bashrc
     6 fi
     7 
     8 # User specific aliases and functions
     9 #export PATH=./:/media/sdb1/xiaoxi.jiang/workspace/ngram/srilm_64/bin/i686_c/:$PATH
    10 #export LD_LIBRARY_PATH=/media/sdb1/xiaoxi.jiang/galaxy_dist/lib64/:./:$LD_LIBRARY_PATH
    11 export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib64/:./:$LD_LIBRARY_PATH
    12 
    13 export ip='65'
    14 #export PS1='[\u\[\e[1;36m\]@\[$ip\[\e[1;35m\]\]:\W\[\e[0m\]]$'
    15 export PS1='[\u\[\e[1;36m\]@\[$ip\[\e[1;35m\]\] \W\[\e[0m\]]$'
    16 
    17 
    18 # Auto add env parameter $PROMPT_COMMAND when use non-Linux tty login by ssh.
    19 if [ "$SSH_CONNECTION" != '' -a "$TERM" != 'linux' ]; then
    20     declare -a HOSTIP
    21     HOSTIP=`echo $SSH_CONNECTION |awk '{print $3}'`
    22     export PROMPT_COMMAND='echo -ne "\033]0;${USER}@$HOSTIP:[${HOSTNAME%%.*}]:${PWD/#$HOME/~} \007"'
    23 fi

    .bashrc

    # .bashrc
    
    # Source global definitions
    if [ -f /etc/bashrc ]; then
        . /etc/bashrc
    fi
    
    # User specific aliases and functions
    export PATH=~/rpc_wrapper/:$PATH
    #export LD_LIBRARY_PATH=/media/sdb1/xiaoxi.jiang/galaxy_dist/lib64/:./:$LD_LIBRARY_PATH
    export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib64/:./:$LD_LIBRARY_PATH
    export PS1='[\u:\[\e[1;36m\]\W\[\e[0m\]]$'
  • 相关阅读:
    Making a CocoaPod
    关于Http
    The podfile
    iOS 8个实用小技巧(总有你不知道的和你会用到的)
    关于深拷贝浅拷贝
    适配ios10(iTunes找不到构建版本)
    iOS 10 推送的简单使用
    __block 和 __weak的区别
    Masonry使用注意事项
    iOS数字键盘自定义按键
  • 原文地址:https://www.cnblogs.com/hengli/p/3057167.html
Copyright © 2011-2022 走看看