tree 82917d622941ab58c975ceaaf8c2044174309c8d
parent c17ffe37ff9ac2c5e0f19a67854b77955976c1bb
author Philip Zeyliger <philip@bold.dev> 1749235216 +0000
committer Philip Zeyliger <philip@bold.dev> 1749235371 -0700

browser: add SKETCH_BROWSER environment variable support

Add configurable browser selection through SKETCH_BROWSER environment
variable for customized browser launching across different platforms.

Problem Analysis:
Users needed the ability to specify which browser application to use
when opening URLs through Sketch, rather than being limited to system
defaults. Different development workflows require specific browsers
(e.g., Chrome for debugging, Firefox for testing), and the existing
implementation only supported system default browser opening.

Implementation Changes:

1. Environment Variable Integration:
   - Read SKETCH_BROWSER environment variable in Open() function
   - Pass browser application name to platform-specific commands
   - Graceful fallback to default behavior when variable not set

2. Platform-Specific Command Generation:
   - macOS: Use 'open -a [browser]' when SKETCH_BROWSER set
   - Windows: Use browser executable directly when SKETCH_BROWSER set
   - Linux/Unix: Use browser executable directly (xdg-open doesn't support app selection)
   - Preserve existing default behavior for each platform

3. Enhanced Debug Logging:
   - Added browser parameter to debug log output
   - Improved error visibility for custom browser failures
   - Maintains existing error handling patterns

4. Comprehensive Test Coverage:
   - Added browser_test.go with platform-specific test cases
   - Environment variable manipulation testing
   - Cross-platform command generation validation
   - Empty URL handling verification

Technical Details:
- Uses os.Getenv() for environment variable access
- Platform detection via runtime.GOOS for appropriate command selection
- Direct executable invocation for Windows/Linux custom browsers
- macOS leverages 'open -a' for application-specific launching

Benefits:
- Developers can specify preferred browser for Sketch URLs
- Cross-platform compatibility maintained for all use cases
- Zero configuration required - works with existing setups
- Enhanced debugging capabilities through improved logging

Testing:
- Unit tests verify environment variable handling across platforms
- Command generation logic tested for all platform combinations
- Integration testing confirms no regression in default behavior
- Empty/invalid input handling validated

This enhancement provides flexible browser selection while maintaining
full backward compatibility with existing default browser workflows.

Co-Authored-By: sketch <hello@sketch.dev>
Change-ID: s0ae93ccc20b0a8c2k
