Igor Stasenko wrote:
My 2 cents.
Import: a text stream should detect a line-ending sequence automatically, or use explicitly specified line-ending sequence, if it instructed so. Text editors should not bother with line end formats: their main purpose is to correctly display & edit the text, so its much more important to display it correctly, but quite unimportant in what format the edited text is stored. If current text editor uses cr as line ending - i'm fine with that. Lets then make sure, that it doesn't needs to deal with lf char, since any lf occurences should be wiped out (converted) before going into text editor - at text import stage.
Export: at text export, one could always tell , what line endings he wants to see (by default it could use Smalltalk>>platformLineEndings ).
I don't think that Squeak meant to be used as a generic-purpose text editor, thus, i don't see real importance in making a smart import-edit-export cycle which should care about preserving line ending sequence unchanged.
There simply should not be any import-edit-export cycle at all. The purpose of an editor is to show the user the characters that comprise the String being edited, and allow him to add / remove characters at will. This is so obvious that I feel silly saying it. Why would some characters be silently messed by the system? I see no reason. It is like the horrible "ASCII mode" in FTP, that breaks every file it downloads.
There are a lot of text editors who can do this and much much more. And squeak text-editing is really suck comparing to existing word processors. Lets just face it: Squeak is not text-editing tool and never been. If one wants a full-featured text editor(s) in squeak - it can build one, with own import-edit-export cycle. But i don't see why basic system functionality, which meant to be used just for editing 1-2 lines of source code, should care so much about that.
Ok. So let's not fix it. BTW, are you sure you're the same Igor who once said "IMO, in 21st century unicode support is A MUST for any development environment. Of course, if you consider Cuis as dev environment, not as a toy." ?
Cheers, Juan Vuletich