とりあえず日記

2012-11-18

秀丸エディタでperlを実行するマクロを書いた

秀丸エディタperlを実行するマクロを書きました。

似たような秀丸マクロは本家のライブラリにありますが、ファイルに保存していないPerlスクリプトを実行できるのが特徴です。

思いついたコードをすぐ試せることを優先しています。


スクリーンショット

f:id:ohtorii:20121118182326g:image

スクリーンショット

f:id:ohtorii:20121118182315g:image


perlのバージョン

  • どのバージョンでも動くはずです。
  • バージョンの切り替えはマクロ中の $g_exe 変数を編集して下さい。

動作環境

秀丸エディタver8.20 beta14で動作を確認していますが、秀丸エディタver8以降なら動くと思います。


インストール

マクロ秀丸エディタスクリプトディレクトリへコピーして、ショートカットキーに割り当てて下さい。

ダウンロード

https://github.com/ohtorii/hidemaru_perl



秀丸スーパーライセンスパック [ダウンロード]

秀丸スーパーライセンスパック [ダウンロード]

Perlベストプラクティス

Perlベストプラクティス

2012-09-19 秀丸エディタでC#のコードを実行するマクロ

遅くなりましたが、秀丸エディタ本家のマクロライブラリへ

秀丸エディタC#のコードを実行するマクロ」を公開しました。

実行中の画面

f:id:ohtorii:20120603000152g:image

仕事でガンガン使ってから公開しているため変なバグは無いはず・・・多分。

何かあれば連絡下さい。

D*isukeさんのブログで紹介してもらいました。

(改善点の指摘ありがとうございます、ボチボチ実装していこうかと)

http://clockahead.blogspot.jp/2012/09/c_15.html


秀丸エディタマクロライブラリ(本家)

http://hide.maruo.co.jp/lib/macro/cmd_c_sharp.html

最新版の入手先(GitHub)

https://github.com/ohtorii/hidemaru_cs


秀丸スーパーライセンスパック [ダウンロード]

秀丸スーパーライセンスパック [ダウンロード]

2012-06-02

秀丸エディタでC#を実行するマクロ

秀丸エディタからC#を実行するマクロを書きました。

ちょっとしたコードの断片を実行するのが主な用途です。

巨大なソースコード群を実行するのは想定していません。


スクリーンショット

f:id:ohtorii:20120603000152g:image


ダウンロード

https://github.com/ohtorii/hidemaru_cs

左上の「ZIPボタン」を押すとダウンロードできます。


最後に

世の中には、C#/JavaScript/Ruby/Python/PHPなどをブラウザ上で実行できるwebサービスがありますが、まずはローカルで実行できるマクロを書きました。

2012-05-31

C言語のエスケープシーケンス ・アンエスケープシーケンスを行う秀丸マクロを書いた

C言語のエスケープシーケンス ・アンエスケープシーケンスを行う秀丸マクロを書いてみた。

(自分が使う範囲しか実装していないので不足あるかも。)

対応しているエスケープ

\    ←→ \\
"    ←→ \"
'    ←→ \'
タブ ←→ \t
改行 ←→ \n

ファイル名のエスケープシーケンス

f:id:ohtorii:20120422230830g:image

ファイル名のアンエスケープシーケンス

f:id:ohtorii:20120422230941g:image

タブ、改行のエスケープ

f:id:ohtorii:20120422230843g:image

タブ、改行のアンエスケープ

f:id:ohtorii:20120422230948g:image

普通の文章をC言語の文字列へ変換

f:id:ohtorii:20120422231002g:image

ダウンロード(github)

https://github.com/ohtorii/hidemaru_c_escape

左上の「ZIPボタン」を押すと(.zip)ファイルでダウンロードできます。

動作環境

秀丸エディタver8.20 beta14で動作を確認していますが、秀丸エディタver8以降なら動くと思います。

インストール

以下ファイルを秀丸エディタスクリプトディレクトリへコピーして、ショートカットキーに割り当てて下さい。

  • cmd_escape_sequence.mac
  • cmd_to_cstr.mac
  • cmd_unescape_sequence.mac

秀丸スーパーライセンスパック [ダウンロード]

秀丸スーパーライセンスパック [ダウンロード]

2012-04-14

秀丸エディタでPythonを実行するマクロ

秀丸エディタでPythonを実行するマクロを書きました。

特徴

ファイル(.py)に保存する必要がないので、思いついたときにPythonコードを実行することが出来ます。

もちろん、ファイルに保存してあっても動作します。

ダウンロード

https://github.com/ohtorii/hidemaru_python

動作環境

秀丸エディタver8.20 b14で動作を確認。

ver8以降なら動くはずです。

インストール方法

cmd_python.mac を秀丸マクロディレクトリへコピーしたらキーアサインして下さい。

あと、Pythonはインストールしておいて下さい。

スクリーンショット

その1

f:id:ohtorii:20120414161934g:image

その2

f:id:ohtorii:20120414161912g:image

その3

f:id:ohtorii:20120414161852g:image

その4

f:id:ohtorii:20120414161838g:image

Pythonバージョン

Python 2/3系で動作を確認しています。

Pythonのバージョン切り替えはマクロ冒頭の $g_exe 変数を編集して下さい。

//python.exe へのパス
$g_exe	= "python.exe";
//$g_exe	= "C:\\Python26\\python.exe";
//$g_exe	= "C:\\Python27\\python.exe";
//$g_exe	= "C:\\Python32\\python.exe";

マクロの内側

文字コード

Pythonは以下のように文字コードを明示する必要があります。

# -*- coding:utf8 -*-
print u"にほんご"

毎回記述するのは面倒なので秀丸マクロ側で補っています。

リダイレクト

あと、Pythonはリダイレクトすると下記エラーメッセージが出力されます。

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)

マクロ側で補っていること(文字コード+リダイレクト)

このエラーが出力されないように秀丸マクロ側で補っています。

何をやっているかというとコード先頭に定型処理を挿入しているだけです。

元のコード
print u"にほんご"
秀丸マクロで補った結果
# -*- coding:utf8 -*-
import sys, codecs
sys.stdout = codecs.getwriter('cp932')(sys.stdout)
del sys, codecs
print u"にほんご"

副作用としてはエラー出力時の行番号がずれることです。。。まあ正確さよりも利便性を優先しています。

文字コードの取得は秀丸マクロのプロパティから取得しています。(一応、中国語、韓国語も対応したつもりですが、動作検証は行っていません。)

まとめ


初めてのPython 第3版

初めてのPython 第3版

秀丸スーパーライセンスパック [ダウンロード]

秀丸スーパーライセンスパック [ダウンロード]