Ответ 1
Я не знаю Нанта, но XML-объект для новой строки обычно 

Кто-нибудь знает, как выводить сообщение с использованием эха с новым символом строки, в мире ant я использовал ${line.seperator}, но я не вижу никакого связанного с ним свойства в Nant или любой из предоставленных функций эта информация. Я также попробовал \n escape-символ, но это было напечатано как есть. Экзамен ниже
<echo message="spool \n off \n quit" file="${scripts.list}" append="true"/>
Я не знаю Нанта, но XML-объект для новой строки обычно 

В NAnt 0.90 я использовал функцию environment:: newline(), чтобы помещать в новые строки, где я их хотел. Но так как это немного неудобно использовать ${environment:: newline()}, я назначил его сокращенному имени свойства, которое я мог бы использовать на протяжении всего моего script.
К сожалению, для пользователей 0.86 функция environment:: newline() не была добавлена до 0.90-alpha1.
Это будет более убедительно, если вы используете эхо, как показано ниже:
<echo append="true" file="${scripts.list}">
spool
off
quit
</echo>
Нант будет поддерживать новые строки из коробки:)
Используйте ${environment::newline()}
Ранее эхо, используемое для добавления новой строки по умолчанию в append, исправлено в последней версии. Итак, теперь эта функция была введена, чтобы вы могли получить переменную окружения для newline
и генерировать журнал как отформатированный так, как вам нравится.
Мне пришлось пройти через заметки о выпуске, чтобы найти его, поэтому я подумал, что это может спасти кого-то еще, чтобы он ответил здесь.
вы можете просто использовать символы новой строки в xml:
<echo message="Line1
Line2"/>
Возможно, вы также допустили ошибку, потому что в своем сообщении вы написали line.seperator
вместо line.separator
Если вы редактируете NAnt script в Visual Studio и хотите автоматически форматировать (Ctrl-E D) ваш XML-документ, вы увидите, что если вы используете форму <echo> message </echo>
для вывода нескольких строк, Visual Studio автоматически отпечатает ваш текст. Чтобы предотвратить это, вам нужно использовать раздел XML CDATA, например:
<echo file="${file}"
append="true">
<![CDATA[
cmd1 "${arg1}"
cmd2 "${arg2}"
]]>
</echo>
Это выдержит процесс автоматического форматирования. Вы по-прежнему будете иметь новую строку перевода, если вы не начнете свой текст сразу после тега <![CDATA[
в этой строке.
В моем случае:
header('Content-Type: application/xml;');
header('Content-Disposition: attachment; filename="strings.xml"');
//for example
echo '<?xml version="1.0" encoding="utf-8"?>';
echo '<!-- ********************** -->';
генерирует <?xml version="1.0" encoding="utf-8"?><!-- ********************** -->
С 

:
header('Content-Type: application/xml;');
header('Content-Disposition: attachment; filename="strings.xml"');
//for example
echo '<?xml version="1.0" encoding="utf-8"?>
';
echo '<!-- ********************** -->';
генерирует <?xml version="1.0" encoding="utf-8"?>
<!-- ********************** -->
Просто с командой ввода он работает:
header('Content-Type: application/xml;');
header('Content-Disposition: attachment; filename="strings.xml"');
//for example
echo '<?xml version="1.0" encoding="utf-8"?>
';
echo '<!-- ********************** -->';
генерирует
<?xml version="1.0" encoding="utf-8"?>
<!-- ********************** -->