utf8.pm

来自「MSYS在windows下模拟了一个类unix的终端」· PM 代码 · 共 85 行

PM
85
字号
package utf8;if (ord('A') != 193) { # make things more pragmatic for EBCDIC folk$utf8::hint_bits = 0x00800000;sub import {    $^H |= $utf8::hint_bits;    $enc{caller()} = $_[1] if $_[1];}sub unimport {    $^H &= ~$utf8::hint_bits;}sub AUTOLOAD {    require "utf8_heavy.pl";    goto &$AUTOLOAD if defined &$AUTOLOAD;    Carp::croak("Undefined subroutine $AUTOLOAD called");}}1;__END__=head1 NAMEutf8 - Perl pragma to enable/disable UTF-8 in source code=head1 SYNOPSIS    use utf8;    no utf8;=head1 DESCRIPTIONWARNING: The implementation of Unicode support in Perl is incomplete.See L<perlunicode> for the exact details.The C<use utf8> pragma tells the Perl parser to allow UTF-8 in theprogram text in the current lexical scope.  The C<no utf8> pragmatells Perl to switch back to treating the source text as literalbytes in the current lexical scope.This pragma is primarily a compatibility device.  Perl versionsearlier than 5.6 allowed arbitrary bytes in source code, whereasin future we would like to standardize on the UTF-8 encoding forsource text.  Until UTF-8 becomes the default format for sourcetext, this pragma should be used to recognize UTF-8 in the source.When UTF-8 becomes the standard source format, this pragma willeffectively become a no-op.  This pragma already is a no-op onEBCDIC platforms (where it is alright to code perl in EBCDIC rather than UTF-8).Enabling the C<utf8> pragma has the following effects:=over=item *Bytes in the source text that have their high-bit set will be treatedas being part of a literal UTF-8 character.  This includes most literalssuch as identifiers, string constants, constant regular expression patternsand package names.=item *In the absence of inputs marked as UTF-8, regular expressions within thescope of this pragma will default to using character semantics insteadof byte semantics.    @bytes_or_chars = split //, $data;	# may split to bytes if data					# $data isn't UTF-8    {	use utf8;			# force char semantics	@chars = split //, $data;	# splits characters    }=head1 SEE ALSOL<perlunicode>, L<bytes>=cut

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?