NextPrevUpTopContentsIndex

detect-eol-style

Function
Summary

Detects the end of line style of a file.

Package

system

Signature

detect-eol-style pathname ef-spec buffer length => new-ef-spec

Arguments

pathname

Pathname identifying location of buffer .

ef-spec

An external format spec.

buffer

A buffer whose contents are examined.

length

Length (an integer) up to which buffer should be examined.

Values

new-ef-spec

A new external format spec created by merging ef-spec with the encoding that was found.

Description

When the encoding in ef-spec has foreign type (unsigned-byte 8) , search buffer up to length for the first occurrence of the byte (10) . If found, and it is preceded in buffer by (13) , merge ef-spec with

(:default :eol-style :crlf)

If found and is not preceded by (13) , merge ef-spec with

(:default :eol-style :lf)

Thus a complete external format spec is constructed. Otherwise, return ef-spec .

When the encoding in ef-spec has foreign type (unsigned-byte 16) , search buffer up to length for the first occurrence of the byte sequence (13 0 10) . If found, merge ef-spec with

(:default :eol-style :crlf)

If (13 0 10) is not found, search buffer up to length for (10 0) or (0 10) . If found, merge ef-spec with

(:default :eol-style :lf)

Thus a complete external format spec is constructed. Otherwise, return ef-spec .

See also

*file-eol-style-detection-algorithm*


LispWorks Reference Manual - 20 Jul 2006

NextPrevUpTopContentsIndex