# Typassist 1.13.1 - User Manual
## Table of Contents
1. [Introduction](#introduction)
2. [Installation](#installation)
3. [Quick Start](#quick-start)
4. [Key Features](#key-features)
5. [Hotkeys and Controls](#hotkeys-and-controls)
6. [Configuration Overview](#configuration-overview)
7. [Files and Data](#files-and-data)
8. [Customizing Suggestions and Replacements](#customizing-suggestions-and-replacements)
9. [Advanced Features](#advanced-features)
10. [Troubleshooting](#troubleshooting)
11. [Technical Details](#technical-details)
## Introduction
Predictype is an advanced text suggestion and auto-replacement tool built with AutoHotkey v2.0. It monitors your typing in real-time and suggests completions from a customizable dictionary. Matching combines multiple strategies (prefix, near-prefix, fuzzy, and anywhere) and learns from your usage, with rich configuration from a tray menu and a persistent, lightweight UI.
Predictype works system-wide in any standard text input field, improving productivity for writers, coders, and anyone who types repetitive text.
## Installation
1. Ensure AutoHotkey v2.0 or later is installed if you plan to run the .ahk script.
2. Run Predictype in one of two ways:
- Double-click the latest script (Predictype 1.13.1.ahk), or
- Run the packaged executable (Predictype 1.13.1.exe) if available.
3. A tray icon will appear when Predictype is active.
## Quick Start
1. Start typing in any text field.
2. After typing at least the minimum characters (default: 3), a suggestion menu appears.
3. Use Up/Down to navigate.
4. Press the accept key (default: Tab) to insert the selected suggestion.
5. Press Escape to close the suggestion menu.
6. Paste-triggered search and click-to-search can automatically show suggestions based on context (configurable).
## Key Features
- Context-aware, multi-word matching using trailing and leading words
- Multiple search strategies with configurable order: prefix, near-prefix, fuzzy (optional), and anywhere fallback
- Frequency-based sorting that learns from your selections (with debounced saving)
- Auto-replacements for shorthand and corrections (e.g., "pt" -> "patient")
- Undo support for suggestions and auto-replacements (Ctrl+Z) with internal state rollback
- Flexible insertion: append or replace typed text; optional automatic space after insert
- Smart spacing: trim space before special characters and handle sentence punctuation
- Click-to-search and paste-to-search input triggers
- Clipboard-aware suggestions (optional) to include recent copied text
- Persistent, fast ListView suggestion menu with number column and optional border
- Rich, live configuration via tray menu with per-item tooltips and mini editors
- Built-in file editor GUIs to edit configuration, suggestions, auto-replacements, and logs
- Logging and tray tips for visibility into actions
- Fine-grained performance tuning with debounce options
## Hotkeys and Controls
Configurable hotkeys and behavior are editable in the tray menu under the Hotkeys category or via the config file.
- Win+S (ToggleHotkey): Toggle monitoring on/off
- Up / Down (MenuUpKey / MenuDownKey): Navigate suggestions
- Tab (SendKey): Accept selected suggestion
- Hold S while accepting (SendKeyPlural) to insert a plural form (configurable)
- Escape (MenuCloseKey): Close the suggestion menu
- Alt+1..0 (EnableNumberHotkeys + NumberHotkeyModifier): Quick select items 1–10 when enabled
- Ctrl+Shift+A (AddToListHotkey): Add currently selected text to suggestions
- Ctrl+Shift+E (AddToListGuiHotkey): Open selection GUI to add/remove/edit text
- Ctrl+V (PasteHotkey): Paste-to-search when enabled
- Ctrl+Z (UndoHotkey): Undo last suggestion/auto-replacement (restores internal state)
- Mouse Left Click: Click-to-search and short-click reset (distance threshold configurable)
- Backspace: Updates suggestions when backspacing (debounced)
Note: The exact hotkey strings are configurable and may differ if changed in settings.
## Configuration Overview
All configuration is available from the tray menu (with tooltips) or via the config file. Key settings are grouped by category below. Defaults are shown in parentheses.
Core Behavior
- EnableSuggestions (true): Master switch for showing suggestions
- EnableUndo (true): Enable integrated undo for suggestions/replacements
- MinChars (3): Minimum characters before showing suggestions
- TrackedWords (3): How many trailing words to consider for matching
- SuggestionSearchOrder ("prefix,nearprefix,fuzzy,anywhere"): Strategy order
- MinimumMatches (5): Stop a strategy early when this many matches found
- MaxSuggestions (10), MaxPrefixMatches (10), MaxNearPrefixMatches (10)
- ContinueSuggesting (true): Keep menu open after selection
- SpaceAfterSuggestion (true): Add a space after inserted suggestion
- SuggestionInsertMode ("append"): "append" or "backspace"
- SpecialCharacters (punctuation list): Remove preceding space when typed after insertion
- SentencePunctuationChars (". ! ?"): Sentence-ending punctuation
- EnableAutoReplace (true): Enable auto-replacements
- IgnoreCase (true), MatchAnywhere (true), FuzzyMatch (false), FuzzyMatchThreshold (20)
- SortByFrequency (true): Prioritize frequently used phrases
- ClipboardRecentCount (5): Include up to N recent clipboard text items (0 disables)
- SendKeyNumberMax (2): Max words to insert when pressing accept key + number (0 disables)
Appearance
- MenuFontName ("Segoe UI"), MenuFontSize (10)
- MenuBackgroundColor (FFFFFF), TextColor (000000)
- HighlightColor (0x3399FF): Selected item highlight color
- MenuTransparency (220), MenuHasBorder (false)
- MaxWidth (300), MenuMaxDisplayHeight (300)
- EnableNumberHotkeys (true)
- OffsetX (-25), OffsetY (20)
Hotkeys
- MenuUpKey (Up), MenuDownKey (Down), MenuCloseKey (Escape)
- SendKey (Tab), SendKeyPlural (S)
- NumberHotkeyModifier (Alt)
- ToggleHotkey (#S), AddToListHotkey (^+A), AddToListGuiHotkey (^+e)
- UndoHotkey (~^z), PasteHotkey (~^v)
- ResetKeys: Keys that hide menu/reset state (e.g., Escape, Tab, arrows...)
Search Triggers
- PasteToSearch (true)
- ClickToSearch (true)
- ClickSearchMethod ("heuristic" or "control")
- ClickTime (0.09s), ClickSearchDelay (50ms)
- ClickDistanceThreshold (600): Short-click movement threshold
Selection GUI
- AddToListGuiWidth (300)
- AddToListGuiAutoClose (true)
Files & History
- SuggestionFile (suggestions.txt)
- ConfigFile (suggestion_config.ini)
- HistoryFile (suggestion_history.txt), MaxHistory (1000)
- AutoReplaceFile (auto_replace.txt)
- LogFile (suggestion_log.txt)
Notifications & Logging
- ShowTrayTips (true), TrayTipDuration (2000ms)
- EnableLogging (false), IncludeTimestamp (true)
Performance
- SaveDebounceMs (500): Debounced saving of state to disk
- SearchDebounceMs (20), BackspaceDebounceMs (30)
- UndoDelayMs (60), ClipWaitTimeout (0.3)
- MenuSleepMin (20), MenuSleepMax (150)
## Files and Data
- suggestions.txt: Your suggestion phrases (one per line)
- auto_replace.txt: Auto-replacement pairs using key=value or key->value syntax
- suggestion_history.txt: Frequency data for sorting (when enabled)
- suggestion_config.ini: Configuration file
- suggestion_log.txt: Optional log for diagnostics
## Customizing Suggestions and Replacements
Suggestions
- Add from selection: Select text in any app and press Ctrl+Shift+A
- Use the selection GUI: Press Ctrl+Shift+E to open a small editor to add/remove
- Edit the file directly: Use the tray menu (Edit Suggestions) or open suggestions.txt
- Reload: Use tray menu "Reload Suggestions"
Auto-Replacements
- File format: key=value or key->value (comments with # or ;)
Examples:
pateint=patient
pt=patient
addr=123 Main St, Springfield, USA
brb->be right back
- Edit via tray menu (Edit Auto-Replacements) and reload via "Reload Auto-Replacements"
## Advanced Features
Multi-Word Matching
- Matches are found using trailing N words of your input (TrackedWords) and also leading prefixes to merge typed text with longer suggestions. Per-suggestion backspace lengths maintain correct spacing.
Search Strategy Control
- The search order is configurable. Near-prefix matching allows a limited number of mismatches at the beginning to tolerate minor typos. Fuzzy matching is optional and thresholded.
Clipboard Suggestions
- When enabled, recent text copied to the clipboard can appear as suggestions (deduped against your suggestion file and recent selections). Set ClipboardRecentCount to 0 to disable.
Undo Integration
- After inserting a suggestion or auto-replacement, pressing Ctrl+Z reverts text and also restores Predictype’s internal state, including the suggestion list and selection where applicable.
Insertion Behavior and Smart Spacing
- Choose whether to backspace and replace typed text or simply append the remainder. Enable automatic space insertion and smart trimming before punctuation. Sentence punctuation can trigger capitalization behavior when enabled.
Tray Menu with Tooltips and Editors
- Hover items to see helpful descriptions. Edit numeric and boolean settings via mini dialogs. Open and edit configuration/suggestions/auto-replacements directly from the tray.
## Troubleshooting
Suggestions don’t appear
- Ensure Predictype is running (tray icon visible)
- Verify monitoring is enabled (Win+S toggles)
- Confirm you’ve typed at least MinChars (default: 3)
- If relying on triggers, ensure PasteToSearch and/or ClickToSearch are enabled
Wrong suggestion position
- Adjust OffsetX/OffsetY in settings; some apps may require different offsets
Number hotkeys not working
- Ensure EnableNumberHotkeys is on and use the configured modifier (default Alt+number)
Auto-replacements not applying
- Confirm EnableAutoReplace is on, file syntax is valid, and reload replacements
Undo didn’t revert
- Ensure EnableUndo is on; some host apps may intercept Ctrl+Z before Predictype
Performance issues
- Increase MinChars and debounce timings; reduce MaxSuggestions
- Disable fuzzy matching; lower ClipboardRecentCount
Clipboard suggestions show sensitive content
- Set ClipboardRecentCount to 0 to disable the feature
## Technical Details
- AutoHotkey v2.0, high process priority
- Persistent ListView GUI for suggestions with optional number column and border
- InputHook-based global key capture with debounced search/backspace handling
- Shell hook for window activation to avoid unintended menu hiding
- Multi-strategy matcher (prefix, near-prefix, fuzzy, anywhere) with configurable caps and order
- Usage statistics with debounced persistence to history file
- Auto-replacement engine with relaxed parsers for both '=' and '->'
- Tray menu built from a configuration schema with per-item tooltips (WM_MENUSELECT)
- Built-in file editor GUIs for convenient editing of config and data files
- Optional logging with timestamps for diagnostics