Macのsayコマンドは英語の勉強に使えると@shinji_kono先生からtwitterで教えていただいたので、
@maehrm 英語の勉強にも使えます。width and height を正しく発音しよう。
— Shinji Kono (@shinji_kono) 2013年4月9日
ちょっと工夫して、「無料英語学習メルマガ 一日一文“英語脳”で読む英語上達法」で毎日配信される本日の例文をsayコマンドで読み上げるRubyスクリプトを作ってみました。
eigonou.rb
# -*- coding: utf-8 -*- require 'open-uri' require 'nokogiri' doc = Nokogiri::HTML(open("http://www.eigonou.net/magdisp/#{ARGV[0]}.html")) doc.css("p").each do |elem| if elem.text =~ /■本日の例文(.*?)-------------/m todays_example = $1.gsub(/\n/, "") puts todays_example `say -v Alex #{todays_example}` end end
実行例
以下のように、01462を指定すると、第01462号の例文が表示され、読み上げられます。
$ ruby eigonou.rb 01462
The U.S.'s 50-year trade embargo continues to limit Cuba's economic growth.
追記(2015/02/08)
上記のスクリプトでは動作しなくなっていましたので、以下のように書き換えました。また、同じ例文を聞くたびにネットワークアクセスをしないように、一度取得した英文はローカルに保存するようにしました。
$ ./eigonou.rb 02130
At the end of the game the king and pawn go into the same bag.