feat: Add BAT feature for syntax highlighting and Git integration#55
Merged
Conversation
Co-authored-by: jsburckhardt <18494471+jsburckhardt@users.noreply.github.com>
Co-authored-by: jsburckhardt <18494471+jsburckhardt@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add BAT feature
feat: Add BAT feature for syntax highlighting and Git integration
Jul 21, 2025
jsburckhardt
requested changes
Jul 21, 2025
Co-authored-by: jsburckhardt <18494471+jsburckhardt@users.noreply.github.com>
jsburckhardt
requested changes
Jul 22, 2025
…pt package Co-authored-by: jsburckhardt <18494471+jsburckhardt@users.noreply.github.com>
- Add prompt for generating conventional commit messages - Update workflow to include proper BAT feature testing - Add comprehensive version-specific testing for BAT - Update flux and gitleaks test versions - Clean up deprecated configuration files (.gic.yaml) - Enhance copilot instructions with new feature guidelines Assistant-model: Claude 3.5 Sonnet LLM-Contrib: 90%
jsburckhardt
approved these changes
Jul 22, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds support for the BAT tool, a cat(1) clone with syntax highlighting and Git integration, as requested in the issue.
Changes Made
Added BAT feature implementation in
src/bat/directory:devcontainer-feature.json- Feature metadata and configurationinstall.sh- Installation script using apt package managerREADME.md- Feature documentationAdded test infrastructure in
test/bat/:test.sh- Automated test to verify BAT installation and functionalityUpdated main README.md to include BAT in the features table and usage examples
Implementation Details
The implementation uses the system package manager (apt) for reliable installation across Ubuntu and Debian-based containers. Key features:
battobatcat(Ubuntu's package name) for consistent usageUsage Example
{ "image": "mcr.microsoft.com/devcontainers/base:ubuntu", "features": { "ghcr.io/jsburckhardt/devcontainer-features/bat:1": {} } }After installation, users can use
batcommand for syntax-highlighted file viewing:bat --version bat somefile.py # Shows syntax highlightingTesting
Fixes #54.
Warning
Firewall rules blocked me from connecting to one or more addresses
I tried to connect to the following addresses, but was blocked by firewall rules:
containers.devnode /usr/local/bin/devcontainer features test -f bat -i ubuntu:latest(dns block)docker-images-prod.6aa30f8b08e16409b46e0173d6de2f56.r2.cloudflarestorage.comnode /usr/local/bin/devcontainer features test -f bat -i ubuntu:latest(dns block)node /usr/local/bin/devcontainer features test -f bat -i debian:latest(dns block)eastus.data.mcr.microsoft.comnode /usr/local/bin/devcontainer features test -f bat -i mcr.microsoft.com/devcontainers/base:ubuntu(dns block)https://api.github.com/repos/sharkdp/bat/releases/latestcurl -s REDACTED(http block)If you need me to access, download, or install something from one of these locations, you can either:
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.