진정한 이스케이프 시퀀스를 Perl로 보는 REP
Perl의 Eval을 사용한 Manma REL (REPL)
르 p. pl#!/usr/bin/perl
#CTL+C と CTL+TERMをハンドリングしてエスケープシーケンスを戻す
local $SIG{INT} = sub { print "\e[m"; exit ;};
local $SIG{TERM} = sub { print "\e[m"; exit ;};
print( "\e[44;37;5m");
while($REP::read=<STDIN>) {
print("\e[47;30m");
#EVAL関数で評価結果とエラーを拾う
$REP::eval=eval($REP::read);
print("\e[m\n(\e[47;31;2m\e[5m$REP::eval\e[m)\n");
#以下がエラー発生時を拾って表示
print("\e[47;30m",$@) if ($@) ;
print("\e[44;37;5m");
}
$SIG{TERM}->();
실제 이스케이프 시퀀스를 사용한 결과의 REP(ReadEvalPrint) 예제
이스케이프 시퀀스는 다음 사이트를 참조하십시오.
Reference
이 문제에 관하여(진정한 이스케이프 시퀀스를 Perl로 보는 REP), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/engbJapan/items/5a5fe5a5951bd6e57019
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
#!/usr/bin/perl
#CTL+C と CTL+TERMをハンドリングしてエスケープシーケンスを戻す
local $SIG{INT} = sub { print "\e[m"; exit ;};
local $SIG{TERM} = sub { print "\e[m"; exit ;};
print( "\e[44;37;5m");
while($REP::read=<STDIN>) {
print("\e[47;30m");
#EVAL関数で評価結果とエラーを拾う
$REP::eval=eval($REP::read);
print("\e[m\n(\e[47;31;2m\e[5m$REP::eval\e[m)\n");
#以下がエラー発生時を拾って表示
print("\e[47;30m",$@) if ($@) ;
print("\e[44;37;5m");
}
$SIG{TERM}->();
이스케이프 시퀀스는 다음 사이트를 참조하십시오.
Reference
이 문제에 관하여(진정한 이스케이프 시퀀스를 Perl로 보는 REP), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/engbJapan/items/5a5fe5a5951bd6e57019
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(진정한 이스케이프 시퀀스를 Perl로 보는 REP), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/engbJapan/items/5a5fe5a5951bd6e57019텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)