Macro/投稿/213

http://sakura.qp.land.to/?Macro%2F%C5%EA%B9%C6%2F213


Top > Macro > 投稿 > 213

選択文字列をEvernoteの新規ノートとして追加

  • ページ: Macro/投稿
  • 作者: usami-k?
  • カテゴリー: js
  • 投稿日: 2010-07-22 (木) 12:46:56

メッセージ

Evernoteアプリ同梱のENScript.exeが必要です。

fileSendToEvernote.js
  0
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
// 選択文字列をEvernoteの新規ノートとして追加するサクラエディタマクロ(JScript)
// 補足:Evernoteアプリ同梱のENScript.exeを使用している
// Author : usami-k
 
// ENScriptのパス
var enscript = "C:\\PROGRA~1\\Evernote\\Evernote3.5\\ENScript.exe"
 
// Evernoteの同期を行うかどうか
var config_SyncEvernote = false;
 
// 一時ファイルを削除するかどうか
var config_DeleteTempfile = false;
 
// 一時ファイル名
var config_TempfileName = "%TEMP%" + "\\" + getCurrentDateTimeString() + ".txt";
 
// 現在の時刻をYYYYMMDDhhmmss形式で返す
function getCurrentDateTimeString()
{
	var date = new Date;
	var string = "";
 
	string += date.getFullYear();
	string += ("0" + (date.getMonth() + 1)).slice(-2);
	string += ("0" + date.getDate()).slice(-2);
	string += ("0" + date.getHours()).slice(-2);
	string += ("0" + date.getMinutes()).slice(-2);
	string += ("0" + date.getSeconds()).slice(-2);
 
	return string;
}
 
// メイン処理
function main()
{
	// 実行結果の格納用
	var result;
 
	// Shellオブジェクト生成
	var shell = new ActiveXObject("WScript.Shell");
 
	// 一時ファイル名の変数展開
	var tempname = shell.ExpandEnvironmentStrings(config_TempfileName);
 
	// 選択文字列があるかどうかチェック
	if (!Editor.IsTextSelected())
	{
		shell.Popup("選択文字列がありません");
		return;
	}
 
	// 選択文字列(Shift_JIS)をUTF-8に変換してファイルに書き込み
	var stream = new ActiveXObject("ADODB.Stream");
	stream.Charset = "UTF-8";
	stream.Open();
	stream.WriteText(Editor.GetSelectedString());
	stream.SaveToFile(tempname);
	stream.Close();
 
	// ファイルをEvernoteに渡す
	result = shell.Run(enscript + " createNote /s " + tempname, 7, true);
	if (result != 0)
	{
		shell.Popup("エラー:Evernoteにノートを追加できませんでした(" + result + "");
		return;
	}
 
	// Evernote同期
	if (config_SyncEvernote == true)
	{
		result = shell.Run(enscript + " syncDatabase", 7, true);
		if (result != 0)
		{
			shell.Popup("エラー:Evernoteの同期に失敗しました(" + result + "");
			return;
		}
	}
 
	// ファイル削除
	if (config_DeleteTempfile == true)
	{
		var fso = new ActiveXObject("Scripting.FileSystemObject");
		fso.DeleteFile(tempname);
	}
 
	// 完了通知
	shell.Popup("Evernoteにメモを追加しました");
}
 
// メイン処理実行
main();
 


URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White

添付ファイル: fileSendToEvernote.js 186件 [詳細]

リロード   新規 編集 凍結 差分 添付 複製 名前変更   ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: 2010-07-22 (木) 12:51:27 (3036d)