Import and export
Export writes all or part of your configuration to a file you can keep, share or take to another computer. Import reads such a file back, shows you every change it would make, and makes none until you agree. Both are on the ⋯ menu in the configuration window's title bar, with Import from StrokesPlus.net….
The file is a plain-text configuration file in the same form as your own config.toml, holding only the parts
you chose. A file you write by hand with some of config.toml's sections imports the same way.
Exporting
- Open the ⋯ menu and choose Export… ②.
- In Choose what to export, tick what you want. Nothing starts ticked; Select all and Select none help, and Filter by name… finds an item. Space ticks the selected item.
- Choose Export… and pick where to save the file (
input-observer-export.tomlby default).
What you can export:
| Category | What's under it |
|---|---|
| App groups | Each app group, with a Group settings item (its window rules, exclusion zones, profiles, before and after scripts and switches) and its actions, in folders by action category |
| Gestures | Each gesture shape |
| Profiles | Each gesture profile |
| Snippets | Each snippet, in folders by category |
| Exclusion zones | The zones that apply to every window |
| Global events | Each global event, and the global before and after scripts |
| Appearance | The hint window, the gesture trail and display messages |
| Settings | General settings, gesture matching and text expansion |
- What the ticked items need comes along. A gesture or profile that a ticked action or group uses is ticked for you and can't be unticked; it shows how many ticked items use it. A snippet that a ticked script calls by name is ticked for you, but you can untick it. If a script calls a snippet your configuration doesn't have, the export says so after writing the file.
- A group's settings with only some of its actions exports as that group holding just those actions. Actions without their group's settings export on their own, and the import asks which group they go to.
- Ticking everything exports your whole configuration.
- Never exported: plugins, the AutoHotkey settings, how long a password is remembered, and Start with Windows. These belong to one computer, or would let a shared file choose a program Input.Observer runs. Your license is never in your configuration at all.
- An export is always plain text, even when your configuration is password-protected; the dialog warns you. Anyone who can open the file can read your scripts.
Importing
- Open the ⋯ menu and choose Import… ①, then pick the file.
- The Import preview lists everything in the file and what would happen to each item. Decide each item the preview asks about (below).
- Choose Import.
- The result shows in the configuration window as unsaved changes. Look it over, then choose Apply or Save and close to keep it, or Discard to drop it.
| Action | ||
|---|---|---|
| Close tab | Already in your configuration | Overwrite |
| Paste as plain text | New | Add |
What happens to each item
Items in the file that your configuration doesn't have are added. Where an item matches one you already have, the preview asks ②, and Import stays unavailable until every such item is decided. Overwrite all and Keep all decide every open item at once.
| Item | Matches yours when | Choices |
|---|---|---|
| Gesture | It is the same gesture (it came from your configuration) | Overwrite (takes the file's shape and name) or Keep yours |
| Gesture | A different gesture has the same name | Keep yours, Overwrite, or Add alongside. With the first two, the file's actions use your gesture. |
| Action, profile | It is the same item | Overwrite, Keep yours or Import as a copy (a copy of a profile gets a new name ending in -1, -2…) |
| App group | It is the same group; the file's Global group always matches yours | Overwrite or Keep yours, for the group's settings only. Its actions are listed one by one and merged into your group, so actions of yours the file doesn't hold stay. |
| Snippet | It is the same snippet | Overwrite, Keep yours or Import as a copy. A snippet whose name you already use for a different one is added with -1, -2… after its name. |
| Settings, a global event, the global before or after script | Always (there is one of each) | Overwrite or Keep yours. A settings section from the file changes only the settings it contains. |
| Exclusion zone (every window) | Never | Always added |
An action from the file goes into the group with the same identity in your configuration, or else into your Global group; the preview asks when actions arrived without their group. When an item gets a new name or identity, everything in the file that refers to it is updated to match, including snippet calls written as a plain name in scripts.
Merge or replace
When the file is a whole configuration, the preview offers Merge it into your configuration (the rules above) or Replace your configuration with it ①. Replace makes the file your configuration. Plugins, the AutoHotkey settings, how long a password is remembered and Start with Windows keep their current values either way.
What stops an import
An import is all or nothing. Before anything changes, Input.Observer builds the result and checks it the same way it checks your configuration when it starts. If the result wouldn't be valid, nothing is imported and the preview lists the problems. An import is refused when:
- the file is encrypted — remove the password where it came from, export again, and import that file;
- it isn't a configuration file Input.Observer can read, or it is larger than 8 MB;
- it was written by a newer version of Input.Observer that this version can't read (parts that are only a little newer import, and the preview lists the settings it skipped);
- an action uses a gesture, or a group or action is limited to a profile, that neither the file nor your configuration has;
- the result would have more than one Global group, two snippets with the same name, or more than 64 gesture profiles;
- Input.Observer itself finds a problem in the result.
Settings that are never imported are left out and listed. A script that calls a snippet neither side has is a warning, not a refusal.
Imported scripts run with your permissions whenever they are triggered, like your own. The preview marks every item that contains a script, and AutoHotkey scripts separately. Import files only from people you trust.
Importing from StrokesPlus.net
Import from StrokesPlus.net… reads a StrokesPlus.net settings file and turns it into an ordinary import preview, so everything above applies.
- Open the ⋯ menu and choose Import from StrokesPlus.net…. The file picker opens in StrokesPlus.net's
settings folder when there is one. A portable StrokesPlus.net keeps
StrokesPlus.net.jsonbeside its own program; browse to it there. - If the file is encrypted, enter the password it was saved with.
- Check the preview. A box at the top lists, by kind, what didn't carry over or changed, with Show every item for the full list.
- Choose Import, then Apply or Save and close.
What to expect:
- App groups, ignored programs, gestures, gesture actions, hotkeys, text expansions, global events, exclusion zones and the matching settings come over. Steps and scripts are translated into Input.Observer's own Steps and script language.
- Anything that didn't carry over intact is imported switched off, with a note saying why: an action whose
script couldn't be fully translated (the untranslated lines are kept as
// SP.net:comments), an action whose gesture isn't in the file, an action started by mouse buttons alone, a hotkey without a key, a text expansion without trigger text, and an app group none of whose window rules has an equivalent. - Gesture matching starts on Keep yours. StrokesPlus.net scores a gesture by averaging its drawn examples; Input.Observer by default takes the best one. The file's matching settings are offered, but overwriting yours changes how your existing gestures score, so it is your choice. A match threshold below 50 comes in as 50, the lowest the Gestures page allows. Imported gestures may need their match settings revisited (Matching).
- StrokesPlus.net's older binary settings file (
.bin) can't be read. Start StrokesPlus.net once so it savesStrokesPlus.net.json, then import that. - Importing the same file again lines its items up with the ones it imported before, instead of adding duplicates.