5.1さらうどん

@giginetの技術ブログ。ゲーム開発、iOS開発、その他いろいろ

よく使うディレクトリに瞬時にautojumpするAlfred Workflow作った

autojumpが便利

autojumpというCUIユーティリティがめっちゃ便利で良く愛用しています。

zsh使いなら効率改善のため知っておきたいAUTOJUMP - Glide Note - グライドノート

autojumpはある文字列から、それを含む一番よく使うディレクトリに自動的に移動してくれる優れもの

例えば

$ j D

などと入力すると、~/Desktopなどに一発で移動できます。

GUIで使いたい

他にjoというコマンドがあって、それを使うとGUIディレクトリを開くこともできるけど、いちいち黒い画面を立ち上げなければならないので、上手い具合にGUIでも使いたかった。

Alfred Workflow作った

Alfred App - Productivity App for Mac OS X

Alfred2の有償版には"Workflow"という仕組みがあり、自分で検索用のスクリプトを作ることができます。 というわけで、Alfredからautojumpを叩く奴を作ってみた。

giginet/alfred-autojump-workflow

基本の使い方はAlfredを立ち上げて「J <キーワード>」と入力するだけでOK!

また、候補がみつからなかったときは、データベースの上位にあるディレクトリの一覧を表示してくれる。ディレクトリ名がうろ覚えでも簡単にアクセスできてベンリベンリ。

Workflow内にautojumpを含めているので、shellでautojumpを導入していなくても使えるはず・・・・・・。(未確認)

CUI版を使っている人は、同じデータベースを共有しているので、今まで学習させた頻度データがそのまま使えます。逆にWorkflowからautojumpしても、CUIで使うのと同様に利用頻度の更新も行われるため、CUI版を使わなくても利用できるはず。

導入方法

  1. Afred2をインストールする
  2. Alfred PowerPackを買う
  3. autojump.alfredworkflowをダウンロードする
  4. ダブルクリックでインストールする

どうぞご利用ください。

Alfred Workflowの作り方

初めて作ったので見よう見まねでやってみました。

基本はスクリプトを書いて、標準出力を順次受け渡していくだけ。 普通にShellスクリプトを書いて自由に実行できる。Python, Perl, Ruby, PHPなどのスクリプトを実行することもできるので好きな言語で書けます。 一覧表示をしたり、特殊な表示方法は、決まったフォーマットのXMLで出力することで整形してくれます。

公式ではPHPスクリプトが多くて、Alfred向けのフォーマットに出力してくれるライブラリが充実している感じ。要はXMLを吐けばいいので何でも書けます。僕はPythonで書いた。

autojump.alfredworkflowは、ScriptFilterで候補を表示し、Run Scriptでopenしてるだけの簡単な実装

f:id:gigi-net:20140626113240j:plain

資料はあんまり多くないですが、公式のフォーラムや、他の人が作ったWorkflowを参考にすれば、割と自由にいろいろ作れると思います。

Workflows - Alfred v2 Support

zenorocha/alfred-workflows

究極のレトロゲーコンソール『RetroN 5』ファーストインプレッション

f:id:gigi-net:20140610145614j:plain

究極のレトロゲーム互換機、『RetroN5』がついに届きました!プレオーダーしてから9ヶ月。長かった!

RetroN 5 |

試しに遊んでみたら、想像以上に良いハードウェアだったので、是非皆様にもこの素晴らしさをお伝えしたいと思ったので、記事にすることにしました。

RetroN 5とは

5スロット9機種互換レトロゲーム機 RetroN 5、ファミコン / NES / SFC / MD/ GBA でステートセーブ可能 - Engadget Japanese

超高機能なレトロゲーコンソールです。

主な特徴は以下の通り。

このように、コンセプト段階から機能があまりにも豊富で、期待度が高いガジェットでした。

購入まで

昨年の3月ぐらいに商品化が決まってから、Pre Order開始まで情報を追い続けていました。

昨年の9月になって、ようやっとAmazon.comでのPre Orderが開始したので速攻で予約。国外配送も可能とのこと。 価格は日本への送料を含め$98ほど。

Amazon.com: Hyperkin RetroN 5 Retro Video Gaming System - Gray: Video Games

当初は昨年11月に発送予定だったのですが、今年1月に伸び、さらに延期。

そのままずっと音沙汰がなかったのですが、先日になってようやっと配送されました。 当初、昨年の夏ローンチ予定だったのに待ち続けること1年以上!長かった。

開封の儀

注文してから延期を重ね9ヶ月、ようやっと昨日届きました。うおおお。

f:id:gigi-net:20140609085635j:plain

開けてみる。海外製なので箱が潰れてる。雑だ・・・・・・。

f:id:gigi-net:20140609183617j:plain

micro-USBや、HDMI、日本向けのACアダプタなども最初から同梱されているので、買ってすぐに使えます。低価格なのに嬉しい。

実際に遊んでみる

上から見た図。上(奥)から順番にMD(Genesis)、SFCNES(北米版ファミコン)、FCの4スロット。手前にはGB/GBAのスロットが。

f:id:gigi-net:20140609194627j:plain

マスターシステムで遊ぶには専用の端子が必要らしい。

f:id:gigi-net:20140609190704j:plain

とりあえず手持ちのソフト何本かで検証。

起動後のメニュー画面。設定でスキップさせることもできます。

f:id:gigi-net:20140610145932j:plain

まずはファミコン。個人的神ゲーの『ランパート』。

f:id:gigi-net:20140609191410j:plain

次にGBA。『チューチューロケット』。

f:id:gigi-net:20140609192205j:plain

一応メジャーなのも遊んでおくかー、と思って『ポケットモンスター サファイア』を起動。問題なく遊べますねー。素晴らしい。

f:id:gigi-net:20140609192340j:plain

最後にメガドライブ。『サンダーフォースⅣ』を起動。メガドライブだけ、やたらと端子が堅くて、刺すのも抜くのも一仕事。壊したのかと思ってビビる。

f:id:gigi-net:20140609192615j:plain

さすがにHDMI出力なのでどのゲームもめっちゃ綺麗。大画面で遊んでも全く問題ありません。

GBとSFCはパッと出てこなかったので検証していません。SFCのソフトどこかにあったはずなんだけどなぁー。

スターフォックス』や『スーパーマリオRPG』といった、特殊チップを積んだゲームにも、対応している様子。実機を持っていなかったので検証できなかったのですが、今度試してみます。

唯一残念な点として、5つあるスロットのうち、2ヶ所以上の端子にカートリッジがあると、エラーが出て起動しないこと。 複数さして置いてメニュー画面で選択できると嬉しかったんですが・・・・・・。

コントローラー

お次はコントローラーの話。

付属のワイヤレスBluetoothコントローラーがあるので、とりあえず遊ぶだけならすぐに遊べます。

f:id:gigi-net:20140609190202j:plain

しかし、このコントローラー、お世辞にもあんまり使いやすくなくて微妙な感じなのですが、外部のBluetoothコントローラーで自由に拡張可能らしい。

オマケにNESSFC、MDのコントローラーポートが計2つずつ。合計6つ。実機のコントローラーも使えます。

f:id:gigi-net:20140609185801j:plain

繋いでみた。ご存じ、日本版のFCはコントローラーの取り外しができないので、このポートはおそらくNES(北米版ファミコン)向けかと。さすがに手持ちにコントローラーがなかったので検証できず。

f:id:gigi-net:20140609192814j:plain

コントローラーは最大で5台まで接続可能で、SFCのマルチタップを使うようなゲームにも完全対応。これだけで『ボンバーマン』などの5人プレイが遊べます。

さらに凄いことに、全てのコントローラーを相互に利用可能。ファミコンのゲームをメガドラのコントローラーで遊んだり、自由自在。至れり尽くせりですね。

キーマッピングも自由自在で、プリセット登録まで対応。 余ったボタンにステートセーブや早送りなどのマクロを割り当てておくこともできます。

セーブデータとステートセーブ

素晴らしいと思ったのがセーブデータの仕様。まず、カートリッジにセーブデータがあるソフトを初回起動すると、自動的にセーブデータがSDカードにインポートされる。 さらにSDカードに保存したセーブデータとカートリッジのデータをいつでも自由に読み書きできます。

f:id:gigi-net:20140609192305j:plain

そして、全ゲームでステートセーブ/ロードが可能。スロットも複数箇所あって、前述の通り、マクロで一発呼び出し。

神設定だと思ったのが、自動ステートセーブ&ロード。設定しておくと、次回起動時に自動的に前回終了したゲームが読み込まれ、つづきから遊べます。もちろんソフトごとに保存される。

各種設定

設定もムダに充実。グラフィックの表示モードを切り替えたり、オーディオ周りの設定をしたり・・・・・・。

f:id:gigi-net:20140609195210j:plain

リージョンも設定できるので、海外製のソフトも遊べます。

その他の機能

まだちゃんと試せてないけど、チートコード機能。チートコードの定義ファイルをSDカードに突っ込んでおくと、ゲーム中、いつでもチートコードが呼び出せます。

RetroN 5 | Cheats

細かい機能だけど、スクリーンショットを撮ってSDカードに保存することも可能。

まとめ

想像以上に究極のコンソールでした。これは絶対に買い!

豊富な機能があるのはもちろん、全ての機能が全ハードで同じインターフェイスで扱える作り込みが素晴らしい。レトロゲー遊びたい人の決定版ですね。 価格を考えても非常にお買い得。

案の定、海外では売り切れ続出のようで、Amazon.comでは現在価格が$230ぐらいまで高騰してます。

Amazon.com: Buying Choices: Hyperkin RetroN 5 Retro Video Gaming System - Gray

買いたい方は、在庫が安定するまで待つしかないんじゃないかなあ・・・・・・。他に買えるところがあれば教えてください。

Markdownでスライドを作る決定版!「Deckset」が非常に良かった話

スライドを作りたい

photo by James Jordan

勉強会に出席するような意識の高い読者諸賢であれば、各々様々な方法でスライドを作っているかと思います。

僕は、markdownを使って楽にカッコイイスライドを作ろうと、今までいろいろ試行錯誤してきたのですが、どれも僕の要求を満たすような感じではなくて、結局Keynoteを使ってせっせとスライドを作っていました。

Decksetが凄く良い

Markdownからスライドショーを生成してくれる「Deckset」というMac用のアプリを2000円も出して買ってみたのですが、凄く良かったのでご紹介します。

https://itunes.apple.com/jp/app/deckset-turn-your-notes-into/id847496013?mt=12&uo=4&at=10l8JW&ct=hatenablog

Deckset for Mac: Turn your notes into beautiful presentations

作ってみた

このスライドはこんな感じのmarkdownからできてます。

deckset

Decksetはここが凄い

大抵のメインの機能はスライド内で述べてしまったのですが、他にも細かい機能が多数実装されてます。

  • markdownからスライド生成できる
  • 豊富なデザイン
  • Github Flavored Markdown(GFM)対応
  • 画像の設置位置を指定できる
  • 文字のサイズも変更できる
  • 一部HTMLタグが使える
  • 発表用メモが書ける
  • 動画も埋め込める
  • 4:3, 16:9のアス比に対応
  • PDFにはき出せる
  • 外部の好きなMarkdownエディタと連携できる

特に、画像を専用のシンタックスで制御できるところが満足度高い

今までやってきたこと

photo by mdalmuld

お金なんかかけなくてもタダでできるよ!と異を唱えたい方は多いと思うので、Decksetに辿り着くまで、僕が試してきた方法をご紹介します。

もっと良い方法があれば教えてください。

slideshow

Ruby製のスライド変換ツールであるslideshowなどを使って、HTMLに吐きだしていました。割と簡単にできて嬉しいし、結構カスタマイズ性も高かった。

slideshow-s9/slideshow

さらに、以下に紹介されているようにguardなんかを一緒に使ってあげると、markdown保存するだけでスライドができて便利でした。

Markdown × slideshow × guard で快適プレゼン資料作成 - Confront my ignorance

しかし、初期状態には良いテーマがなかったり、日本語を扱うと微妙になったり、テーマを増やすにはCSSを書くのが面倒だったり、画像の細かい位置調整がうまく行かなかったりと、使い勝手が悪いところも。

Pandoc + Reveal.js

Pandocを使ってMarkDownからreveal.js用のスライドを作ってしまおう。 - 亀岡的プログラマ日記

Pandoc - About pandoc

hakimel/reveal.js

Haskell製のドキュメント生成ツールPandocで、実はmarkdownやreStructuredTextからスライドショーを作ってくれる機能があります。

これを使っても良いけど、環境構築が面倒なことに加え、結局は前述のslideshowと同じような問題に陥る。

Glide.so

f:id:gigi-net:20140505214704j:plain

Gistにmarkdownを上げるだけでスライド化してくれる便利サービス、『Glide』。

Glide

これはかなり良い線まで行ってて愛用させて頂きました。

凄く便利だったのですが、デザインテンプレートが少ないのと、改ページの仕様が面倒なこと、いちいちオンラインに上げないといけないこと、さらに画像を別の所に保存しておく手間などが不満でした。

僕はGistにmarkdownを上げて、それをリポジトリとしてcloneして、そこに画像を突っ込むみたいな運用をしていましたが、高々スライド一つ作るだけで凄く面倒だったので、徐々にあまり使わなくなりました。

Keynote + カッコイイテンプレート

結局、Keynoteでいいやーという結論に落ち着く

Keynote

Keynote

  • Apple
  • 仕事効率化
  • 無料

Azusa」というKeynoteテンプレートが非常にカッコよく、とりあえずこれを使っておけば見た目が良くなるユニクロ装備ので、これでいいやーと言った結論に落ち着きました。

大体いい感じになるKeynoteテンプレート「Azusa」作った - MEMOGRAPHIX

オススメMarkdownエディタ

Markdownを編集する方法はいろいろあるのですが、Macでのエディタはいろいろ試した感じ無料で使える中では「LightPaper」というエディタが一番良かったです。

Simple, beautiful & free Markdown editor for passionate writers on Mac

有料の奴はもっと良い物があるかもしれませんが、フリーはこれが一番オススメ。これもGFMが使える。

まとめ

  • Deckset凄い
  • スライドはmarkdownで作った方が楽
  • いろいろ悩むぐらいなら2000円払ってDeckset買おう
  • Macでタダでmarkdownを書きたければ「LightPaper」がオススメ
  • 意味なく画像を入れるとスライドショーもブログも格好良くなる