安装C++的MAN手册:
sudo apt-get install manpages manpages-dev manpages-posix manpages-posix-dev sudo apt-get install libstdc++-10-doc
安装SQlite3:
sudo apt install sqlite3
安装Fcitx:
sudo apt-get install im-switch libapt-pkg-perl fcitx fcitx-table-wbpy sudo apt --fix-broken install
安装结构体ctags手册
cd /usr/include sudo apt install exuberant-ctags sudo ctags -R
安装G++:
sudo apt-get install g++ gcc
安装vim命令行中输入:
sudo apt-get install vim
查看安装是否成功输入:
vim -v
安装QT后:
sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatformi
vim配置
在主目录下新建.vimrc,并添加以下内容
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 显示相关 " """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" "set shortmess=atI " 启动的时候不显示那个援助乌干达儿童的提示 "winpos 5 5 " 设定窗口位置 "set lines=40 columns=155 " 设定窗口大小 "set nu " 显示行号 set go= " 不要图形按钮 "color asmanian2 " 设置背景主题 "set guifont=Courier_New:h10:cANSI " 设置字体 "syntax on " 语法高亮 autocmd InsertLeave * se nocul " 用浅色高亮当前行 autocmd InsertEnter * se cul " 用浅色高亮当前行 "set ruler " 显示标尺 set showcmd " 输入的命令显示出来,看的清楚些 "set cmdheight=1 " 命令行(在状态行下)的高度,设置为1 "set whichwrap+=<,>,h,l " 允许backspace和光标键跨越行边界(不建议) "set scrolloff=3 " 光标移动到buffer的顶部和底部时保持3行距离 set novisualbell " 不要闪烁(不明白) set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")} "状态行显示的内容 set laststatus=1 " 启动显示状态行(1),总是显示状态行(2) " set foldenable " 允许折叠 set foldmethod=manual " 手动折叠 "set background=dark "背景使用黑色 set nocompatible "去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限 " 显示中文帮助 if version >= 603 set helplang=cn set encoding=utf-8 endif " 设置配色方案 "colorscheme murphy "字体 "if (has("gui_running")) " set guifont=Bitstream\ Vera\ Sans\ Mono\ 10 "endif " set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936 set termencoding=utf-8 set encoding=utf-8 set fileencodings=ucs-bom,utf-8,cp936 set fileencoding=utf-8 autocmd BufReadPost * \ if line("'\"") > 0 && line("'\"") <= line("$") | \ exe "normal g'\"" | \ endif " SHORTCUT SETTINGS: {{{1 " Set mapleader let mapleader="," " Space to command mode. nnoremap <space> : vnoremap <space> : " Switching between buffers. nnoremap <C-h> <C-W>h nnoremap <C-j> <C-W>j nnoremap <C-k> <C-W>k nnoremap <C-l> <C-W>l inoremap <C-h> <Esc><C-W>h inoremap <C-j> <Esc><C-W>j inoremap <C-k> <Esc><C-W>k inoremap <C-l> <Esc><C-W>l " "cd" to change to open directory. let OpenDir=system("pwd") nmap <silent> <leader>cd :exe 'cd ' . OpenDir<cr>:pwd<cr> " PLUGIN SETTINGS: {{{1 " taglist.vim let g:Tlist_Auto_Update=1 let g:Tlist_Process_File_Always=1 let g:Tlist_Exit_OnlyWindow=1 let g:Tlist_Show_One_File=1 let g:Tlist_WinWidth=25 let g:Tlist_Enable_Fold_Column=0 let g:Tlist_Auto_Highlight_Tag=1 " NERDTree.vim let g:NERDTreeWinPos="right" let g:NERDTreeWinSize=25 let g:NERDTreeShowLineNumbers=1 let g:NERDTreeQuitOnOpen=1 " cscope.vim if has("cscope") set csto=1 set cst set nocsverb if filereadable("cscope.out") cs add cscope.out endif set csverb endif " OmniCppComplete.vim let g:OmniCpp_DefaultNamespaces=["std"] let g:OmniCpp_MayCompleteScope=1 let g:OmniCpp_SelectFirstItem=2 " VimGDB.vim if has("gdb") set asm=0 let g:vimgdb_debug_file="" run macros/gdb_mappings.vim endif " LookupFile setting let g:LookupFile_TagExpr='"./tags.filename"' let g:LookupFile_MinPatLength=2 let g:LookupFile_PreserveLastPattern=0 let g:LookupFile_PreservePatternHistory=1 let g:LookupFile_AlwaysAcceptFirst=1 let g:LookupFile_AllowNewFiles=0 " Man.vim source $VIMRUNTIME/ftplugin/man.vim " snipMate let g:snips_author="Du Jianfeng" let g:snips_email="cmdxiaoha@163.com" let g:snips_copyright="SicMicro, Inc" " plugin shortcuts function! RunShell(Msg, Shell) echo a:Msg . '...' call system(a:Shell) echon 'done' endfunction nmap <F2> :TlistToggle<cr> nmap <F3> :NERDTreeToggle<cr> nmap <F4> :MRU<cr> nmap <F5> <Plug>LookupFile<cr> nmap <F6> :vimgrep /<C-R>=expand("<cword>")<cr>/ **/*.c **/*.h<cr><C-o>:cw<cr> nmap <F9> :call RunShell("Generate tags", "ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .")<cr> nmap <F10> :call HLUDSync()<cr> nmap <F11> :call RunShell("Generate filename tags", "~/.vim/shell/genfiletags.sh")<cr> nmap <F12> :call RunShell("Generate cscope", "cscope -Rb")<cr>:cs add cscope.out<cr> nmap <leader>sa :cs add cscope.out<cr> nmap <leader>ss :cs find s <C-R>=expand("<cword>")<cr><cr> nmap <leader>sg :cs find g <C-R>=expand("<cword>")<cr><cr> nmap <leader>sc :cs find c <C-R>=expand("<cword>")<cr><cr> nmap <leader>st :cs find t <C-R>=expand("<cword>")<cr><cr> nmap <leader>se :cs find e <C-R>=expand("<cword>")<cr><cr> nmap <leader>sf :cs find f <C-R>=expand("<cfile>")<cr><cr> nmap <leader>si :cs find i <C-R>=expand("<cfile>")<cr><cr> nmap <leader>sd :cs find d <C-R>=expand("<cword>")<cr><cr> nmap <leader>zz <C-w>o nmap <leader>gs :GetScripts<cr> autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()" func SetTitle() if &filetype == 'sh' call setline(1,"\#########################################################################") call append(line("."), "\# File Name: ".expand("%")) call append(line(".")+1, "\# Author: 杨永利") call append(line(".")+2, "\# mail: 1795018360@qq.com") call append(line(".")+3, "\# Created Time:".strftime("%c")) call append(line(".")+4,"\#########################################################################") call append(line(".")+5, "\#!/bin/bash") call append(line(".")+6, "") else call setline(1, "/*************************************************************************") call append(line("."), " > File Name: ".expand("%")) call append(line(".")+1, " > Author: 杨永利") call append(line(".")+2, " > Mail: 1795018360@qq.com ") call append(line(".")+3, " > Created Time: ".strftime("%c")) call append(line(".")+4," ************************************************************************/") call append(line(".")+5, "") endif if &filetype == 'cpp' call append(line(".")+6, "#include <iostream>") call append(line(".")+7, "") call append(line(".")+8, "using namespace std;") call append(line(".")+9, "") call append(line(".")+10, "int main(int argc, char* argv[]){") call append(line(".")+11, "") call append(line(".")+12, " return 0;") call append(line(".")+13, "}") endif if &filetype == 'c' call append(line(".")+6, "#include <stdio.h>") call append(line(".")+7, "") call append(line(".")+8, "int main(int argc, char* argv[]){") call append(line(".")+9, "") call append(line(".")+10," return 0;") call append(line(".")+11, "}") endif autocmd BufNewFile *normal G endfunc
执行sudo vi /etc/vim/vimrc,在文件尾添加如下内容
set ts=4 set expandtab set autoindent set nu set nocompatible set number set autoindent set smartindent set showmatch set ruler set incsearch set tabstop=4 set shiftwidth=4 set softtabstop=4 set cindent set nobackup set clipboard+=unnamed "inoremap [ []<Esc>i "inoremap { {}<Esc>i "inoremap ( ()<Esc>i "inoremap ' ''<Esc>i "inoremap " ""<Esc>i