Показать сообщение отдельно
  #530 (permalink)  
Старый 08.09.2014, 15:59
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
Уже их использую в пробном проектике)
Довольно давно юзаю их, но вообще меня терзают смешанные чувства по поводу реализации этой фичи. Дело в том, что сейчас эти строки сохраняют все переводы строк и начальные пробельные символы, что в 95% нах не надо и это меня огорчает.

Конечно, можно написать функцию, которая будет вырезать ненужное и использовать со строками, т.е. для этого был даже введён новый синтаксис, аля

function cut(str) {
    ...
}

var str = cut`
    Hello
    world!
`


Но применение функции в рантайме каждый раз меня расстраивает, такая фича должна быть на этапе трансляции.

Вот в LiveScript сделали очень правильно:

multiline = 'string can be multiline 
            and go on and on 
            beginning whitespace is 
            ignored'

heredoc = '''
            string can be multiline
            with newlines
            and go on and on
            beginning whitespace is
            ignored
'''


Цитата:
А ты будешь внедрять их в SS или оно там не нужно?
Не буду, зачем оно там? К тому же апострофы (`) уже отданы на литералы локализации.

- template foo(name)
    `Hello` {name}!


Snakeskin.compile(<шаблон>, {
    language: {
        'Hello': 'Привет'
    }
})


***

Поскорее бы внедрили ещё новую литеральную форму объектов:

var a = {
    [1 + 2]: 5
};

a[3] // 5


А то как для монги пишешь запрос, так плакать хочется.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 08.09.2014 в 16:10.
Ответить с цитированием