notesy::perf
Timing its own work: how long indexing notes takes, say, each time, and in all. Needs nothing.
rustuse notesy::{log, perf};
pub fn ready() {
let timer = perf::start("index notes");
// ... the work ...
let ms = timer.stop();
log::debug(`indexed in ${ms} ms`);
}
| Function | What it does |
|---|---|
perf::start(name) |
A timer, running: name is a few words (1 to 40 characters) to count it under. |
timer.stop() |
Stops it, counts it under its name, and says how many milliseconds it ran. Stopped again, it says the same and counts nothing more. |
In developer mode (Settings > General > Developer mode), a plugin's page
lists what it times, under its script's time: how many times, their time in
all, and the longest; and Settings > Logs & performance lists it with
every plugin's. notesy counts the rest itself: compiling the script, and
each call into it (ready, a view built, a command, an event), with the
slowest. At most 64 names are kept.
To draw numbers of its own, like these, a view has
view::sparkline.
Every page
- Overview
- plugin.toml: Every field of plugin.toml
- Permissions: What a plugin can ask for, when notesy asks, and what changes it
- Scripts: How a script runs: its lifecycle, events, limits and errors
- Packing and installing: Making, checking, signing, packing and installing
- notesy::log: Lines for its log on the Plugins page
- notesy::events: Hearing what happens, and every event
- notesy::commands: Adding commands, and running notesy's
- notesy::store: Keeping its own data
- notesy::settings: Reading its settings
- notesy::secrets: Keys and tokens, in the system keychain
- notesy::notes: Reading and changing the vault's notes
- notesy::editor: The note in front
- notesy::files: A folder of its own
- notesy::links: Opening pages in the browser
- notesy::clipboard: Copying and pasting
- notesy::view: What panels, tabs and sections show
- notesy::panels and notesy::views: Adding side panels and tabs
- notesy::sections: Sidebar sections
- notesy::menus: Items in notesy's right-click menus
- notesy::status: Status bar items
- notesy::notices: Notices
- notesy::dialogs: Asking in a dialog, notesy's kinds or its own
- notesy::cards: Its part of the tree's hover cards
- notesy::boards: Boards' cards and arrows, and kinds of card of its own
- notesy::blocks: Drawing its fenced blocks
- notesy::icons: Drawing its own icons
- notesy::net: Requests to the sites it names
- notesy::accounts: Signing in to a service
- notesy::json: Reading and writing JSON
- notesy::toml: Reading and writing TOML
- notesy::yaml: Reading and writing YAML, and a note's front matter
- notesy::time: Now, written in the user's time zone, dates read, how long ago
- notesy::math: Trigonometry and the like, for drawing
- Names: Icon, Color, Tone, Side, Method, Command, Menu, Sidebar, Event: Notesy's names as enums
- notesy::preview: Its own screens for notesy preview
- notesy::perf: Timing its own work
- notesy::tex: Math macros for every note's formulas