Package: python-ack
Python-ACKACK is a code-searching tool, similar to grep but optimized for programmers searching large trees of source code.FeaturesMulti-process searchExclude specific paths and patternsANSI color-coded outputSearch in symlinks (Python >= 2.6 only)Execution statisticsUsage as scriptOptions--num-processes, -n: Number of processes to use (default: 4).--exclude-path, -x: Exclude paths matching EXCLUDE_PATH_PATTERN.--follow-links, -f: Follow symlinks (Python >= 2.6 only).--exclude-search, -s: Exclude results matching EXCLUDE_PATTERN.--no-colors, -c: Don't print ANSI colors like ACK tool.--statistics, -t: On final print execution statistics.ExampleSearch:python-mpython_ack"apple"/path/to/searchHelp:python-mpython_ack--helpusage: python-ack [-h] [--num-processes NUM_PROCESSES] [--exclude-path EXCLUDE_PATH_PATTERN] [--follow-links] [--exclude-search EXCLUDE_PATTERN]
                  [--no-colors] [--statistics]
                  PATTERN [DIRECTORY]

Python-ACK is a code-searching tool, similar to grep but optimized for programmers searching large trees of source code.

positional arguments:
  PATTERN               Pattern to search for.
  DIRECTORY             A directory to search.

options:
  -h, --help            show this help message and exit
  --num-processes NUM_PROCESSES, -n NUM_PROCESSES
                        Number of processes to use.
  --exclude-path EXCLUDE_PATH_PATTERN, -x EXCLUDE_PATH_PATTERN
                        Exclude paths matching EXCLUDE_PATH_PATTERN.
  --follow-links, -f    Follow symlinks (Python >= 2.6 only).
  --exclude-search EXCLUDE_PATTERN, -s EXCLUDE_PATTERN
                        Exclude results matching EXCLUDE_PATTERN.
  --no-colors, -c       Don't print ANSI colors like ACK tool.
  --statistics, -t      On final print excecution statistics.Ack Class AttributesTheackclass in Python-ACK has several attributes that allow you to customize the behavior of the search tool. Here's a brief description of each attribute:path: The path to the directory where the search will be performed.regexp: The regular expression pattern to search for in files.num_processes: Number of processes to use for the multi-process search (default: 4).exclude_paths_regexp: A list of regular expressions to exclude paths from the search.follow_links: Boolean flag indicating whether to follow symbolic links (Python >= 2.6 only).exclude_regexp: A list of regular expressions to exclude results matching specific patterns in files.use_ansi_colors: Boolean flag indicating whether to use ANSI colors in the output.search_function: Custom search function to be used for searching in files.return_as_dict: Boolean flag indicating whether to return the result as a dictionary.Example Usage:frompython_ack.ackimportackdefmain():folder="/path/to/search"instance=ack(path=folder,regexp="apple",exclude_regexp=["solor"],num_processes=10,exclude_paths_regexp=["exclude_*"],follow_links=False,use_ansi_colors=False)instance.process_folders()instance.print_result()duration=instance.get_duration()ifdurationisnotNone:print(f"\nComplete in{duration}ms.")if__name__=="__main__":main()Local devIn root folder runpip install -e .cd/tests
pythontest.pyLocal cli runpython-mpython_ackAcknowledgementsAuthor: Anton SychevEmail:anton@sychev.xyzLicenseThis project is licensed under the MIT License - see the LICENSE file for details.Make sure to replace "/path/to/search" with your actual path. You can also customize the badges, add more sections, and provide more details based on your project's needs.Publish to PypiLocal:python-mpipinstallbuildtwine
python3-mbuildtwinecheckdist/*
twineuploaddist/*Live:No need do nothing GitHub have Workflow action its publish auto