Todoist keyboard navigator 0.0.4 releaded

Written by uechoco 2019/1/20
この記事を読む時間:13くらい

だいぶ前にノリで作ったChrome拡張のTodoist keyboard navigatorですが、しばらくtodoistと疎遠になってたら、ページレイアウト(HTMLタグやCSS)が変わってしまって動かなくなっていました。
久しぶりにtodoist.comに復帰してキーボード操作ができなくなっていることにすぐに不便を覚え、先週と今週で0.0.3、0.0.4とリリースしました。

主な変更点は以下のとおりです。

  • 動作しなくなっていたすべてのショートカットキーを修正
  • お気に入りのプロジェクトやフィルターに切り替えるショートカットキーを追加
  • 現在表示中のタスクをすべて選択 / すべての選択を解除

今実装されているショートカットキーは、Gmailユーザーには馴染みのあるキーにしているつもりです。個人的には利便性めっちゃ上がっているので手放せない拡張機能の1つになってます。TodoistをPCでもお使いの方にはぜひともおすすめしたい。

[VisualStudio]DoxygenCommentsをVS2015 Communityに入れる

Written by uechoco 2017/1/29
[VisualStudio]DoxygenCommentsをVS2015 Communityに入れる はコメントを受け付けていません。
この記事を読む時間:148くらい

ちょっと前にWindows機を購入して、Macに慣れすぎている身としては使いづらさがまだ勝っています。

さて、表題の通り、Visual Studio Community 2015を使っているんですが、doxygenコメントを挿入する無料のプラグインを探していたら
DoxygenCommentsというのがありました。

https://marketplace.visualstudio.com/items?itemName=OleksandrManenko.DoxygenComments

公式にマーケットプレイスで提供されているプラグインは2013までしか対応しておらず、
Community 2015にインストールしようとすると入りません。
ソースコードは公開されていてMIT Licenseのようなのでいじればなんとかなるかなと思ってアクセスしてみました。

https://bitbucket.org/manenko/doxygencomments/wiki/Home

コミットの履歴を見てみると、どうやら2015対応の準備はしていたらしい。

ということで、ローカルにcloneし、slnファイルを開いて、ビルドをしたら、vsixファイルが吐き出されました。
PROJ_ROOT\Enhanced\bin\Debug\Enhanced.vsix
試しにダブルクリックすると、インストールには成功している模様。

今はC++のコードを書くものがないので実際の挙動を試してないですが、
プロパティでフォントとカラーの設定一覧にDoxygen Comment関連のものがあるのは確認しています。

cocos2d-x 2.2.6のmac版がOS X El Capitanでクラッシュする

Written by uechoco 2016/1/16
cocos2d-x 2.2.6のmac版がOS X El Capitanでクラッシュする はコメントを受け付けていません。
この記事を読む時間:221くらい

MacBook AirをEl Capitanにアップデートしたら、cocos2d-x 2.2.6のproj.macがクラッシュするようになりました。

  • cocos2d-x 2.2.6
  • proj.mac
  • OS X 10.11.2 (El Capitan)

デバッグコンソールに表示されるエラーメッセージは

  1. libc++abi.dylib: terminating with uncaught exception of type std::logic_error: basic_string::_S_construct NULL not valid

こんな感じでした。ちょっとだけステップ実行で追ってみたら、クラッシュ箇所はすぐに見つけられました。
CCConfiguration::gatherGPUInfo() の中の glGetString(GL_VENDOR)) が NULL を返していて、 std::string の初期化に失敗しているようでした。
試しに glGetError しても何も返ってきません。。。

ぐぐってみると同様の事例がフォーラムに上がっていました。

http://discuss.cocos2d-x.org/t/cocos2d-x-2-x-on-mac-osx-el-capitan/23035/6

解決策として「[glView lockOpenGLContext]; を cocos2d::CCApplication::sharedApplication()->run(); の前に呼ぶ」というのが書かれていましたが、lockしてるのにunlockしないのが気持ち悪くてもうちょっと調査しました。
手元の環境では lockOpenGLContext ではなく、prepareOpenGL を呼んでも解決しました。おそらくどちらのメソッドにも含まれている「[[self openGLContext] makeCurrentContext];」が大事なのかもしれません。NSOpenGLContextが予め正しく作られていないと動かなくなってしまったのでしょうか。。。

todoist.comをキー操作で便利に扱うchrome extensionを作りました。

Written by uechoco 2015/12/30
todoist.comをキー操作で便利に扱うchrome extensionを作りました。 はコメントを受け付けていません。
この記事を読む時間:148くらい

先日、タスク管理ツールをNozbeからtodoist というサイト/アプリに移行しました。

移行した理由を簡単に説明しておくと、NozbeはシンプルなGTDに忠実すぎて扱いづらかったのと値段がそこそこ高かったんですね。todoistはプロジェクトやタスクの階層が作れたりして扱いやすかったのと、Nozbeより値段がお手頃だったりします。

todoistに移行して管理上の不満はだいぶ減りましたが、この手のツールはキーボード操作がしょぼい。q でクイック作成 とか f で検索ボックスにフォーカスとか最低限のショートカットはあるんですが、最低限過ぎます。

Nozbeの前に使っていたRemember The Milkというサイトでは、キー操作でタスクの一括操作ができて結構それが気に入ってたんですが、NozbeやTodoistはあんまりキー操作に力を入れていない印象です。タスク管理ツールにはRemember The MilkやGmail並のキー操作インターフェースが欲しいのです。

そこでふと考えて、Chrome Extensionでそういったキー操作を付加できないものかと。
そして、できました。

Todoist keyboard navigator

Gmail風に、”g+i”とか”g+t”でInboxやTodayのフィルタに簡単に切り替えることが出来ます。
Chromeストアへの公開って結構さくっとできちゃうんですね。開発者認証のために5ドル払ったらすぐに公開できました。

ゆくゆくはRemember The MilkやGmailのようなリストビューの操作も付け加えたいと思っています。

[Eclipse]cppのSymbol ‘NULL’ could not be resolvedがクリーン&ビルドでも解決しない時に試したいこと

Written by uechoco 2015/10/27
[Eclipse]cppのSymbol ‘NULL’ could not be resolvedがクリーン&ビルドでも解決しない時に試したいこと はコメントを受け付けていません。
この記事を読む時間:144くらい

EclipseのProblemsにいつまでたってもエラーが残ってしまうことがあります。

cocos2d-xのようなプロダクトをAndroid向けにビルドするときにEclipseを使うことがあるんですが、コマンドラインでのビルドは通るのにEclipse上でのビルドが通らないなんてことはよくあります。

大抵の場合Cleanしてビルドし直すとエラーが消えることが多いです。ワークスペース内に複数のプロジェクトが存在していて、かつ依存関係がある場合は、依存されているプロジェクトから順番にビルドしなおしていきます。

ところがClean&Buildしてもエラーが消えない事例が発生しました。

「Symbol ‘NULL’ could not be resolved」

cpp/hのコードの中です。includeプリプロセッサを追っていけばNULLの定義があるし、そもそもコマンドラインでのビルドは通っているのでEclipseのせいだとはわかっているのに。。。

愚直にエラーメッセージをグーグル先生に入力したら、新しい解決方法を見つけました!

http://stackoverflow.com/a/11093675

IndexのRebuild

リンク先に記載してあるUIではなかったのですが、macのメニューバーから[Project]->[C/C++ Index]->[Rebuild]を実行したら、先ほどのエラーが消えました!!Eclipse CDTでのおまじないって覚えておけばいいですかね?

イクリプスぇ・・・・