10 个版本 (3 个稳定版)
1.1.0 | 2023年12月3日 |
---|---|
1.0.1 | 2023年11月16日 |
1.0.0 | 2022年5月2日 |
0.2.0 | 2021年3月20日 |
0.1.2 | 2020年6月28日 |
#7 in #fun
每月下载量 90
225KB
855 代码行
Owoify-rs
将你的噩梦转变为 crate 包。
这是 mohan-cao 的 owoify-js 的 Rust 版本,可以帮助你将任何字符串转换为类似于 LeafySweet 那个臭名昭著的 Chrome 扩展程序所做到的无意义的婴儿语。
就像 owoify-js 一样,提供三个级别的 owo 化
- owo (默认): 最朴素的。
- uwu: 中等。
- uvu: 轻松愉快。
有关更多信息,请参阅原始的 owoify-js 仓库。
开发原因
虽然 crates.io 上已经有了 owoify crate,但它不提供不同级别的 owoness,而且 owoness 也较轻,这使得生成的句子更易于阅读。在我看来,对于任何想使用 owoify 的用户来说,句子越不清晰越好。
安装说明
就像任何 crate 一样,只需将此行放入你的 Cargo.toml
[dependencies]
owoify_rs = "~1.0.0"
或者,直接从仓库拉取 crate
[dependencies]
owoify_rs = { git = "https://github.com/deadshot465/owoify_rs", branch = "regex" }
请注意,设置分支的原因以及默认分支是 regex
分支的原因是,尽管正则表达式相同,但 onig crate 似乎存在一些不一致性。
用法
Owoify-rs 作为 trait 实现,并实现了 String
和 &str
。
use owoify_rs::{Owoifiable, OwoifyLevel};
fn main() {
let owo_str = String::from("This is the string to owo! Kinda cute isn't it?");
let uvu_str = String::from("This is the string to owo! Kinda cute isn't it?");
println!("{}", owo_str.owoify(OwoifyLevel::Owo));
println!("{}", uvu_str.owoify(OwoifyLevel::Uvu));
// Output:
// This is teh stwing two owo! Kinda cute isn't it?
// fwis is teh stwing twowo owowowo (⌒ω⌒) Kinda cute isn't it?
}
限制
由于 regex crate 不支持负向前瞻,尽管正则表达式相同,但 onig
表现出不一致的行为,并且 fancy-regex 目前不支持 captures_iter()
方法,因此目前省略了这三个正则表达式的负向前瞻部分。
查看 src/utility/mappings.rs
的源代码以查看注释掉的正则表达式。
免责声明
这个 crate 是为了帮助我熟悉 Rust 的语法和编写 Rust 程序而编写的。性能 不保证。
另请参阅
- owoify-js - 原始的 owoify-js 仓库。
- Owoify.Net - 由我编写的 Owoify 的 C# 版本。
- Owoify++ - 由我编写的 Owoify 的 C++ 版本(仅头文件)。
- owoify_rs - 由我编写的 Owoify 的 Rust 版本。
- owoify-py - 由我编写的 Owoify 的 Python 版本。
- owoify_dart - 由我编写的 Owoify 的 Dart 版本。
- owoify_rb - 由我编写的 Owoify 的 Ruby 版本。
- owoify-go - 由我编写的 Owoify 的 Go 版本。
- owoifySwift - 由我编写的 Owoify 的 Swift 版本。
- owoifyKt - 由我编写的 Owoify 的 Kotlin 版本。
- owoify_ex - 由我编写的 Owoify 的 Elixir 版本。
- owoify_cr - 由我编写的 Owoify 的 Crystal 版本。
- owoifynim - 由我编写的 Owoify 的 Nim 版本。
- owoify-clj - 由我编写的 Owoify 的 Clojure 版本。
- purescript-owoify - 由我编写的 Owoify 的 PureScript 版本。
- owoify-hs - 由我编写的 Owoify 的 Haskell 版本。
- owoify_erl - 由我编写的 Owoify 的 Erlang 版本。
依赖项
~2.3–3.5MB
~58K SLoC