source-map-cat

WIP cat for JS source maps.

npm install source-map-cat
2 downloads in the last week
4 downloads in the last month

cat for Javascript sourcemaps

Install:

npm install --global source-map-cat

Example Usage (run from project test directory):

# Create or find files with source maps

../node_modules/typescript/bin/tsc --sourcemap hello.ts

../node_modules/coffee-script-redux/bin/coffee --js -i goodbye.coffee > goodbye.js
../node_modules/coffee-script-redux/bin/coffee --source-map -i goodbye.coffee > goodbye.js.map

curl --remote-name-all \
     http://code.jquery.com/jquery-1.9.0.js \
     http://code.jquery.com/jquery-1.9.0.min.js \
     http://code.jquery.com/jquery-1.9.0.min.map

# Strip source map urls
sed -i '.bak' '/sourceMappingURL/d' hello.js goodbye.js jquery-1.9.0.min.js

# Concatenate JS files
cat hello.js goodbye.js jquery-1.9.0.min.js > hello-goodbye-jquery-min.js

# Concatenate source maps
source-map-cat --source-file hello-goodbye-jquery-min.js \
    hello.js.map goodbye.js.map jquery-1.9.0.min.map > hello-goodbye-jquery-min.js.map

# Append source map url to combined file (or use HTTP X-SourceMap header)
echo '//@ sourceMappingURL=hello-goodbye-jquery-min.js.map' >> hello-goodbye-jquery-min.js

# Generate a test HTML page
echo '<script src="hello-goodbye-jquery-min.js"></script>' > index.html

# Serve
python -m SimpleHTTPServer 3000 localhost

# Open tab to check
python -m webbrowser -t http://localhost:3000/

# Enable source maps in developer tools
# Should see concatenated source
# and original sources and breakpoints should map correctly.
Tools and Languages with Source Map Support
npm loves you