#repetitive #development #command #during

app devloop

开发过程中辅助重复命令的工具

9 个版本

使用旧的 Rust 2015

0.2.2 2020年10月23日
0.2.1 2020年10月16日
0.1.5 2019年2月25日
0.1.3 2017年11月14日
0.1.2 2017年10月30日

#1 in #repetitive

Unlicense 协议

11KB
190

描述

你是否发现自己每分钟按上箭头和回车键10次?你是否发现自己反复输入相同的命令?

不用担心!Devloop 来拯救你!

用法

我创建了这个工具,以允许一个非常简单的流程:打开一个终端/编辑器来编辑代码,另一个终端来运行 devloop。

Devloop 允许你通过按 Enter 键重新编译(以及测试,以及你想要的一切),同时还能保存大量快捷键来执行其他有用和重复的命令。

最初它是一个 shell 脚本,但由于配置文件是 shell 脚本而让我感到烦恼,所以我将其改成了 rust 程序!

安装

Devloop 在 crates.io 上,所以只需在安装 Rust 后运行 cargo install devloop 即可。或者,将发布页面上的二进制文件放置在您的 $PATH(或 %PATH%)中某个位置

配置

配置在当前目录中的 Devloop.toml(默认)文件中。

它是一个 toml 文件。以下是一个示例(来自此存储库的 Devloop.toml),以及解释

# This will be printed when you press q to quit
reminders = "Don't forget to format!"

# The `[[name]]` syntax in toml means that you're defining an array of tables.
# So this next section is equivalent to:
#
# tasks = [{ name = "Clippy", command = "cargo clippy -q" }]
#
# Each `[[section]]` will define one *element* in the array.

# Each task will be run in order every time you press Enter.
[[tasks]]
name = "Clippy"
command = "cargo clippy -q"

# Actions is a table where the key is the shortcut (in this case "f")
[actions.f]
name = "Format"
command = "cargo fmt"

[actions.t]
name = "Test"
command = "cargo test -q"

[actions.b]
name = "Benchmark"
command = "cargo bench -q"
pause = true  # devloop will wait for another Enter before re-running [[tasks]]

[actions.R]
name = "Build release"
command = "cargo build --release"

[actions.r]
name = "Run"
command = "cargo run"  # Another good candidate for pause=true

[actions.c]
name = "Clean"
command = "cargo clean"

依赖

~5–13MB
~144K SLoC