脳みその中身

Inside of My Brain

脳みその中身 - Inside of My Brain

FileMaker でソート順フィールドを見せずにソートされた値一覧を作る方法(老眼モード問題)

老眼モード問題

FileMaker でソート順フィールドを見せずにソートされた値一覧を作る方法(応用)で触れられているように、FileMaker Go 14.0.1(現行)では以下の条件で値一覧が開いたときに頭の文字が切れる現象が確認されました。

※ 不具合が、文字サイズ変更設定した iOSデバイス上での FileMaker Go においてのみ再現することから、老眼モード問題 と通称することとします。

再現確認条件:

  • FileMaker Go v14.0.1(v12.0.8 / v13.0.9 では再現せず…つまり問題なし)
  • iOS 8.3(他バージョン未確認)
  • iOSデバイス > [設定] > [画面表示と明るさ] > [文字サイズを変更]で、中央より右にスライダーを設定
    ※ 下図は中央にスライダーがある状態

設定 > 画面表示と明るさ > 文字サイズを変更

問題の内容:値一覧を開いたときに、選択肢テキストの頭が切れる。
※ 下図は、スライダーを右いっぱいに設定した場合

対処方法 1)上述の [文字サイズを変更] のスライダーを中央より右にしない

対処方法 2 )以下の老眼モード対策ファイルを使用する

※ 当該問題発覚についての詳細経緯は、当該Facebookエントリ のコメント欄をご覧下さい。Thanks to 社本さん/若林さん 

老眼モード対策ファイルについて(社本さんより)

制御文字は環境によって豆腐が表示されたりしますし、Char ( 8236 ) = POP DIRECTIONAL FORMATTING (RLEやRLO等による文字方向に関する指示を元に戻す記号)を最後に付加しても文字方向が逆になったりして使えないです。

結局使えそうな文字は、Char ( 8203 ) = ZERO WIDTH SPACE (ゼロ幅空白)と Char ( 65279 ) = ZERO WIDTH NO-BREAK SPACE (ゼロ幅のノーブレークスペース(=BOM))くらいなので、数字を二進数に変えて 0 と 1 を Char ( 8203 ) と Char ( 65279 ) に置き換えるのが良さそうです。

ただ、Char ( 8203 ) も重ねる文字数によっては、FileMaker Go で文字が欠けて表示されることがありますので、最後に Char ( 8196 ) = THREE-PER-EM SPACE (三分の一文字幅の空白)を加えてやる工夫が必要だったりします。

(iOS の環境設定のアクセシビリティで文字を大きくするとポップアップメニューで頭の文字が欠けて表示される)

老眼モード対策ファイル(2015/09/10)

SortViaSortFld_20150910.fmp12

その後(2015/11/19 現在)

その後、iOS 9 + FMGo 14.04 の環境下で当該不具合は修正されていることを確認していますが、FileMaker(とApple)にとっては、unknown issue で、たまたまの結果として問題が表面化していないだけで、何らかのタイミングで再発するということもないとは言えませんので、社本さんの苦労の軌跡をエントリとして残しておきます。

返す返すも社本さんにはご苦労をおかけしました。

El Capitan に Homebrew をインストールした

例の、Rootless の影響があるのは予見されるなか、先日、ウチの Mac Pro に Yosemite をクリーンインストールした直後に、その上に、El Capitan をインストールしたわけだが…。
さて、調べてみるかと…

 

【Mac】EL CaptainにHomebrewをインストールする方法

【Mac】EL CaptainにHomebrewをインストールする方法

ん? /usr/local あるのかと確認。

9E81FA23-DA0C-4F64-9523-9E8FD7523DA8

ある。
じゃ、これか…。
52043B15-413B-49C9-8A55-A5325DA6389D
Terminal.app
XQuartz を Update
A4D8CB7D-1DE4-432C-AEAE-AB3B6450D763
言われた通り、relogin して完了。(2015/11/09 15:42:34)
※ ここ↓もちゃんとまとまってる

アニメGIFを見直す(GifGrabber)

GifGrabber – Mac操作をアニメGIFにするアプリ

え???と思ったあなたへ。そうです。Mac の操作を動画キャプチャーするのは、ScreenFlow 一択です。できることも多いし、分かりやすい。

今回は、ScreenFlow で作った動画を、アニメGIFに変換するのに良さ気なアプリはあるますのん?という話だったはず。

じゃあ、なんで「Mac操作を…」なんて言い出したのか。

Mac App Store で “GIF” で検索したらさ…、面白いおっさんのアイコンのアプリがあるじゃないの…と。

面白い眼鏡のおっさん

これが(その後試したいくつかのアプリと比べて)分かりやすく、シンプルだったので、ご紹介することにしたのです。

使い方は簡単。シンプルそのもの。 こゆときはネット上の他力本願。

↓ここあたり見てね。

使い方

使い方の説明(他力本願 サイト編)

使い方の説明(他力本願 動画編)

使い方の説明(GIFアニメで…)

どうやら、自力で説明するつもりはないらしい…w

せっかくなので、GifGrabber の使い方を、PicGIF Lite で作ったGIFアニメとか上げてみる。w(なんで PicGIF なのかとかは不問でヨロピク)

GifGrabber の使い方のアニメGIF

GifGrabber の使い方のアニメGIF

GifGrabber の出力から Facebook 投稿へ

ほんで面白いところは、[Get URL] を押すと…

Get URL

Gfycat.comにアップロードしてくれる。横に出るテキストエリアにアップロードした先のURLが出て、さっきまで [Get URL] だったボタンが [Copy URL] に変わる。

Copy URL

※ 最長30秒までしか Gfycat には投稿できないらしい

ネタ元:MacでGifアニメーションをキャプチャする「GifGrabber」が使いやすくておすすめ! | vdeep

勘違いした投稿方法

これを Facebook の投稿にペーストすればいいのね…と思ったら勘違い。

単純に取れる Gfycat.comのURL をペーストした場合

単純に取れる Gfycat.comのURL をペーストした場合

↑こんな感じ。ただの リンク共有な感じ。

これをクリックして飛ぶURLは、Gfycat.com内の当該ページのURLであって、アニメGIFそのもののURLではないというのがミソ。

正しい投稿方法

まあ、とりあえず、飛んでみることにする。

Gfycat – jiffier gifs through HTML5 Video Conversion. Fast, simple gif hosting without size limits.

GifGrabber で簡単に取得できるURL例

GifGrabber で簡単に取得できるURLに飛んだ場合の画面表示例である。

右上の GIF というオレンジのアイコンの下に、同じくオレンジのチェーンのアイコンがある。これをクリックすると…

チェーンアイコンをクリックすると出る画像

チェーンアイコンをクリックするとこれが出る

実は、上から2番目の [GIF]のところにあるURLが、アニメGIF本体のURL。

ケツが .gif で終わっている。

コイツをコピーして、Facebook投稿に貼り付けると…

SUCCESS!

成功である。

ニュースフィードにインラインで自動再生される。

まとめ

何のアプリを使おうが、どののサーバにアップロードしようが、ケツが .gif で終わるような『アニメGIFファイル自体のURL』を、Facebookの投稿の際に貼り付けることで、思った結果が得られる!


関連エントリー

アニメGIFを見直す(EZGIF.COM)

Facebook のニュースフィードでアニメGIFが自動再生されるようになってから半年近く過ぎたねと。Facebook 投稿の手段として、案外アニメGIF使えるんじゃないの?と。

じゃあ、実際にどんなアプリでどんな風にするのが賢いの?ということで、今日一日潰して分かったことをまとめときます。

僕の都合としては…

ScreenFlow を使って、Mac や iOS デバイス(iPhone/iPad)の「◯◯のやり方」の動画を撮って作った動画があって、それをアニメGIFにコンバートできればいいかな…と思ってググり始めたの。

昔から、Webで動画アップロードしてそれをアニメGIFに変換するようなWebサイトあったじゃん?そゆのでOKだと思ったわけさ。

すると、軒並み潰れてるのね。そか、やっぱりアニGIFでもねーだろいまさら…な風潮だったのね。ま、僕だって、今回まで10年以上アニGIFに興味なかったし。

EZGIF.COM

EZGIF.COM

EZGIF.COM

そんなこんなな中、10前後のソレ系サイトをチェックしたところ…まあまあ本日現在で一番使えるアニメGIFいじるサイトは、EZGIF.COM でケテーイ!

元々のニーズの動画ファイルをアニメGIFにコンバートってのももちろん、

  • GIF Maker (Make animated GIF from still frames)
  • Video to GIF
  • GIF Resize
  • FIF Crop (Crop selection of image)
  • GIF optimizer (Reduce Animation size)
  • GIF Effects
    • Color filters
    • Reverse GIF
    • Adjust speed
    • Add text to GIF
    • Add overlay
  • GIF Split
  • PNG Optimizer

となんでもできる。

注意点としては…width: 480px, height: 360px の Rectangle 内に fit するように縮小されるっぽいというところ。

続いて、じゃあ、Mac のデスクトップアプリはどうなのよと。


 

関連エントリー

アニメGIFを見直す(前段)

もう20年も前から、アニメGIF(GIFアニメ、アニGIF)は存在するが、Fecebook が今年(2015)5月に、ニュースフィードでのアニメGIFの自動再生に対応した。

Facebook、GIFのサポートを開始―ウェブ上のGIFがニュースフィードで再生される | TechCrunch Japan

animated GIF

世の中は動画が溢れている。いまさらアニメGIFでもなかろう…という向きもいらしゃるだろう。

ところが、こと Facebook のような SNS との連携となると別なのである。

アニメGIFとSNSとは独特の相性の良さがある。

SNS で気軽に他人に見てもらうには、分かりやすくそして、極力 閲覧者の時間を奪わないことが重要である。zf

一般に、画像は文章に比べて分かりやすく動画は、その両方と比較してさらに分かりやすい。しかし、再生時間分の閲覧者の時間を奪う動画は、気軽ではない

事実 Fecebook 上で最もいいね!が集まる傾向にあるのは、動画よりも写真…つまり画像である。

見る側の都合を意識して、分かりやすく、閲覧者の時間を奪わない方向での努力を考えるなら、アニメGIFは面白い。

アニメGIFは再生時間が短い(長くても 20秒程度)

Vine などの「最長6秒の動画」という手法もこのあたりの事情。

じゃあ、Vine的な短い動画 でいいジャマイカと…。(iPhone App あるし)

いやそれでもアニメGIFまわりを調べておきたかったの!

まあ、まとめると…

見る側の都合を考えると、Facebook の投稿には、アニメGIFという手段が生きるのかも…という気がしたよ…という話。このエントリは、前段であり、実際には、MacでアニメGIF扱うアプリはどれがいいかとか、Webサービスとかは別記事で。


 

関連エントリー

FileMaker でソート順フィールドを見せずにソートされた値一覧を作る方法(応用)

はじめに

「FileMaker でソート順フィールドを見せずにソートされた値一覧を作る方法(基本)」というエントリで言及した手法には、ソートされるレコード数が100を越えないこと…という制限があります。
※ テキストフィールドの索引は最初の100文字という FileMaker の仕様上の制限に因ります。

その対策案としてこのエントリをアップします。

なお、「なにがうれしいのか?」「目的は?」といったことについては、「FileMaker でソート順フィールドを見せずにソートされた値一覧を作る方法(基本)」をご覧下さい。

基本の考え方

上記の基本編での解法の考え方は…

(値一覧に表示される)ソートしたいフィールドの頭に、「見えない(けれど存在する)文字」を(ソート順フィールドの値で指定された個数分)つけるように設定されたフィールドを、値一覧設定の [2番目のフィールド]として指定し、([2番目のフィールドの値のみを表示] にチェックをつけて)2番目のフィールドでソートしてやることで、任意のソート順フィールドの値で指定された順番で、値一覧をソート表示する

…というものです。

値一覧の設定

問題点の確認

ただし、この方法ですと、ソートしたいレコード数が100を越えると…
イコール、ソート順フィールドで指定されている値が100を越えると…
つまり、「見えない(けれど存在する)文字」の数が100を越えると…

「テキストフィールドの索引は最初の100文字まで」という FileMaker の仕様に因って、破綻してしまいます。

解決法の理屈

そこで、最初の100文字を使って、より多くのレコード数に対応するために…

最初の100文字を2進数にしてしまうことで解決します。

二進法では通常 0 と 1 という2種類の文字で表されますが、0/1の代わりに別のふたつの文字を使って代用します。

使える文字の条件は…

  • 見えない文字であること
  • 文字コード(Unicode)的に(見える)通常の文字より大きなコードであること
  • (二進法の)0 の代わりに使われる文字は、1 の代わりに使われる文字よりUnicode 的に小さい値で表される文字であること

ここいらあたりを、社本さん(Facebook) と話していたら、社本さんがデモファイルのUpdateまでしてくれました。

了承を頂いたのでコチラにアップしておきます。

SortViaSortFld_20151117.fmp12
(社本氏によるデモファイル最新版)

社本氏のデモファイルの説明

すでに基本編で使っている「見えない文字」は 通常 BOM と呼ばれる [ZERO WIDTH NO-BREAK SPACE] というもので、Unicode の 65,279番目の文字なので、FileMaker 的には… Char (65279) と表すことができます。

デモファイルでは、[ZERO WIDTH NO-BREAK SPACE] を 1 の代わりにし、 [ZERO WIDTH SPACE](Char (8203))を 0 の代わりにした…二進法表現を、ソートしたいフィールドの値の頭にくっつけています。

このことにより、索引の制限文字数100文字を使って、2の100乗(1.2676506e+30)つまり論理的には、126穰7650秭6002垓2822京9401兆4967億320万5375 までを表すことが可能となりますから、実使用上、無制限と同じような話になります。

ここいらのことをデモファイルでは、ZeroWidthCharAsBinary というカスタム関数に集約しているので、自分のソリューションに簡単に転用できます。

追記 (2015/11/19 10:43:32)

※ デモファイルは、後述する老眼モード問題に鑑み、30桁の二進数表現になっています。(「10億まで扱えたら充分だよね?」社本氏談)
詳しくは、カスタム関数 ZeroWidthCharAsBinary の社本さんによるコメントおよび当ブログ内記事『老眼モード問題』をご覧下さい。

ZeroWidthCharAsBinary

 

FileMaker Go v14.0.1 においての問題(老眼モード問題)

追記(2015/06/17 23:21:52)

FileMaker Go 14.0.1(現行)では以下の条件で値一覧が開いたときに頭の文字が切れる現象が確認されました。

追記(2015/11/19 09:53:48)

その後、iOS 9 + FMGo 14.04 の環境で、当該不具合は修正されていることを確認していますが、FileMaker(とApple)にとっては、unknown issue であることも充分考えられるため、何らかのタイミングで再発することもあり得ますので、別エントリ『老眼モード問題』としてメモしておきます。

 

BiND for WebLIFE というアプリ

BiND for WebLIFE(長いので、以後、BiND と呼ぶ)というアプリケーションがある。Mac 版 Windows 版 の両方がリリースされている。
バージョンは版を重ね、2014/10/02 現在 BiND for WebLIFE 7 が販売されている。

いわゆる、Webサイト作成ツールである。
HTML だの CSS だのがわからなくても、(用意されているテンプレートによって)ある程度そこそこのサイトが手軽に作成できる。

サイトコンテンツ…つまり、伝えたいことはあるもののサイトを作成するのに必要とされる小難しい HTML/CSS/FTP などの知識がない…という方にピッタリのツールである。

かくいう僕も、(予算的な問題から)それで事足りる場合のみ、顧問先に BiND を勧めることもある。

コンセプトは良いのよ。
目の付け所はね。
しかし、コンセプトモデルの域を脱していない。

(バージョンアップに伴う良化は一部認められるものの、予期せぬデアクティベーション問題や、コピペが不安定・マウスでの選択中にエリア外にマウスがでるだけで選択が解除される…などの致命的な問題は改善が見られない。

BiND の悪口を言うのももういい加減飽きたので、かつて、僕が Facebook に投稿した BiND 関連のポスト画像の一部(2012 – 2013年分)を以下にまとめる。
※ 各々の画像のクリックで、Facebook の 当該ポストが開く。
※ 今年になってからの分は事情により割愛。


 

2012/04/18 投稿

2012/04/18

 


Continue reading

wkpdf on Mavericks

ココで言及したように、wkpdf を使って、指定した URL のレンダリングイメージを出力させるっつーのをよく使うですよ。

んで、今更ながらメインマシンを Mavericks にアップデートしたわけ。
したっけ、使えなくなったん。

結論として、色々と複合的な問題が介在したわけですが、根源的な問題は…

Cannot load RubyCocoa library
wkpdf requires that RubyCocoa is installed, which is shipped by default since
Mac OS X 10.5. If you use Mac OS X 10.4, you have to install RubyCocoa
yourself from http://rubycocoa.sourceforge.net/HomePage

という話。

RubyCocoa library が読めねーよ!ボケ!入ってないんじゃね?

とおっしゃってるので、調べてみた。

…でみつけたページがコレ↓
MacOSXでwkpdfを使ってみた | IT Office Nishimiyahara
「wkpdfはsystemのrubyを使え」っちうことだ!と断言してます。

ただこれは、Mavericks な情報ではないので、もーちと探すと…

Support for Mac OS 10.9 Mavericks · Issue #45 · plessl/wkpdf · GitHub

↓ここから Mavericks 用の RubyCocoa 落としてきてやってみたっつー人がいる。
RubyCocoa – Browse /RubyCocoa/1.1.0 at SourceForge.net
結果 NGだと。

すると、おっさんその1が…

  1. Install RubyCocoa
  2. sudo /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/gem install wkpdf
  3. Edit the first line of /Library/Ruby/Gems/1.8/gems/wkpdf-0.6.11-universal-darwin/bin/wkpdf to point to/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  4. Use /Library/Ruby/Gems/1.8/gems/wkpdf-0.6.11-universal-darwin/bin/wkpdf

という解決策を提示して「うまくいった!」というヤツも出てきた。
でもさ、Mavericks の システムの Ruby のバージョンって…

$ ruby -v
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13]

なんだよなー…まいっか。…で、動いた。

直接 /Library/Ruby/Gems/1.8/gems/wkpdf-0.6.11-universal-darwin/bin/wkpdf を指定して使う分にはかえって良いかも。
wkpdf だけ フルパスで明示的にシステムの 1.8 使うっちうことで。

/Library/Ruby/Gems/1.8/gems/wkpdf-0.6.11-universal-darwin/bin/wkpdf --source 'http://foo.com/' --output '/private/var/folders/hs/w0gjf27167q2y39xls1m8nsm0000gn/T/S10/140801_111827_bison.pdf'

とかクソ長くなるけど、スクリプトに埋めるからこれでいいや!

参考URL

ときには また逢う約束もせずに情報にサヨナラしてみよう

情報の豪雨

スゴい勢いで降る雨を “rain cats and dogs” というらしいが、目一杯蛇口を捻ったシャワーのよう恐ろしい量の情報が降り注いでいる。
八月の夕立ならすぐに止むだろうし、都会のゲリラ豪雨のなら電車で2ー3駅も移動すれば逃れることができるだろうが、そうはいかない。
友人とよく “wikiの旅” なんてふざけるけれど、調べ物で WikiPedia に行くと、芋づる式の知識欲に身体が乗っ取られる。

検索の為の記憶

「あとで必要になるかもしれない」「有益な情報満載のサイトだから」そういって『お気に入りにブックマーク』というのを覚えたのは90年代初頭。
Evernote や はてな を使って蓄積したり整理したり。
強迫観念的だね。
「忘れちゃ大変!」とか思うのね。ググって1発でみつけたページなのに。
そのうち「なくなっちゃ大変!」とページのキャッシュコピーをストアし出した。
必要になったときに検索できるように。
便利な手段を乗り換え乗り換えしながら。
今度は「どこに何を記憶させたか」を記憶させないと。

そもそも本物の脳みそって

でもね。
忘れるじゃない?
本物の脳みそは。

そうコンピュータだのITだのって人間の脳みそに見立てた機械なんだからさ。
本物は忘れる。
いや、待ってくれ。コンピュータは、忘れないから素晴らしい?
コンピュータって何するもの?
記憶?思考?発想?作業?仕事?
これらの中で、人間がするエリアのもので代表的なのは…発想、そして思考。

ねえ、ものを考えるのにどれだけの材料が必要?

システムの本当の役割

僕らは、コンピュータに日頃僕らがしている仕事をさせるためにコーディングする。
上手にサルに仕事をさせられるように仕込む。
でも、それってそれ自体には価値はないよね?
それのお陰で浮いた時間で人間が脳みそを使って何かを生み出さないと。
できあがったシステムがあるから、ふだんと違う景色で情報を見ることができて、ドラスティックなアイデアが湧いた…とかまでいってはじめて意味がある。

何が言いたいのかというと…
本末転倒じゃないのかな?ってこと。
思考や発想の為の脳みその空き領域を、記憶し続けるという作業のために逼迫されてしまうことってさ。
やっぱ本末転倒な感じがする。

フローの変更

「これって大事かも」「あとできっと必要になる気がする」
そんなとき、たまには、サヨナラしてみよう。
名前もメアドやケータイも聞かないで。
もう意図的に「サヨナラする」というプロセスを明示的に入れていかないと、僕ら、もう末期なのかもしれない。

そう。思ったんだ。
知りたがりも大概にしろ!って。

やってみたら分かったこと(結論)

だから少し前からそうしてみている。
メモらなきゃ!って思ったとき…その多くの場合、いったんサヨナラを呟いて⌘W。

そしてほんの短い間でわかったこと。
・いったん忘れても良い情報が存在する(縁があればまた出会える)
・むしろ忘れるべき情報が存在する(検討段階では必要な情報は、フェーズが変わって 実行段階になると不要どころか邪魔になる)
・情報を記憶蓄積しているつもりで忘れてたってこと。(Evernoteには溜まっていくけど脳には出会った記憶すら残らない)
・覚えるためには、それ相応の手間と時間が必要だってこと。(手間なくメモると間違いなく忘れる)
・歳をとると「覚えるための手間や時間」の効率がやたら悪くなるってこと。
・逆に歳をとって良かったのは、たいがいの情報「は脳内で予見できるもの」と大差がないってこと。
・その情報がなければこんな発想や思考出来なかった!なんて情報は記憶しようとしなくても覚えているということ(すこぶる効率が良い)
・そしてその情報によって脳内で起きた化学反応こそが大切であり、その情報それ自体には何の価値もないこと。
・メモるなら、自分の脳内の化学反応の方