Можно ли правильно сделать вложение в стиле php / html? - PullRequest
0 голосов
/ 02 ноября 2010

Я подозреваю, что может быть даже математическое доказательство того, что ответом на это является «нет», но вопрос: можно ли изобрести тип php-подобного языка (то есть с некоторыми строками, которые оценивают код за кулисами, инекоторые строки, которые оцениваются для отображения HTML), где он всегда может быть правильно вложен?Чтобы привести пример того, о чем я говорю, в rails / haml

%table
  %tr
    %th Title
    %th Content
    %th Owner
    %th Categories
  - @posts.each do |post|
    %tr
      %td

второй% tr должен быть выровнен по вертикали с первым (так как они являются братьями и сестрами в выходном html), но строкато, что начинается с каждого блока, приводит к отступу одной дополнительной строки.Возможно ли, что кто-то может разработать своего рода мета-язык HTML, где отступы могут отражать как управляющие структуры, так и правильное вложение, не вступая в конфликт друг с другом?Если да, то существует ли такая вещь?

1 Ответ

0 голосов
/ 02 ноября 2010

Я могу придумать несколько способов. Компилятор / интерпретатор просто должен сделать некоторые предположения, которые четко и четко изложены.

Например, предположим, что отступы для структур управления удалены для интерпретации структуры страницы, тогда ваш код выше поместит данные %tr на тот же уровень отступа, что и %td. Обратите внимание, что это затруднит чтение структуры страницы.

Другой пример - заставить синтаксис структуры управления сосуществовать со структурой страницы на заданном уровне отступа. Управляющая структура может существовать отдельно или после оператора структуры страницы. Это имеет то преимущество, что оно доступно для чтения как с точки зрения кода, так и структуры страницы.

%table  
  %tr  
    %th Title  
    %th Content  
    %th Owner  
    %th Categories  
  %tr @posts.each do |post|     
    %td  
...