使用TTS gem时在Ruby中运行动画

使用TTS gem时在Ruby中运行动画,ruby,while-loop,parallel-processing,ascii,text-to-speech,Ruby,While Loop,Parallel Processing,Ascii,Text To Speech,我想做的是: 1) 使用Ruby TTS gem读取一些文本 2) 在阅读文本时,我想循环浏览动画 我称之为动画的方式是: def animation i = 1 while i < 3 print "\033[2J" File.foreach("lib/narrabot/flair_folder/#{i}.txt") { |f| puts f } sleep(0.03) i += 1 end end def

我想做的是:

1) 使用Ruby TTS gem读取一些文本

2) 在阅读文本时,我想循环浏览动画

我称之为动画的方式是:

  def animation
    i = 1
    while i < 3
      print "\033[2J"
      File.foreach("lib/narrabot/flair_folder/#{i}.txt") { |f| puts f }
      sleep(0.03)
      i += 1
    end
  end
def动画
i=1
当我<3
打印“\033[2J”
foreach(“lib/narrabot/flair_folder/#{i}.txt”){f}
睡眠(0.03)
i+=1
结束
结束
TTS gem的一个怪癖(或功能)是,如果你在键盘运行时按下一个按钮…它会从你中断的地方重放…所以,当我尝试运行循环时,假设我可以“玩”文本TTS基本上是口吃的,直到结束后才运行动画,然后又回到开始

我只是需要这个宝石…但不知道如何实现我的目标

如果你好奇,我的项目在这里:


我试图做的是使用TTS阅读伊索寓言…在阅读寓言的同时…一个火灾的ascii动画将在背景中运行。最终,我希望用ascii面替换火灾图像(SoTa就像一个傀儡傀儡……目的是为了让嘴巴同步移动——与演讲相对……但这还有很长的路要走)。

这里的“通过动画循环”意味着什么?对于图形化的红宝石应用,请考虑。命令用户与CLI交互。“通过动画循环”实际上是:“使用ascii艺术迭代一堆文本文件,而文本到语音播放音频”(下次我会更仔细地考虑我的话)……最后,我喜欢你的Takuan Soho quote改编——这可能是我最需要阅读的东西(不知道它)谢谢。在这里,“通过动画循环”意味着什么?对于图形化的Ruby应用程序考虑。@ TADMAN感谢你与鞋子的链接,我很感激知道。这个项目(学校)要求用户与CLI交互。“通过动画循环”确实是:“用ascii艺术在一堆文本文件中迭代,而文本到语音播放音频”(下次我会更仔细地考虑我的话)…最后,我喜欢你对Takuan Soho quote的改编——这可能是我最需要阅读的东西(不知道)。谢谢。