1. 程式人生 > >Linux的一些必要軟體的安裝和配置

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配置介面”。

在輸入法這一項時,你可能會看到只有搜狗拼音這一項,此時點選最下面的加號新增其他輸入法,且最上面的是非啟用輸入法,一般是前面帶“鍵盤”二字的放在最上面,調整順序後最後的介面如下圖示:


4、shutter

作為一個終端就可以下載好的截圖軟體,功能還是比較強大

直接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

對於程式設計師來說非常方便