koba::blog

小林聡: プログラマです

iPod touch の歌詞表示を左寄せにする(再)

以前 iPod touch の歌詞表示を左寄せにする - koba::blog で紹介した方法がiOS5では使えなくなっていたのですが、iOS6で再び使えるようになりました。

ただし、以前よりちょっと面倒です。

<style>
div {text-align:left;font-size:16px;}
</style>
<div>
<!-- ここに歌詞を入れる -->
</div>

divの部分はHTMLとして解釈されるので、改行したい箇所にbr要素を追加する必要があります*1

面倒なので、変換用のCGIを作りました。

#!/usr/bin/perl -T

use strict;
use warnings;
use CGI;

my $cgi = new CGI;
$cgi->charset('utf-8');

my $title = 'iPod Lyrics Formatter';

if ($cgi->request_method eq 'POST') {

    my $lyrics
        = "<style>\n"
        . "div {text-align:left;font-size:16px;}\n"
        . "</style>\n"
        . "<div>\n"
        . join("\n",
               map { "$_<br/>" }
                   split(/\x0d\x0a|\x0d|\x0a/,$cgi->param('lyrics'))
          )
        . "\n</div>"
        ;
    $cgi->param(lyrics=>$lyrics);
}

print $cgi->header(-charset=>'utf-8'),
      $cgi->start_html(-encoding=>'utf-8', -title=>$title),
      $cgi->h1($cgi->a({href=>''}, $title)),
      $cgi->start_form,
      $cgi->textarea('lyrics','',40,40),
      $cgi->div($cgi->submit),
      $cgi->end_form,
      $cgi->end_html;

以下に置いてあります。

*1:divの部分にpreが使えるといいと思ったので試してみましたが、ダメでした