Gnome Nautilus 的中文亂碼問題

歡迎提問 debian desktop 相關問題,何謂 desktop ? 舉凡您日常生活會用到的部份,如上網 ( www 、 bbs ..) 、程式設計、繪圖...等等。 通常以 X Window 環境底下問題為主。

Gnome Nautilus 的中文亂碼問題

文章Fala » 週二 3月 15, 2005 5:56 pm

我是 Linux 新手,
最近好不容易裝好了 Debian Sarge + Gnome + xcin + FireFly + FireFox,
可是 Gnome 中的 Nautilus 檔案瀏覽器預設卻使用 Unicode 編碼,
而不是使用我們習慣的本地編碼 Big5,
導致我原本的中文檔名全都變成 ??? 一堆亂碼,

我上 Google 找到的解答是:
在自己 home 底下編輯 ~/.gnomerc 加入 export G_BROKEN_FILENAMES=1

可是我照上面的方法卻一樣沒有用,
請問要如何解決此中文亂碼問題呢?
謝謝!

PS. 我的 Locale 如下:
LANG=zh_TW.Big5
LC_CTYPE="zh_TW.Big5"
LC_NUMERIC="zh_TW.Big5"
LC_TIME="zh_TW.Big5"
LC_COLLATE="zh_TW.Big5"
LC_MONETARY="zh_TW.Big5"
LC_MESSAGES="zh_TW.Big5"
LC_PAPER="zh_TW.Big5"
LC_NAME="zh_TW.Big5"
LC_ADDRESS="zh_TW.Big5"
LC_TELEPHONE="zh_TW.Big5"
LC_MEASUREMENT="zh_TW.Big5"
LC_IDENTIFICATION="zh_TW.Big5"
LC_ALL=zh_TW.Big5
Fala
 

文章Fala » 週二 3月 15, 2005 6:03 pm

PS. 我的 Locale -a 如下:

sarge@pc201:~$ locale -a
C
POSIX
zh_TW
zh_TW.big5
Fala
 

文章caosheng » 週二 3月 15, 2005 6:28 pm

你打set後有看到G_BROKEN_FILENAMES變數嗎
如果沒有就是寫錯地方了

還有看到 ??? 基本上是你的磁碟掛載參數的問題,請列出fstab看看
編碼不對看到的應該是\xxx \xxx \xxx \xxx 的數字
caosheng
懵懂的國中生
懵懂的國中生
 
文章: 222
註冊時間: 週一 12月 27, 2004 2:27 pm

文章Fala » 週二 3月 15, 2005 8:07 pm

您好:
因為我發現原本自己 home 底下並沒有 ~/.gnomerc 這個檔案
所以自己手動新增 ~/.gnomerc 加入 export G_BROKEN_FILENAMES=1
請問這樣的作法是不是沒有用?

另外我是自己手動掛載磁碟的:
mount /dev/hdb6 /mnt/tmp
mount /dev/hdc /media/cdrom0
結果中文檔名都是 ??? 亂碼。

以下是我的 fstab 內容:
========================================
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/hda2 / ext3 defaults,errors=remount-ro 0 1
/dev/hda7 none swap sw 0 0
/dev/hdc /media/cdrom0 iso9660 ro,user,noauto 0 0
/dev/hdd /media/cdrom1 iso9660 ro,user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
========================================


以下是打 set 的內容:
========================================
foot@pc201:~$ set
BASH=/bin/bash
BASH_VERSINFO=([0]="2" [1]="05b" [2]="0" [3]="1" [4]="release" [5]="i386-pc-linux-gnu")
BASH_VERSION='2.05b.0(1)-release'
COLORTERM=gnome-terminal
COLUMNS=80
DESKTOP_SESSION=default
DESKTOP_STARTUP_ID=
DIRSTACK=()
DISPLAY=:0.0
EUID=1000
GDMSESSION=default
GDM_XSERVER_LOCATION=local
GNOME_DESKTOP_SESSION_ID=Default
GNOME_KEYRING_SOCKET=/tmp/keyring-ss0NxO/socket
GROUPS=()
GTK_RC_FILES=/etc/gtk/gtkrc:/home/foot/.gtkrc-1.2-gnome2
HISTFILE=/home/foot/.bash_history
HISTFILESIZE=500
HISTSIZE=500
HOME=/home/foot
HOSTNAME=pc201
HOSTTYPE=i386
IFS=$' \t\n'
LANG=zh_TW.Big5
LANGUAGE=zh_TW:zh:en_US:en
LC_ALL=zh_TW.Big5
LINES=24
LOGNAME=foot
LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35:'
MACHTYPE=i386-pc-linux-gnu
MAILCHECK=60
OPTERR=1
OPTIND=1
OSTYPE=linux-gnu
PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
PIPESTATUS=([0]="0")
PPID=1535
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
PS2='> '
PS4='+ '
PWD=/home/foot
SESSION_MANAGER=local/pc201:/tmp/.ICE-unix/1402
SHELL=/bin/bash
SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
SHLVL=1
SSH_AGENT_PID=1446
SSH_AUTH_SOCK=/tmp/ssh-zWSiXA1402/agent.1402
TERM=xterm
UID=1000
USER=foot
USERNAME=foot
WINDOWID=31457376
XAUTHORITY=/home/foot/.Xauthority
XMODIFIERS=@im=xcin
_=lm
foot@pc201:~$
========================================

好像沒有看到 export G_BROKEN_FILENAMES 變數
請問該如何解決才對?
謝謝!
Fala
 

文章caosheng » 週三 3月 16, 2005 12:04 am

big5 mount 磁碟 要加-o參數 才能看到中文
-o iocharset=big5,codepage=950 或是
-o iocharset=cp950,codepage=950

G_BROKEN_FILENAMES 以前我是直接寫在/etc/environment
不過現在都用UTF8 好像不需要了
caosheng
懵懂的國中生
懵懂的國中生
 
文章: 222
註冊時間: 週一 12月 27, 2004 2:27 pm

文章Fala » 週三 3月 16, 2005 7:02 am

真的很謝謝您的提醒,
原來是我自己 Linux 的基礎沒先學好,
我後來查了 mount 的用法後,
把 fstab 內容改成如下, Nautilus 終於可以正確顯示中文檔名了!^^
====================
/dev/hdb5 /mnt/hdb5 ntfs defaults,user,iocharset=big5,umask=000 0 0
/dev/hdb6 /mnt/hdb6 vfat defaults,user,iocharset=big5,umask=000 0 0
====================
不過現在卻出現新的問題:

(1) 許多應用程式要開啟 hdb6(FAT32) 的檔案時,
  那些中文檔名或目錄都變成一長串像 /345/x454/355/454/ 這種字~
(2) 當我在 hdb6(FAT32) 磁碟中寫入中文檔案或目錄後,
  在 Linux 上中文檔名看起來正常,
  但回到 Windows 下看卻會變成一串奇怪的字(看不懂的字)~
  例如Linux下我寫的是「測試」,Winodws下變成:「皜祈岫」

請問要如何解決這種編碼問題呢?
問了這麼多真不好意思,
謝謝!
Fala
 

文章Fala » 週四 3月 17, 2005 9:51 am

中文問題終於解決了,
原來方法還是在自己 home 底下編輯 ~/.gnomerc 加入 export G_BROKEN_FILENAMES=1
我之前新增檔案的方式錯誤了才導致失敗,
看來先把 Linux 基礎學好真的很重要,
不好意思讓各位見笑了~
在此感謝熱心的前輩回答。 :-)
Fala
 


回到 debian desktop

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron