Linux的一些必要軟體的安裝和配置
1. wps
很用不慣Linux自帶的文件編輯軟體,所以下載wps,使用感比較好
前往wps官網,找到Linux的下載包 http://community.wps.cn/download/
如上圖,我下載的是64為的deb安裝包,下載到 ~/下載/ 目錄下
sudo dpkg -i wps-office_10.1.0.6634_amd64.deb
若碰上依賴問題:
sudo apt-get install -f
下載完成後在搜尋中輸入wps即可找到,可以鎖定到啟動器上。
開啟wps一般都會出現系統字型缺失的警告,因為版權問題wps需要的一些字型沒有放入在安裝包中,需要自己去下載
https://pan.baidu.com/s/1eS6xIzo #百度雲盤地址
下載到 ~/下載/ 目錄下,解壓縮
sudo unzip wps_symbol_fonts.zip
可以新建一個 wps_symbol_fonts檔案把ttf字型檔案都裝進去,然後全部拷貝到Linux本地系統的fonts檔案中
sudo cp * /usr/share/fonts/
最後進行三步操作
sudo mkfontscale #生成字型的索引資訊
sudo mkfontdir
sudo fc-cache #更新字型快取
重新搜尋wps開啟,就一切正常
2、清除Ubuntu冗餘核心
有的時候安裝包安裝時會出現依賴項問題,這個時候就執行:
sudo apt-get install -f
但是執行上面的命令時有時候會出現dpkg某個tool安裝不上,子目錄中已經存在(大致意思是這樣。。)
這個時候可能是因為boot太滿,需要我們刪除一些冗餘核心
dpkg --get-selections | grep "linux-image" #檢視當前系統中存在的核心
uname -r #檢視當前系統正在使用的版本
sudo apt-get remove --purge linux-image-********** #刪除冗餘的核心版本
sudo update-grub #更新啟動選單
sudo apt-get autoremove #刪除/usr/src下的原始碼及標頭檔案目錄
sudo apt-get autoclean #自動清理系統
3、搜狗輸入法
去搜狗官網下載官方Linux版本的安裝包
我使用的是sogoupinyin_2.2.0.0102_amd64.deb
sudo dpkg -i sogoupinyin_2.2.0.0102_amd64.deb
安裝好之後不會有什麼反應,因為需要重啟系統
重啟之後,可能整個Linux系統的語言系統只有搜狗輸入法,而且可能無法切換中英文,無法關閉搜狗輸入法之類
這時,點選進入設定,進入高階,找到Fcitx配置,點選“開啟Fcitx配置介面”。
在輸入法這一項時,你可能會看到只有搜狗拼音這一項,此時點選最下面的加號新增其他輸入法,且最上面的是非啟用輸入法,一般是前面帶“鍵盤”二字的放在最上面,調整順序後最後的介面如下圖示:
作為一個終端就可以下載好的截圖軟體,功能還是比較強大
直接sudo apt-get install shutter 即可
5、Google
Google瀏覽器用習慣了,也是直接去官網找到Linux版本安裝即可
google-chrome-stable_current_amd64.deb
6、vim
vim安裝很快,但是介面格式如果想要處理好的話,還需要配置一下vundle之類,比如說加上行數,加上顏色等等
首先git clone整個工程
git clone http://github.com/gmarik/vundle.git ~/.vim/bundle/vundl
然後是更新.vimrc檔案。我的情況是~/目錄下只有.vim資料夾而沒有.vimrc檔案。此時需要注意,前面一定要帶點。
然後你可以查詢一下你係統中的有關的vimrc檔案
locate vimrc
你可以把etc目錄下的vimrc檔案拷貝過去,但是記得重新命名為.vimrc
然後按照git上的要求把上面的一長串程式碼拷貝到~/.vimrc中的最上面
然後困擾了我很久的一個操作來了,好久才弄懂是啥情況
用vim命令隨便開啟一個檔案,即使是新建也可以(注意不是直接在.vimrc中!!!)
開啟之後輸入冒號: 然後輸入命令PluginInstall
這樣的話所有.vimrc中的外掛plugin都會一條一條自動地開始下載
附上我最後使用的.vimrc(雖然顏色我不是很喜歡,主要是我還不知道直接從etc拷貝過去的內容是不是正確的,乾脆全部用了別人的一個.vimrc)
" ***************** 全域性設定 ************** "
" 開啟檔案型別偵測
filetype on
" 根據偵測到的不同型別載入對應的外掛
filetype plugin on
" 自動縮排
filetype indent on
" 開啟語法高亮功能
syntax enable
" 允許用指定語法高亮配色方案替換預設方案
syntax on
set nocompatible "關閉相容模式
set incsearch "開啟實時搜尋功能
set ignorecase "搜尋忽略大小寫
set wildmenu "vim命令自動補全
set autoread "檔案自動更新
set gcr=a:block-blinkon0 "禁止關閉閃爍
set laststatus=2 "總是顯示狀態列
set ruler "顯示游標位置
set number "顯示行號
set cursorline "高亮顯示當前行
"set cursorcolumn "高亮顯示當前列
set hlsearch "高亮顯示搜尋結果
" set nowrap "禁止折行
set backspace=2 "回退鍵生效
"set backspace=indent,eol,start
set novisualbell
" 禁止顯示滾動條
set guioptions-=l
set guioptions-=L
set guioptions-=r
set guioptions-=R
" 禁止顯示選單和工具條
set guioptions-=m
set guioptions-=T
" 將製表符擴充套件為空格
set expandtab
" 設定編輯時製表符佔用空格數
set tabstop=4
" 設定格式化時製表符佔用空格數
set shiftwidth=4
" 讓 vim 把連續數量的空格視為一個製表符
set softtabstop=4
" 基於縮排或語法進行程式碼摺疊
set foldmethod=syntax
" 啟動 vim 時關閉摺疊程式碼
set nofoldenable
" 互動式開啟shell
set shell=bash\ -i
" *************** 設定全域性快捷鍵 *****************
" 定義快捷鍵的字首,即<Leader>
"let mapleader="\<space>"
let mapleader="'"
" 設定快捷鍵將選中文字塊複製至系統剪貼簿
vnoremap <Leader>y "+y
" 設定快捷鍵將系統剪貼簿內容貼上至 vim
nmap <Leader>p "+p
" 定義快捷鍵關閉當前分割視窗
nmap <Leader>q :q<CR>
" 定義快捷鍵儲存當前視窗內容
nmap <Leader>w :w<CR>
" 定義快捷鍵儲存所有視窗內容並退出 vim
"nmap <Leader>WQ :wa<CR>:q<CR>
" 不做任何儲存,直接退出 vim
"nmap <Leader>Q :qa!<CR>
" 依次遍歷子視窗
nnoremap nw <C-W><C-W>
" 跳轉至右方的視窗
nnoremap <Leader>l <C-W>l
" 跳轉至左方的視窗
nnoremap <Leader>h <C-W>h
" 跳轉至上方的子視窗
nnoremap <Leader>k <C-W>k
" 跳轉至下方的子視窗
nnoremap <Leader>j <C-W>j
" 定義快捷鍵在結對符之間跳轉
nmap <Leader>M %
nnoremap <Leader>g <C-]>
nnoremap <Leader>b <C-t>
" ************** 外掛管理與設定 ************ "
" vundle 環境設定
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
" vundle 管理的外掛列表必須位於 vundle#begin() 和 vundle#end() 之間
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'Lokaltog/vim-powerline' "status 美化
Plugin 'octol/vim-cpp-enhanced-highlight' "對c++語法高亮增強
Plugin 'kshenoy/vim-signature' "書籤視覺化的外掛
Plugin 'vim-scripts/BOOKMARKS--Mark-and-Highlight-Full-Lines' "書籤行高亮
Plugin 'majutsushi/tagbar' "taglist的增強版,檢視標籤,依賴於ctags
Plugin 'scrooloose/nerdcommenter' "多行註釋,leader鍵+cc生成, leader+cu刪除註釋
Plugin 'scrooloose/nerdtree' "檔案瀏覽
Plugin 'Valloric/YouCompleteMe' "自動補全
Plugin 'kien/ctrlp.vim' "搜尋歷史開啟檔案,在命令列模式下按ctrl+p觸發
Plugin 'vim-scripts/grep.vim' "在命令列模式使用grep命令,:Grep
Plugin 'Lokaltog/vim-easymotion' "快速跳轉,按兩下leader鍵和f組合
Plugin 'vim-scripts/ShowTrailingWhitespace.git' "高亮顯示行尾的多餘空白字元
Plugin 'vim-scripts/indentpython.vim.git'
Plugin 'vim-scripts/Solarized.git' "主題方案
Plugin 'nathanaelkane/vim-indent-guides.git' "縮排對齊顯示
"Plugin 'vim-scripts/indexer.tar.gz' "自動生成標籤
"Plugin 'vim-scripts/DfrankUtil' "indexer 依賴
"Plugin 'vim-scripts/vimprj' "indexer 依賴
Plugin 'davidhalter/jedi-vim' "python 補全,不依賴於tags,但比較慢,可以使用indexer替換,但不能跳轉專案外
Plugin 'vim-scripts/Markdown'
Plugin 'tpope/vim-surround'
Plugin 'ekalinin/Dockerfile.vim'
" 外掛列表結束
call vundle#end()
filetype on
" Powerline 設定
" 設定狀態列主題風格
let g:Powerline_colorscheme='solarized256'
" 設定tagbar
" 設定 tagbar 子視窗的位置出現在主編輯區的左邊
let tagbar_left=1
" " 設定顯示/隱藏標籤列表子視窗的快捷鍵。速記:identifier list by tag
nnoremap <Leader>t :TagbarToggle<CR>
" " 設定標籤子視窗的寬度
let tagbar_width=32
" " tagbar 子視窗中不顯示冗餘幫助資訊
let g:tagbar_compact=1
" " 設定 ctags 對哪些程式碼識別符號生成標籤
" signature設定
let g:SignatureMap = {
\ 'Leader' : "m",
\ 'PlaceNextMark' : "m,",
\ 'ToggleMarkAtLine' : "m.",
\ 'PurgeMarksAtLine' : "m-",
\ 'DeleteMark' : "dm",
\ 'PurgeMarks' : "mda",
\ 'PurgeMarkers' : "m<BS>",
\ 'GotoNextLineAlpha' : "']",
\ 'GotoPrevLineAlpha' : "'[",
\ 'GotoNextSpotAlpha' : "`]",
\ 'GotoPrevSpotAlpha' : "`[",
\ 'GotoNextLineByPos' : "]'",
\ 'GotoPrevLineByPos' : "['",
\ 'GotoNextSpotByPos' : "mn",
\ 'GotoPrevSpotByPos' : "mp",
\ 'GotoNextMarker' : "[+",
\ 'GotoPrevMarker' : "[-",
\ 'GotoNextMarkerAny' : "]=",
\ 'GotoPrevMarkerAny' : "[=",
\ 'ListLocalMarks' : "ms",
\ 'ListLocalMarkers' : "m?"
\ }
" 使用 NERDTree 外掛檢視工程檔案。設定快捷鍵,速記:file list
nmap <Leader>f :NERDTreeToggle<CR>
" 設定NERDTree子視窗寬度
let NERDTreeWinSize=32
" 設定NERDTree子視窗位置
let NERDTreeWinPos="right"
" 顯示隱藏檔案
let NERDTreeShowHidden=1
" NERDTree 子視窗中不顯示冗餘幫助資訊
let NERDTreeMinimalUI=1
" 刪除檔案時自動刪除檔案對應 buffer
let NERDTreeAutoDeleteBuffer=1
" YCM 補全選單配色
" 選單
"highlight Pmenu ctermfg=2 ctermbg=3 guifg=#005f87 guibg=#EEE8D5
" 選中項
"highlight PmenuSel ctermfg=2 ctermbg=3 guifg=#AFD700 guibg=#106900
" 補全功能在註釋中同樣有效
let g:ycm_complete_in_comments=1
" 允許 vim 載入 .ycm_extra_conf.py 檔案,不再提示
let g:ycm_confirm_extra_conf=0
" 開啟 YCM 標籤補全引擎
let g:ycm_collect_identifiers_from_tags_files=1
" 引入 C++ 標準庫tags
set tags+=/data/misc/software/misc./vim/stdcpp.tags
" YCM 整合 OmniCppComplete 補全引擎,設定其快捷鍵
"inoremap <leader>; <C-x><C-o>
" 補全內容不以分割子視窗形式出現,只顯示補全列表
set completeopt-=preview
" 從第一個鍵入字元就開始羅列匹配項
let g:ycm_min_num_of_chars_for_completion=1
" 禁止快取匹配項,每次都重新生成匹配項
let g:ycm_cache_omnifunc=0
" 語法關鍵字補全
let g:ycm_seed_identifiers_with_syntax=1
let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
""" color settings
set t_Co=256
if has("gui_running")
set guioptions=gR
set mousemodel=popup
set background=light
""hi LineNr cterm=bold guibg=black guifg=white
""hi CursorLine cterm=none ctermbg=lightgray ctermfg=none
""hi CursorColumn cterm=none ctermbg=lightgray ctermfg=none
else
set background=dark
""hi LineNr cterm=bold ctermbg=black ctermfg=white
""hi CursorLine cterm=none ctermbg=darkgray ctermfg=none
""hi CursorColumn cterm=none ctermbg=darkgray ctermfg=none
endif
colorscheme solarized
"colorscheme default
" indent guides
"let g:indent_guides_enable_on_vim_startup=1
" 從第二層開始視覺化顯示縮排
let g:indent_guides_start_level=2
"let g:indent_guides_auto_colors = 0
"hi IndentGuidesOdd guibg=red ctermbg=3
"hi IndentGuidesEven guibg=green ctermbg=4
" 色塊寬度
let g:indent_guides_guide_size=1
" 快捷鍵 i 開/關縮排視覺化
noremap <Leader>sj :IndentGuidesToggle<CR>
7、tmux
對於程式設計師來說非常方便