[{"content":"引言 众所周知，由于有形的大手的原因，碧蓝航线的国服在部分内容的呈现方式上与外服是有差异的。但是，通过一些操作，我们是可以获得与外服相近的游戏体验的。这样的操作通常被称为“反和谐（fhx）”，本文要介绍的就是在 Android 系统下的碧蓝反和谐方法。\n至于 iOS 的反和谐方法，请参照这篇方法，若是旧版本的 iOS，也可以使用 Troll Store 安装文件管理器操作。\n当然，使用模拟器/转投安卓是一劳永逸的方法。\n免责声明 本教程仅供个人学习、研究和技术交流，旨在探讨游戏客户端资源加载机制，教程中引用的所有游戏素材、名词及数据，其知识产权均归开发方及运营方所有。根据游戏《用户协议》，任何对客户端的修改、反编译或资源替换均属违规行为，由此可能引发的账号封禁、数据丢失、法律纠纷或其他一切损失，均需由操作者本人独立承担全部责任，本作者概不负责。\n介绍 反和谐操作本质上就是修改游戏文件夹下的 localization.txt 文件（路径为： ./Android/data/com.bilibili.azurlane/files），只需将 txt 文件中的两个值由 false 改为 true 即可，如图：\n原文件如图所示\n修改完应如图所示\n进入游戏就可以看到反和谐生效，比如舰船的名字：\n可能遇到的问题 理论上我们只需要打开文件管理器，修改好 localization.txt 后保存就可以打开碧蓝航线遨游了，但是，事实真的如此简单吗？\n答案显然是否定的，否则就不会有这篇文章了。\n当我们试图使用一般的文件管理器打开 ./Android/data 这个文件夹时，通常会一头撞上南墙：\n这是因为自 Android 11 起，Google 强制推行了分区存储机制以保护用户的隐私与应用数据安全。在这一机制下，应用只能只能在自己的私有目录下读写，以我使用的 Material Files 为例，作为第三方应用的它无法访问属于碧蓝航线的私有目录（各定制“系统”自带的文件管理亦是如此）。总体而言这并不是一件坏事——尤其是在流氓软件大行其道的情况下——但对我们来说就不是了。\n不过解决办法也很简单：权限不够那就 Root。\n当然，对于大部分手机用户而言，Root 并不是一件容易的事情，而且为了一个手游的反和谐就去折腾 Root 恐怕也是搞错了什么。\n那末，还有没有什么别的办法呢？有的兄弟，有的。\n解决方法 我们已经知道，第三方的文件管理器是无权访问 ./Android/data 下的应用私有目录的。但好在安卓的“系统文件管理应用”还是有读写这些文件夹的权限的。因此，我们需要做的就是打开这个“系统文件管理应用”，也就是 DocumentsUI，用它来修改游戏文件夹下的文件。\n严格来说，DocumentsUI 并不是“系统文件管理应用”，而是安卓 SAF 框架的一部分\n比如，这个data访问器 App就能调起 DocumentsUI。在这个界面下就可以看到并访问 ./Android/data 下的目录了，接着依上文所述找到游戏文件夹并修改 localization.txt 文件即可。\n如果打开 ./Android/data 后发现是空白的，试试刷新\n对于 ColorOS，你也应该可以直接通过自带的文件管理器拉起 DocumentsUI，其它定制系统也可以尝试一下自带的文件管理是否有此功能\n点下“点击查看”就能打开 DocumentsUI\n","date":"2026-05-14T11:45:14+08:00","image":"https://exnadio.github.io/images/4featureimg/pfnqw.png","permalink":"https://exnadio.github.io/p/%E7%AE%80%E6%98%8E%E7%A2%A7%E8%93%9D%E8%88%AA%E7%BA%BF%E5%8F%8D%E5%92%8C%E8%B0%90%E6%95%99%E7%A8%8B/","title":"简明碧蓝航线反和谐教程"},{"content":"前言 在翻译视频的时候，我对苹果 PowerBook 上的 SCSI 硬盘所采用的接口产生了兴趣。\n虽然很多资料明确地指出苹果在 PowerBook 上使用了 SCSI 硬盘，然而其接口形态却明显有别于台式机上的标准 SCSI 接口，关于这个冷门接口似乎并无多少资料，甚至这个接口的名字都找不到。不过幸运的是，我还是找到了一部分介绍，就放在这里做个集合吧。\n图为常见的一种 SCSI 接口\n图为苹果在 PowerBook 上所使用的接口。可以看到其排针间距更大，总针脚只有 48pin，同时还没有外置的 Molex 供电接口。\n介绍 首先是vintage macmuseum上的一篇博文指出，这个接口本身是可以通过一些妙妙操作转接为最为常见的 SCSI 接口的，同时还介绍了几种转接方式。\n你能看到用于供电的 Molex 接口以及转接出来的 SCSI 数据接口\nThis Does Not Compute 里使用的转接器\n不过真正帮了大忙的是superuser 上的一个问题\n以及68kmla上的一个帖子，甚至连针脚定义图都给了，卧虎藏龙啊。\n另外，那个帖子里甚至还有人给出了一个 eBay 链接，眼熟。\n接口布局 回到接口本身。实际上这个接口运行的还是 SCSI 协议，所以其实仅仅在接口的物理形态上有所不同。\n就如之前所说，虽然在有时会被描述为“50pin”，但该接口实际只有 48pin，排布如图：\n其中左侧 40pin 部分用于供电与数据传输，右侧 8pin 负责 SCSI ID。\n左侧部分定义如下：\n右侧部分定义如下：\n更多的信息，可以参考这个链接\n所以当我们回过头来看先前所提到的转接板时就能很明显地看出其与通用 SCSI 接口的对应关系。\n这接口只有 5V，所以其实这里 Molex 只用上了里边的 5V（说实话我还是第一次知道 Molex 里有 5V） 参考链接 1.Repairing an Unreleased Prototype Mac\u0026hellip;TABLET!_This Does Not Compute\n2.Reading PowerBook 2.5″ SCSI Hard Drives_vintagemacmuseum\n3.what is this 48-pin laptop hard drive connector?_superuser\n4.40p SCSI to 50p SCSI_68KMLA\n5.50-Pin IDC 2.54mm Male to 50-Pin IDC 2.00mm Female SCSI Laptop HD Adapter_eBay\n","date":"2024-07-05T15:33:07+08:00","image":"https://exnadio.github.io/images/4featureimg/6ZMRZKdA2Yf3jfKD.jpg","permalink":"https://exnadio.github.io/p/%E8%8B%B9%E6%9E%9C-powerbook-48pin-scsi-%E7%A1%AC%E7%9B%98%E6%8E%A5%E5%8F%A3%E6%8E%A2%E7%A9%B6/","title":"苹果 PowerBook 48pin SCSI 硬盘接口探究"},{"content":"前言 之前建博客的时候没听说过giscus，使用的是utterance。\n不过看起来giscus的功能相对更优，而且之前配置博客时没有进行相应的记录，因此干脆直接换成giscus了。\n这里需要感谢@chuxinyuan大佬在评论区的建议\ngiscus是什么？ 这里就直接全文摘抄官网的简介了，说得很明白：\n利用 GitHub Discussions 实现的评论系统，让访客借助 GitHub 在你的网站上留下评论和反应吧！本项目深受 utterances 的启发。\n相较于使用 issue 的 utterance，使用 discussion 的 gisus 在功能上更为丰富，详见 GitHub Discussions 快速入门（而且 utterance 把评论全放在 issue 里也怪怪的）。\n配置giscus giscus的配置还是相当简单的。\n首先，准备一个github仓库，这里我用的是原先utterance的仓库。\n接下来在仓库的设置界面开启 Discussions 功能：\n接下来的操作就是相当简单且无脑了，你需要做的就是在 github 上安装 giscus APP\n具体的安装过程不再赘述，安装完毕后就只需打开giscus官网，输入具体的仓库名称（或者仓库链接）：\n若该仓库可用，那么就可以随着官网的说明一步步配置下去。配置完成后便可在 启用 giscus 下找到需要的代码：\n之后的过程依主题的不同而不同，请参考各自的主题说明文档。\n我使用的是Hugo的stack主题，需要在 config.yaml 中设置：\n1 2 3 comments: enabled: true provider: giscus 之后再在giscus那栏中填入官网代码中的相应内容即可。\n当然config.yaml中缺少了部分选项，你也可以直接将需要的js代码放进./themes/hugo-theme-stack/layouts/partials/comments/provider/giscus.html里：\n至此便配置完成，可以说是相当简单的。\n还有一些高级用法，请自行参考官网对应说明。\n迁移utterance评论 utterance 之类使用 Github issue 实现的评论系统的内容是可以转换为相应的 discussion的，详见将议题转换为讨论\n只需在相应库的 issues 界面的 labels 处将相应 label 转换为 discussion 即可（假如没标注的话请自行添加）。\n转换完成后，若 discussion 标题与页面的映射关系正确，那么 giscus 就可以展示这些评论，迁移结束。\n参考链接 giscus\n迁移博客评论系统从Utteranc.es到Giscus\n","date":"2023-11-18T17:20:26+08:00","image":"https://exnadio.github.io/images/4featureimg/giscus.jpg","permalink":"https://exnadio.github.io/p/%E5%B0%86%E5%8D%9A%E5%AE%A2%E8%AF%84%E8%AE%BA%E7%B3%BB%E7%BB%9F%E7%94%B1-utterance-%E8%BF%81%E7%A7%BB%E8%87%B3-giscus/","title":"将博客评论系统由 utterance 迁移至 giscus"},{"content":"\n头图来自充电头网,拍得比我好多了，偷！\n本次评测的为一家“小而美”的小厂库存无线充电板 简称，洋垃圾。感觉设计挺有果味，就买了。\n关于“Hardcider Labs” 由于这玩意我是真的很喜欢，所以稍微去查了下这个“HardCider Labs”。根据他们寥寥无几的介绍，这是一个果式配件商，其余我就再也查不到了。 这小厂的官网虽然还在：\n但是我觉得这厂应该已经跑路了，网站上挂的优惠码还是2022的，Twitter官号也没更新过了，乐。基本所有的商品都是sold out状态，现在还能买的就是一款Apple watch的表带\u0026hellip;\u0026hellip;\n我猜这玩意估计是啥Kickstarter品牌，但是不得不说，做的玩意看上去都不错。 开箱与功能介绍 开箱 虽说是“洋垃圾”，但是我买到的是“原盒原封”，所以还是当个普通用户，来一次“开箱体验”：\n包装就是个蛮精致的黑色天地盖纸盒，印有一些介绍，但我得说一句，我寻思你这Qi充电器怎么能触发iPhone的MagSafe动画？\n打开盒子，迎接我们的便是说明书和充电器的主体： 说明书有一堆洋文，但是就是没中文，一看就是出口的玩意：\n不过这说明书上也就写到iPhone 12,不知道是什么时候的库存,另外接口标注也是错的，30W标成18W 真就小厂。\n充电器本体的用料倒是非常舍得：全金属机身、布面工艺正面，使得我不能不给出一个“性感”的评价，做工实在是符合其原价150刀的水准，“漂亮得不像实力派”。\n取出塑料隔板后便是适配器和四个不同供电规格的更换插座：\n总体而言这开箱体验确实不错，优秀水平。\n功能 上手的第一感觉就是：扎实。\n毕竟是全金属，再加上这个布艺的前表面，只能说，属实“高端”。\n无线端 正面是无线充电区域，最大可同时支持三台Qi协议设备进行充电。\n以及一个可旋转的Mfi Apple Watch充电器（需要注意的是，当这玩意翻起时便会与一个充电位冲突，此时该充电位就只能放TWS之类的小玩意了）。\n值得好评的是它的侧面带有三个指示灯，可以指示充电状态：比如右边正在充电就会亮右边的灯。 有线端 侧面的另一侧便是有线的输入/输出端，分别是DC in、USB A、USB C (从左到右) 其中USB A支持最高18w的QC 3.0快充，USB C则在此基础上支持最高30w的PD。\n具体的协议支持之后再补充。\n不过我有一点要说，怎么定位低一档的Slicecharge3的母口胶芯都能做到相同，到这个更加高端定位的Pro版本上就拉了呢？ 适配器 适配器DC口，最大输出大概就是65w（我寻思15v直接用PD不就行），支持100v~240V宽幅输入，体积也很大。65w倒也是够用，但是严格来说绝对不能支撑这玩意最大功率（30+18+5+3*10w）输出（我觉得这玩意也没啥满功率场景）。\n提供了美规、澳规、欧规、英规接口，它甚至是编！织！线！ 编织线就是好文明\n装上插脚后，这玩意的高度就进一步膨胀： 虽然美规的二脚插脚与我国插座通用，但我也不建议您使用这个插脚，相反，我推荐您使用不那么通用（可能打不开部分新国标插座的安全门） 的澳标。\n为什么呢？因为这玩意体积大得一批，再加上插脚与本体极高的间隙，这玩意使用美规插座时就跟个跷跷板一样，笑死。 你可以想象没这点横向支持这玩意能晃成啥样\n顺带一提，这玩意的供应商居然是深圳新斯宝,不过应该是特制了编织线。\n最后，背后就没啥玩意了，只有两条长防滑垫和铭牌:\n铭牌居然还是镜面，精致感确实足。 内部结构 由于我不会拆也舍不得拆，因此就使用卖家提供的拆解图片了。\n可以看到，这玩意虽然是“多线圈”，但是与Airpower、Tesla和小米之类的解决方案可谓是有云泥之别：别人使用了多层线圈来实现“全覆盖”“放哪都能充”，而Hardcider Labs的这款线圈数量仅相当于别人的一层。\n从上至下：Airpower工程机、小米多线圈、Hard Cider Labs\n当然这也有好处，那就是免去了大量工程设计的问题，不像果子一样丧心病狂地打算在无线充电板上塞上A11来解决发热与多线圈协调问题 笑了，搞得跟iPhone发热问题解决了一样 。当然果子最后的解决方案Magsafe也是个纯逆天。\n比较搞笑的是这玩意实现made for apple watch充电的方法居然是在内部做了个USB type A接口，实在是有点逆天。\n其实这倒也不难理解，apple watch的mfi认证出货的应该就是一整个充电模组\n内部芯片用料倒是难称豪华：采用了方昕科技（别说，名字不错）的NKola 9018。不过我也不锐评了，反正也懂都不懂（又不是不能用.jpg）。\n不过我在找data sheet的时候发现了这公司本身就提供公版方案，看来这小厂也就搞了个外壳设计，笑死。 一眼丁真，鉴定为公版\n至于散热就靠金属外壳被动散热硬挺了，效果还不错。\n使用体验： 我手上支持无线充电的机子就两台：iPhone13 与 LG G7 (还有个AirPods Pro)，本次评测便以这两台机子的体验为准。\n对于充电器的体验 作为一个“多线圈无线充电器” ，它最大的优点就是多设备充电支持，同时宽裕的空间使得它是“两台设备随便放，三台设备规矩放”，体验虽说不及真·多线圈，但也算舒服。\n这里忘拍图了，偷几张充电头网的\n对于这玩意我是没什么缺点可挑，毕竟该给它给的也差不多了：其定位更像是一个桌面的充电 All in One，有线无线都有，做工设计都很不错，也符合它“高端手机配件商”的定位。但要说可改进的点的话，那还真不少：\n首先，这外部的用料确实是拉满，但内部的用料真的不是130刀的水平 其次，有线 1C1A 的接口数量不算很够，假如 1C2A 应该就能把体验拉满 最后，能支持PD in就将绝杀 现在是，梦想时间\n不过当价格来到130CNY时，以上这些一点问题没有。\n回头一看，其实该改的是方昕这个公版吧。\n至于Apple Watch的充电，我就不测了，我又没Apple Watch。btw，这个Apple Watch专用充电器不支持GalaxyWatch不要问我为什么知道。在我这纯纯摆件。\n无线充电的简洁之梦 注意，该部分纯主观，绝不客观\n首先，无线充电绝没有它听起来的那般美好：放上手机，充好，拿走，去他妈的线，我们“极客”的桌面讲究的就是一个,啊,整洁。\n理论上你能拿到一台满电的、和你放上去时一样的手机，实际上你会拿到一台很烫的的手机——一句话概括iPhone无线充电体验。\n虽然iPhone已经有了专有的无线充电方案——Magsafe（🤣👉“22.5w\u0026quot;），但是库克大人还是大发慈悲，兼容着Qi协议这高低也算是自己写的协议（另一个您发起的接口怎么需要10年来改变呢？），但是iPhone的无线充电体验实在是不太“优雅”。iPhone低能的充电、散热设计和低效的无线充电可谓是一对Best Match：即使功率7.5w，iPhone也能稳定发热到到烫手的程度。\n我不知道充电头网这温度怎么测的，逆天，而且哪来的磁吸？\n虽然有这么多的手机厂商做无线充电，但是其实各个厂商的线圈位置不尽相同，在一台手机上能充电的线圈位置，在另一台手机上就不一定能充上。这就需要你去对准无线充的线圈，不是随手一放就行。这玩意至少是个单层多线圈，相对而言可以更随意，但是做不到真·多线圈的“放下不管”，这个问题在立式无线充上更甚。\n比如这玩意就有配套的支架，磁吸在那个精致的铭牌处便可变身立式无线充：\n这鬼东西30刀我擦\n当然我捡垃圾的地方也在买，25一套，没抢到，不然我高低也整一套评测。\n装好是这样的： 就评价来看，即使做了高低调节，这玩意也能只支持几台特定型号的iPhone，像米13U那样的贵物是想都别想。所以说无线充的终点还是Airpower式的真·多线圈。\n同时无线充电也受保护壳的影响，我手上的几台设备都受了保护壳的影响，无法完整地完成充电（我不清楚是不是这个充电器的个体问题，之后再测）。比如Airpods就经常充不上电，乐所以（这时候你就能理解指示灯的好）。 当然安卓这就好不少，发热也有，但至少没有iPhone低能（以我手上的这台 LG G7 来说）。库克！乔布斯！\n总而言之，无线充电远未到使用体验良好的地步，你可以将它作为补能的手段，但是将它作为充电的主要方式还是多少带点幽默了（去你妈的无接口手机，以为自己很幽默？）。\n虽然我狂喷无线充电的不足之处，但是，不要得到我错误，不是说无线充电不好，而是它没法达到一些人口中的那样“美好”，只有iPhone是真烂 ，由于Qi协议的普及，无线充电的极高通用性实在是为它加分不少。同时，去掉一根线对于桌面的整洁也确实有很大的帮助。\n这里我就要说了，作为所谓生态系统的一环，“智能手表”的充电倒是一个比一个麻烦，GalaxyWatch虽然理论支持Qi，但是那线圈普通无线充压根识别不到（其实Air podsPro也是这样），Apple Watch甚至直接加密了，笑死。搞得这玩意需要专门做一个突兀的Apple Watch专用充电位，而逼得希望大一统果子生态的Airpower用又小又密的线圈配列，最后暴死。\n总结 最后，我总结了几条优缺点供大家参考：\n优点 优秀的设计与做工 精致的使用体验 便宜的购入价格 不觉得无线充电很酷吗？作为一个理工男，我觉得这太酷了，很符合我对未来生活的想象，科技并带着浪费 缺点 不支持PD输入且原适配器占用空间太大 有线输出接口不算充足 正常价格过高 虚空售后 ","date":"2023-05-02T22:10:11+08:00","image":"https://exnadio.github.io/images/4featureimg/slcp3.jpeg","permalink":"https://exnadio.github.io/p/%E6%B4%8B%E5%9E%83%E5%9C%BE%E4%B9%8B%E7%BE%8Ehardcider-labs-slicecharge3-pro%E8%AF%84%E6%B5%8B/","title":"洋垃圾之美：Hardcider Labs Slicecharge3 Pro评测"},{"content":"为何再次重建博客？ 是，我知道我上次更新博客是 2021 年，但是这个博客我的确是没有忘的。（主播只是入狱了）\n实际上这个博客是我在 21 年暑假用Hugo建的，使用的是 Eureka 主题。整体效果确实非常不错，但遗憾的是配置过程极其奇怪：虽说有专门的说明文档,但是于我而言这玩意写得实在是不太友好，所以当时我的配置过程纯粹靠蒙，虽说最后还是搞出来了，但确实是一种折磨。\n正好最近几天又想写博客了，就把 Hugo 又下了回来，结果升级 Eureka 主题的时候又折磨了好久，还是没整明白。\n使用git submodule下来的Eureka配置后存在的大量报错，不断提示module未定义，反正也看不懂，干脆换主题了。\n因此本次的折腾就再走一遍之前的路，从零开始重建博客，顺带记录下以防之后忘记。\nHugo之安装 “Hugo是由Go语言实现的静态网站生成器。简单、易用、高效、易扩展、快速部署。 ”\n本次我使用的是 Hugo v0.111.2 与 git v2.38.0 ，操作系统为 Win 11。在 Hugo 的releases和 Git 的官网都能很方便地下载。我选择的是 hugo_extended_0.111.2_windows-amd64.zip 版本，以便后续折腾。下载完成后将压缩包里的东西解压至你喜欢的目录，再将该目录的路径添加到环境变量中以便后续调用。至于 Git 的安装，我就不再赘述了。\nHugo建站 新建网站 运行 Hugo.exe 后，输入:\nhugo new site ./path //比如我这里就是./exnadio.github.io 运行后便会输出一个网站目录，其结构为（引用自炸鸡人博客）：\n1 2 3 4 5 6 7 8 . ├── archetypes # 存放文章模板 ├── config.toml # 简单的配置文件 ├── content # 存放文章 ├── data # 存放生成静态页面时的配置文件 ├── layouts # 存放页面布局的模板 ├── static # 存放图片等静态内容 └── themes # 存放下载的主题 此时便搭好了一个基础框架，可以进行主题的导入了。\n导入主题 这一步你就可以打开 Hugo Themes 这个网站，选择一个你喜欢的主题，然后跟随着它的说明一步一步配置就大功告成了。那么我们下期再见\n实际上我认为这步是整个 Hugo 建站中最复杂的一步。且每个人选择的主题不尽相同，很难以一个完善的教程（何况我这篇是否算教程也有待考虑）通杀一切，我就分享下我这次的经历好了。 安装主题一般而言存在三种方式：\ngit submodule 安装 go module 安装（需要安装 Go 语言） 本地安装 我个人更推荐第一种方式，考虑到后续升级的难易，这算是最均衡的一种方式。具体的安装方法可以在各主题的说明中找到，我这里安装的是 Stack。 在网站目录下，输入：\n1 2 git init git submodule add https://github.com/CaiJimmy/hugo-theme-stack/ themes/hugo-theme-stack 等待下载完成后，便可以进行配置了。假如你想用其他方式安装，也可以参考这里。\nStack本身有全英文的说明文档，我建议是将./themes/hugo-theme-stack/exampleSite/content和./themes/hugo-theme-stack/config.yaml直接夺舍，根据说明与需求修改，会剩下很多时间。\n根据 Stack 的说明文档，Stack 后续将改用.toml格式的 Config 文件，不过其配置步骤基本相同。\n预览网站 很多教程会先教创建文章，不过我觉得配置完主题后还是先预览网站为好。Hugo的一大好处就是可以进行即时预览，你可以看到你每一步修改所产生的变化，也可以看到你是如何把一切搞崩溃的。 输入:\n1 hugo server 即可建立一个本地服务器。\n当然你也可以加上一些 flag 来达到一些其他目的：比如指定主题的--theme=Stack和关闭快速渲染的--disableFastRender等，具体可以查阅文档。\n之后便可以在浏览器里打开http://localhost:1313预览。\n创建文章 Hugo 中的文章采用 Markdown 格式，通过以下命令你可以在./content/post路径下创建一篇文章： hugo new post/rebuild_blog.md 打开后你会发现生成的Markdown文档带有一段FrontMatter部分，具体的意思可以在这里找到。大体上可以认为是文档的一些属性。\n虽然大部分的主题都会帮你配置好 FrontMatter 部分，但是也是有部分主题是需要自行配置的，很不幸，Stack 就是这类主题之一。不过这也没啥关系，修改之前提到的./archetypes/default.md/下的default.md即可。\n生成静态页面 只需输入：\n1 hugo 即可。默认生成位置为./public，你可以在配置文档中使用publishDir参数指定，也可以直接使用-d参数指定。\n发布网站 首先，我不会 git。\n其次，本部分全文抄袭自炸鸡人博客。\n这里用 Github Pages 来部署博客。首先在config.yaml里指定:\npublishDir: docs 然后再一个hugo命令，这样就把静态页面输出到docs目录下了。\n接着在 Github 上以 ZhaJiMan.github.io 的名字（根据自己的用户名而定）新建一\u0026gt;个空仓库，进行下面的 Git 命令:\ngit add . git commit -m \u0026ldquo;first commit\u0026rdquo; git branch -M main git remote add origin https://github.com/ZhaJiMan/ZhaJiMan.github.io.git git push -u origin main 这段改编自空仓库页面出现的提示，大意是:\n将网站目录下的所有内容暂存。 把暂存的内容提交给版本库。 把主分支的名字从 master 改为 main。 添加远程仓库。 把本地内容推送到远程仓库里。 推送成功后，进入仓库的设置页面，点击侧栏的 Pages，再把 Source 选项改为 main 分支下的docs目录，这样 Github Pages 就会根据我们推送上去的docs目录里的静态页面来显示网站。这里指定docs的好处是还可以把网站的所有文件都备份到仓库里（不包含以 submodule 形式添加主题，详见参考链接）。最后在与仓库同名的网站 https://zhajiman.github.io/ 上看看自己的博客吧！\n我补充几个细节：\ngit push -u origin master //我采用了master分支后是要验证 github 账号的（也许只有首次有？），假如你没有，那么我建议你读第2点。 Github 是有带 GUI 的客户端的，git 苦手可以考虑用这个。 主题配置历程 由于主题的配置是个个体差异极大的过程，因此我不会事无巨细地说明每一个过程，而是说明几个小点。\n网站图标更改 其实很简单，将图片生成的 favicon 文件夹放在./static文件夹下，然后在cofig.yaml下指定：favicon: /favicon/favicon.ico 就行。\n评论系统之接入 忘了Uttrances怎么配置的了啊嗯，鸽了。\n已将评论系统改为 giscus，配置过程见这里\nStack主题自定义 首先放一下对比图：\n改善浅色模式可读性 配置完 Stack 后，我并不是很满意，假如说满分100的话我只能打个70分左右。最大的不满在于其浅色模式下可读性实在是过于糟糕,你可以在 Demo 网站 上感受一下，我不清楚为什么作者采用了#bababa这个颜色，导致其与背景的对比度来到了可怜的1.94，简直就是一场彻头彻尾的灾难。\n不过好在 Stack 主题预留了自定义的空间，详见官网的说明。这里具体介绍下自定义的方法：\n在Stack以及很多主题中，主题文件夹下的assets/scss下都提供了一个供用户自定义的custom.scss文件。\n原理便是在最后引入这个文件，使其位于最终css文件的末尾，从而覆盖原先的属性，达到“自定义”的效果。\n因此，想要自定义就很简单了：找到你希望修改的元素和它对应的选择器，重新定义这个选择器即可。\n万幸，目前的浏览器为我们提供了好用的开发者工具。以我现在使用的Edge为例，按下F12弹出开发者工具，使用左上角的小箭头使你的鼠标变成一个查看器(你也可以使用SHIFT+CTRL+C的组合键)，只要将光标置于你想修改的元素上，就能找到该元素的源代码。\n例如我现在想改浅色模式下的文本颜色，只需选择一段文本,就能在右下角找到它对应的css:\n可以看到文本被指定为---body-text-color。\n再顺藤摸瓜找到对应的颜色控制：\n把要修改的部分直接复制出来放进custom.scss文件中，修改下即可。比如我使用的这套：\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 :root { --body-background: #EBEBEB; --accent-color: #1B365D; --accent-color-darker: #202A44; --accent-color-text: #FFF; --body-text-color: #202A44; } :root { --card-background: #FFF; --card-background-selected: #EBEBEB; --card-text-color-main: #202A44; --card-text-color-secondary: #53565A; --card-text-color-tertiary: #888B8D; } 此时就能达到这种效果了：\nTag的修改我也说下，用上面的方法找到代码，发现：\n何意味?\n然后把能找到这些颜色的地方全图图了：\n1 2 3 4 5 6 7 8 9 .article-list article:nth-child(n) .article-category a { background: #1B365D; color: #fff; } .article-category a, .article-tags a { background-color: #1B365D; color: #fff; } Note:\n改完之后我发现分类的 Tag 还是存在问题，虽说前几个颜色是对的，但是越往后走居然开始变色了：\n此时即使在custom.scss中指定了颜色也没啥用，看了下这玩意居然在是 element.style 写死的，多少有点搞：\n于是便需要在代码后面加上!important 现代码如下：\n1 2 3 4 5 6 7 8 9 .article-list article:nth-child(n) .article-category a { background: #1B365D!important; color: #fff; } .article-category a, .article-tags a { background-color: #1B365D!important; color: #fff; } 修改网站布局 原先挤满所有空间的布局我不喜欢，遂改。 这里使用仙贝的代码，一样是在custom.scss中添加：\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 .container { margin-left: auto; margin-right: auto; \u0026amp;.extended { /* range: 768-1024 */ @include respond(md) { max-width: 1024px; --left-sidebar-max-width: 25%; --right-sidebar-max-width: 30%; } /* range: 1024-1280 */ @include respond(lg) { max-width: 1280px; --left-sidebar-max-width: 25%; --right-sidebar-max-width: 22%; } } \u0026amp;.compact { @include respond(md) { --left-sidebar-max-width: 25%; max-width: 768px; } @include respond(lg) { max-width: 1024px; --left-sidebar-max-width: 20%; } @include respond(xl) { max-width: 1280px; } } } 即可。\n滚动条修改 同上，不喜欢，仙贝代码，添加：\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 html{ ::-webkit-scrollbar { width: 20px; } ::-webkit-scrollbar-track { background-color: transparent; } ::-webkit-scrollbar-thumb { background-color: #d6dee1; border-radius: 20px; border: 6px solid transparent; background-clip: content-box; } ::-webkit-scrollbar-thumb:hover { background-color: #a8bbbf; } } 图标添加与修改 Stack 主题带了几个很好看的 Tabler 图标，可惜并不全，部分缺失的图标要手动添加。\n例如我想添加一个比比汗丽丽的图标，在 Tabler 官网搜索发现居然真有：\n将svg文件其下载到.\\themes\\hugo-theme-stack\\assets\\icons中，再调用即可。\n另外，我也不是很喜欢自带的深色模式切换开关，以我个人的的观点来看，这玩意太不直观了：\n图标的添加方式就不再赘述，我这里选的是\u0026quot;sun-high\u0026quot;和\u0026quot;moon-stars\u0026quot;这两个图标。\n观察网页的CSS可以发现：深色模式下图标的切换就是“一个显示，一个隐藏”，在相关文件中指定该用的图标即可。\n作者将这个开关做在了侧边栏里，因而直接在有关的.\\assets\\scss\\partials\\sidebar.scss和\\layouts\\partials\\sidebar\\left.html里指定图标即可: ``\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 /* .\\assets\\scss\\partials\\sidebar.scss Line 154*/ [data-scheme=\u0026#34;dark\u0026#34;] { #dark-mode-toggle { color: var(--accent-color); font-weight: 700; .icon-tabler-sun-high { display: none; } .icon-tabler-moon-stars { display: unset; } } } #dark-mode-toggle { margin-top: auto; color: var(--body-text-color); display: flex; align-items: center; cursor: pointer; gap: var(--menu-icon-separation); .icon-tabler-moon-stars { display: none; } } 1 2 3 4 5 6 7 8 \u0026lt;!---.\\layouts\\partials\\sidebar\\left.html Line 91---\u0026gt; {{ if (default false .Site.Params.colorScheme.toggle) }} \u0026lt;li id=\u0026#34;dark-mode-toggle\u0026#34;\u0026gt; {{ partial \u0026#34;helper/icon\u0026#34; \u0026#34;sun-high\u0026#34; }} {{ partial \u0026#34;helper/icon\u0026#34; \u0026#34;moon-stars\u0026#34; }} \u0026lt;span\u0026gt;{{ T \u0026#34;darkMode\u0026#34; }}\u0026lt;/span\u0026gt; \u0026lt;/li\u0026gt; {{ end }} 效果如下：\n顺带一提，想改中文翻译直接去\\i18n\\zh-cn.yaml中修改即可（暗色模式这翻译也太怪了）。\n添加字数统计 Stack 本身是不带字数统计的，但是Hugo本身是支持进行字数统计的。 已知，Stack 的文章页面是由三个 html 控制的：\n1 2 3 4 . ├── details.html ├── content.html └── footer.html 所以在 details.html 中加入相应的字数统计代码就行了。 在互联网上一番搜索后，我发现之前就有人写过相关代码。\n1 2 3 4 5 6 7 {{ if .Site.Params.article.readingTime }} \u0026lt;div\u0026gt; {{ partial \u0026#34;helper/icon\u0026#34; \u0026#34;brush\u0026#34; }} \u0026lt;time class=\u0026#34;article-words\u0026#34;\u0026gt; {{ .WordCount }}字 \u0026lt;/time\u0026gt; \u0026lt;/div\u0026gt; 然而这段代码没有多语言支持，所以我决定让事情变得更复杂：全面照抄 Stack 实现阅读时长的方式。\n首先在congfig.yaml中的.params.article中添加：\n1 wordCount: true 然后参考前面的和readTime的代码，在detail.html中加上下面的代码：\n1 2 3 4 5 6 7 8 {{ if .Site.Params.article.readingTime }} \u0026lt;div\u0026gt; {{ partial \u0026#34;helper/icon\u0026#34; \u0026#34;file-description\u0026#34; }} \u0026lt;time class=\u0026#34;article-words\u0026#34;\u0026gt; {{ T \u0026#34;article.wordCount\u0026#34; .WordCount }} \u0026lt;/time\u0026gt; \u0026lt;/div\u0026gt; {{ end }} 之后只要添加多语言支持，也就是在i18n文件夹中修改对应语言的.yaml文件。以英文为例，在.\\i18n\\en.yaml中加上：\n1 2 wordCount: other: \u0026#34;{{.Count}} words\u0026#34; 便完事大成了。反正一切主打的就是一个 readTime 在哪我在哪\n顺带改了下图标，参考这里\n文章修改时间显示 修改时间就没有字数统计这么麻烦了。Stack 本身自带修改时间显示，不过这玩意放在了最底下，不太直观，我就把它提上来了。\n源代码看位置就在.\\layouts\\partials\\article\\components\\footer.html里，果不其然：\n1 2 3 4 5 6 7 8 {{- if ne .Lastmod .Date -}} \u0026lt;section class=\u0026#34;article-lastmod\u0026#34;\u0026gt; {{ partial \u0026#34;helper/icon\u0026#34; \u0026#34;clock\u0026#34; }} \u0026lt;span\u0026gt; {{ T \u0026#34;article.lastUpdatedOn\u0026#34; }} {{ .Lastmod.Format ( or .Site.Params.dateFormat.lastUpdated \u0026#34;Jan 02, 2006 15:04 MST\u0026#34; ) }} \u0026lt;/span\u0026gt; \u0026lt;/section\u0026gt; {{- end -}} 前面也说了，日期、阅读时间之类被放在了.\\layouts\\partials\\article\\components\\footer.html里，因此在参考日期的代码和源代码基础上做点修改，添加进去就行：\n1 2 3 4 5 6 7 8 {{- if ne .Lastmod .Date -}} \u0026lt;div\u0026gt; {{ partial \u0026#34;helper/icon\u0026#34; \u0026#34;edit\u0026#34; }} \u0026lt;time class=\u0026#34;article-lastmod\u0026#34;\u0026gt; {{- .Lastmod.Format (or .Site.Params.dateFormat.published \u0026#34;Jan 02, 2006\u0026#34;) -}} \u0026lt;/time\u0026gt; \u0026lt;/div\u0026gt; {{ end }} 顺带，为了自动更改修改时间，在config.yaml中添加：\n1 2 frontmatter: lastmod: [\u0026#34;:fileModTime\u0026#34;, \u0026#34;lastmod\u0026#34;] 友情链接改为双列显示 这里我用的是大佬的代码，修改过程和之前一样，在custom.scss添上以下css即可：\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 @media (min-width: 1024px) { .article-list--compact.links { display: grid; grid-template-columns: 1fr 1fr; background: none; box-shadow: none; article { background: var(--card-background); border: none; box-shadow: var(--shadow-l2); margin-bottom: 8px; border-radius: 10px; \u0026amp;:nth-child(odd) { margin-right: 8px; } } } } 目前仍未完成的部分 当然，目前这个网站还是有一些问题的：\n过往文章未恢复 评论系统未接入 部分界面还未配置好 网站图标未设置（其实是还没做） 没有文章修改时间显示 洋文站点还没完成(已躺平) 参考链接 用 Hugo 重新搭建博客\nHugo Stack主题更新小记\n将Hugo Stack主题友情链接改为双列显示\nHugo | 看中 Stack 主题的归档功能，搬家并做修改\nPage Variables\n","date":"2023-04-22T14:56:05+08:00","image":"https://exnadio.github.io/images/4featureimg/azl.jpg","permalink":"https://exnadio.github.io/p/%E4%BD%BF%E7%94%A8-hugo-%E5%AF%B9%E5%8D%9A%E5%AE%A2%E7%9A%84%E9%87%8D%E5%BB%BA%E4%B8%8E-stack-%E4%B8%BB%E9%A2%98%E4%BC%98%E5%8C%96%E8%AE%B0%E5%BD%95/","title":"使用 Hugo 对博客的重建与 Stack 主题优化记录"},{"content":"亲爱的Kafsela成员们：\n鉴于国内外的网络实际情况，我终止自己以Kafsela群主身份进行的活动。我作出这个决定，是出于原则性的考虑的。\n我坚决主张Kafsela成员的独立自主，主张各种书写工具玩家拥有相同权利。但同时又主张维护Kafsela群聊内秩序的完整性。\n事情已沿着另外一条道路发展下去。主张群聊肢解、群聊分离的路线占了上风，这是我无法同意的。\n即使在巴蜀利亚和谈和和谈协议通过决定之后，我在这个问题上的立场也始终未变。\n此外，我确信如此重要的决定本应在Kafsela成员表达意志的基础上作出。\n尽管如此，我将竭尽所能，以使Kafsela群聊解体导致成员们的实际和谐，减轻、摆脱危机和改革过程的困难。\n我这是最后一次以群主的身份在大家面前发表演说，我认为有必要说出自己对2020年以来所走过的道路的评价。更何况这方面有不少无法自圆其说的、肤浅的、不客观的见解。\n命运作了这样的安排，就是我当上群主之时就已经很清楚：群聊情况不妙。我们什么都多：群员、资料和名气\u0026hellip;\u0026hellip;然而网络环境却从未如此凶险：败家、腾迅等铁拳早已是虎视眈眈：这是我们早该认识到的，但是我们没有，很遗憾。\n我不想赘述Kafsela的被警告与被解散，这是所有群友荣辱与共、一同经历的。在这里，我仍要想所有群友致以诚挚的、卑微的感谢。\n我知道对目前严重局势的不满情绪，知道对我本人活动的尖锐批评。不过我想再次强调指出：在这样严峻的、不容辩解与缓和的局势下，我的一切行为不可能在我本人的意志下、在毫无痛苦、毫无困难和动荡的情况下进行。\n“巴蜀利亚和谈”使总危机达到顶点。这次危机中最致命的是群聊的解体。今天我所担心的是群友们失去一个能畅聊的地方\u0026ndash;对每个人说来后果都将十分严重。\n但是很遗憾，作为群主，我并没有对于局势的任何掌握，这是我作为群主的全面失败。\n在最后的一天，我想向所有支持Kafsela、陪Kafsela走到最后的群友表示谢意。\n我要感谢所有为Kafsela付出的群友们，感谢所有真诚地热爱着文具的群友们，感谢所有陪伴着Kafsela自2016年一路走来的群友们，感谢所有即使在最后的时刻也从未表现出一丝恐慌、安然面对着这个遗憾事实的群友们，\n我离开自己的岗位时忧心忡忡。不过同时也抱有希望，我相信你们的智慧和精神力量。我们是热爱文具的人们，我们是拥有自由博爱精神的人们。如今在诸如“一流玩家玩威尔永锋，三流玩家玩日本自动铅”等文具分级言论横行的凶险环境下，伟大的Kafsela精神能否振兴，完全取决于大家，取决于我们每一个人。\n我想衷心感谢那些近年来与我一起坚持正义而美好的事业的Kafsela群友们。也许某些错误本来是可以避免的，许多事情可以做得更好。但是我相信我们的共同努力迟早会结出果实，Kafsela的精神必将永恒。\n祝大家万事如意。我们再见。\n","date":"2023-04-01T11:38:55+08:00","permalink":"https://exnadio.github.io/p/%E5%91%8Akafsela%E7%BE%A4%E5%8F%8B%E4%B9%A6/","title":"告Kafsela群友书"},{"content":"大概你oxidane的确是死了 然而站终究还是没死，只是我摸了。\n最近稍微更新了一下，把缩略字数优化了一下，加了评论。不过没push到库里就是了。\n接近一个月后还能记得命令也着实是个奇迹。\n文章什么的也有在写，只是在另一个盘里（大概）。\n这个博客我打算放些其他的东西，文具之类就放在叔叔那好了，反正博客没人看，可以为所欲为。\n大概会有哪里的粉板上记着我还欠篇文章罢。\n","date":"2021-08-21T22:05:12+08:00","permalink":"https://exnadio.github.io/p/%E9%9A%8F%E4%BE%BF%E5%86%99%E5%86%99%E4%B9%8B%E9%9A%8F%E4%BE%BF%E5%86%99%E5%86%99/","title":"随便写写之随便写写"},{"content":"搞鼓了两天，终于把这个博客搞得像样了一点。虽然说不是什么“文人雅士”，但是还是写点什么东西，纪念一下。没什么行文思路，纯粹胡扯。\n梦开始的地方 其实这个博客很早就存在了，大概是19年左右吧。我记得是孙伯赫最初开始整博客的时候，我也跟着建了一个。非常简陋，只有一个Hello world界面。然后我就晾着不管了。\n不过最近莫名地感兴趣，于是决定进行一个网站的翻新，让它变得更像一个博客。\n过程 梦好做，屎难吃。\n最后选择了使用Hugo来翻新。在此感谢土豆的教程，帮大忙了。\nHugo的配置其实很简单，随着教程走，简直就像过大清早的马路一样简单。而且很好用，是好文明。\n但是我完全没学过这些玩意，实在是技术苦手，还是碰了很多壁。\n最大的问题来自于我选择的Eureka主题，虽说有详细的教程，可是有些时候我按教程上所说的做了，却没有效果。比如这个网站的icon，在教程里说是可以自定义的，然而实际上当我在config文件里修改的时候就会疯狂报错，最后只能替换掉主题里自带的图片草草了事（It just worked）。\n还有很多莫名其妙的问题，可我完全不知道到底发生了什么，只能一点一点的摸索，往往要花费几个小时（在网上还搜不到解决方案，简直就是折磨）。感觉就是全麻，只会一个Ctrl+C和Ctrl+V，而且还会再附加上我自己的一堆错误，比如说不小心把cmd关掉，一切又得重头开始。\n甚至就在写这篇文章的时候，又出现了奇怪的问题，导致我又花费了几个小时。\n不知道是什么意思\n本来打算删库跑路，不过还是坚持下来了。现在想来，妈妈的。\n好在看起来一切都好起来了，结果好一切都好嘛。\n不过评论区功能我还没加，估计又得搞好久。\n其实也不是没考虑过完全的建站，但是那方面我也是完全不懂，而且这个博客能不能Last for long也是个问题，所以先用Github Pages试试水。\n不过Github Pages其实也有很多的问题，由于某些众所周知的原因这玩意时而能上，时而不能上。但是也就不挑三拣四了\n最后 希望这个博客能比Telegram频道活得长吧（笑）。\n","date":"2021-07-26T13:06:57+08:00","permalink":"https://exnadio.github.io/p/%E9%9A%8F%E4%BE%BF%E5%86%99%E5%86%99/","title":"随便写写"}]