狠狠撸

狠狠撸Share a Scribd company logo
CotEditor の
スクリプトの作り方
!
宇佐見 公輔
CotEditor の紹介
http://coteditor.github.io/
现在驳颈迟丑耻产で开発
CotEditor の主な特徴
? シンタックスカラーリング
? アウトラインメニュー
? 入力補完
? パワフルな検索と置換
? 日本語フレンドリー
CotEditor のスクリプト機能
スクリプト
? スクリプトメニューにスクリプト登録?実行
? 編集中のテキストを加工
? 外部のプログラムを起动
使える言語
? AppleScript
? Python
? Ruby
? Perl
? PHP
? UNIX Shell
具体例(サンプルから抜粋)
? 現在時刻を挿入
? 行頭?行末のスペースを削除
? HTMLタグや実体参照の挿入
? 全角カタカナと半角カタカナの変換
? 現在のファイルをSafariで開く
スクリプトの追加
スクリプトの配置
? スクリプトフォルダにファイルを置く
? 「スクリプトメニューを更新」を実行
スクリプト呼び出し
? ショートカットキー:ファイル名で指定
? 例:"Insert String.@e.scpt" → Command+E
入力の指定(AppleScript以外)
? スクリプトの冒頭に以下を記述
? # %%%{CotEditorXInput=xxxx}%%%
? None : 入力なし
? Selection : 選択文字列
? AllText : ドキュメントのすべての文字列
出力の指定(AppleScript以外)
? # %%%{CotEditorXOutput=xxxx}%%%
? Discard : 出力なし
? ReplaceSelection / ReplaceAllText
? InsertAfterSelection / AppendToAllText
? Pasteboard
例:
カーソル位置に日付出力
#!/usr/bin/env ruby -Ku	
#%%%{CotEditorXInput=None}%%%	
#%%%{CotEditorXOutput=InsertAfterSelection}%%%	
!
now = Time.now	
print now.strftime("%y-%m-%d")
AppleScriptの場合
? 詳細は省略(後述のマニュアルを参照)
? CotEditor の機能の一部を利用可能
? 検索、置換、半角全角変換、ひらカタ変換
? エンコーディング変換、Unicode正規化
? キャレットの移動、スクロール
ドキュメント类
CotEditor ヘルプ
スクリプトマニュアル
スクリプト作ったら
ぜひ公開してください
(Tweet したら捕捉されるかも?)

More Related Content

Similar to CotEditor Script (20)

贬别濒颈耻尘エンジンの设计と実装
贬别濒颈耻尘エンジンの设计と実装贬别濒颈耻尘エンジンの设计と実装
贬别濒颈耻尘エンジンの设计と実装
DADA246
?
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
?
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Kazumi IWANAGA
?
TypeScript x Bot Framework
TypeScript x Bot FrameworkTypeScript x Bot Framework
TypeScript x Bot Framework
Kazumi IWANAGA
?
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるAzure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Kazumi IWANAGA
?
【BS12】Visual Studio 2022 40分一本勝負!
【BS12】Visual Studio 2022 40分一本勝負!【BS12】Visual Studio 2022 40分一本勝負!
【BS12】Visual Studio 2022 40分一本勝負!
日本マイクロソフト株式会社
?
Scrutinizer CIでPHPも静的解析 #phpstudy
Scrutinizer CIでPHPも静的解析 #phpstudyScrutinizer CIでPHPも静的解析 #phpstudy
Scrutinizer CIでPHPも静的解析 #phpstudy
Hiraku Nakano
?
驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました
驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました
驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました
Takako Miyagawa
?
本番环境で使える実行コード记録机能
本番环境で使える実行コード记録机能本番环境で使える実行コード记録机能
本番环境で使える実行コード记録机能
mametter
?
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
Kazumi IWANAGA
?
地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ
地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ
地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ
Kazumi IWANAGA
?
改めて C# でできることを振り返る
改めて C# でできることを振り返る改めて C# でできることを振り返る
改めて C# でできることを振り返る
Yuta Matsumura
?
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
Akira Inoue
?
猫でも分かる Android WebKit
猫でも分かる Android WebKit猫でも分かる Android WebKit
猫でも分かる Android WebKit
Naruto TAKAHASHI
?
Qt5 の新機能 2012/12/15
Qt5 の新機能 2012/12/15Qt5 の新機能 2012/12/15
Qt5 の新機能 2012/12/15
Takumi Asaki
?
pf-1. Python,Google Colaboratory
pf-1. Python,Google Colaboratorypf-1. Python,Google Colaboratory
pf-1. Python,Google Colaboratory
kunihikokaneko1
?
Phpcon2001 in tokyo
Phpcon2001 in tokyoPhpcon2001 in tokyo
Phpcon2001 in tokyo
Hideo Kashioka
?
【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~
【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~
【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~
Developers Summit
?
OSC 2011 KeySnail
OSC 2011 KeySnailOSC 2011 KeySnail
OSC 2011 KeySnail
Masafumi Oyamada
?
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
日本マイクロソフト株式会社
?
贬别濒颈耻尘エンジンの设计と実装
贬别濒颈耻尘エンジンの设计と実装贬别濒颈耻尘エンジンの设计と実装
贬别濒颈耻尘エンジンの设计と実装
DADA246
?
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
?
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Kazumi IWANAGA
?
TypeScript x Bot Framework
TypeScript x Bot FrameworkTypeScript x Bot Framework
TypeScript x Bot Framework
Kazumi IWANAGA
?
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるAzure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Kazumi IWANAGA
?
Scrutinizer CIでPHPも静的解析 #phpstudy
Scrutinizer CIでPHPも静的解析 #phpstudyScrutinizer CIでPHPも静的解析 #phpstudy
Scrutinizer CIでPHPも静的解析 #phpstudy
Hiraku Nakano
?
驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました
驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました
驳颈迟を使って、レポジトリの一部抽出蹿辞谤办してみました
Takako Miyagawa
?
本番环境で使える実行コード记録机能
本番环境で使える実行コード记録机能本番环境で使える実行コード记録机能
本番环境で使える実行コード记録机能
mametter
?
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
Kazumi IWANAGA
?
地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ
地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ
地味だけど剧的に便利になる骋颈迟贬耻产リポジトリ设定あれこれ
Kazumi IWANAGA
?
改めて C# でできることを振り返る
改めて C# でできることを振り返る改めて C# でできることを振り返る
改めて C# でできることを振り返る
Yuta Matsumura
?
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
Akira Inoue
?
猫でも分かる Android WebKit
猫でも分かる Android WebKit猫でも分かる Android WebKit
猫でも分かる Android WebKit
Naruto TAKAHASHI
?
Qt5 の新機能 2012/12/15
Qt5 の新機能 2012/12/15Qt5 の新機能 2012/12/15
Qt5 の新機能 2012/12/15
Takumi Asaki
?
pf-1. Python,Google Colaboratory
pf-1. Python,Google Colaboratorypf-1. Python,Google Colaboratory
pf-1. Python,Google Colaboratory
kunihikokaneko1
?
【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~
【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~
【デブサミ福冈叠5】コードレビューの进め方~全员で行う品质の维持~
Developers Summit
?
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
日本マイクロソフト株式会社
?

More from Kosuke Usami (19)

SnapKit
SnapKitSnapKit
SnapKit
Kosuke Usami
?
View 系ライブラリに関する悩み
View 系ライブラリに関する悩みView 系ライブラリに関する悩み
View 系ライブラリに関する悩み
Kosuke Usami
?
Auto Layout Tips
Auto Layout TipsAuto Layout Tips
Auto Layout Tips
Kosuke Usami
?
RxSwift x APIKit
RxSwift x APIKitRxSwift x APIKit
RxSwift x APIKit
Kosuke Usami
?
RxSwift x Realm
RxSwift x RealmRxSwift x Realm
RxSwift x Realm
Kosuke Usami
?
RxSwift
RxSwiftRxSwift
RxSwift
Kosuke Usami
?
Eddystone Beacon
Eddystone BeaconEddystone Beacon
Eddystone Beacon
Kosuke Usami
?
Xamarin で Apple Watch アプリを作る
Xamarin で Apple Watch アプリを作るXamarin で Apple Watch アプリを作る
Xamarin で Apple Watch アプリを作る
Kosuke Usami
?
iBeacon Applications
iBeacon ApplicationsiBeacon Applications
iBeacon Applications
Kosuke Usami
?
APIKit
APIKitAPIKit
APIKit
Kosuke Usami
?
Swift Library
Swift LibrarySwift Library
Swift Library
Kosuke Usami
?
JXUG Conference 2 West
JXUG Conference 2 WestJXUG Conference 2 West
JXUG Conference 2 West
Kosuke Usami
?
すごい贬补蝉办别濒濒読书会
すごい贬补蝉办别濒濒読书会すごい贬补蝉办别濒濒読书会
すごい贬补蝉办别濒濒読书会
Kosuke Usami
?
Xamarin.iOS
Xamarin.iOSXamarin.iOS
Xamarin.iOS
Kosuke Usami
?
Affine Transform
Affine TransformAffine Transform
Affine Transform
Kosuke Usami
?
Semantic Versioning
Semantic VersioningSemantic Versioning
Semantic Versioning
Kosuke Usami
?
Mac アプリの Retina 対応
Mac アプリの Retina 対応Mac アプリの Retina 対応
Mac アプリの Retina 対応
Kosuke Usami
?
Mountain Lion Sharing Service
Mountain Lion Sharing ServiceMountain Lion Sharing Service
Mountain Lion Sharing Service
Kosuke Usami
?
OS X LionのVersions対応
OS X LionのVersions対応OS X LionのVersions対応
OS X LionのVersions対応
Kosuke Usami
?

CotEditor Script