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
5
1.9k
Sublime Text 2 プラグイン開発 - ゼロからPackageControlへ登録まで
第0回 Sublime Text 2 勉強会 #st2jp
http://atnd.org/events/33305
blue planet
November 07, 2012
Tweet
Share
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
120
rails cn
blueplanet
0
200
Other Decks in Programming
See All in Programming
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
Click-free releases & the making of a CLI app
oheyadam
2
120
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
100
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
2
120
Creating a Free Video Ad Network on the Edge
mizoguchicoji
0
120
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
340
cmp.Or に感動した
otakakot
3
200
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
Remix on Hono on Cloudflare Workers
yusukebe
1
300
Arm移行タイムアタック
qnighy
0
330
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
120
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
427
64k
Become a Pro
speakerdeck
PRO
25
5k
Docker and Python
trallard
40
3.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Unsuck your backbone
ammeep
668
57k
How GitHub (no longer) Works
holman
310
140k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Writing Fast Ruby
sferik
627
61k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
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
ご清聴有難う ございました