[size=large]我的終端刪除全形標點的時候總有問題,google一下,找到解決方案
"""""
【問題】
set enc=utf-8有些好處(新建檔案預設為utf-8便於和非win系統交流;識別檔案編碼正確率更高。當然,如果用其他enc沒什麼不便就無須改)
但是,這樣會讓一些中文字元顯示不完整。如「」①②→等
【猜測】
可能是vim不知道這是全形字符,與「對應」的半形字元混淆。今日一查,果然。
【解決】
set ambiwidth=double
【解釋】
①:h ambiwidth
②下文來自吳詠煒《vim 實用技術,第 1 部分: 實用技巧》
ambiwidth=double:把所有的「不明寬度」字元 [9]——指的是在 unicode 字符集中某些同時在東西方語言中使用的字元,如省略號、破折號、書名號和全形引號,在西方文字中通常字元寬度等同於普通 ascii 字元,而在東方文字中通常字元寬度等同於兩倍的普通 ascii 字元,因而其寬度「不明」——的寬度置為雙倍字元寬度(中文字元寬度)。此數值只在 encoding 設為 utf-8 或某一 unicode 編碼時才有效。需要額外注意的是,如果你通過終端使用 vim 的話,需要令終端也將這些字元顯示為雙寬度……
"""""
再貼一下我的vim配置
set encoding=utf-8
set tabstop=4
set expandtab
set ff=unix
set ambiwidth=double
set shiftwidth=4
set fileencodings=utf-8,ucs-bom,cp936
syntax on
filetype plugin on
set nocompatible
set completeopt=preview
[/size]
將文件全形標點轉成半形標點方法
private static string replace string line hashmap map new hashmap map.put map.put map.put map.put map.put map.put map.put map.put map.put map.put map....
全形半形標點的轉換
full2half create function dbo full2half string nvarchar max returns nvarchar max as 全形 fullwidth 轉換為半形 halfwidth begin declare chr nchar 1 declare iin...
全形轉半形與半形轉全形
1.全形 指乙個字元占用兩個標準字元位置。漢字字元和規定了全形的英文本元及國標gb2312 80中的圖形符號和特殊字元都是全形字符。一般的系統命令是不用全形字符的,只是在作文書處理時才會使用全形字符。2.半形 指一字元占用乙個標準的字元位置。通常的英文本母 數字鍵 符號鍵都是半形的,半形的顯示內碼都...