Для работы проекта я использую обезглавленное Squeak на (displayless, дистанционная) Linuxserver, а также с помощью Squeak на Windows, разработчик-машины.Писк Монтичелло кодировки символов
Код на машине для разработчиков управляется с использованием Monticello. Мне нужно скопировать mcz на сервер с помощью SFTP, к сожалению (например, наличие резервных копий на сервере невозможно по соображениям безопасности). Код затем слиты, например:
MczInstaller installFileNamed: 'name-b.18.mcz'.
который обычно работает.
К сожалению, наша кодовая база содержит строки, содержащие символы Umlauts и другие символы, отличные от ascii. Во время Monticello-reimport некоторые из них заменяются другими персонажами, а некоторые заменяются ничем.
Я также пробовал, например.
MczInstaller installStream: (FileStream readOnlyFileNamed: '...') binary
(примечание .mcz являются на самом деле .zip, поэтому двоичная должны быть уместными, я думаю, это по умолчанию в любом случае)
Выяснить, как сделать передачу Монтичелло в сохранить писк внутренний -кодирование не-ascii's является основным Цель моего вопроса. Изменение всего исходного кода только для использования ascii-строк - это (по крайней мере, в этой кодовой базе) гораздо менее желательно, поскольку задействован ручной труд. Если вы заинтересованы в почему это не просто Grep -replace в данном случае прочитать это побочное замечание:
(Примечание стороны: (упрощенный/специальный случай) кодовые использует #text приморского в: метод для отображения строк, содержащих символы, которые должны быть html-экранированными. Это отлично работает с нашими не-ascii, например, он преобразует ä
в ä
, если мы должны были grep-заменить буквальный ä's на ä
явно, тогда нам нужно будет использовать вместо этого вместо метода #html: (else double-escape), но тогда потребуется заменить все остальные символы, которые также должны быть html-экранированы (например, &), но затем исходный код self содержит такие символы. И есть другие случаи, например, некоторые #text: s, которые берут сторонние строки, они не могут быть заменены на # html's ...)