_reset_prefix_counter()
assert _auto_prefix() == "ts0"
assert _auto_prefix() == "ts1"
assert _auto_prefix() == "ts2"
_reset_prefix_counter()
assert _auto_prefix() == "ts0"
print("Prefix counter tests passed!")Prefix counter tests passed!
Auto-generates unique prefixes (ts0, ts1, …) for token selector instances when no explicit prefix is provided.
def TokenSelectorConfig(
prefix:str=<factory>, selection_mode:Literal='gap', initial_delay:int=400, repeat_interval:int=80,
throttle_floor:int=50, left_key:str='ArrowLeft', right_key:str='ArrowRight', end_token_text:str='(End)',
show_end_token:bool=True, read_only:bool=False, wrap_navigation:bool=False, on_change_callback:str=''
)->None:
Initialization-time settings for a token selector instance.
_reset_prefix_counter()
# Auto-prefix
c1 = TokenSelectorConfig()
c2 = TokenSelectorConfig()
assert c1.prefix == "ts0"
assert c2.prefix == "ts1"
# Explicit prefix
c3 = TokenSelectorConfig(prefix="my-tokens")
assert c3.prefix == "my-tokens"
# Defaults
assert c1.selection_mode == "gap"
assert c1.initial_delay == DEFAULT_INITIAL_DELAY
assert c1.left_key == "ArrowLeft"
assert c1.show_end_token is True
assert c1.read_only is False
assert c1.on_change_callback == ""
# Custom values
c4 = TokenSelectorConfig(prefix="wasd", selection_mode="span", left_key="a", right_key="d")
assert c4.selection_mode == "span"
assert c4.left_key == "a"
assert c4.right_key == "d"
_reset_prefix_counter()
print("TokenSelectorConfig tests passed!")TokenSelectorConfig tests passed!