#目录结构 #发票 #项目 #yaml #无服务器 #跨平台 #命令行界面

bin+lib asciii

发票调用的先进但简单的命令行界面。这是德累斯顿 Studentencafe ascii 的内部工具,因此针对我们的用例进行了专门化。

17 个稳定版本

3.10.0 2020 年 1 月 13 日
3.9.0 2019 年 11 月 24 日
3.7.1 2019 年 7 月 6 日
3.4.0 2018 年 10 月 29 日
3.1.3 2017 年 11 月 22 日

#2325 in 魔法豆

Download history 1/week @ 2024-03-16 31/week @ 2024-03-30

78 每月下载量

MIT/Apache

400KB
8K SLoC

asciii

travis license crates.io version documentation

发票调用的先进但简单的命令行界面。

NoSql、基于区块链、无服务器、跨平台的项目管理工具。

在这里,我使用 Rust 重新编写了原始的 ascii-invoicer。为什么?因为!

简介

ascii-invoicer 是一个命令行工具,用于管理项目并将它们存储在文件夹结构中,而不是数据库中。可以从模板创建新项目,并存储在工作目录中。可以归档项目,每年都会有自己的归档。项目包括一个包含描述它的 yaml 文件和若干附件文件的文件夹,如 tex 文件。项目可以包含产品和个人信息。您可以从项目中创建初步报价和发票。

安装

要使用(实验性)功能,请使用 --features 标志。请查阅 Cargo.toml 获取功能列表的最新版本。要获取包含 full_tool 功能的完整 cli 工具构建。

rustc 的最低要求版本:1.32

Archlinux

您可以从 AUR 安装 asciii-git 包。

macOS

您可以通过 homebrew 安装 asciii。

$ brew tap ascii-dresden/formulae
$ brew install asciii

使用 cargo

只需简单地运行 cargo install --git https://github.com/ascii-dresden/asciiicargo install asciii 即可。

要求

运行此软件需要至少 rustccargocmakegitzlib1g-dev。如果您想使用 webapp 功能,请确保已安装 yarn

开发

提示! 在第一次构建之后,您可以删除 build.rs 中的内容 fn main(),在开发期间可显著提高编译时间 :D

Ubuntu 16.04

我们建议使用以下命令安装 rustup

$ curl https://sh.rustup.rs -sSf | sh

这将安装 rustccargorustup 和其他标准工具。

Ubuntu 要求

运行此软件需要至少 cmakezlib1g-dev

使用方法

安装后,只需运行 asciii,它将显示可能的子命令列表。运行 asciii help list 将提供关于 asciii list 的全面解释。

您还可以运行 asciii doc,这将带您访问完整的 在线用户和开发文档。更多信息可以在 2.5 版本的 README 中找到

Web 服务器

ASCIII_LOG=debug cargo +nightly run --no-default-features --features server --bin asciii-server --release ASCIII_LOG=debug cargo +nightly run --no-default-features --features webapp --bin asciii-server --release

日志记录

asciii 使用 Rust 的 env_logger。要启用日志记录,您需要设置 ASCIII_LOG=debug。除了 debug,您还可以使用 tracewarnerror。您可以通过这种方式启用按模块的日志记录:ASCIII_LOG=storage=debug。模块是 src/ 中所有顶层文件和文件夹。

本地化

当您使用 "localize" 功能构建时,lang/default.pot 应在构建过程中自动更新。如果您已安装 gettext,则可以运行

msgmerge -U lang/de.po lang/default.pot

更新德语本地文件 lang/de.po。现在您只需更新任何空字段并检查文件。

特性

asciii附带不同集合的特性配置,其中大部分都是为了加快开发时间。默认情况下,大多数有用的特性都已启用,例如 webappshelllocalization。您可以通过传递这些参数到 cargo build

<<<<<<< HEAD

--no-default-features --features full_tool

  • 除了 webserver 以外的一切

--no-default-features --features mini_tool

=======

--no-default-features --features full_tool

  • 除了 webserver 以外的一切

--no-default-features --features mini_tool

a76b17a24... 修复:打开文件路径,而不仅仅是文件夹

  • 没有 shellgit_statuseslocalizationmetaserde,只有 clidocument_export

请检查 Cargo.toml 以获取所有特性。

依赖项

~11–28MB
~436K SLoC