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
100
join.me使用方法
blueplanet
0
100
rails cn
blueplanet
0
190
Other Decks in Programming
See All in Programming
30分でわかるつくって、壊して、直して学ぶ Kubernetes入門
aoi1
6
740
SPLから始める「データ構造」入門
o0h
PRO
6
690
Railsでクリーンアーキテクチャを考えてきた
suzukimar
5
1.1k
Get started with Compose Multiplatform!
ogi2ogi
0
680
チームの成長を促すためのスプリントレトロスペクティブの活用法 / How to use sprint retrospectives to promote team growth
mackey0225
4
540
イベント駆動アーキテクチャ導入の手引きと共通の落とし穴 / Guide to Implementing Event-Driven Architecture and Common Pitfalls
nrslib
12
3.9k
about #67401 //go:linkname
andpad
1
18k
2024/7/11発刊!開発生産性の教科書がざっとわかるスライド 2024/06/20 / A Brief Overview of the Textbook on Development Productivity
ma3tk
0
110
Secure Development with PHP
dbrumann
2
130
#KotlinFest 2024 : Kotlin sealed classを用いた、ユーザーターゲティングDSL(専用言語)と実環境で秒間1,000万評価を行う処理系の事例紹介
kazukima
0
390
自分好みの TS バンドラを Rust で作れる!Deno の内部ライブラリの活用 – Denoで変わるランタイムの景色 実践事例 Lunch LT
pizzacat83
4
500
C++23 スタックトレースライブラリ
faithandbrave
0
150
Featured
See All Featured
Clear Off the Table
cherdarchuk
87
320k
Faster Mobile Websites
deanohume
300
30k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
4 Signs Your Business is Dying
shpigford
177
21k
Web Components: a chance to create the future
zenorocha
307
41k
The Art of Programming - Codeland 2020
erikaheidi
46
12k
The Cult of Friendly URLs
andyhume
74
5.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
5
290
Fashionably flexible responsive web design (full day workshop)
malarkey
399
65k
Code Review Best Practice
trishagee
57
16k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
9k
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
ご清聴有難う ございました