Re: 独仏語のアクセント記号の変換

名前: 永田善久
日時: 2001-10-06 17:16:13
IPアドレス: 133.100.243.*

>>2674 ひよこさん、こんにちは。 > ドイツ語・フランス語などのニュースサイトに掲載される,アクセ > ント記号を含む文章をLaTeXで処理することがあるのですが,今ま > では,アクセント記号がつく文字をいちいちエディタ上で置換して > いました。 LaTeX には Latin-1(iso-8859-1) コードを「ダイレクト」に扱うことの出来るパッケージ inputenc がありますので、「日本語を混在させない」(つまり Latin-1 文字コードだけを 用いる)ということでしたら \usepackage[latin1]{inputenc} (UNIX 系の場合) \usepackage[ansinew]{inputenc} (Windows の場合) \usepackage[applemac]{inputenc} (Macintosh の場合) と一言プリアンブルに記しておけば、文字変換をする必要はなくなります。 > それでもたいした手間ではないとは思うのですが,やはり一括して > 変換できたら楽だなと思っています。何か良い方法はあるでしょう > か? もし Perl をお使いでしたら、例えば次のようなスクリプトで文字列を一括 変換できます。ドイツ語の例で示しますが、フランス語等でも全く同様 です。(ここにa-Umlaut)とある箇所には Latin-1 コードの当該文字 を代入してください。 # 私は Perl 初心者ですから、ここの掲示板に集うもっとよく出来る方々 # が、よりよいスクリプトを教えてくださるかもしれません。 -------------------------------------- #!/perl/bin/perl mkdir(new,0777) or die; while($file = <*.txt>){ $transfile = $file; $transfile =~ s/\.txt/-n\.txt/; $newfile = "new/$transfile"; open(IN, "$file") or die; open(OUT, ">$newfile") or die; while(<IN>){ s/(ここにa-umlaut)/"a/g; s/(ここにo-umlaut)/"o/g; s/(ここにu-umlaut)/"u/g; s/(ここにA-umlaut)/"A/g; s/(ここにO-umlaut)/"O/g; s/(ここにU-umlaut)/"U/g; s/(ここにEszett)/"s/g; print OUT; } close(IN); close(OUT); }

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます)