跳转至

Blog

Functional Pipeline Programming in Python

用 Python 写了个小工具,根据手机号段信息生成 hashcat 掩码。

仓库:github.com/13m0n4de/purrify

平平无奇?看看这个:

purrify.py
87
88
89
90
91
92
93
94
95
96
_ = sys.stdin > (
    pipe
    | foreach(parse_csv_line)
    | where(X.__len__() > min_length)
    | where(X[type_idx] == "MOBILE")
    | where(in_cities, geo_indices=geo_indices, cities=cities)
    | foreach(lambda x: (x[prefix_idx], int(x[length_idx])))
    | foreach(as_args(purrify))
    | foreach_do(print)
)

Markdown to PDF with Pandoc and Typst

仓库:github.com/13m0n4de/pandoc-typst-catppuccin

自从团队使用 Obsidian 协作组织文档库以来,需要将 Markdown 转换为 PDF 的情况越来越多。Obsidian 的默认导出不好用,自定义功能太少,被逼无奈使用 Better Export PDF 了一段时间,边距、大纲书签以及页眉页脚等自定义功能不错,但它总是没法跟随我的暗色主题,自定义 CSS 又太过麻烦。

于是,我们写了个新插件。 可惜,我们还是继续凑合用着。

直到我们需要批量导出多个 Markdown。

Obsidian 没有给我编写自动化脚本的发挥空间(也许宏可以,但……太恶心了,而且没办法集成到 CI 里)。

能花 6 小时写自动化脚本(然后失败),就绝不花 6 分钟动手完成它。

Refactor My Quiz App

花了几天把 NekoQuiz 完全重构,从 Axum + Yew 到 Axum + Leptos,从 CSR 到 SSR with hydration。

其实在这次重构之前,就已经很少有使用它的机会了,这也许是最后一次大更新。(尽管我不愿意这么想,这样的想法会成为项目被“遗弃”的第一步)

不过至少,现在是个适合总结的时候。

CVE Roulette #1: pngcheck

这是 CVE Roulette 系列的第一篇文章。抽到了 CVE-2020-27818,研究着研究着就顺手把 pngcheck 的历史漏洞都看了个遍 :)

Ricing My Arch Linux

花了点时间从 i3 迁移到 Hyprland,终于把凌乱的 Dotfiles 整理好了。

这次除了整理配置文件,还将整体配色方案从 Nord 切换到了 Catppuccin Macchiato,并且统一了包括网站在内的所有主题。

Dotfiles 仓库:github.com/13m0n4de/dotfiles