云书库calibre-web搭建(2)
折腾之路
合并原项目新commit
原项目还在活跃更新,所以每次push之前最好合并最新补丁,分为以下几步:
增加远程分支并fetch到本地,在主分支下rebase
git checkout origin/master
git remote add jane https://github.com/janeczku/calibre-web.git
git fetch jane
git rebase jane/master通过git_batch_resolver.py解决翻译冲突问题,记得是保留theirs(本地版本),这点与merge正好相反,随后
git rebase --continue
即可完成合并。
i18n中文
花了一下午时间补全了中文翻译,提交了第一个pull requests,作者Jan火速合并到主分支,还留言了很多感谢的话,可以看出是个很负责的coder。每次更新代码都需要重新生成messages.pot以及translations文件夹,从作者的repository同步完之后也需要处理这部分
|
由于界面样式中有根据字符串长度hard coding,所以切换语言之后可能会有BUG
增加评论功能
既然注册登录完成度很高,所以第一个feature request就是评论功能,优先选择Valine 或者 Gitalk这样无后端模块,降低施工难度。兴致勃勃地去提issue,希望能得到一些指点,然而无情的被Jan拒绝🙄
既然如此,只好参考作者增加viewer的commit,依葫芦画瓢。最后还是选择Valine(依托github总是感觉有点奇怪)。评论框放在书籍详情页(detail.html),所以默认主题下,在编辑标签
旁边还要新增一个详情页的链接按钮。最后,如果登录了的话还可以自动填上邮箱和用户名。
界面优化
主要是修复一些BUG
豆瓣信息更新自定义
使得可以自由选择更新哪些条目,而不是一股脑全部替换。
参考链接:
Flask-Babel 简介
化解冲突:git merge 与 git rebase 中的 ours 和 theirs