Workspace ManagerstableAPI Reference

Choose documentation 3

stable

Current version

stable
English

Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

tmuxp.cli.search.compile_search_patterns

tmuxp.cli.search.compile_search_patterns ( tokens: list[SearchToken], ignore_case: bool = False, smart_case: bool = False, fixed_strings: bool = False, word_regexp: bool = False, ) → list[SearchPattern]

Compile search tokens into regex patterns.

Examples#

Basic compilation:

>>> tokens = [SearchToken(fields=("name",), pattern="dev")]
>>> patterns = compile_search_patterns(tokens)
>>> patterns[0].raw
'dev'
>>> bool(patterns[0].regex.search("development"))
True

Case-insensitive matching:

>>> tokens = [SearchToken(fields=("name",), pattern="DEV")]
>>> patterns = compile_search_patterns(tokens, ignore_case=True)
>>> bool(patterns[0].regex.search("development"))
True

Smart-case (uppercase = case-sensitive):

>>> tokens = [SearchToken(fields=("name",), pattern="Dev")]
>>> patterns = compile_search_patterns(tokens, smart_case=True)
>>> bool(patterns[0].regex.search("Developer"))
True
>>> bool(patterns[0].regex.search("developer"))
False

Smart-case (lowercase = case-insensitive):

>>> tokens = [SearchToken(fields=("name",), pattern="dev")]
>>> patterns = compile_search_patterns(tokens, smart_case=True)
>>> bool(patterns[0].regex.search("DEVELOPMENT"))
True

Fixed strings (escape regex metacharacters):

>>> tokens = [SearchToken(fields=("name",), pattern="dev.*")]
>>> patterns = compile_search_patterns(tokens, fixed_strings=True)
>>> bool(patterns[0].regex.search("dev.*project"))
True
>>> bool(patterns[0].regex.search("development"))
False

Word boundaries:

>>> tokens = [SearchToken(fields=("name",), pattern="dev")]
>>> patterns = compile_search_patterns(tokens, word_regexp=True)
>>> bool(patterns[0].regex.search("my dev project"))
True
>>> bool(patterns[0].regex.search("development"))
False
Parameters
Returns

list[SearchPattern] List of compiled search patterns.

Raises
  • re.error – If a pattern is invalid regex (when fixed_strings=False).

Esc

Type to search.

Reference preview Open reference