MTSetVarTemplate タグを function のように使ってみる

自分なりに使いやすいと思う「MTML でビューとロジックを分ける方法」を考えてみました

これは Movable Type Advent Calendar 2015 の1日目の記事です。

さて、先週末に開催された MTDDC Meetup TOKYO 2015 に参加してきました。
かなりドキドキしながら野田さんのセッションを聞いたところ、確かに改善できる点が多々あるなと痛感。。。

やはりお前らのMTMLは間違っている! - Junnama Online:
http://junnama.alfasado.net/online/2015/11/mtml.html

とは言え、凹んでばかりもいられないので、すぐにでも実践できそうなアイデアを考えてみました。

続きを見る

gulp + Node.js 4.x で「terminated by signal SIGSEGV (Address boundary error)」なるエラーを回避した話

Node.js 4.2.1 にしたところエラーでタスクが止まるようになったので、対処法を調べてみました

備忘録なので、手短に(。-_-。)

El Capitan をクリーンインストールしたついでに Node.js v4.2.1 を導入することにしたのですが、エラーでコケるようになりました。ちなみに、下記環境での話です。

$ node -v
v4.2.1
$ npm -v
3.3.9

ここで任意のタスクを実行すると「グローバルとローカルのバージョンが違うよ」という警告とともに、エラーで処理が止まる状況。

$ gulp
Warning: gulp version mismatch:
Global gulp is 3.9.0
Local gulp is 3.5.6
'gulp' terminated by signal SIGSEGV (Address boundary error)

そこで下記を参考にしたところ、解決することができました。

Gulp not working on Node.js 4.0.x #1252:
https://github.com/gulpjs/gulp/issues/1252

続きを見る

Movable Type タグライブラリ for Dreamweaver 機能拡張のソースを公開してみた

思うところあって Github にリポジトリを作って共有することにしました

ここのところ良いネタがなく、おしゃべりが停滞気味ではありますが。。。 w

gabs.log|おしゃべり好きなWEB制作者のたわごと:
http://gabs.cc/blog/

こちらで公開していた ZXP ファイルのソースを Github のリポジトリで共有することにしました。
ご存知ない方へザックリ紹介すると、MT タグとモディファイアをコードヒントに表示できるようになる Dreamweaver 機能拡張です。

dreamseeker/MovableType-TagLibrary-for-DwExtension:
https://github.com/dreamseeker/MovableType-TagLibrary-for-DwExtension

続きを見る

イメージマップのコードを生成する HTML Imagemap Generetor を作ってみた

ブラウザ上でイメージマップ用の HTML ソースを生成するためのツールを作ってみました

そもそも採用する機会自体が減っているものの、定期的な更新作業でたまに必要になるイメージマップ。
これまでは Dreamweaver を起動して、作成していました。

ただ、使用頻度の低下を理由に Adobe Creative Cloud から illustrator / Photoshop だけの単体サブスクリプションに切り替えようかと悩んでいた時期でもあり、自分でツールを作ることにしました。

正月休みの空いた時間にひっそり公開していたのですが、自分と同じように「Dreamweaver をスポット的に利用している」という方がいらっしゃったので、改めて記事にまとめてみます。

続きを見る

Movable Type でサムネイル画像のサイズを取得する

Movable Type で、幅(または高さ)を指定して生成するサムネイル画像のサイズを取得する方法を考えてみました

Movable Type で幅(または高さ)を指定してサムネイル画像を生成する場合、もう一方のサイズは自動的に決まります。

これまで状況に応じて JavaScript や PHP で取得していたため、あまり気にしていなかったのですが。。。
テンプレートの内部処理で取得する必要に迫られ、改めて考えてみました。

続きを見る

blogID の異なる環境で user.js を共通利用する方法を考えてみた

面白そうな話題を見かけたので、自分ならどうするか考えてみました

Movable Type で管理画面をカスタマイズするにあたって、いつもお世話になっている MTAppjQuery。
その設定ファイルである user.js について2つの興味深い記事を見かけました。

環境によってblogIDが違う場合にuser.jsを共通利用するためのblogIDの持たせ方検討 | bit part blog:
http://bit-part.net/blog/2015/02/blogid.html

テスト環境と本番環境でブログIDが異なるときのuser.js(MTAppjQuery)の安全な書き方 | riatw.me:
http://riatw.me/blog/mtappjquery_problem.html

普段は mersy さんが書かれている各テンプレートで読み込む共通モジュールに blogID をセットして、それを利用するようにしているのですが、本番環境のみ新しいブログが追加され、blogID がズレてしまうこともままあります。データベースにアクセスできれば、本番環境の最新データを反映すれば良いものの、場合によりけり・・・ですよね。

そこで、blogID が変化してもテンプレートの修正なしで user.js を共通利用する方法について、考えみることにしました。

続きを見る

SublimeText の ElasticTabstops パッケージでインデントを揃える

ソースコードのインデントを揃えるにあたり、SublimeText に ElasticTabstops を導入することにしました

JavaScript をはじめ変数のインデントを揃える際に Sublime Alignment を利用していました。
とても便利なプラグインなのですが、あとから変数名を調整する度にショートカットを実行したり、手作業で修正するのを億劫に感じてしまうこともしばしば。。。

そんな折り、気になる話題を見かけました。

【翻訳】私がコーディングで垂直方向にそろえるインデントをとる理由 | POSTD: http://postd.cc/why-i-vertically-align-my-code-and-you-should-too/

ここで紹介されている Elastic Tabstops という手法がとても便利そうだったので、探してみたところ SublimeText 2/3 向けのパッケージを発見!

早速、使いはじめてみることにしました。

続きを見る

gulp-ruby-sass 1.0.0 から記述方法が変わるらしい

gulp-ruby-sass 1.0.0-alpha にアップデート後、タスクがエラーになったので調整してみました

先日、gulp-ruby-sass 1.0.0-alpha にアップデートしたところ、Sass のコンパイルがエラーでコケるようになりました。

半年前に書いたgulp-ruby-sass 0.6 にアップデートしたらコケた話のように、オプションの指定方法が変わったのかな?と思いつつ公式リポジトリを確認したところ、タスク自体の書式が変わるようです。

sindresorhus/gulp-ruby-sass at rw/1.0:
https://github.com/sindresorhus/gulp-ruby-sass/tree/rw/1.0

今後 1.0 未満のバージョンはサポートされないようですので、覚えておくとよさそうです。

続きを見る

シンボリックリンクを JSON で管理する Alfred Workflow を作ってみた

Alfred Workflow の処理を PHP で書けることを知り、勉強がてら自作してみました

以前書いた記事

node_modules をシンボリックリンクで管理する:
http://bunlog.d-s-b.jp/2014/06/09/managed-node_modules-directory/

のようにグローバルの node_modules をシンボリックリンクで参照する形で運用していたところ、いつの頃からか npm update でコケるようになりました。そこで、ローカルはホームディレクトリ直下において一括管理しつつ、さらに TypeScript の定義ファイルも共通利用しようと考えたものの、Gruntfile.js を調整するのが億劫に。。。 w

そんな折り、Alfred Workflow の処理を PHP で書けることを知り、興味本位で Workflow を自作してみることにしました。

続きを見る

gulp.spritesmith の対象ディレクトリを自動取得する

あらかじめ配列をセットし forEach でループさせていた処理を自動化できるよう、gulpfile.js を調整してみました

以前書いた記事

Grunt から gulp へ移行してみた:
http://bunlog.d-s-b.jp/2014/06/08/gulpjs-setting/

を読み返してみて、そういえば gulp.spritesmith の対象ディレクトリを自動取得できるようにしてたな・・・と思い出したので、記事にしてみます。

続きを見る