LoginSignup
10
8

More than 5 years have passed since last update.

CotEditorスクリプト開発入門 - コメントアウトマクロのチュートリアル

Last updated at Posted at 2016-04-29

この投稿では,選択した文字列を#でコメントアウトするスクリプトの開発を通じて,
CotEditor に Bash スクリプトのマクロを登録する方法を説明します.

Hello CotEditor Bash スクリプト

まずは,Bashスクリプトを登録するだけの手続きをやってみます.

  1. スクリプトを用意する

    $ cd ~/Library/Application\ Scripts/com.coteditor.CotEditor/
    $ touch hello.sh
    $ chmod +x hello.sh
    $ open -a /Applications/CotEditor.app hello.sh
    
  2. スクリプトを編集する

    #!/bin/sh
    echo "hello" 1>&2 # 標準エラーに出力
    
  3. スクリプトメニューに登録する

    Coteditorのメニューのヘルプに左となりの「S」のようなマークをクリック
    スクリーンショット 2016-04-29 11.40.39.png

  4. 「S → スクリプトメニューを更新」をクリック

  5. 実行する

    1. メニューのヘルプに左となりの「S」のようなマークをクリック スクリーンショット 2016-04-29 11.39.22.png
    2. hello をクリック
    3. コンソールにメッセージが出ます

      スクリーンショット 2016-08-07 14.47.15.png

編集中のファイルの絶対パスを受け取る

スクリプトの起動時に第一引数にこのスクリプトを起動したCotEditorが編集していたファイルの絶対パスが渡されます.ファイルとして保存されていない内容を編集中は何も渡されません.第一引数はスクリプト内からは$1で参照できます.

以下のように編集して実行すると,コンソールにファイル名が表示されます。

#!/bin/sh
echo "hello $1" 1>&2

スクリーンショット 2016-08-07 15.04.34.png

編集中のファイルの中身を受け取る

  1. スクリプトを用意する

    #!/bin/sh
    # %%%{CotEditorXInput=Selection}%%%
    
    while read LINE; do
      echo "${LINE}" 1>&2
    done
    
    exit 0
    
  2. 実行する

    Coteditor上で文字列を選択して選択してスクリプトを実行する。

    スクリーンショット 2016-08-07 15.13.41.png

    コンソールに選択した文字列が出てきます。

    スクリーンショット 2016-08-07 15.15.33.png

カーソル位置に文字列を返す

  1. スクリプトを用意する

    #!/ bin/sh
    # %%%{CotEditorXInput=Selection}%%%
    # %%%{CotEditorXOutput=ReplaceSelection}%%%
    
    while read LINE; do
      echo "# ${LINE}" # 標準出力へ
    done
    
    exit 0
    
  2. 同様に選択して実行する

    コメントアウトするcoteditorスクリプトができました。

    スクリーンショット 2016-08-07 15.20.52.png

10
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
8