Last active
August 29, 2015 14:25
-
-
Save lsd/efecf50f3ae96dcff5b6 to your computer and use it in GitHub Desktop.
Wrapper around `plutil` to quickly jump between xml1 and binary1 when editing plists (propert lists in resources, Xcode)
This file contains 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
#!/bin/sh | |
# | |
# A script to make it easier to edit resources in mac.apps on the commandline | |
# Isam M 2015 <http://github.com/lsd/update-plist.sh> | |
# exit if pipeline (1+ cmd) fails | |
set -e | |
echo | |
echo "USAGE (default English): To open ScreenCapture.strings in SystemUIServer.app/C/R/English.lproj | |
echo "$ sudo update-plist.sh ScreenCapture | |
echo | |
# hardcode English ... | |
# LANGUAGE="$1" | |
RESOURCE="$2".strings | |
LANGUAGE="English" | |
RESOURCE="$1".strings | |
DIR="/System/Library/CoreServices/SystemUIServer.app/Contents/Resources/$LANGUAGE.lproj" | |
# cd in, validate resource, make backup | |
pushd "$DIR" | |
ls -l | |
echo | |
diff "$RESOURCE" "$RESOURCE" 2>/dev/null | |
BACK=~/".$RESOURCE.binary1.`date -j +%S%s`.back" | |
cp "$RESOURCE" "$BACK" | |
echo "Backed up resource $RESOURCE to $BACK" | |
# Convert to XML, open in vi, when done convert back to binary | |
sudo plutil -convert xml1 "$RESOURCE" | |
sudo vi "$RESOURCE" | |
sudo plutil -convert binary1 "$RESOURCE" | |
# Clean up | |
mv "$BACK" /tmp | |
popd | |
echo | |
echo "Restart SystemUIServer? (ctrl+c to cancel)" && read | |
killall SystemUIServer |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment