2013-07-03 5 views
5

Ho alcune sceneggiature strutturate in modo semplice, formattate come nell'esempio alla fine di questo post. Vorrei analizzare ciascuno di essi in un formato in cui:Quale strumento di elaborazione del testo è consigliato per le sceneggiature di analisi?

  • Sarà facile richiamare solo le indicazioni di fase che trattano un luogo specifico.
  • Sarà facile richiamare solo i dialoghi appartenenti a un determinato personaggio.

L'approccio più ovvio che posso pensare sta usando sed o perl o php di mettere i tag div attorno ad ogni blocco, con le classi che rappresentano il carattere, la posizione, e se si tratta di indicazioni di scena o dialogo. Poi, aprilo come una pagina web e usa jQuery per estrarre tutto ciò che mi interessa. Ma questo suona come un modo per farlo e forse sembra solo una buona idea perché questi sono strumenti che sono abituato a. Ma sono sicuro che questo è un problema ricorrente che è stato risolto in precedenza, quindi qualcuno può raccomandare un flusso di lavoro più efficiente che può essere usato su una scatola Linux? Grazie.

Ecco alcuni input di esempio:

 SOMEWHERE CORPORATION - OPTIONAL COMMENT 
     A guy named BOB is sitting at his computer. 

          BOB 
       Mmmm. Stackoverflow. I like. 

     Footsteps are heard approaching. 

          ALICE 
       Where's that report you said you'd have for me? 

     Closeup of clock ticking. 

          BOB (looking up) 
       Huh? What? 

          ALICE 
       Some more dialogue. 

     Some more stage directions. 

Ecco cosa esempio di output potrebbe essere simile:

 <div class='scene somewhere_corporation'> 
     <div class='comment'>OPTIONAL COMMENT</div> 
     <div class='direction'>A guy named BOB is sitting at his computer.</div> 
     <div class='dialogue bob'>Mmmm. Stackoverflow. I like.</div> 
     <div class='direction'>Footsteps are heard approaching.</div> 
     <div class='dialogue alice'>Where's that report you said you'd have for me?</div> 
     <div class='direction'>Closeup of clock ticking.</div> 
     <div class='comment bob'>looking up</div> 
     <div class='dialogue bob'>Huh? What?</div> 
     <div class='dialogue alice'>Some more dialogue.</div> 
     <div class='direction'>Some more stage directions.</div> 
     </div> 

sto usando DOM come esempio, ma ancora una volta, solo perché questa è una cosa che capire. Sono aperto a tutto ciò che è considerato una best practice per questo tipo di attività di elaborazione del testo se, come sospetto, roll-your-own espressioni regolari e jQuery non è la migliore pratica. Grazie.

+0

Stai provando a farlo in tempo reale su un sito web? L'unico motivo per cui utilizzi jQuery è se tu avessi qualcuno a inserire una sceneggiatura in una casella di testo e ottenere un output istantaneo della direzione di scena. –

+2

@ChristianStewart: Se capisco correttamente OP, il motivo/i che suggerisce jQuery è che è un buon strumento per estrarre il contenuto di (X) nodi HTML in base a informazioni di classe o id. Se hai un martello, tutto sembra un chiodo;) – dodgethesteamroller

+0

Le sceneggiature sono file di testo che scaricano, questo non deve avvenire in tempo reale o online. @dodgethesteamroller ha ragione, è un antipasto di chiodo a martello e sto cercando di evitarlo chiedendo qui idee migliori. – f1r3br4nd

risposta

0

Se il vostro ingresso non è troppo rumoroso, vale a dire se ci si può fidare alcune regolarità come l'indentazione che è più grande per le finestre di dialogo in contrapposizione ai commenti, vorrei utilizzare un semplice Context Free Grammar. Hai buone implementazioni in tutte le lingue e troverai molte informazioni su SO.

Se l'input varia molto, quindi seguire il percorso di apprendimento automatico, ma è necessario disporre di un numero elevato di input con output convalidato dall'uomo per l'allenamento, il che potrebbe essere una seccatura.

In ogni caso, non avrei mai e poi mai usato espressioni regolari per problemi del genere.

2

Si potrebbe utilizzare Celtx per import plain text scripts ed esportarli in formato HTML (e RDF/XML per i metadati) (vedi questo related thread e questo blog post, which describes the file structure).

Altri editor di sceneggiature come Trelby potrebbero offrire questa funzione.


C'è anche Fountain, un linguaggio di markup di testo semplice per la sceneggiatura. Essi offrono libraries cui si potrebbe (Non ho controllato se offrono qualcosa per l'importazione e la conversione) utilizzare per la vostra causa:

Fontana è gratuito e open-source, con le librerie che lo rendono facile da aggiungere il supporto nelle tue app.


Anche se tali progetti non possono essere utilizzate per la vostra causa, si potrebbe almeno riutilizzare il loro formato per l'output.

Problemi correlati