1 个不稳定版本

0.1.0 2019年8月7日

#247 in 国际化(i18n)

MIT 许可证

30KB
371

sarcasm

一个库(sarcasm-utils)和命令行工具(sarcasm),用于创建和验证萨卡斯姆文本。

命令行工具可以轻松地从命令行创建和验证萨卡斯姆文本。

高级功能包括自动将结果复制到剪贴板,以便轻松粘贴到聊天消息框或您选择的CMS中。提供Rust标准库提供的完整Unicode支持。

用法

命令行界面旨在尽可能友好地对待用户和脚本。

创建萨卡斯姆

$ sarcasm Hello World Sarcasm Style!
HeLlO WoRlD SaRcAsM StYlE!

添加 -u 以创建大写萨卡斯姆(默认)。

$ sarcasm -u Uppercase Sarcasm!
UpPeRcAsE SaRcAsM!

添加 -l 以创建小写萨卡斯姆。

$ sarcasm -l Uppercase Sarcasm!
lOwErCaSe sArCaSm!

验证萨卡斯姆

添加 --check 以验证输入字符串的正确性。

$ sarcasm --check HeLlO WoRlD SaRcAsM StYlE!
Yes, this is UpPeRcAsE sArCaSm!
# Returns 0
$ sarcasm --check HeLlO WoRlD SaRcAsM StYlE!
Yes, this is lOwErCaSe SaRcAsM!
# Returns 0
$ sarcasm --check Hello World Sarcasm Style!
No, this is not sarcasm!
# Returns 1
$ sarcasm --check !!
I can't tell if this is sarcasm!
# Returns 2

边缘情况

所有非字母数字字符在输入中将被忽略。因此,萨卡斯姆模式只需在字母数字组内保持即可。这意味着任何“二级”字母数字组的起始字母可以是任何大小写。

虽然萨卡斯姆创建器在整个字符串中大写定义良好,但验证器需要能够处理许多可能的萨卡斯姆文本写作风格。

  • AbC DeFAbC dEf -> 萨卡斯姆。
  • Ab-CdAb-cD -> 萨卡斯姆。
  • A -> 萨卡斯姆。
  • !! -> 太短(没有字母数字字符可判断)。
  • A!AA!a -> 萨卡斯姆。

安装

目前有两种方法将 sarcasm 安装到您的计算机上。

二进制发布

软件版本适用于Windows、Mac和Linux,可通过GitHub发行版获取。将发行版放入您的PATH中,您就可以开始使用了。

Cargo

如果您是Rust开发者,也可以通过Cargo获取发行版。

cargo install sarcasm

所有选项

sarcasm 0.1.0
Connor Fitzgerald <connorwadefitzgerald@gmail.com>
A tool to generate and validate SaRcAsM TeXt.

While the program itself is a bit pointless, it is designed to be a fully robust program and library that you can use
anywhere in real projects, if you had any actual need.

USAGE:
    sarcasm.exe [FLAGS] [OPTIONS] [text]...

FLAGS:
    -c, --check        Check input text for sarcasm type
        --clipboard    Force clipboard use
    -h, --help         Prints help information
    -l, --lowercase    Output lowercase sArCaSm tExT
    -u, --uppercase    Output uppercase SaRcAsM TeXt
    -V, --version      Prints version information
    -v, --verbose      Log output level (-v, -vv, -vvv)

OPTIONS:
        --log <log_file>     Full verbosity log file. Appends to end. Always sends warnings and errors to stderr.
    -o, --output <output>    Output to a file instead of standard out.

ARGS:
    <text>...    Text to process

为什么?

因为。

这是个玩笑吗?

不是。

真的吗?

好吧,是的,这个项目的目的是有点荒谬,但这确实是一个在Rust中编写库的练习,该库旨在既稳健又易于使用。此外,它确实为那些想要做这种事情的人提供了一些(最小)用途。我将尽力维护并扩展这个库,未来还会增加新的“有用”功能。

简而言之:也许吧?

保持友好

不要用这个工具去冒犯别人。这样会破坏乐趣。

许可协议:MIT

依赖项

约5.5MB
约95K SLoC