最近,工作中经常会研究一些新的技术、方案和框架。对于某个具体的技术和方案,网络上布满了许许多多的电子文档,之前对于这些相关文档的管理使用的是最原始的版本管理工具管理(svn,git),伴随着积累的资料数目越来越多,原始的版本管理方式出现越来越多的问题。版本管理工具主要的目的是跟踪某个文件的修改过程,但是对于电子书、论文等资料来说,修改的机会是相当小的,绝大多数时间是为了能快速的查找和引用文档中的某个相关的知识点。从版本管理工具的主要用途的角度来说,并不是很适合电子资料的管理。因而就有了撰写本篇文章的动机,体验和评测不通的电子书管理工具(开源),最终能找到一款适合自己的图书收集和管理工具。

本篇文章会伴随着我对不同电子书管理工具的适用和体验过程,持续更新。

一、选择产品的主要需求

  1. 1. 开源:由于自己勉强算是一名linuxer,比较崇尚开源,所以产品的选型只在开源产品中进行
  2. 2. 支持多平台:支持linux平台,如果能支持windows平台将更好
  3. 3. 支持文件Tag
  4. 4. 支持按作者、出版商、资料类型分类和查找
  5. 5. 轻量级桌面版本,无需大量服务软件的支持

二、现有的电子资料管理软件

  • BiblioteQ: 一个跨平台的图书馆管理工具,支持FreeBSD、Linux、OS X、Solaris和Windows
  • Evergreen: 一个高可扩展性图书管理软件,支持Windows、MacOS、Linux
  • Koha:始于1999年,传说中的第一款开源ILS系统(Integrated Library System),好像目前只支持Linux平台
  • NewGenLib:跨平台的图书管理工具:支持Windows和Linux两个平台
  • OpenBiblio:一个基于PHP技术的Web界面图书管理工具
  • Calibre:一个开源、跨平台的图书管理工具,支持Windows、MacOS、Linux平台,使用Python和C语言来实现

三、Calibre评测

Calibre是一个开源的电子资料管理工具,支持Windows、MacOS和Windows多个操作系统平台。Calibre的设计目的是构建成为一个完整的电子资料库解决方案,因此它包含库管理、格式转换、网页新闻到电子书转换、电子阅读器同步、电子书预览等功能。

Calibre是应用程序级的电子资料管理工具,无需大量复杂和重量级的数据库、Web等服务做为支撑。在Windows和Linux平台下均提供自安装程序,只需鼠标点点即可完成所有安装过程。在Linux平台上,默认的安装目录是/opt,因此安装到默认安装目录需要用root权限执行安装程序。从官方网站的介绍看,Calibre是支持Mac OS系统的,但是由于手头没有Mac系统的机器(穷银啊~),所以使用Mac OS的童鞋自行测试。

目前Calibre支持多种格式的电子文档,HTML,Doc,TXT,PDF,ODT,ZIP,RAR等,支持给文件打Tag以及对文件进行分类管理。提供一个分类浏览器,可以很方便的查看当前相同作者或者相同出版社的图书有哪些。同时,Calibre还内建了一个Web服务器,支持Web方式访问电子文档,提供预览和查找功能。

3.1 Calibre的安装(Linux)

  1. 1. 从Calibre的网站上下载相应平台的安装文件。
  2. Windows用户从下面网站下载可安装程序
  3. http://calibre.kovidgoyal.net/download
  4. Linux用户通过python脚本下载并安装自安装程序(需要xdg-utils库支持)
  5. sudo python -c "import urllib2; exec urllib2.urlopen('http://status.calibre-ebook.com/linux_installer').read(); main()"
  6. 2. 二进制安装
  7. 首先确保当前系统中的python版本大于或者等于2.6,然后在终端中之行如下命令:
  8. wget -O- http://status.calibre-ebook.com/dist/src | tar xvz
  9. cd calibre*
    sudo python setup.py install
  10. 3.2 Calibre的运行界面
  11. 下图是Calibre的运行界面,使用的是Mac系统风格的应用图标,界面整体感觉非常的漂亮,布局也比较干净利索。软件支持移动存储设备事件,如果发现系统中有U盘设备(通常电子书、手持设备在系统中的表现形式都是移动存储设备)则会在功能图标栏中现实Reader图标。也许是因为之后Calibre的开发者想要支持更多的功能,所以给功能图标栏预留了老大的空间。
  12. 点击Library图标,会将系统中保存的所有电子书按照指定的排序方式罗列出来。如果双击单个Cell,则可以修改图书的MetaData数据。

下图我们插入一本书后的显示效果,右下脚是图书的第一页的预览图和路径信息。

当选中某个文档后,点击编辑元数据图标,会弹出元数据编辑对话框,如下:

元数据编辑对话框中有个从服务器抓取元数据的按钮,该功能会根据标题和ISBN号去ISBNDB网站和GOOGLE Books网站上获得图书信息(包括作者、出版商、标签、注释)。

Calibre有个比较有意思的功能,内建了一个小型的图书索引服务器,可以通过Web访问和查找本机保存的资料。如下图,默认端口是8080:

启动服务后,可以在浏览器窗口中看到如下效果:

虽然Web服务的功能简单,但是麻雀虽小五脏俱全。可以将书籍按作者、标题、日期等排序,如果点击某本书还能显示预览图片。右上角提供一个搜索栏,可以输入想要查找资料的Tag,相关的内容会快速罗列出来。

3.3 Calibre适用感受

从UI角度来说,总体感觉还是比较好的,设计的比较干净整洁,而且图标应该也很受Mac Fans的喜欢。

从功能角度来说,使用一段时间Calibre后发现,如果往库中添加大量的图书资料后,会出现响应变慢的问题,这也许和使用Python做为主要语言编写有关吧?

从个人需求的角度来说,支持跨平台、Tag查找、分类查找这几个功能基本附和我的需求,不过内置的浏览器如果能支持给文档写备注并且支持备注信息的查找,则会更好。

总结

待续…

Ebook管理工具(持续更新)相关推荐

  1. 微生物文献调研网站与工具---持续更新(2022.09.16)

    全文目录 1. 全文说明 2. 文献查询网站 2.1 常用期刊查询官网 1) 高质量的期刊是值得细细品味,期刊官网可以进行长期订阅跟踪(排名不分先后) 2)文献库检索网站 3)科研工作的持续跟进与最新 ...

  2. 一、Linux磁盘管理(持续更新纠错......)

    文章目录 1.Linux文件系统与目录结构 2.物理设备的命名规则 3.文件系统与数据资料 4.磁盘与目录的容量 5.软硬方式链接 6.磁盘的分区.格式化.与挂载 7.内存交换空间(swap) 之创建 ...

  3. 软件开发管理工具--持续集成构建

    持续集成概述 什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域 ...

  4. VersionEye开源持续更新工具

    VersionEye开源了帮助更新项目依赖项的同名持续集成工具.该工具提出了"持续更新(continuous updating)"的概念,它可以提供许多软件库的更新通知.许可检查和 ...

  5. 开发人员常用工具最全锦集(持续更新)

    文章目录 PC工具 JetBrains全家桶 Navicat Premium 15 Redis可视化客户端 QuickRedis 文本对比 [Beyond Compare 4](https://lup ...

  6. 高效率的工作工具(持续更新...)

    现代工作中,已经离不开电脑.俗话说得好,工欲善其事,必先利其器.因此,准备了几款工具以备日常工作需要.(持续更新-欢迎小伙伴们加入搜集) 1,Everything 一款快速遍历操作系统中文件的工具,与 ...

  7. ( 持续更新,目前含 200+ 工具类 ) DevUtils 是一个 Android 工具库, 主要根据不同功能模块,封装快捷使用的工具类及 API 方法调用。

    DevUtils GitHub About ( 持续更新,目前含 200+ 工具类 ) Roadmap DevUtils 是一个 Android 工具库,主要根据不同功能模块,封装快捷使用的工具类及 ...

  8. 工具篇:Git与Github+GitLib常用操作(不定期持续更新)

    工具篇:Git与Github+GitLib常用操作(不定期持续更新) 前言: 写这个主要是打算自己用的,里边很多东西都是只要我自己看得懂,但是用了两个星期发现真是越用越简单,越用越好用,私以为得到了学 ...

  9. golang 官方依赖管理工具 dep 使用和持续集成

    介绍 go dep 依赖管理工具是为应用管理代码的,go get是为GOPATH管理代码的 官方地址 官方说明为啥要统一依赖管理 dep 需要在Go 1.7及更高的版本中使用 安装 本文使用 gola ...

最新文章

  1. php报错Permission denied
  2. 假如 IDEA 也加入防沉迷功能...
  3. 必须掌握的八个【cmd 命令行】[转]
  4. android app 自动更新,AndroidUpdateDemo
  5. 彩信的基本原理(转贴)
  6. 京东「卖家日志」系统的构建 | 流式计算日志系统应用实践
  7. 很遗憾,总对工作挑挑拣拣的家伙,一般结局都不会太好
  8. 2017-2018-1 20155327 《信息安全系统设计基础》第7周学习总结
  9. POJ2931不平等博弈
  10. java安卓如何实现定义接口
  11. showdoc修改json转表格格式
  12. python实现气象数据分析实验报告_Python 气象数据分析
  13. SQLyog安装教程
  14. 用VScode写C/C++,从下载安装到配置使用
  15. python输入直角三角形两条直角边、输出斜边长_python直角三角形的两个直角边、求斜边_直角三角形斜边公式计算器 两个直角边边长的平方加起来等......
  16. Flex弹性布局详细介绍
  17. Go语言的errors
  18. 【kali】34 WEB渗透——扫描工具w3af_console
  19. Win10如何启用Administrator账户
  20. Linux计划任务要怎么弄?

热门文章

  1. 高分辨率屏电脑 centos虚拟机屏幕使字体变大的方法
  2. netfilter 子系统实现tcp断链
  3. 股票编辑器财务数据关键字说明
  4. GPS北斗校时(NTP校时服务器)在某市国土资源局投入使用
  5. WPF在ProgressBar 进度条上加文字
  6. 小明学会画几何图形了,他能根据要求,画出多行的星星,组成平行四边形。
  7. 如何独立设置Mac触摸板方向和鼠标滚轮方向
  8. Arduino开发之GP2Y0A21 Distance Sensor
  9. JSP同步请求和html+ajax异步请求的两种方式
  10. 车载测试——你需要掌握的Adb命令