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
Sublime Text 2 プラグイン開発 - ゼロからPackageControlへ登録まで
Search
blue planet
November 07, 2012
Programming
2.1k
5
Share
Sublime Text 2 プラグイン開発 - ゼロからPackageControlへ登録まで
第0回 Sublime Text 2 勉強会 #st2jp
http://atnd.org/events/33305
blue planet
November 07, 2012
More Decks by blue planet
See All by blue planet
dapp 開発における big number の落とし穴 / Pitfalls of the big number in dapp development
blueplanet
0
120
join.me使用方法
blueplanet
0
130
rails cn
blueplanet
0
210
Other Decks in Programming
See All in Programming
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
180
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.7k
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
160
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
970
まかせられるPM・まかせられないPM / DevTech GUILD Meetup
yusukemukoyama
0
110
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
220
感情を設計する
ichimichi
5
1.3k
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
2.8k
Nuxt Server Components
wattanx
0
250
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
220
iOS機能開発のAI環境と起きた変化
ryunakayama
0
160
安いハードウェアでVulkan
fadis
1
920
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
340
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Scaling GitHub
holman
464
140k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
New Earth Scene 8
popppiees
2
2k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
53k
Navigating Weather and Climate Data
rabernat
0
160
It's Worth the Effort
3n
188
29k
Transcript
Sublime Text 2 プラグイン開発 θϩ͔Β1BDLBHF$POUSPMొ·Ͱ
None
http://gopollgo.com/what-is-your-primary-text-editor-for-ruby-slash-rails
質問
agenda Hello, world!!! 開発トピックス PackageControl 登録手順
None
None
None
None
None
None
おめでとうございます!!
agenda Hello, world!!! 開発トピックス PackageControl 登録手順
開発トピックス 基本概念 CommandPaletteに表示 設定ファイルの使い方 メニューの追加 Shellコマンドの実行
基本概念 http://www.sublimetext.com/docs/2/api_reference.html
Base Classes TextCommand WindowCommand ApplicationCommand EventListener
TextCommand WindowCommand EventListener
ApplicationCommand ドキュメント なし
CommandPaletteに表示
None
None
None
設定ファイル
None
None
None
Menu追加
None
None
[{ "caption": "Preferences", "mnemonic": "n", "id": "preferences", "children":[{ "caption": "Package
Settings", "mnemonic": "P", "id": "package-settings", "children":[{
"caption": "Octopress", "children": [{ "command": "open_file", "args": { "file": "${packages}/Octopress/
octopress.sublime-settings" }, "caption": "Settings â Default" }, { "command": "open_file", ...
Sheelコマンド実行
環境変数の値は Shellと異なる
.bash_profileや.zshrcは ロードされない
rake rake aborted! no such file to load -- bundler/setup
... subprocess.Popen(“rake ...”, ... shell=True)
解決方法は2つ
CommandLineから SublimeTextを起動する
2. 自分で必要なファイル をロード
exec_cmd =“source ~/.bash_profile ; rake ...”
agenda Hello, world!!! 開発トピックス PackageControl登録手順
手 順 http://wbond.net/sublime_packages/package_control/ package_developers#Submitting_a_Package 面倒くさい ・・・
前提 github / bitbucket で管理
3ステップ 1.package_control_channelをFork 2.自分のリポジトリURLを追加 3.Pull Request
1.package_control_channelをFork github: https://github.com/wbond/package_control_channel bitbucket • https://bitbucket.org/wbond/package_control_channel
2.自分のリポジトリURLを追加
None
3.Pull Request
補足 1.名称を別名称にしたい 2.OSを限定したい 3.新しいバージョンを出す方法
1.名称を別名称にしたい "https://github.com/maltize/sublime- text-2-ruby-tests", ...... "sublime-text-2-ruby-tests": "RubyTest",
1.名称を別名称にしたい
2.OSを限定したい リポジトリ直下に packages.json を作成
2.OSを限定したい { "schema_version": "1.2", "packages": [ { "name": "Octopress", "description":
"Execute comma...", "author": "blueplanet", "homepage": "https://github.com/bl...", "last_modified": "2012-11-03 16:31:00",
2.OSを限定したい "platforms": { "osx": [ { "version": "1.1.0", "url": "https://nodeload.github.com/
blueplanet/sublime-text-2-octopress/zipball/master" } ], "linux": [ ...
2.新しいバージョンを出す packages.json を使ってる場合
packages.json "platforms": { "osx": [ { "version": "1.1.0", "url": "https://nodeload.github.com/blueplanet/
sublime-text-2-octopress/zipball/master" } ], "linux": [ ... { "schema_version": "1.2", "packages": [ { "name": "Octopress", "description": "Execute comma...", "author": "blueplanet", "homepage": "https://github.com/bl...", "last_modified": "2012-11-03 16:31:00",
agenda Hello, world!!! 開発中トピックス PackageControl 登録手順
参考 How to Create a Sublime Text 2 Plugin (ӳޠ)
Submitting_a_Package (ӳޠ) sublime-text-2-ruby-tests (github)
Q & A
ご清聴有難う ございました