Skip to content

Conversation

@anonfaded
Copy link

This commit provides two major enhancements:

  1. Makes the core pidcat.py script fully cross-platform.
  2. Adds a new interactive batch script for convenient use on Windows.

Python Script Enhancements (pidcat.py):

  • Replaced Unix-only fcntl for terminal width detection with the
    cross-platform shutil.get_terminal_size().
  • Integrated the colorama library to correctly render ANSI color
    codes on the Windows Command Prompt.
  • Added a startup check to ensure an adb device is connected.
  • Prevents silent hangs by providing feedback when a specified package is not running.
  • Catches KeyboardInterrupt (Ctrl+C) to provide a clean exit message.

New Windows Automation Script (start_pidcat.bat):

  • Introduces start_pidcat.bat, a helper script for Windows users
    to automate logging sessions.
  • The script interactively prompts for a package name and has a
    configurable default, making it flexible for daily use.
  • It automatically invokes pidcat.py with the -c flag to clear the
    device log buffer, ensuring a clean start for each session.
  • NOTE: Users need to edit the hardcoded path to pidcat.py within
    this batch file to match their local setup.

anonfaded and others added 7 commits June 26, 2025 23:49
This commit provides two major enhancements:
1.  Makes the core `pidcat.py` script fully cross-platform.
2.  Adds a new interactive batch script for convenient use on Windows.

--------------------------------------------------

Python Script Enhancements (`pidcat.py`):

- Replaced Unix-only `fcntl` for terminal width detection with the
  cross-platform `shutil.get_terminal_size()`.
- Integrated the `colorama` library to correctly render ANSI color
  codes on the Windows Command Prompt.
- Added a startup check to ensure an `adb` device is connected.
- Prevents silent hangs by providing feedback when a specified package is not running.
- Catches KeyboardInterrupt (Ctrl+C) to provide a clean exit message.

New Windows Automation Script (`start_pidcat.bat`):

- Introduces `start_pidcat.bat`, a helper script for Windows users
  to automate logging sessions.
- The script interactively prompts for a package name and has a
  configurable default, making it flexible for daily use.
- It automatically invokes `pidcat.py` with the `-c` flag to clear the
  device log buffer, ensuring a clean start for each session.
- NOTE: Users need to edit the hardcoded path to `pidcat.py` within
  this batch file to match their local setup.
1.  Makes the core `pidcat.py` script fully cross-platform.
2.  Adds a new interactive batch script for convenient use on Windows.

--------------------------------------------------

Python Script Enhancements (`pidcat.py`):

- Replaced Unix-only `fcntl` for terminal width detection with the
  cross-platform `shutil.get_terminal_size()`.
- Integrated the `colorama` library to correctly render ANSI color
  codes on the Windows Command Prompt.
- Added a startup check to ensure an `adb` device is connected.
- Prevents silent hangs by providing feedback when a specified package is not running.
- Catches KeyboardInterrupt (Ctrl+C) to provide a clean exit message.

New Windows Automation Script (`start_pidcat.bat`):

- Introduces `start_pidcat.bat`, a helper script for Windows users
  to automate logging sessions.
- The script interactively prompts for a package name and has a
  configurable default, making it flexible for daily use.
- It automatically invokes `pidcat.py` with the `-c` flag to clear the
  device log buffer, ensuring a clean start for each session.
- NOTE: Users need to edit the hardcoded path to `pidcat.py` within
  this batch file to match their local setup.
- Added interactive device selection for multiple connected ADB devices.
- Improved subprocess output handling and error management for ADB commands.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant