Вход | Регистрация

Пета задача

  • Thumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_up

    Що не вземеш да създадеш една формичка някъде на сайта, в която хората въвеждат код и получават като резултат HTML-а, който трябва да се генерира? :)

    13.05.2009
  • Айде всички дружно да вдигнем по един палец за Стефан!

    13.05.2009
  • Thumbs_upThumbs_up

    p5-knower

    Да mega грозно е и да не се пише така страница, но би следвало да свърши работа :) . Надявам се да не е много бъгаво, като за скалъпено за няколко минути.

    Резултата се появява в div id="result"


    И все пак вярвайте повече на sample test-a.

    13.05.2009
  • На примерите от поста на Борко дава Exception occurred.

    13.05.2009
  • Thumbs_up

    Some people, when confronted with a problem, think "I know, I’ll use regular expressions." Now they have two problems. — Jamie Zawinski in comp.lang.emacs.

    13.05.2009
  • На примерите от поста на Борко дава Exception occurred.

    ** ми изглежда невалидно - ще говоря с Митко...

    P.S. thumps up за цитата ;)

    13.05.2009 (променeно 13.05.2009)
  • Отностностно цитатите и тази част от изскванията -

    Цитати се обозаначават със > последван от whitespace, като на всеки ред от цитата това трябва да е една и съща последователност. Изключение правят редовете в които след whitespace-а няма нищо. Тогава whitespace-а може да е произволен

    Под произволен се има предвид точно 1 брой произволен whitespace?!

    P.S. И как се прави нов ред в цитат, че нещо не мога да го получа в тестера?

    13.05.2009 (променeно 13.05.2009)
  • Всъщност схванах. За малкото хора :D , които още се чудят - трябва да разгледаме source-а на html страницата в частта <div id="result">..., за да видим истинският резултат :)

    13.05.2009
  • Хора, чувствам се загубен из тая задача. Не знам даже как да я почна : \ . Дайте някакви насоки, съвети, кажете как би било добре да тръгна, че инак няма никакъв шанс да направя каквото и да било работещо до неделя.

    14.05.2009
  • Thumbs_up

    На p5-knower примерът с код индентиран с '.' не работи.

    14.05.2009
  • На p5-knower примерът с код индентиран с '.' не работи.

    Под "използва се . вместо интервал" Митко има впредвид, че е написал "." вместо интервал, за да е по-четливо - примера е с интервали.

    (Ако греша да ме поправи)

    14.05.2009
  • Точо не греши. А в knower-а ** няма да работи, но това което съм постнал е вярното.

    14.05.2009
  • Thumbs_up

    Regular Expression HOWTO

    С Пайтън дистрибуцията идва Tools/scripts/redemo.py

    А ако искате нещо по-сериозно Kodos е дебъгер за регулярни изрази за Пайтън 2.x

    За задачата съветвам да я пишете на части и да тествате постепенно всяка от тях. Ето примерен план, в който реда няма значение:

    • разбиване на блокови елементи
    • разпознаване на типа блоков елемент (по първият ред)
    • обработване на различните блокови елементи
    • като по-същественото е обработване на вградените елементи в парагафите
    14.05.2009 (променeно 14.05.2009)
  • Всичко, което дава Exception occurred в тестера можем да считаме за невалиден вход? (с изключение на **)

    14.05.2009
  • За сега ги поствай тук :)

    14.05.2009
  • Това:

    >
    >     on &embedded&
    >     <code> `with backticks`

    ?

    Също и примера за "невалиден блок код" (този с '.' вместо ' '):

    ....x = foo(1)
    ..def baz(zap):
    ....return zap / 0
    14.05.2009 (променeно 14.05.2009)
  • Първото е проблем на knower-а, който не признава "празни" > в началото на цитата. Второто както каза Точо би трябвало да е без '.', които сложих само за четимост. На него е нормално да гърми щом е невалиден блок код. Забележи че когато примера се въведе с '.' се смята за обикновен параграф.

    14.05.2009 (променeно 14.05.2009)
  • Thumbs_up

    Ако някой не се е сетил - под "празни" се има предвид с whitespace-ове, а не нов ред.

    Може ли транслирания код да има whitespaces между таговете и трябва ли да отгатнем точния брой нови редове, които вашия маркъп реши да слага (към момента от примерите се вижда, че след всеки завършващ таг за параграф, квота или пре има нов ред освен ако след това не следва отново квота - тогава квотата излиза на същия ред).

    14.05.2009 (променeно 14.05.2009)
  • На него е нормално да гърми щом е невалиден блок код.

    Щом е невалиден блок код, не означава ли, че е текстов параграф?

    14.05.2009
  • В случай на r'alabala * darvenica _kekerica * bala_':

    1. Има ли приоритет за вградените елементи?

    /според knowner-a първото срещнато до затварящ таг/

    2. ще работи ли ли наблягането ако дръпнем първата * до лявата на нея дума:

    alabala* darvenica _kekerica * bala_

    /knowner-a каза не, същото важи и ако дръпнем затварящата звездичка до дясната на нея дума

    15.05.2009 (променeно 15.05.2009)
  • > the physics department
    > for biological methods`
    >
    > > on &embedded&
    > > with backticks
    >
    >
    >
    > and_hitchhiking_around

    В този случай как може да се направи така, че

    on &embedded&
    with backticks

    да е блок код а не параграф?

    15.05.2009 (променeно 15.05.2009)
    • > Може ли транслирания код да има whitespaces между таговете и трябва ли да отгатнем точния брой нови редове, които вашия маркъп реши да слага

    Ще се постараем да няма проблеми с whitespace в тестовете, но все пак:

    • > Между съседни блокове в изхода има по точно един нов ред, независимо колко са били на входа

    Това прави knower-а. Като "под съседни" се няма предвид между цитат и вложен в него блок (друг цитат/код/параграф)

    • > Щом е невалиден блок код, не означава ли, че е текстов параграф?

    Направете го както ви е по-удобно.

    • > Има ли приоритет за вградените елементи?

    Важи този който е по-наляво.

    • > ще работи ли ли наблягането ако дръпнем първата * до лявата на нея дума

    knowner-a каза не, същото важи и ако дръпнем затварящата звездичка до дясната на нея дума

    Щом knower-a казва така :)

    Ако обърнем нещата:

    some_identifier_ *another _identifier here*

    Изглежда логично да се наблегне another _identifier here и да смята _ за част от думите. Искаме и * и ` да се смятат за част от думите само за да бъде по-еднотипно.

    15.05.2009 (променeно 15.05.2009)
  • Тестовете ще въвеждат валиден код нали?

    15.05.2009
  • Тестовете ще въвеждат валиден код нали?

    да

    15.05.2009
  • В този случай как може да се направи така, че

    on &embedded& with backticks

    да е блок код а не параграф?

    На практика не може да цитираш само блок код понеже не е ясно дали отместването спада към цитата или към блока. Това е проблем на дефиницията. Трябва в цитата да има параграф преди блока код.

    15.05.2009