python命令行应用程序工具

clint2的Python项目详细描述


clint是一个模块,其中包含一组用于开发的优秀工具 命令行应用程序。

https://github.com/kennethreitz/clint/raw/master/misc/clint.jpeg

c命令 lin接口 t工具 是的。

克林特太棒了。太棒了。它支持颜色,但检测会话是否为tty,因此如果您在周围使用管道,则不渲染颜色。自动的。

非常棒的可嵌套缩进上下文管理器。示例:(with indent(4): puts('indented text'))。它支持自定义电子邮件样式的报价。当然,如果需要,它也支持颜色。

它有一个很棒的列打印机,可以选择自动扩展列。它检测当前控制台的宽度并相应地进行调整。它正确地包装您的单词以适应列大小。有或没有混合颜色。只需一个函数调用。

世界上最容易使用隐式参数系统w/链接方法进行过滤。说真的。

运行examples中的各种可执行文件,以了解clint提供的功能。

你永远不会不使用它的。

当前功能:

  • 少量文档(请暂时与我联系)
  • cli颜色和缩进
  • 非常简单+功能强大的列式打印机
  • 基于迭代器的进度条
  • 隐式参数处理
  • 对传入Unix管道的简单支持
  • 应用程序目录管理

未来功能:

  • 文件!
  • 简单选择系统Are you sure? [Yn]
  • 默认查询系统Installation Path [/usr/local/bin/]
  • 欢迎提出建议。

示例

我想缩进我的控制台文本。

>>> from clint.textui import puts, indent

>>> puts('not indented text')
>>> with indent(4):
>>>     puts('indented text')
not indented text
    indented text

我想引用我的控制台文本(如电子邮件)。

>>> puts('not indented text')
>>> with indent(4, quote=' >'):
>>>     puts('quoted text')
>>>     puts('pretty cool, eh?')

not indented text
 >  quoted text
 >  pretty cool, eh?

我想给我的控制台文本上色。

>>> from clint.textui import colored

>>> puts(colored.red('red text'))
red text

# It's red in Windows, OSX, and Linux alike.

我想把数据通过管道传输到stdin。

>>> clint.piped_in()

# if no data was piped in, piped_in returns None

我想把第一个命令行参数传进来。

>>> clint.args.get(0)

# if no argument was passed, get returns None

我想存储一个配置文件。

>>> from clint import resources

>>> resources.init('Company', 'AppName')
>>> resources.user.write('config.ini', file_contents)

# OSX: '/Users/appuser/Library/Application Support/AppName/config.ini'
# Windows: 'C:\\Users\\appuser\\AppData\\Local\\Company\\AppName\\config.ini'
# Linux: '/home/appuser/.config/appname/config.ini'

安装

要安装clint,只需:

$ pip install clint

或者,如果您必须这样做:

$ easy_install clint

但是,你真的不应该这么做。

许可证:

ISC许可证。

Copyright (c) 2011, Kenneth Reitz <me@kennethreitz.com>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

贡献

如果您想贡献,只需分叉the repository,提交您的更改 发送到development分支(或其分支),并发送一个pull请求。制造 一定要加入AUTHORS

路线图

  • 单元测试
  • Sphinx文档
  • python 2.5、3.1、3.2支持

历史记录

0.3.0

  • 支持Python3!

0.2.4

  • 新的发动机模块
  • win32错误修复程序

0.2.3

  • 如果使用初始颜色(ipython兼容性)
  • 新的进度模块
  • 各种错误修复程序

0.2.2

  • 自动禁用颜色
  • 进度命名空间更改
  • 新进度条
  • textui.puts newline fix

0.2.1(2011-03-24)

  • python 2.5支持
  • 可用颜色列表

0.2.0(2011-03-23)

  • 列印!!!
  • (自动/手动)禁用颜色
  • 更智能的颜色
  • 最大宽度,最小宽度
  • strip cli颜色
  • 错误修复

0.1.2(2011-03-21)

  • 错误修复

0.1.1(2011-03-20)

  • 错误修复
  • 缩进换行插入
  • 资源:标志,非标志,文件,非文件
  • 很多例子

0.1.0(2011-03-20)

  • 初次发布!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java<E extends Number>和<Number>之间有什么区别?   java如何将ActionScriptObject转换为ByteArray?   java如何平衡图形中的循环?   java为什么会抛出这个SAXParsexException?   使用JPA的java删除实体   java为什么要使用AccessibilityManager是有原因的。sInstance会导致内存泄漏吗?   java如何在Spring表单中隐藏选项?   java简单Hello World servlet在EclipseTomcat中给出错误404   java解决Web应用程序的heapdump问题(JSP+SpringMVC+JPAHIBERNATE)   SpringBoot如何为java联合生成graphql模式?   java是否将用户输入(从TextField)传递到另一个类?   java如何对集合执行clone()。newSetFromMap(地图)   java节点JS服务器处理10000个WebSocket   java为什么Thymeleaf International仅适用于ResourceBundleMessageSource   java如何使用build编译ResourceBundle类。xml文件   Java 2D游戏检查玩家是否触摸到另一个精灵   java无法从类<PowerMockRunner>转换为类<?扩展Runner>   从服务器搜索json数组的java搜索栏   java通过无知解决LazyInitializationException异常   java从线程更新JFreeChart