前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >给你的命令行工具加上一个高逼格的banner

给你的命令行工具加上一个高逼格的banner

作者头像
追马
发布2020-07-06 16:53:47
2.3K0
发布2020-07-06 16:53:47
举报
文章被收录于专栏:一日一工具

看不懂man page, 小工具来帮你

你在看别人开源的命令行工具的时候,在支持-h或者-v的时候是不是经常看到下面这样的格式输出,你一定是好奇的,这是如何实现的,那今天就带你一块了解下这块的实现。

比如下面这种
再比如下面这种
或者是下面这种
亦或者是下面这种

不得不提的figlet

什么是figlet

figlet是一个可以生成ASCII Art字体工具,在编写一些CLI工具的时候可以作为banner,支持很多字形,对于终端展示十分炫(zhuang)酷(bi)。

安装

其实figlet支持的安装方式很多很多,比如pip, npm, brew等安装方式,今天我们主要来讲解下pip的安装方式,原因是因为安装完不单单可以作为命令行工具使用,还可以在你的Python程序里导入使用。

pip安装
代码语言:javascript
复制
pip install pyfiglet
brew安装
代码语言:javascript
复制
brew install figlet
npm安装
代码语言:javascript
复制
npm install figlet

命令行使用

代码语言:javascript
复制
> pyfiglet -f Banner3 z h u i m a
########    ##     ##    ##     ##    ####    ##     ##       ###
     ##     ##     ##    ##     ##     ##     ###   ###      ## ##
    ##      ##     ##    ##     ##     ##     #### ####     ##   ##
   ##       #########    ##     ##     ##     ## ### ##    ##     ##
  ##        ##     ##    ##     ##     ##     ##     ##    #########
 ##         ##     ##    ##     ##     ##     ##     ##    ##     ##
########    ##     ##     #######     ####    ##     ##    ##     ##


>

程序里使用

代码程序
代码语言:javascript
复制
# -*- coding: utf-8 -*-
# __Author__ = "zhuima"


from __future__ import absolute_import, unicode_literals

from pyfiglet import figlet_format
import six

try:
    import colorama

    colorama.init()
except ImportError:
    colorama = None

try:
    from termcolor import colored
except ImportError:
    colored = None


def log(string, color, font="Banner3", figlet=False):
    if colored:
        if not figlet:
            six.print_(colored(string, color))
        else:
            six.print_(colored(figlet_format(string, font=font), color))
    else:
        six.print_(string)


log("\nZ H U I M A", color="blue", figlet=True)
效果展示
代码语言:javascript
复制

> python test-figlet.py
########    ##     ##    ##     ##    ####    ##     ##       ###
     ##     ##     ##    ##     ##     ##     ###   ###      ## ##
    ##      ##     ##    ##     ##     ##     #### ####     ##   ##
   ##       #########    ##     ##     ##     ## ### ##    ##     ##
  ##        ##     ##    ##     ##     ##     ##     ##    #########
 ##         ##     ##    ##     ##     ##     ##     ##    ##     ##
########    ##     ##     #######     ####    ##     ##    ##     ##

> 

相关站点

github地址[1]

figlet.org[2]

在线生成[3]

总结

通过上面的简单的示例,这下终于知道酷炫的banner是如何实现的吧,快在你的下一个程序里用起来吧,保证逼格满满,瞬间高大上。

引用链接

[1] github地址: https://github.com/pwaller/pyfiglet [2] figlet.org: http://www.figlet.org/ [3] 在线生成: http://patorjk.com/software/taag

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 链上追马 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 看不懂man page, 小工具来帮你
    • 不得不提的figlet
      • 什么是figlet
      • 安装
      • 命令行使用
      • 程序里使用
    • 相关站点
      • 总结
      相关产品与服务
      命令行工具
      腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档