Комментарии 20
Тема сисек не раскрыта, а столько текста…
Пока приходится извращаться с \ в конце строки.
Пока приходится извращаться с \ в конце строки.
0
"\" в конце строки — хоть и работает, но не стандартизировано. Лучше всё же использовать сцепление строк.
0
> "\" в конце строки — хоть и работает, но не стандартизировано.
с чего это?
Есть в стандарте.
Собственно последняя строка и давит LineTerminator.
с чего это?
Есть в стандарте.
StringLiteral = " DoubleStringCharacters? "
DoubleStringCharacters = DoubleStringCharacter DoubleStringCharacters?
DoubleStringCharacter = SourceCharacterDS | \ EscapeSequence | LineContinuation
LineContinuation = \ LT
Собственно последняя строка и давит LineTerminator.
0
> Если кто-то может сформулировать проблему для разработчиков GM или Scriptish или знает, где она уже описана — просьба тоже сообщить об этом им и нам.
Ну если придираться к спеке ES, то там написано о том, что implementation-specific могут быть WS/LT и точки с запятыми, но про комменты не сказано.
15.3.4.2 пункт, если что.
Но я как-то не понимаю в чём заключена проблема. «123\n333» выдаёт то, что нужно.
Ну если придираться к спеке ES, то там написано о том, что implementation-specific могут быть WS/LT и точки с запятыми, но про комменты не сказано.
15.3.4.2 пункт, если что.
Но я как-то не понимаю в чём заключена проблема. «123\n333» выдаёт то, что нужно.
0
Проблема в том, что когда сцепляешь, обрамляешь или что-то другое делаешь со строками, нарушается их вид. Строки теряют свою исходность :). Кроме того, простой многострочный текст легко вручную загнать в JS. И смысл статьи в том, что решения задачи нет (это ответ первому оратору). Или не найдено, но отсутствие решения у других (по интернету) даёт много «шансов» на то, что решения нет.
0
> Кроме того, простой многострочный текст легко вручную загнать в JS
Ctrl + V, Ctrl + H, \n → " +\n", [Enter]
Ctrl + V, Ctrl + H, \n → " +\n", [Enter]
0
Не, вручную — в смысле написать программу, в которую руками в ставляешь многострочный текст и получается один исполняемый JS-файл.
0
Как бы набрать 30 символов (s=function....) мне кажется малость сложнее чем нажать 5-10 кнопок.
Причём если использовать \\\n заменяя \n, то и читаемость не нарушится ни разу.
В общем, russian-style — создаём себе проблемы, и потом их героически решаем.
Причём если использовать \\\n заменяя \n, то и читаемость не нарушится ни разу.
В общем, russian-style — создаём себе проблемы, и потом их героически решаем.
0
Ваш вариант: набрать 4-5 строк кода.
Альтернатива: нажать Ctrl+R/Ctrl+H в зависимости от хоткеев.
То есть вы действительно считаете что описанный в статье метод реально проще чем сделать самую обычную замену?
Я в этом почему-то сомневаюсь.
Альтернатива: нажать Ctrl+R/Ctrl+H в зависимости от хоткеев.
То есть вы действительно считаете что описанный в статье метод реально проще чем сделать самую обычную замену?
Я в этом почему-то сомневаюсь.
0
Ручной метод проще при переходе на другой компьютер, например. Компилятор надо инсталлировать, пользоваться увеличенным набором правил вместо небольшого количества ручной работы, ручной проверки того, не входят ли стоп-строки во внедряемый текст (скажем, надо заменить стили CSS на 1000 строк, внедрённые в скрипт, на другом компьютере). Сейчас, как описано в статье, этот метод реально достижим для юзерскрипта (с необходимостью править 2 символа или иметь 2 версии для браузеров) и недостижим из-за Firefox для обычного.
0
Выходной файл нужно просто компилировать в удобный браузерам формат, а исходник делать в удобном человеку формате. И никакой ерунды с подобными вещами не возникнет даже.
0
А такой способ уже не работает? jsfiddle.net/gmarketer/9Yt4d/
0
Это решение не для отдельных .js-файлов. Иногда оно полезно, но размещать на каждой странице все шаблоны UI-библиотеки я бы не стал.
0
Это HTML, а задача была — вставить в скрипт или в юзерскрипт. С HTML и XHTML нет проблем; кроме того, текст можно в комментарий вставить и заключить в CDATA, чтобы стоп-слово было посложнее. Вытаскивать скриптом как ноду. (Проблема, на самом деле, тоже есть, когда захотим изменить стоп-слово, чтобы прежнее использовать без изменений в тексте. В методе со скриптом, из статьи, стоп-слова, кстати, можно менять, настраивая рег. выражение для распознавания.)
0
Зарегистрируйтесь на Хабре , чтобы оставить комментарий
Представление многострочных данных в javascript и юзерскриптах