Files and data
Jojo keeps its data in plain text files; it uses no database.
| File | Windows | macOS | Contents |
|---|---|---|---|
| settings.json | %APPDATA%\Jojo\ | ~/Library/Application Support/Jojo/ | The values on the Settings screen |
| machines.toml | %APPDATA%\Jojo\ | same folder | Remote locations |
| layout.json | %APPDATA%\Jojo\ | same folder | Tabs, splits, project order and folded groups |
| snippets.json | %APPDATA%\Jojo\ | same folder | The snippets library |
| state.json | %LOCALAPPDATA%\Jojo\ | ~/.jojo/ | The daemon's projects and session records |
On a remote location, the daemon is ~/.local/bin/jojod and its state is in ~/.jojo/. A layout.json, machines.toml or snippets.json that cannot be read is renamed to <name>.corrupt-<time> and replaced with an empty or default file, so the app still starts and the old file can be repaired by hand.
Editing snippets.json by hand
The window reads snippets.json once when it starts, and every change made in the app rewrites the whole file. Edits made while Jojo is open are therefore not seen and are overwritten by the next change in the app.
- Quit Jojo. Sessions keep running in the daemon.
- Open
snippets.jsonfrom the folder in the table above in a text editor and save your changes. - Start Jojo.
Each snippet needs an id (any text unique in the file), a name and a command. folder, scope and last_values are optional.