Ticket #27 (closed task: fixed)

Opened 6 years ago

Last modified 6 years ago

filtr dla szablonów konwertujący AST do HTML

Reported by: dozzie Owned by: dozzie
Priority: normal Milestone: połączenie logiki z UI
Component: Keywords:
Cc: Parent ID:

Description

W #26 powstał parser dla naszego języka wiki. Ten parser dostarcza drzewa wyprowadzenia (AST, abstract syntax tree), w którym węzłami są fragmenty treści strony ułożone hierarchicznie (paragraf zawiera jedną lub więcej linii, linia zawiera fragmenty tekstu zwykłego i formatowanego, ...).

Nasze AST trzeba zamienić na HTML. Właściwym miejscem na to są szablony, więc potrzebny będzie nasz własny filtr. Dokumentacja na ten temat jest tu: https://docs.djangoproject.com/en/1.4/howto/custom-template-tags/

Child Tickets

Attachments

markup-samples.zip (5.3 KB) - added by dozzie 6 years ago.
przykładowe pliki z tekstem wiki i drzewa wyprowadzenia z nich uzyskane

Change History

comment:1 Changed 6 years ago by dozzie

  • Owner set to mbaczynska
  • Status changed from new to assigned

comment:2 Changed 6 years ago by dozzie

Opisy węzłów są tu: SyntaxTree

Jeszcze obiecałem przykłady takich drzew (kod pythonowy) i sposób ich produkcji.

Changed 6 years ago by dozzie

przykładowe pliki z tekstem wiki i drzewa wyprowadzenia z nich uzyskane

comment:3 Changed 6 years ago by dozzie

W załączniku markup-samples.zip zamieściłem przykładowe pliki z tekstem wiki (te same, które są w źródłach) i odpowiadające im reprezentacje jako drzewo (kod pythonowy).

Dalsze przykłady można uzyskać w ten sposób:

from dashwiki.markup.lexer import Lexer
from dashwiki.markup.parser import Parser

content = file("nazwapliku.txt").read()
lexer = Lexer(content)
parser = Parser()

result_tree = parser.parse(lexer)

comment:4 Changed 6 years ago by dozzie

  • Owner changed from mbaczynska to dozzie
  • Status changed from assigned to closed
  • Resolution set to fixed

Filtr wykonany.

Note: See TracTickets for help on using tickets.