跳转到主要内容

一个用于处理文本文件行尾(EOL)字符的命令行脚本和Python模块

项目描述

`eol` 是一个命令行脚本 `eol` 和一个 Python 模块 `eol`,用于处理
文本文件的行尾字符。

该项目位于此处: <http://github.com/trentm/eol>

## 安装

要在您的Python全局site-packages中安装,请使用以下之一
以下

pip install eol
pypm install eol # 如果您使用ActivePython (http://www.activestate.com/activepython)

但是您使用
[virtualenv](http://www.arthurkoziel.com/2008/10/22/working-virtualenv/),
对吗?如果是这样,那么请使用以下之一

pip -E path/to/env install eol
pypm -E path/to/env install eol


## 命令行示例

**列出给定路径的EOL样式**

$ eol *.txt
foo_cr.txt: Mac Classic (CR)
foo_crlf.txt: Windows (CRLF)
foo_empty.txt: 没有EOLs
foo_lf.txt: Unix (LF)
foo_mixed.txt: 混合,主要是Unix (LF)

递归

$ eol -r ~/src/redis
/Users/trentm/src/redis/.gitignore: Unix (LF)
/Users/trentm/src/redis/BETATESTING.txt: Unix (LF)
/Users/trentm/src/redis/BUGS: Unix (LF)
/Users/trentm/src/redis/COPYING: Unix (LF)
...
/Users/trentm/src/redis/zmalloc.h: Unix (LF)
/Users/trentm/src/redis/.git/HEAD: Unix (LF)
/Users/trentm/src/redis/.git/config: Unix (LF)
...
/Users/trentm/src/redis/client-libraries/README: Unix (LF)
/Users/trentm/src/redis/design-documents/REDIS-CLUSTER: Unix (LF)
/Users/trentm/src/redis/doc/AppendOnlyFileHowto.html: Unix (LF)
/Users/trentm/src/redis/doc/AuthCommand.html: Unix (LF)
...

**查找具有给定行结束符样式的文件**

$ eol -f dos -x .svn -r ~/src/python
/Users/trentm/src/python/Doc/make.bat
/Users/trentm/src/python/Lib/email/test/data/msg_26.txt
/Users/trentm/src/python/Lib/encodings/cp720.py
/Users/trentm/src/python/Lib/test/decimaltestdata/and.decTest
...
/Users/trentm/src/python/PC/VS8.0/x64.vsprops
/Users/trentm/src/python/PCbuild/pcbuild.sln
...

**将文件转换为给定的行结束符样式**

$ eol ~/src/python/Tools/msi/merge.py
/Users/trentm/src/python/Tools/msi/merge.py: Windows (CRLF)
$ eol -c cr ~/src/python/Tools/msi/merge.py

# 但谁真的想用 CR(即 Mac Classic,'\r')行结束符。
# "native" 是指当前平台本地的行结束符样式
$ eol -c native ~/src/python/Tools/msi/merge.py
已将 `/Users/trentm/src/python/Tools/msi/merge.py' 转换为 LF 行结束符
$ eol ~/src/python/Tools/msi/merge.py
/Users/trentm/src/python/Tools/msi/merge.py: Unix (LF)


## 模块示例

**列出给定路径的EOL样式**

>>> import eol, glob
>>> for path in glob.glob("*.txt")
>>> for path in glob.glob("*.txt")
... print path, eol.eol_info_from_path(path)
...
foo_cr.txt ('\r', '\r') # (<detected-eols>, <suggested-eols>)
foo_crlf.txt ('\r\n', '\r\n')
foo_empty.txt (None, '\n') # 建议空内容的本地行结束符
foo_lf.txt ('\n', '\n')
foo_mixed.txt (<class 'eol.MIXED'>, '\n')

递归

>>> for i in eol.eol_info_from_path_patterns(["/Users/trentm/src/redis"], recursive=True): print i
...
('/Users/trentm/src/redis/.gitignore', '\n', '\n')
('/Users/trentm/src/redis/BETATESTING.txt', '\n', '\n')
('/Users/trentm/src/redis/BUGS', '\n', '\n')
('/Users/trentm/src/redis/COPYING', '\n', '\n')
...

**将文件转换为给定的行结束符样式**

>>> path = "/Users/trentm/src/python/Tools/msi/merge.py"
>>> eol.eol_info_from_path(path)
('\r\n', '\r\n')
>>> eol.convert_path_eol(path, "\n")
>>> eol.eol_info_from_path(path)
('\n', '\n')

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定要选择哪个,请了解有关 安装包 的更多信息。

源代码分发

eol-0.7.5.zip (25.3 kB 查看哈希值)

上传时间 源代码

由以下机构支持