|
From: | Jan D. |
Subject: | Re: Strange behaviour with dired and UTF8 |
Date: | Fri, 2 May 2003 11:59:33 +0200 |
This sounds very complicated. As I understand it, dired first gets the file name from ls (original representation), then converts that to whatever encoding it shall use to show it in the buffer (viewrepresentation). When dired operates on the file (opening for example),it converts back from the view representation, hoping to get the original representation. But this may fail, since conversion from view back to original is not one-to-one.It is sure that there's a possibility that encoding a filename can't get the original filename. But, Emacs anyway can't handle such a filename.
Why not if it has the original filename?
This work (original representation -> view representation -> original representation) should not be needed, IMHO. Why just not keep the original representation around (some kind of text property on the file name?) and always use that when operating on the file? That change would be transparent to users.A user may type C-x C-f FILENAME in the dired buffer. With the above method, we don't know how to encode FILENAME.
Why would this change? I am only talking about file names that dired reads from a directory. No need to change C-x C-f.
And, even if one types `f' to visit a file, in that file buffer, we loose the information of the original representation.
Then Emacs as a whole should change. If I open a file from dired, modify it and save it, I expect it to save to the same file name. Are you saying there are situations where Emacs fails to do this? That sounds like a major bug to me. Maybe the buffer itself also needs to keep the original file name around. Jan D.
[Prev in Thread] | Current Thread | [Next in Thread] |