一个命令行实用程序,帮助您堆叠您的牦牛。

yakstack的Python项目详细描述


一个命令行实用程序,帮助您堆叠您的牦牛。

呃…什么?

“剃牦牛”是科技行业的通称。作为originally described

You see, yak shaving is what you are doing when you’re doing some
stupid, fiddly little task that bears no obvious relationship to what
you’re supposed to be working on, but yet a chain of twelve causal
relations links what you’re doing to the original meta-task.

换言之,牦牛剃须是一系列的分心和/或必要的任务,你发现自己在做意味着要做别的事情。每一步都是合乎逻辑的,但当你最终做了一件完全不同于你所期望的事情时,你很容易忘记你是如何做到的。当你意识到你离首要任务越来越远时,你就是在刮牦牛毛。

这种现象非常普遍,以至于它成了关于一堆牦牛的元笑话(其中一个牦牛剃须的例子是不够的)和更详细的参与(“我不仅仅是剃牦牛,我也在梳理它”)。

这个脚本帮助你跟踪你的“牦牛帧”,或上下文切换。因为任务而分心?把它加到牦牛堆里。对新任务分心了?把它加到牦牛堆里。一旦你完成了,剃光牦牛,然后回到上一个任务。最初的灵感来自于这个术语的用法:

yak frame - n. a yak shaving stack frame. ex: “I’m currently 3-4 yak frames deep”

— Charlie Somerville (@charliesome) August 19, 2013

yakstack不是todo列表,也不是任务管理解决方案。这只是一种跟踪上下文切换的方法,这样你就不会想到“我又想干什么?“

安装

yakstack需要具有pip

的python
pip install yakstack

支持Python2.7和3+。

用法

第一次使用时,yakstack将有一个空的yak堆栈。列表中没有任务。

$ yakstack
No yaks to shave right now!

添加牦牛帧

任何到yakstack的参数都作为框架添加到yak堆栈中。

$ yakstack "Work on super-important project"
You are currently 1 yak frame deep

Work on super-important project

$ yakstack "Show yak script to a colleague"
You are currently 2 yak frames deep

Work on super-important project
 ⤷ Show yak script to a colleague

可以在一个命令中添加多个yak帧。

$ yakstack "Write a README for yakstack""Argument on Twitter"
You are currently 4 yak frames deep

Work on super-important project
 ⤷ Show yak script to a colleague
    ⤷ Write a README for yakstack
       ⤷ Argument on Twitter

移除牦牛框架

若要从堆栈中删除项,请使用--shave(或-s)选项。

$ yakstack --shave
You are currently 3 yak frames deep

Work on super-important project
 ⤷ Show yak script to a colleague
    ⤷ Write a README for yakstack

# THIS ALSO WORKS
$ yakstack -s

您还可以在一个命令中删除多个yak帧。使用多个--shave-s选项。

$ yakstack --shave --shave
You are currently 1 yak frame deep

Work on super-important project

# THIS ALSO WORKS
$ yakstack -ss

管理多个牦牛堆

有时你可能会有不同的牦牛堆在同一时间运行,以跟踪来自不同项目的干扰。也许你想在不工作的时候,为你的个人项目分别跟踪事情。

要切换到其他配置文件,请使用配置文件名的--profile(或-p)选项。一旦您拥有多个配置文件,yakstack将始终告诉您正在使用哪个配置文件。

$ yakstack
You are currently 1 yak frame deep

Write README for yakstack

$ yakstack --profile work
No yaks to shave right now for profile "work"!

yakstack使用的默认配置文件称为“默认”。

您可以切换配置文件,同时添加新的牦牛帧。

$ yakstack -p default "Find out latest sports scores"
You are currently 2 yak frames deep for profile "default"

Write README for yakstack
 ⤷ Find out latest sports scores

其他注意事项

yakstack的参数遵循标准的unix命令行模式。这意味着空格字符分隔多个参数(因此也就是多个yak帧)。要在yak堆栈中添加一个包含空格的句子,它必须用引号括起来。

# With quotes
$ yakstack 'A single sentence with quotes'"And another one"
You are currently 2 yak frames deep

A single sentence with quotes
 ⤷ And another one

# Without quotes
$ yakstack This adds a whole bunch of frames
You are currently 9 yak frames deep

A single sentence with quotes
 ⤷ And another one
    ⤷ This
       ⤷ adds
          ⤷ a
             ⤷ whole
                ⤷ bunch
                   ⤷ of
                      ⤷ frames

哦,还有一件事:

$ yakstack --sax

不客气。

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

推荐PyPI第三方库


热门话题
java JNLP无法在浏览器中正确启动(与dtjava.js一起部署)   在执行下一个方法之前,java将等待线程执行结束   java如何将另一个LayoutManager应用于JComboBox?(多栏JComboBox尝试)   使用jPBC在java中实现双线性配对   java在使用@RequestMapping注释时获取请求的值(URL)   java如何控制流量   java如何获取IFC对象的绝对坐标?   java目标服务器无法使用htmlunit和tor响应异常   java需要帮助创建一个循环结构来运行我的程序   java有可能拥有一个Android APK并在应用程序中更改构建变体吗?   在Sphinx4中运行Ant的java   Java:从ArrayList获取子列表的有效方法   java如何使在循环内部创建的数组在循环外部工作?   apache poi通过java中的XSSF表从单元格读取日期值   安卓 java自己的SeqLock实现,避免spinlock会更好吗?   java的并发底层方法。util。同时发生的预定未来   java比较方法违反了它的一般约定,如何使它具有可传递性?   使用JAVA定向指定类的DB导出子类   一个方法中的java更改特定imageView