cat /dev/null

Tulip - tablaturas à partir da boa e velha cifra numérica

Criei esse programa há uns 6/7 anos atrás por uma necessidade... precisava passar umas músicas que tinha anotadas em cifra numérica para tablatura, pois o negócio aqui estava feio, tinha acumulado muitos papéis com anotações de músicas que fui tirando ao longo dos anos.

Originalmente fiz ele no Linux mas depois portei uma versão para Windows também.

Hoje em dia muita gente que começa não aprende essa notação, uma pena porque ela é bem prática, mas passá-la para tablatura é muito cansativo e chato.

Pois bem, cifra numérica é isso aqui (a boa e velha escala cromática):

60-61-62-63-64-
50-51-52-53-54-
40-41-42-43-44-
30-31-32-33-34-
20-21-22-23-24-
10-11-12-13-14-|

O que o tulip faz é pegar uma música expressa nesses moldes e gerar a tablatura.

Bom, um exemplo, o riff de "Burn The Witch" do "QoTSA" em linguagem "Tulip".

Vamos criar uma arquivo "burn_the_witch.tlp" em "C:\tulip"


  1. _brainbox=

  2. CUT_TAB_TO_SAVE=yes;

  3. ;_brainbox



  4. _headbox=

  5. Burn The Witch Riff (QoTSA)

  6. Afinação C drop



  7. ;_headbox



  8. _bodybox=

  9. .quote{"\n\nIntro\n\n"}

  10. .chord{64-56-46}-.chord{64-56-46}.repeat{3}-;

  11. .quote{"\n\nMain riff\n\n"}

  12. .chord{64-56-46}-.chord{64-56-46}-|-34-46-44-|-

  13. .chord{64-56-46}-.chord{64-56-46}-|-44-56-54-67-;

  14. ;_bodybox



  15. _tailbox=



  16. That's all folks!

  17. ;_tailbox




Pronto, com a música codificada tudo que precisamos é entregar ao tulip o arquivo para que ele gere o arquivo ".txt" com a tablatura. O tulip estando instalado em "C:\Tulip", no prompt de comando digite:

tulip burn_the_witch.tlp burn_the_witch.txt

Pressione ENTER, ele vai compilar seu código se tudo estiver ok, como você forneceu um segundo nome de arquivo, ele cria a tab com esse nome. Então "burn_the_wicth.txt" contém a notação em tablatura de um riff foda! :)

Se você colocar "C:\Tulip" na variável de ambiente "PATH" poderá chamá-lo dentro do prompt de comando à partir de qualquer pasta.

Esse software me foi bem útil na época e confesso que ainda hoje é ele que uso para passar minhas transcrições para o PC.

O maior desafio e diversão foi criar algo que pudesse expressar computacionalmente a cifra numérica, como na época estava usando muito o LaTeX, aquelas macros TeX acabaram sendo uma inspiração.

No exemplo passado não deu para mostrar, mas o Tulip possui um aspecto recurssivo em sua sintaxe o que permite a combinação de tags para expressar combinações de técnicas, imagine um palm mute do acorde E na 7ª casa da guitarra:


  1. .mute{

  2. .chord{57-49-39-29}-

  3. .chord{57-49-39-29}-

  4. .chord{57-49-39-29}

  5. }


Como desenvolvedor pude finalmente usar recurssividade para um problema mais prático, foi legal ver a utilidade do conceito indo além daqueles fatoriais idiotas que todo mundo um dia já precisou  escrever.

Teve um outro recurso que depois coloquei, foi o de filtrar as infos básicas de um MIDI gerando o código Tulip e dele a tablatura. A experiência que tirei ao codificar esse recurso no aplicativo foi que parsear MIDIs é um blues, não há padrão é tudo bagunçado tira sua sanidade fácil, fácil.

Amigo developer se precisar parsear MIDIs boa sorte!!