Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Extending Xcode 8 - try! Swift NYC 2016
Search
Daniel Jalkut
September 01, 2016
Programming
3
13k
Extending Xcode 8 - try! Swift NYC 2016
Daniel Jalkut's talk about the new extension support in Xcode 8.
Daniel Jalkut
September 01, 2016
Tweet
Share
Other Decks in Programming
See All in Programming
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
140
C#/.NETのこれまでのふりかえり
tomokusaba
1
150
Vaporモードを大規模サービスに最速導入して学びを共有する
kazukishimamoto
4
4.3k
Piniaの現状と今後
waka292
5
1.4k
The future of development – Are our jobs getting harder or easier?
hollycummins
1
250
Dev ContainersとGitHub Codespacesの素敵な関係
ymd65536
1
120
GCCのプラグインを作る / I Made a GCC Plugin
shouth
1
150
cXML という電子商取引の トランザクションを支える プロトコルと向きあっている話
phigasui
3
2.2k
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
690
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
5
3.3k
CPython 인터프리터 구조 파헤치기 - PyCon Korea 24
kennethanceyer
0
240
AWS IaCの注目アップデート 2024年10月版
konokenj
3
2.9k
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
How STYLIGHT went responsive
nonsquared
95
5.2k
Fireside Chat
paigeccino
32
3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Happy Clients
brianwarren
97
6.7k
A designer walks into a library…
pauljervisheath
202
24k
A Tale of Four Properties
chriscoyier
156
23k
Optimizing for Happiness
mojombo
376
69k
Statistics for Hackers
jakevdp
796
220k
Building Adaptive Systems
keathley
38
2.2k
Testing 201, or: Great Expectations
jmmastey
38
7k
Transcript
daniel jalkut @danielpunkass Extending Xcode 8
A Good Developer…
Source Editor Extensions
Source Editor Extensions ⊕ Debuting with Xcode 8 ⊕ Extend
Xcode’s source text editor only ⊕ Only Apple-supported mechanism
Bad News ⊕ Alcatraz is dead ⊕ Scope of extension
impact is limited ⊕ Delivery is by host-application only
Good News ⊕ Apple approved ⊕ Designed for security and
stability ⊕ Signal of things to come?
World of Possibilities…
World of Possibilities… ⊕ Transform text and selection ⊕ Access
web resources ⊕ Display rudimentary UI ⊕ Anything the host app can do…
… and Impossibilities ⊕ Anything outside the text editor ◦
Project manipulation ◦ Leveraging Xcode’s compiler state ⊕ Dynamic responses to user actions ◦ Only menu and keyboard shortcut
Build & Run
Build & Run ⊕ Built upon App Extensions ⊕ Delivered
by host application ⊕ Debuggable within Xcode itself
New Project ⊕ Create a new Mac application ⊕ Add
a new extension target ⊕ Build & Run ⊕ Select Xcode as the target
None
None
None
None
None
None
None
None
None
None
Caveats ⊕ Additional setup for 10.11 ⊕ You must sign
your app and extension! ⊕ Run app to nudge extension registration ⊕ Wait a few moments after launching
Hot Tips
Hot Tips ⊕ Select Xcode as the debug target
None
Hot Tips ⊕ Select Xcode as the debug target ⊕
Pass a source file path to Xcode
None
None
Hot Tips ⊕ Select Xcode as the debug target ⊕
Pass a source file path to Xcode ⊕ Give your command a keyboard shortcut
None
Hot Tips ⊕ Select Xcode as the debug target ⊕
Pass a source file path to Xcode ⊕ Give your command a keyboard shortcut ⊕ Keep an eye on Apple’s own extensions
Try! Harder
Try! Harder ⊕ github.com/danielpunkass/tryharder ⊕ Standalone project with example extensions
Try! Harder ⊕ Manipulate text efficiently ⊕ Open a web
page ⊕ Display rudimentary UI ⊕ Insert placeholder text ⊕ More?
As Good As Your Tools
None