volatile-static / Chartero

Chart in Zotero
https://gitee.com/const_volatile/chartero
Apache License 2.0
325 stars 8 forks source link
highcharts t-design vue3 zotero zotero-addon zotero-plugin

Chartero

code size xpi size download latest

English | 简体中文

Abstract

The name Chartero is a combination of Chart and Zotero. As a Zotero plugin, it can make your library livelier.

User Guide

👉 Introduction 👈 | Screenshots | Features | | :---------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------- | | ![history recording](doc/record.jpg) | The kernel of `Chartero`. It records page numbers and timestamps when you read. | | ![open recent](doc/recent.png) | In the main menu `File`, you can open the recently read documents. | | ![column](doc/column.png) | In `items tree` of the library view, you can add a column to show reading progress. | | ![dashboard](doc/dashboard.jpg) | Illustrates all information about a `top-level item`. Updating as soon as record changes when in a `Reader`. | | ![summary](doc/summary.jpg) | Summary of two or more `items`. _Will not_ be loaded if the number of selected items is larger than you set in preferences. | | ![overview](doc/overview.jpg) | Click `Main menu -> View -> Overview` and jump to a new tab. | | ![minimap](doc/minimap.gif) | Besides the scrollbar of `Reader`(PDF and ePub), grayscale blocks for read pages and color strips for annotations. | | ![images](doc/images.png) ![more](doc/more.png) | At the left sidebar of `Reader`, you can see all images in the current document. Click to navigate and double-click to copy. |

Troubleshooting

Please disable all other plugins when necessary, then file an issue with the exported debug output. Feel free to ask anything in issue😁

Known Issues

Developer Guide

Directory Structure

URL

These URLs are registered in bootstrap.ts, and you can access them via fetch in Zotero.

Preferences

The config.defaultSettings field of package.json defines the default values of preferences. The keys will be automatically replaced when compiling addon.

Locales

Locales zh-CN en-US ja-JP it-IT

All locale strings are defined in locale, which will be loaded dynamically when the plugin starts.

Development Environment

package.json defines the scripts for building and debugging. When executing commands with NODE_ENV=development, the global variable __dev__ will be set to true, and the plugin will switch to the development mode.

⚡Hot-reload and Breakpoints in Source

With the Chartero running, you can run debug config Vue in the sidebar of the VS Code. This will launch the Vue unit test in Firefox with hot-reload. You can then utilize vue devtools in Firefox as well as set breakpoints in VS Code for single-step debugging.

When running in development environment, Chartero will register a /test/chartero route in HTTP server, accepting any command from a POST request and returning its eval results in JSON format. By accessing this Endpoint, the Vue test module provides a series of "dummy" classes to simulate the Zotero environment. This method is of great reference value for other Zotero client applications.

Record Structure

The data structure of history records is defined in history/data.ts, and the JSON string is like this:

{
    "pages": {
        "0": {
            "p": {
                "1693200000": 6
            }
        }
    },
    "numPages": 27
}

Inter-plugin Compatibility

This section is for developers who have suspected compatibility issues with Chartero.

See Also



icon