狠狠撸

狠狠撸Share a Scribd company logo
Time for
Xcode Behavior!
potato tips 2018/02/22
Tachibana Kaoru
About Me
? @TachibanaKaoru
? iOS freelance engineer
? This years theme : No Travel, No
Work!
? Bali バリ島
? Greece ギリシャ
Xcode Source Code Extension
? WWDC 2016 で紹介
? Apple's Xcode of?cial extension!
やった~!
公式プラグインだ!
でもふたをあけて
みると……
Xcode Source Code Extension
? 配布も作成もデバッグも大変だし……。
? 動作にかなり制限があるし……。
? GUIも表示できないし……。
(詳しくは、@takasekさんの Xcode Source Editor Extensionの
世界を参照)
ここで
Xcode Behavior!
Xcode Behaviorとは
? Xcode のmenuから起動できる独自
スクリプト
? 太古の昔から使えます。
齿肠辞诲别の设定の叠别丑补惫颈辞谤蝉画面で设定
What can it do?
Xcode Source Code
Extension
Xcode Behavior
Xcodeのエディターで今ひら
いているファイルの中身を変
更することしかできない。
Xcodeから独立して動作する
スクリプトなので、なんでも
できる。
context from Xcode...
Xcode Source Code
Extension
Xcode Behavior
Xcodeで開いているファイル
の中身のみ取得できる。
環境変数で今Xcodeで開いて
いるプロジェクトがわかる。
Editing, Distributing...
Xcode Source Code
Extension
Xcode Behavior
作成も配布も変更も複雑 自分で書いたスクリプトを自
己責任で使うスキームなの
で、作成も配布も変更も楽
show GUI
Xcode Source Code
Extension
Xcode Behavior
GUIを表示できない GUIを表示できる。AppKitも
もちろん可。
Programming Language
Xcode Source Code
Extension
Xcode Behavior
Xcodeでコンパイルできる言
語のみ
スクリプトとして使える言語
ならなんでも可。Swiftでも、
シェルスクリプトでも、apple
scriptでも、rubyでも。
Hello World with Apple Script
#!/usr/bin/osascript
set theDialogText to "Hello World!"
display dialog theDialogText
さて、ここで、実プロジェクトで使え
るXcode Behaviorのサンプルを見て
みましょう。
Markdown in Xcode
Markdown in Apple Sample
? preview mode
Markdown in my project...
? not preview mode!
to change makrdown's preiew mode
プロジェクト内に特定の名前のplistファイルをおくと、Xcode
でマークダウンファイルがプレビューモードで表示されるよう
になります。
Xcode9でのMarkdownレンダリング - http://www.toyship.org/
archives/2541
script to change preview mode of
markdown in Xcode
#!/usr/bin/swift
import Foundation
let env = ProcessInfo.processInfo.environment
let manager = FileManager.default
let fileNakami = "...."
if let pathValue = env["XcodeProjectPath"] as? String{
var fileURL = URL(fileURLWithPath: pathValue)
fileURL.appendPathComponent(".xcodesamplecode.plist")
try! fileNakami.write(to: fileURL, atomically: true, encoding: String.Encoding.utf8)
}
https://gist.github.com/TachibanaKaoru/
4ffa5dda9b86b4f0ef1a02e064ba34e9
まとめ
? Xcode Behavior便利!
? 太古の昔から使える技ですが、今こそみなおされるべき!

More Related Content

Time for Xcode Behavior