aboutsummaryrefslogtreecommitdiffhomepage
path: root/scripts
diff options
context:
space:
mode:
authorGravatar mitchell <70453897+667e-11@users.noreply.github.com>2017-08-27 09:44:17 -0400
committerGravatar mitchell <70453897+667e-11@users.noreply.github.com>2017-08-27 09:44:17 -0400
commite4f87af174807e07eaeec606f5ad9f53ca65ac0f (patch)
tree1cabcb4e8f9171b5ad45c3dbfb3230f5b9858023 /scripts
parent7890b0082d1604ef1981c1f17344a469cd9978a4 (diff)
Updated Info.plist such that Textadept appears in the "Open With..." menu.
Thanks to Franck Guadagnini.
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/gen_plist.lua118
1 files changed, 90 insertions, 28 deletions
diff --git a/scripts/gen_plist.lua b/scripts/gen_plist.lua
index f217f2cc..d9e319b4 100755
--- a/scripts/gen_plist.lua
+++ b/scripts/gen_plist.lua
@@ -27,47 +27,107 @@ local xml = {[[
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
- <key>CFBundleDocumentTypes</key>
- <array>]]}
+ <key>CFBundleDocumentTypes</key>]]}
+xml[#xml + 1] = [[
+ <array>
+ <dict>
+ <key>CFBundleTypeName</key>
+ <string>Textadept document</string>
+ <key>CFBundleTypeRole</key>
+ <string>Editor</string>
+ <key>LSItemContentTypes</key>
+ <array>
+ <string>com.apple.property-list</string>
+ <string>com.apple.applescript.text</string>
+ <string>com.apple.xcode.commands</string>
+ <string>com.apple.xcode.csh-script</string>
+ <string>com.apple.xcode.ksh-script</string>
+ <string>com.apple.xcode.lex-source</string>
+ <string>com.apple.xcode.make-script</string>
+ <string>com.apple.xcode.mig-source</string>
+ <string>com.apple.xcode.tcsh-script</string>
+ <string>com.apple.xcode.yacc-source</string>
+ <string>com.apple.xcode.zsh-script</string>
+ <string>com.apple.xml-property-list</string>
+ <string>com.netscape.javascript-source</string>
+ <string>com.sun.java-source</string>]]
for i = 1, #languages do
lang, exts = languages[i], extensions[languages[i]]
if #exts > 0 then
- xml[#xml + 1] = "\t\t<dict>"
- xml[#xml + 1] = "\t\t\t<key>CFBundleTypeExtensions</key>"
- xml[#xml + 1] = "\t\t\t<array>"
- for j = 1, #exts do
- xml[#xml + 1] = "\t\t\t\t<string>"..exts[j].."</string>"
- end
- xml[#xml + 1] = "\t\t\t</array>"
- xml[#xml + 1] = "\t\t\t<key>CFBundleTypeName</key>"
- xml[#xml + 1] = "\t\t\t<string>"..lang.." source</string>"
- xml[#xml + 1] = "\t\t\t<key>CFBundleTypeRole</key>"
- xml[#xml + 1] = "\t\t\t<string>Editor</string>"
- xml[#xml + 1] = "\t\t</dict>"
+ xml[#xml + 1] = "\t\t\t\t<string>com.textadept."..lang:gsub(' ', '-')..
+ "-source</string>"
end
end
xml[#xml + 1] = [[
- <dict>
- <key>CFBundleTypeExtensions</key>
- <array>
- <string>*</string>
+ <string>net.daringfireball.markdown</string>
+ <string>public.c-header</string>
+ <string>public.c-plus-plus-header </string>
+ <string>public.c-plus-plus-source</string>
+ <string>public.c-source</string>
+ <string>public.csh-script</string>
+ <string>public.css</string>
+ <string>public.html</string>
+ <string>public.lex-source</string>
+ <string>public.mig-source</string>
+ <string>public.objective-c-plus-plus-source</string>
+ <string>public.objective-c-source</string>
+ <string>public.perl-script</string>
+ <string>public.php-script</string>
+ <string>public.plain-text</string>
+ <string>public.python-script</string>
+ <string>public.rtf</string>
+ <string>public.ruby-script</string>
+ <string>public.script</string>
+ <string>public.shell-script</string>
+ <string>public.source-code</string>
+ <string>public.text</string>
+ <string>public.utf16-external-plain-text</string>
+ <string>public.utf16-plain-text</string>
+ <string>public.utf8-plain-text</string>
+ <string>public.xml</string>
</array>
- <key>CFBundleTypeName</key>
- <string>Document</string>
- <key>CFBundleTypeRole</key>
- <string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeName</key>
- <string>Document</string>
- <key>CFBundleTypeOSTypes</key>
+ <string>Anything</string>
+ <key>CFBundleTypeRole</key>
+ <string>Viewer</string>
+ <key>LSItemContentTypes</key>
<array>
- <string>****</string>
+ <string>public.data</string>
+ <string>public.text</string>
</array>
- <key>CFBundleTypeRole</key>
- <string>Editor</string>
</dict>
</array>
+ <key>UTImportedTypeDeclarations</key>
+ <array>]]
+for i = 1, #languages do
+ lang, exts = languages[i], extensions[languages[i]]
+ if #exts > 0 then
+ xml[#xml + 1] = "\t\t<dict>"
+ xml[#xml + 1] = "\t\t\t<key>UTTypeTagSpecification</key>"
+ xml[#xml + 1] = "\t\t\t<dict>"
+ xml[#xml + 1] = "\t\t\t\t<key>public.filename-extension</key>"
+ xml[#xml + 1] = "\t\t\t\t<array>"
+ for j = 1, #exts do
+ xml[#xml + 1] = "\t\t\t\t\t<string>"..exts[j].."</string>"
+ end
+ xml[#xml + 1] = "\t\t\t\t</array>"
+ xml[#xml + 1] = "\t\t\t</dict>"
+ xml[#xml + 1] = "\t\t\t<key>UTTypeDescription</key>"
+ xml[#xml + 1] = "\t\t\t<string>"..lang.." source</string>"
+ xml[#xml + 1] = "\t\t\t<key>UTTypeIdentifier</key>"
+ xml[#xml + 1] = "\t\t\t<string>com.textadept."..lang:gsub(' ', '-')..
+ "-source</string>"
+ xml[#xml + 1] = "\t\t\t<key>UTTypeConformsTo</key>"
+ xml[#xml + 1] = "\t\t\t<array>"
+ xml[#xml + 1] = "\t\t\t\t<string>public.source-code</string>"
+ xml[#xml + 1] = "\t\t\t</array>"
+ xml[#xml + 1] = "\t\t</dict>"
+ end
+end
+xml[#xml + 1] = [[
+ </array>
<key>CFBundleExecutable</key>
<string>textadept_osx</string>
<key>CFBundleIconFile</key>
@@ -83,7 +143,9 @@ xml[#xml + 1] = [[
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
- <string>8.5</string>
+ <string>9.5beta</string>
+ <key>CFBundleShortVersionString</key>
+ <string>9.5 beta</string>
<key>NSHighResolutionCapable</key>
<true/>
</dict>