mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Windows, being deigned by the geniuses that it is, spins the event loop while deleting files to the recycle bin, and there exists *no other way* to move files to the Recycle Bin, since the Recycle Bin format is not documented or stable. So we move only files out of the library in the thread calling delete_books(). The files are moved to the Recycle Bin in a worker thread. This has two advantages: 1) Faster deletes, since the main thread does not have to wait on the Recycle Bin (some windows' installs are so badly messed up that moving a single file to the Bin takes seconds) 2) Restoring deleted files from the bin will not restore them inside the calibre library folder, where they become orphed. They will be restored elsewhere. Disadvantages: 1) If the user deletes a lot of books and quits calibre, they might not be finished deleting on quit, this can probably be mitigated by popping up a warning at shutdown
calibre
calibre is an e-book manager. It can view, convert and catalog e-books in all of the major e-book formats. It can also talk to e-book reader devices. It can go out to the internet and fetch metadata for your books. It can download newspapers and convert them into e-books for convenient reading. It is cross platform, running on Linux, Windows and OS X.
For more information, see the calibre About page
Screenshots
Usage
See the User Manual
Development
Setting up a development environment for calibre
A tarball of the source code for the current calibre release.
Languages
Python
92.6%
C
3.3%
C++
3.1%
HTML
0.4%
Shell
0.2%
Other
0.2%