Home

Awesome

<h1 align='center'>Chartero</h1> <p align='center'> <a href="https://app.codacy.com/gh/volatile-static/Chartero/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade"> <img src="https://app.codacy.com/project/badge/Grade/e9a03b20fb90462180218819b41eb34d" alt='codacy' /> </a> <a href='../src/'> <img src='https://img.shields.io/github/languages/code-size/volatile-static/Chartero?logo=vuedotjs' alt='code size' /> </a> <a href='https://github.com/volatile-static/Chartero/releases/latest/download/chartero.xpi'> <img src='https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Frepos%2Fvolatile-static%2FChartero%2Freleases%2Flatest&query=%24.assets%5B0%5D.size&suffix=%20Bytes&label=XPI&logo=Zotero&logoColor=%23CC2936' alt='xpi size' /> </a> <a href='https://github.com/volatile-static/Chartero/releases'> <img src="https://img.shields.io/github/downloads/volatile-static/Chartero/total?logo=github" alt='download' /> </a> <a href='https://github.com/volatile-static/Chartero/releases/latest/'> <img src="https://img.shields.io/github/downloads/volatile-static/Chartero/latest/total" alt='latest' /> </a> </p> <p align='center'> <kbd>English</kbd> | <a href='doc/readme.Md'>简体中文</a> </p>

Abstract

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

User Guide

<details> <summary><u>👉 <b>Introduction</b> 👈</u></summary>
ScreenshotsFeatures
history recordingThe kernel of Chartero. It records page numbers and timestamps when you read.
open recentIn the main menu File, you can open the recently read documents.
columnIn items tree of the library view, you can add a column to show reading progress.
dashboardIllustrates all information about a top-level item. Updating as soon as record changes when in a Reader.
summarySummary of two or more items. Will not be loaded if the number of selected items is larger than you set in preferences.
overviewClick Main menu -> View -> Overview and jump to a new tab.
minimapBesides the scrollbar of Reader(PDF and ePub), grayscale blocks for read pages and color strips for annotations.
images moreAt the left sidebar of Reader, you can see all images in the current document. Click to navigate and double-click to copy.
</details>

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

Localeszh-CNen-USja-JPit-IT

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

Development Environment

ZOTERO_PLUGIN_ZOTERO_BIN_PATH = */Zotero.app/Contents/MacOS/zotero
ZOTERO_PLUGIN_PROFILE_PATH = /path/to/profile
ZOTERO_PLUGIN_DATA_DIR =

⚡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


<br /> <p align='center'><img src='addon/content/icons/icon32.png' alt='icon' /></p>