それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

ターミナルから OSX のリマインダーに項目追加するコマンド

リマインダーをもっと手軽に使いたいので、一括登録とかやりたいんですよ。

add_reminder コマンド作った

//
//  main.m
//  add_reminder
//
//  Created by takuya_1st on 2013/09/16.
//  Copyright (c) 2013年 takuya_1st . All rights reserved.
//

#import <Foundation/Foundation.h>
#import <EventKit/EventKit.h>


int main(int argc, const char * argv[])
{
    @autoreleasepool {
        if (argc < 2) {
            printf("使い方: \n    %s 追加したいタスク名\n ", argv[0]);
            return 1;
        }
        EKEventStore *store;
        store = [[EKEventStore alloc ]initWithAccessToEntityTypes:EKEntityMaskReminder];
        EKCalendar *cal = [store defaultCalendarForNewReminders];
        EKReminder *re = [EKReminder reminderWithEventStore:store];
        re.title = [NSString stringWithCString:argv[1] encoding:NSUTF8StringEncoding];
        re.calendar = cal;
        NSError *err;
        BOOL ret ;
        ret = [store saveReminder:re commit:YES error:&err];
        if(ret){
            printf("タスク:%s  --->  追加完了\n", argv[1]);
        }else{
            NSLog(@"失敗");
        }
    }
    return 0;
}

使い方例

takuya@air: $ add_reminder 郵便局に受け取りに行く
タスク:郵便局に受け取りに行く  --->  追加完了

コマンドからTODOリスト作れたら便利ですよね。なんか思いついたらリマインダーに登録しておいて、あとでまとめてiPhone/iPadで参照できます。自動同期ってなんて便利なんだろう。

リマインダーが少しだけ便利に

Evenoteが多機能になりすぎてちょっと食傷気味なのでシンプルで直ぐ同期するリマインダーに白羽の矢を立てています。

コマンドからぱっぱと追加できたら、メモ帳でパパっと書いておいて順番決めて追加―とか出来ますよね。コレで暫く頑張ろうと思います。

ビルド方法。

  • main.m にコード貼り付けて
  • FoundationとEventKitに参照加えたら出来上がり

(xcode)