Cygwin なんでも掲示板

一覧最新記事過去一覧 | 検索FAQアンテナHOME
(新規投稿・発言はできません)


スレッド

└◇2079:
perl で 日本語 [岩崎] 04/10 06:41

 └◇2080:Re:perl で 日本語 [discypu] 04/10
  └◇2081:Re[2]:perl で 日本語 [岩崎] 04/10
   ├◇2082:Re[3]:perl で 日本語 [discypu] 04/10
   └◇2083:Re[3]:perl で 日本語 [discypu] 04/10
    └◇2084:Re[4]:perl で 日本語 [岩崎] 04/10 <


2079● perl で 日本語[ 岩崎 ] 2004 04/10 06:41
はじめまして。岩崎です。よろしくお願いします。
CygwinとPerlをはじめて2日目という、超若葉です。(^^;
Cygwinのperl 5.8.2で日本語を表示させると化けてしまいます。perlは日本語をサポートしていると聞いたのですが、単純に、EUCやSHIFT-JISを変数に代入して print することはできないのでしょうか?それとも何らかの設定があるのでしょうか? だれかご存知ないでしょうか。もしかして、超お馬鹿な質問をしてるかも知れませんが・・・
スレッド一覧


2080● Re:perl で 日本語[ discypus ] 2004 04/10 12:26
次のようにすればできるようです。私も今回初めて試したので、間違っているかも知れませんが。

#!/usr/bin/perl
use encoding 'shiftjis', STDIN=>'shiftjis', STDOUT=>'shiftjis';
my $hello = 'こんにちは';
print $hello;

あと、コマンドラインで次のコマンドを実行すると、encodingやperlの日本語対応のを見ることができます。
perldoc encoding
perldoc perljp
スレッド一覧


2081● Re[2]:perl で 日本語[ 岩崎 ] 2004 04/10 13:18
こんにちは。岩崎です。
レスをありがとうございます。(ぺこり)。

>use encoding 'shiftjis', STDIN=>'shiftjis', >STDOUT=>'shiftjis';
my $hello = 'こんにちは';
>print $hello;
ありがとうございました。WIN32上で入力した漢字文字列もcygwin上で入力した漢字文字列も表示できました!。
教えてもらったことと、.vimrc .inputrcの設定でどうにか
クリアした?と思ってます。もしかしたら間違ってるかもしれません(^^;

# .inputrcの設定
set kanji-code sjis
set convert-meta off
set meta-flag on
set output-meta on

# .vimrcの設定
set enc=japan
if has('iconv')
set fileencodings+=iso-2022-jp
set fileencodings+=utf-8,ucs-2le,ucs-2
if &encoding ==# 'euc-jp'
set fileencodings+=cp932
else
set fileencodings+=euc-jp
endif
endif

ところが喜んでいたのもつかの間、perldocコマンドを
実行するとエラーが発生することがわかりました。
「cygpcre-0.dllが見つかりません」のようなエラーです。
何か、インストール漏れでもあったのでしょうが・・・なんだろう。。。
スレッド一覧


2082● Re[3]:perl で 日本語[ discypus ] 2004 04/10 19:43
手元で次のようにして確かめたところ、
cygpcre-0.dll は、libpcre0ってパッケージに入っていました。

$ cygcheck -f /usr/bin/cygpcre-0.dll
libpcre0-4.5-1

たぶん、perldocを実行したときに使われるページャ
(デフォルトではless)が使うのでしょう。
# 手元のlessはたぶんJE(書籍版)なので、
# libpcre0ではなく、libpcreパッケージを使っていましたが)

ということで、まずは、
lessやlibpcre0 パッケージをインストールしていなければ、インストールしてみましょう。インストールしていれば、そのパッケージだけ再インストールしてみてください。
スレッド一覧


2083● Re[3]:perl で 日本語[ discypus ] 2004 04/10 19:47
補足。
cygpcre-0.dllは
Cygwinをc:\cygwinに入れた場合、c:\cygwin\binに
入っています。
このディレクトリにWindowsのPATHを通していないときも、
「cygpcre-0.dllは見つからない」エラーが出るかも知れません。
スレッド一覧


2084● Re[4]:perl で 日本語[ 岩崎 ] 2004 04/10 23:30
ありがとうございました。(ペコリ)
lessをインストールしたら、cygpcre-0.dllも正しく
はいったようです。これで落ち着いてPerlの学習が
できます。へへ。
スレッド一覧

早田のホームページへ
CGIROOM