Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

PerlIO::eol
PerlIO layer for normalizing line endings

PerlIO::eol - PerlIO layer for normalizing line endings


NAME

PerlIO::eol - PerlIO layer for normalizing line endings


VERSION

This document describes version 0.13 of PerlIO::eol, released October 18, 2004.


SYNOPSIS


    binmode STDIN, ":raw:eol(LF)";

    binmode STDOUT, ":raw:eol(CRLF)";

    open FH, "+<:raw:eol(LF-Native)", "file";

    binmode STDOUT, ":raw:eol(CRLF?)"; # warns on mixed newlines

    binmode STDOUT, ":raw:eol(CRLF!)"; # dies on mixed newlines

    use PerlIO::eol qw( eol_is_mixed );

    my $pos = eol_is_mixed( "mixed\nstring\r" );


DESCRIPTION

This layer normalizes any of CR, LF, CRLF and Native into the designated line ending. It works for both input and output handles.

If you specify two different line endings joined by a -, it will use the first one for reading and the second one for writing. For example, the LF-CRLF encoding means that all input should be normalized to LF, and all output should be normalized to CRLF.

By default, data with mixed newlines are normalized silently. Append a ! to the line ending will raise a fatal exception when mixed newlines are spotted. Append a ? will raise a warning instead.

It is advised to pop any potential :crlf or encoding layers before this layer; this is usually done using a :raw prefix.

This module also optionally exports a eol_is_mixed function; it takes a string and returns the position of the first inconsistent line ending found in that string, or 0 if the line endings are consistent.

The CR, LF, <CRLF> and <NATIVE> constants are also exported at request.


AUTHORS

Autrijus Tang <autrijus@autrijus.org>

Inspired by the PerlIO::nline manpage by Ben Morrow, <PerlIO-eol@morrow.me.uk>.


COPYRIGHT

Copyright 2004 by Autrijus Tang <autrijus@autrijus.org>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy