一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Cygwin 設(shè)置中文

 ZackEdge 2015-03-18

cygwin\home\username\.bashrc

# 讓ls和dir命令顯示中文和顏色 
alias ls='ls --show-control-chars --color' 
alias dir='dir -N --color' 
# 設(shè)置為中文環(huán)境,使提示成為中文 
export LANG="zh_CN.GBK" 
# 輸出為中文編碼 
export OUTPUT_CHARSET="GBK"

cygwin\home\username\.inputrc

# 可以輸入中文 
set meta-flag on 
set output-meta on 
set convert-meta off 
# 忽略大小寫 
set completion-ignore-case on

, cygwin.bat: 

@ECHO OFF 
SET MAKE_MODE=UNIX 
SET PATH=d:\cygwin\bin;%PATH% 
set HOME=d:\home 
bash 


2, 在~目錄下的.bashrc文件中加入: 

# 讓ls和dir命令顯示中文和顏色 
alias dir='dir -N --color' 
alias less='/bin/less -r' 
alias ls='/bin/ls -F --color=tty --show-control-chars' 
# 設(shè)置為中文環(huán)境,使提示成為中文 
export LANG="zh_CN.GB2312" 
# 輸出為中文編碼 
export OUTPUT_CHARSET="GB2312" 

3,bash將到D:\home目錄下尋找初始化文件。 缺省情況下,bash命令行不能輸入漢字,必須在~目錄下建立文件.inputrc,內(nèi)容如下: 
# 忽略大小寫 
set completion-ignore-case on 
# 可以輸入中文 
set convert-meta off 
set input-meta on 
set output-meta on 


跟emacs存在同樣的問題,就是顯示不了uft8編碼下的漢字

Cygwin工具是GNU工具在WIN32平臺上的移植版本,它盡可能地遵循POSIX標準。其中包括C/C++編譯器GCC,textutils,fileutils,bash等等。本文將闡述如何在Cygwin(B20)中使用中文。

Cygwin通過cygnus.bat(位于X:\cygnus\cygwin-b20)啟動bash,內(nèi)容如下: @ECHO OFF
SET MAKE_MODE=UNIX
SET PATH=c:\cygnus\CYGWIN~1\H-I586~1\bin;%PATH%
bash

在其中加入(bash之前)一句: set HOME=X:\homename

X:為盤符,\homename為已存在的目錄名,例如C:\myHome。bash將到X:\homename目錄下尋找初始化文件。 缺省情況下,bash命令行不能輸入漢字,必須在X:\homename目錄下建立文件.inputrc,內(nèi)容如下: set meta-flag on
set convert-meta off
set output-meta on這幾行主要是實現(xiàn)命令行上實現(xiàn)漢字的輸入以及顯示。 比如想輸入漢字的文件名等等。

注意:在Cygwin-B20中.inputrc必須為UN*X文件格式。
bash在Windows 9X中不能接受來自DOS窗口的漢字輸入。

為了讓less命令顯示漢字在X:\homename\.bashrc中加入: export LESSCHARSET=latin1

為了讓ls命令顯示漢字文件和目錄名在X:\homename\.bashrc中加入: alias ls='ls -N --color'


#====================================.bashrc 2009-10-09 cygwin 1.70==================================
# Shell Options
# #############


alias ls='ls -hF --color=tty' # classify files in colour
alias dir='ls --color=auto --format=vertical'
alias vdir='ls --color=auto --format=long'
alias ll='ls -l' # long list
alias la='ls -A' # all but . and ..
alias l='ls -CF' #

# Some example functions
# function settitle() { echo -n "^[]2;$@^G^[]1;$@^G"; }

###################### 以下為添加部分 ################################
# cygwin中取\usr\share\locale\zh_CN\LC_MESSAGES中*.mo文件,如果提示信息中
# 的字符集為utf8則會顯示有誤(不知何解?,magiclinux無類似情況),為gb2312
# 則正常,大概與gettext這個模塊有關(guān),這個模塊的作用是使linux程序提示信息
# 區(qū)域話,即不同地區(qū)用不同語言,即常說的i18n;像我們設(shè)置的zh_CN.GBK,“.”
# 之前部分“zh_CN”表示地區(qū)即“中國大陸”,后面部分“GBK”表示字符集編碼,
# 像我們下面的設(shè)置,當(dāng)程序調(diào)用時會到\usr\share\locale\目錄中查找,發(fā)現(xiàn)地
# 區(qū)為“zh_CN”則到該目錄中查找程序?qū)?yīng)的*.mo文件,*.mo文件的名稱是在調(diào)用
# 的程序中設(shè)置了的。然后取該語種的對應(yīng)提示,然后按編碼(在mo文件中指明了)
# 處理該文字。
# 當(dāng)然這些不是自動處理的,要在程序中調(diào)用像setlocale、textdomian、gettext
# 這樣的函數(shù)處理。
# 在cygwin中有些程序,做了下面的設(shè)置,因為對應(yīng)的mo文件中編碼為utf8而無法
# 顯示,我是直接將它刪除,之后程序會因為找不到mo文件而用默認的英文來顯示
# 的。(下面的編碼設(shè)置并沒有錯,應(yīng)該是cygwin程序中的BUG,只是設(shè)置了LC_ALL
# 就沒必要設(shè)LANG了,有的文檔上面這樣寫的:))

export set LC_ALL=zh_CN.GBK
export set LANG=zh_CN.GBK
#export set LC_CTYPE=zh_CN.UTF-8
#export set CHARSET=UTF-8
#==================================== bashrc end ==================================

#==================================== .inputrc ==================================



# 控制輸入輸出的文件 jiangxf [2009-10-09 星期五]



"\e[3~": delete-char



# VT

"\e[1~": beginning-of-line

"\e[4~": end-of-line



# kvt

"\e[H": beginning-of-line

"\e[F": end-of-line



# rxvt and konsole (i.e. the KDE-app...)

"\e[7~": beginning-of-line

"\e[8~": end-of-line



# VT220

"\eOH": beginning-of-line

"\eOF": end-of-line





# 關(guān)閉bash命令行8字節(jié)字符轉(zhuǎn)義符的轉(zhuǎn)換

set convert-meta off



# 使bash命令行支持8字節(jié)字符輸入

set input-meta on



# 使bash命令行支持8字節(jié)字符輸出

set output-meta on

如果是命令行的編碼不對也要進行更改
更改方法如下

這個是cmd窗口屬性的問題。
要修改注冊表才能解 決問題:
有兩種方法,第二種比較簡單。

方法一:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]
"CodePage"=dword:000003a8

小說明一下:
十六進制"000003a8"或十進制"936",表示“936 (ANSI/OEM - 簡體中文 GBK)”。
十 六進制"000001b5"或十進制"437",表示“437 (OEM - 美國)

方法二:

同時使用:
[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]
在 注冊表里面這個東西估計是運行過英文環(huán)境的程序?qū)е碌摹?br> 刪掉這個注冊表,cmd就回到中文環(huán)境了。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产伦精品一一区二区三区高清版| 国产偷拍精品在线视频| 日本本亚洲三级在线播放| 一区二区日本一区二区欧美| 欧美色婷婷综合狠狠爱| 午夜国产福利在线播放| 91亚洲人人在字幕国产| 在线精品首页中文字幕亚洲| 国产中文字幕久久黄色片| 亚洲国产欧美精品久久| 久久综合亚洲精品蜜桃| 日韩成人动作片在线观看| 亚洲午夜福利视频在线| 老鸭窝老鸭窝一区二区| 日本二区三区在线播放| 高清亚洲精品中文字幕乱码| 亚洲中文字幕在线乱码av| 99久久国产精品亚洲| 激情爱爱一区二区三区| 太香蕉久久国产精品视频| 国产精品欧美一区二区三区不卡| 国产成人午夜av一区二区| 亚洲视频偷拍福利来袭| 久久永久免费一区二区| 国内真实露脸偷拍视频| 在线观看那种视频你懂的| 欧美人妻免费一区二区三区| 日韩成人中文字幕在线一区| 国产成人亚洲综合色就色| 久七久精品视频黄色的| 亚洲精品欧美精品日韩精品| 国内尹人香蕉综合在线| 国产中文另类天堂二区| 91欧美亚洲精品在线观看| 91麻豆精品欧美视频| 女人精品内射国产99| 在线免费不卡亚洲国产| 亚洲中文字幕在线观看黑人| 九九热精品视频免费在线播放| 日韩日韩欧美国产精品| 欧美大胆女人的大胆人体|