顯示具有 Vim 標籤的文章。 顯示所有文章
顯示具有 Vim 標籤的文章。 顯示所有文章

2013年11月20日 星期三

Vim 中文用戶手冊(繁體字)2、自動下載最新版並轉換文字(簡轉繁)與其他方式安裝



即上一篇Vim 中文用戶手冊(繁體字) 所提供的手動轉換法,此次轉而提供利用Shell Script來自動下載最新版並自動轉換文字(簡轉繁)。





如果要更快的話就用+Chu-Siang Lai 提供  chusiang/vimcdoc-tw的方法安裝,需要Pathogen或NeoBundle或Vundle這三種直接安裝他轉換好的檔案,安裝方法他寫的很詳細我這就不贅述了。



vimcdoc-cn-to-tw.zsh



wget -cq https://googledrive.com/host/0B6LhE5E9oFV3Njc3MTI3M2QtOTlhNi00ODlhLWI3MDItODJhY2VkMGYxMDk5/vimcdoc-cn-to-tw.zsh
chmod +x vimcdoc-cn-to-tw.zsh
./vimcdoc-cn-to-tw.zsh






執行畫面

source code


#!/bin/zsh

which zsh >/dev/null || (echo 請安裝zsh;exit)

which opencc >/dev/null || (echo 請安裝opencc;exit)

tmpdir=$(mktemp -d)

cd /tmp/

printf "%s\n" 下載檔案中請稍後

wget -4cq -O  vimcdoc.tar http://sourceforge.net/projects/vimcdoc/files/latest/download

printf "%s\n" 解壓檔案中請稍後

tar -xf vimcdoc.tar

cd vimcdoc-*

vimcdocdir=$PWD

name=$PWD:t

printf "%s\n" 修改檔案中請稍後

mv help_cn.vim help_tw.vim

mv doc/tags-cn doc/tags-tw

sed -i 's/help_cn.vim/help_tw.vim/g ; s/tags-cn/tags-tw/g' vimcdoc.sh

sed -i 's/set helplang=cn/set helplang=tw/' vimcdoc.vim

sed -i '/help.*Cn/s/Cn /Tw /g' help_tw.vim

printf "%s\n" "CN to TW中請稍後"

find . -type d -exec env d="$tmpdir" sh -c ' exec mkdir -p -- "$d/$1"' '{}' '{}' \;

for i in  **/*(.); opencc -c zhs2zhtw_vp.ini -i $i -o $tmpdir/$i 2>&1

rm -r $vimcdocdir

mv $tmpdir $vimcdocdir

chmod +x $vimcdocdir/vimcdoc.sh

cd -

printf "%s\n" 轉換完成,壓縮檔案中請稍後

tar cf ~/$name.tar $name

printf "%s\n" 壓縮完成存放至~/$name.tar 此檔可直接分享給別他人安裝:

printf "%s\n" 要立即安裝請進入$vimcdocdir

printf "%s\n" 安裝步驟請看原文:Vim 中文用戶手冊(繁體字) http://playubuntu.blogspot.tw/2013/10/vim.html




Vim 中文用戶手冊(繁體字)

感謝Vim Chinese Documentation將英文翻譯成中文(簡體字),但對於簡體字不太熟悉,又不想靠類似transcoding Simplified and Traditional這種plugin每次看都要簡體轉繁體一次,索性直接將簡體中文的用戶手冊轉成繁體一次搞定方便觀看。





以下將運用Opencc簡轉繁、ZshShell請先安裝好。





2013-11-21 opencc改用zhs2zhtw_vp.ini設定值from Simplified to variants and phrases of Taiwan比較接近台灣用語。



2013-10-24 接著將安還有個檔案需要改 此處漏掉了也要修改vimcdoc.vim導致helplang會保持著cn而用戶手冊語言沒有改變,原文以更正。



原因如下:


其中設置Vim 幫助的默認語言的步驟,即是在vimcdoc.vim 中,因為plugin 比vimrc 加載要晚(參考), 所以在vimrc 中的設置會被vimcdoc.vim 覆蓋掉。

Vim 中文幫助文檔







首先下載最版本的tarball,解壓縮得到vimcdoc-1.9.0(目前版號是1.9.0更新的版本版號會不一樣)。




Vim Chinese Documentation



請開啟終端機並切換至vimcdoc-1.9.0目錄並開啟Zsh Shell。

cd /path/vimcdoc-1.9.0
zsh


更改檔名與更改檔案內容


再來將幾個檔案更名cn->tw

mv help_cn.vim help_tw.vim
mv doc/tags-cn doc/tags-tw



接著將安裝檔案內容修改cn->tw

sed -i 's/help_cn.vim/help_tw.vim/g ; s/tags-cn/tags-tw/g' vimcdoc.sh
sed -i 's/set helplang=cn/set helplang=tw/' vimcdoc.vim


構建原始目錄


現在/tmp/建立vimcdoc-1.9.0對應的目錄結構

find . -type d -exec env d="/tmp/$PWD:t" sh -c ' exec mkdir -p -- "$d/$1"' '{}' '{}' \;


中文化


開始用opencc中文化(cn->tw)存放至/tmp/vimcdoc-1.9.0

for i in  **/*(.); opencc -c zhs2zhtw_vp.ini -i $i -o /tmp/$PWD:t/$i


安裝


切換至存放處,將安裝檔加入執行權限,最後執行安裝

cd /tmp/$PWD:t
chmod +x vimcdoc.sh
./vimcdoc.sh -i


設定


開啟vim設定檔

vim $HOME/.vimrc



加入以下兩行後存檔


set rtp+=/home/hepha/.vim

set helplang=tw



作用:將中文用戶手冊加入rtp(搜索運行時文件所用的目錄)及指定helplang為tw。

P.S1 set rtp+=是增加路徑,+號要記得寫哦,只有=號會出類似plugin找不到那些問題。

P.S2 加入rtp位置有可能不一樣,請看安裝時他將檔案安裝到那裡不要照抄我的。


install -m 644 vimcdoc.vim /home/hepha/.vim/plugin/vimcdoc.vim



最後重開vim在指令模式輸入:help就會看到繁體中文的用戶手冊了。



如果想將繁體的用戶手冊安裝程式保留,記得將檔案重/tmp搬出來呀,否則重新開機檔案就不見囉。

mv /tmp/vimcdoc-1.9.0 /you/path




參考資料: Vimcdoc HOWTO

2013年10月16日 星期三

vim 強制刷新螢幕指令 redraw

以往類似使用vimdiff遇到Press ENTER or type command to continue這個訊息都要按Enter或任意鍵

vimdiff foo1 foo2

"foo1" 1L, 4C

"foo2" 2L, 8C

Press ENTER or type command to continue




現在加上-c 'redraw'直接跳過那個訊息。

vimdiff -c 'redraw' foo1 foo2



某些時候也可以用在vim內,如自己設定map等等,在最後加入:redraw!來跳過確認訊息。



對了裝qvim預設並沒有qvimdiff這個指令,你可以將以下指令加入~/.bashrc OR ~/.zshrc,這樣就有Qt模式的vimdiff囉

alias qvimdiff="qvim -d -c redraw"



vimdiff偷懶改成這樣免除確認訊息。

alias vimdiff="vimdiff -c redraw"






2011年4月5日 星期二

「筆記」vim/gvim 共用 X-Window 剪貼簿

新的作業系統 Linux Mint 10 KDE ,沒有了 Gedit 真的有點不習慣 Kate 擴充功能好少(或許有我不知道),加上 Kate 在終端機開都會跳一些有的沒的訊息,乾脆學習別人口中很神的編輯器VIM。



學習是總過程,不能貼上…怎麼能。X-Window 中複製文字在 Vim/Gvim 是不能用 "+gP貼上的,這樣叫我怎麼活…幸好在我百般尋覓下找到了解法。





只要在 ~/.vimrc 加入這段程式碼就可以了。

nmap <C-V> "+gP
imap <C-V> <ESC><C-V>i
vmap <C-C> "+y