Crates.io | mist |
lib.rs | mist |
version | 1.19.0 |
source | src |
created_at | 2020-12-12 04:02:21.105022 |
updated_at | 2024-08-05 02:27:54.101908 |
description | minimal, improved speedrun timer |
homepage | |
repository | https://codeberg.org/periwinkle/mist |
max_upload_size | |
id | 322063 |
size | 169,130 |
a minimal, improved speedrun timer
mist does most of what you would expect your speedrun timer to do as far as timing and operation, but beyond that:
Get the latest release from the releases page. Linux users will need to install SDL2, SDL2_Image, SDL2_GFX, SDL2_TTF on their system to run it.
You can also install from crates.io, i.e. cargo install mist
.
To build this, you will need SDL2, and SDL2_TTF as well as potentially SDL2_Image and SDL2_GFX depending on your configuration. On Linux, get them from your system package manager. On macOS, you could use homebrew to install them.
bg
: enables timer background images. Requires SDL2_GFX and SDL2_Image.icon
: enables app icon. Requires SDL2_Image.plugins
: enables plugin loading and running.portable
: changes config and plugin directories to be adjacent to the executable rather than platform-specificinstant
: enables custom implementation of std::time::Instant
from mist-core
.Setting up your build on windows kinda sucks. What I did is use vcpkg to build all of the necessary DLLs and LIBs and then copied them to the path specified here in step 3.
Compile with cargo build --release
then move the exe as well as the sdl related dlls into the same folder to run.
The default keybinds are:
F1: Open new split file
F2: Open a new config file
F3: Dump timer state to a file
F4: Load timer state from a file
Space: Start/split/stop
Enter: Pause/unpause
Backspace: Unsplit
R: Reset
RightShift: Skip split
←: Previous comparison
→: Next comparison
Mousewheel: Scroll splits up/down (if there are more than fit in the window)
mist reads its configuration from the user configuration directory, specific to each operating system:
$XDG_CONFIG_HOME/mist/mist.cfg
or $HOME/.config/mist/mist.cfg
C:\Users\YourUser\AppData\Roaming\mist\mist.cfg
$HOME/Library/Application Support/mist/mist.cfg
Alternatively, if you have a portable build, mist will look for mist.cfg
in the directory where the executable is stored.
Plugins are dynamic libraries that mist loads at runtime. You can find information on how to develop plugins here.
If plugins are enabled, they will be loaded from the directory plugins
in either the platform-specific configuration location
above, or in the executable's directory on a portable build.
This will be eventually a list of interesting plugins but for now there is one:
Like Rust itself, mist is licensed under MIT or Apache 2.0, at your option. Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.