{"id":1211,"date":"2011-09-20T11:11:40","date_gmt":"2011-09-20T03:11:40","guid":{"rendered":"https:\/\/www.csslayer.tk\/wordpress\/?p=1211"},"modified":"2011-12-21T15:17:10","modified_gmt":"2011-12-21T07:17:10","slug":"poor-vim-configuration","status":"publish","type":"post","link":"https:\/\/www.csslayer.info\/wordpress\/linux\/poor-vim-configuration\/","title":{"rendered":"\u5f88\u83dc\u7684VIM\u914d\u7f6e"},"content":{"rendered":"<p>\u524d\u7565\uff0c\u524d\u534a\u5c31\u662fvim\u81ea\u5e26\u7684example\u3002<\/p>\n<pre>syntax enable\r\nset hlsearch\r\nset autoindent\r\nset nocp\r\nset ts=4\r\nset sw=4\r\nset number\r\nset encoding=utf-8\r\n\r\nset fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1\r\n\r\nfiletype plugin indent on\r\n\r\nset grepprg=grep\\ -nH\\ $*\r\nlet g:tex_flavor = \"latex\"\r\n\r\nset runtimepath=~\/.vim,\/usr\/share\/vim,\/usr\/share\/vim\/vimfiles,$VIMRUNTIME,$VIM\/vimfiles\/after,~\/.vim\/after\r\n\r\nautocmd FileType python setlocal et sta sw=4 sts=4\r\n\r\nset completeopt=longest,menu\r\n\r\n\"cs add cscope.out .\r\n\"\r\nau BufReadPost * if line(\"'\\\"\") &gt; 0|if line(\"'\\\"\") &lt;= line(\"$\")|exe(\"norm '\\\"\")|else|exe \"norm $\"|endif|endif\r\n\r\nset tags=tags;\r\n\r\nfunction! UpdateCtags()\r\n\u00a0\u00a0 \u00a0let curdir=getcwd()\r\n\"\u00a0\u00a0 \u00a0echo filereadable(\"tags\")\r\n\u00a0\u00a0 \u00a0while !filereadable(\".\/tags\")\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0cd ..\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0if getcwd() == \"\/\"\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0break\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0endif\r\n\u00a0\u00a0 \u00a0endwhile\r\n\u00a0\u00a0 \u00a0if filewritable(\".\/tags\")\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0!ctags -R --c++-kinds=+px --fields=+iaS --extra=+q --excmd=pattern --exclude=Makefile --exclude=.\r\n\u00a0\u00a0 \u00a0else\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0execute \":cd \" . curdir\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0!ctags -R --c++-kinds=+px --fields=+iaS --extra=+q --excmd=pattern --exclude=Makefile --exclude=.\r\n\u00a0\u00a0 \u00a0endif\r\n\"\u00a0\u00a0 \u00a0echo getcwd() curdir\r\n\u00a0\u00a0 \u00a0execute \":cd \" . curdir\r\nendfunction\r\n\r\nnmap &lt;F10&gt; :call UpdateCtags()&lt;CR&gt;\r\n\r\nnmap &lt;C-]&gt; :tj &lt;C-R&gt;=expand(\"&lt;cword&gt;\")&lt;CR&gt;&lt;CR&gt;\r\n\r\n\" Tlist\r\n\"if &amp;diff\r\n\"let Tlist_Auto_Open=0 \"don't auto pen when compare two files\r\n\"else\r\n\"let Tlist_Auto_Open=1 \"auto pen Tlist when open a file\r\n\"endif\r\n\r\n\"set taglist window in right, delete the following line if you don't like\r\nlet Tlist_Auto_Update=1\r\nlet Tlist_File_Fold_Auto_Close=1\r\n\"auto close Tlist when exiting file.\r\nlet Tlist_Exit_OnlyWindow = 1\r\nnnoremap &lt;silent&gt; &lt;F8&gt; :TlistToggle&lt;CR&gt;\r\n\r\nnmap &lt;F7&gt; :copen&lt;CR&gt;\r\nnmap &lt;F6&gt; :cclose&lt;CR&gt;\r\n\r\nlet g:input_toggle = 1\r\nfunction! Fcitx2en()\r\n\u00a0\u00a0 let s:input_status = system(\"fcitx-remote\")\r\n\u00a0\u00a0 if s:input_status == 2\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 let g:input_toggle = 1\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 let l:a = system(\"fcitx-remote -c\")\r\n\u00a0\u00a0 endif\r\nendfunction\r\n\r\nfunction! Fcitx2zh()\r\n\u00a0\u00a0 let s:input_status = system(\"fcitx-remote\")\r\n\u00a0\u00a0 if s:input_status != 2 &amp;&amp; g:input_toggle == 1\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 let l:a = system(\"fcitx-remote -o\")\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 let g:input_toggle = 0\r\n\u00a0\u00a0 endif\r\nendfunction\r\n\r\nset timeoutlen=150\r\nautocmd InsertLeave * call Fcitx2en()\r\n\"autocmd InsertEnter * call Fcitx2zh()\r\n\"set expandtab\r\n\r\n\" Set to auto read when a file is changed from the outside\r\nset autoread\r\n\r\nlet g:doxygenToolkit_authorName=\"CSSlayer\"\r\nlet g:doxygenToolkit_briefTag_funcName=\"yes\"\r\n\r\nnmap &lt;F3&gt;a :DoxAuthor&lt;cr&gt;\r\nnmap &lt;F3&gt;f :Dox&lt;cr&gt;\r\nnmap &lt;F3&gt;b :DoxBlock&lt;cr&gt;\r\nnmap &lt;F3&gt;c O\/** *\/&lt;Left&gt;&lt;Left&gt;\r\n\r\n\" When vimrc is edited, reload it\r\nautocmd! bufwritepost vimrc source ~\/.vimrc\r\n\r\nset expandtab\r\n\r\nset fdm=marker\r\n\r\nset listchars=tab:&gt;\u2212,trail:\u2212\r\nset list\r\n\r\nfunction! SaveSession()\r\n\u00a0\u00a0\u00a0 let cwd = getcwd()\r\n\u00a0\u00a0\u00a0 let cwd = fnamemodify(cwd, ':t')\r\n\u00a0\u00a0\u00a0 if cwd != \"\"\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 execute \"mksession! ~\/.vim\/session\/\" . cwd . \".session\"\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 execute \"wviminfo! ~\/.vim\/session\/\" . cwd . \".viminfo\"\r\n\u00a0\u00a0\u00a0 endif\r\nendfunction\r\n\r\nau VimLeave * call SaveSession()\r\n\r\nif $TERM =~ 'xterm'\r\n\u00a0\u00a0\u00a0 let &amp;t_SI = \"\\&lt;Esc&gt;]50;CursorShape=1\\x7\"\r\n\u00a0\u00a0\u00a0 let &amp;t_EI = \"\\&lt;Esc&gt;]50;CursorShape=0\\x7\"\r\nendif\r\n\r\nlet g:DirDiffDynamicDiffText = 1<\/pre>\n<p>\u771f\u7684\u5f88\u571f\u9cd6\u7684\u3002\u4e2d\u95f4\u6709\u4e2af10\u4e00\u952e\u5237\u65b0ctags\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u524d\u7565\uff0c\u524d\u534a\u5c31\u662fvim\u81ea\u5e26\u7684example\u3002 syntax enable set hlsearch set autoindent set nocp set ts=4 set sw=4 set number set encoding=utf-8 set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1 filetype plugin indent on set grepprg=grep\\ -nH\\ $* let g:tex_flavor = &#8220;latex&#8221; set runtimepath=~\/.vim,\/usr\/share\/vim,\/usr\/share\/vim\/vimfiles,$VIMRUNTIME,$VIM\/vimfiles\/after,~\/.vim\/after autocmd FileType python setlocal et sta sw=4 &hellip; <a href=\"https:\/\/www.csslayer.info\/wordpress\/linux\/poor-vim-configuration\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-1211","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/posts\/1211","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/comments?post=1211"}],"version-history":[{"count":3,"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/posts\/1211\/revisions"}],"predecessor-version":[{"id":1213,"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/posts\/1211\/revisions\/1213"}],"wp:attachment":[{"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/media?parent=1211"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/categories?post=1211"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.csslayer.info\/wordpress\/wp-json\/wp\/v2\/tags?post=1211"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}