HHKBのキーボードブリッジを購入しました

こんにちは。
株式会社フルーデンスの小巻です。

世の中の多くの開発者は、一日の大半をキーボードと一緒に過ごしていると思います。

デスクやマシン、ディスプレイなどの開発環境に、こだわりをもっている方も多いと思います。

私も開発環境には、かなりのこだわりをもっています。

生産性を高めるために、自然と追求するようになりました。

HHBKのキーボードを購入

私は、普段HHKB(Happy Hacking Keyboard Professional2 Type-S 英語配列)を使っています。

Macbook Proの内蔵キーボードでもよいのですが、やはり使い心地が良くて、HHKBを買ってからはずっとHHKBを使っています。

HHKBとの出会いは、また今度書きますが…

今回は、HHKBをMacbook Proの上にのせるためのキーボードブリッジを購入しましたので、どんな感じになるか写真を撮ってみました。

購入したキーボードブリッジ

こちらを購入しました。

http://www.pfu.fujitsu.com/direct/hhkb/hhkb-option/detail_pz-kbbrg.html

HHKBのキーボードブリッジ装着

装着しました!

入れ物

hhkb-keyboard-bridge-01

Macbook Pro 13

hhkb-keyboard-bridge-02

続きを読む →

1件のコメント

API連携のテストには “テキストを挿入” がおすすめ

こんにちは。
株式会社フルーデンスの小巻です。

FileMaker 16 より URL から挿入 が大きく改良されました。
cURLオプション を使えるようになった点がすごく大きいですね。

知らない方も多いようですが、バージョン15でも httpspost などは使えてたんですよね。

https://www.filemaker.com/help/15/fmp/ja/#page/FMP_Help%2Finsert-from-url.html

[URL から挿入] は、http、https、httppost、httpspost、ftp、ftps、および file プロトコルをサポートします。FileMaker Pro は、URL によってターゲットフィールドに指定されたリソースをダウンロードします。

ただ、外部サービスとの連携をする際には、デフォルトの機能ではできないことが多く、私は BaseElementsプラグイン を利用して、cURLコマンドを実行していました。

https://baseelementsplugin.zendesk.com/hc/en-us/articles/203843738-BE-HTTP-POST

BE_HTTP_POST ( url ; parameters { ; username ; password } )

Does a http POST function and returns the results. This uses the curl library so output will be similar to that. This is used in conjunction with the BE_HTTP_Set_Custom_Header function to set custom headers in advance and the BE_HTTP_Response_Code and BE_HTTP_Response_Headers functions to get the result values after the POST is complete.

話を戻しまして。

API連携をする際に、cURLオプションに色々と記述するわけですが、FileMakerの計算式で書くには、少ししんどいケースがあります。

続きを読む →

fmOAuth(0.0.2)に、OAuth認証(Google)に任意のアプリを利用できる機能を実装しています

こんにちは。
株式会社フルーデンスの小巻旭洋です。

タイトルからは少し分かりづらいかもしれませんが、同意画面を fmOAuth ではなく、任意のアプリに置き換えることができるように実装しています。

ということで、自分のGoogleアカウントでコンソールにログインし、アプリを作成してもらい、引数を渡していただければ利用できます。

自分のアプリを作成する方法は、別で記事を書きます。

fmOAuthの同意画面

デフォルトでは、以下のような同意画面です。

fmoauth-002-google-oauth-application1

任意のアプリの同意画面

コンソールでアプリを作成し、アプリの情報をスクリプト引数で渡すと、以下のような同意画面になります。

fmoauth-002-google-oauth-application2

スクリプト(画像)

fmoauth-002-google-oauth-application3

スクリプト(コード)

# 
# ──────────────────── Parameter
# 
# case fmOAuth
# 
If [ True // fmOAuth ] 
	テキストを挿入 [ 選択 ; $scopeList ; 「https://www.googleapis.com/auth/calendar https://www.googleapis.com/auth/drive https://mail.google.com/」 ] 
	変数を設定 [ $param ; 値: JSONSetElement (  "{}" ;  [ "scopeList" ; $scopeList ; JSONString ] ) ] 
End If
# 
# case Your Google App
# 
If [ False // Set CustomFunction from Your Google App Information ] 
	変数を設定 [ $appId ; 値: z_yourGoogleAppId ] 
	変数を設定 [ $secret ; 値: z_yourGoogleAppSecret ] 
	変数を設定 [ $redirect ; 値: z_yourGoogleAppRedirect ] 
	テキストを挿入 [ 選択 ; $scopeList ; 「https://www.googleapis.com/auth/calendar https://www.googleapis.com/auth/drive https://mail.google.com/」 ] 
	変数を設定 [ $param ; 値: JSONSetElement (  "{}" ;  [ "appId" ; $appId ; JSONString ] ;  [ "secret" ; $secret ; JSONString ] ;  [ "redirect" ; $redirect ; JSONString ] ;  [ "scopeList" ; $scopeList ; JSONString ] ) ] 
End If
# 
# ──────────────────── Perform Script
# 
スクリプト実行 [ 「0307.Get Refresh Token Google ( appId ; secret ; redirect ; scopeList )」 , ファイル: 「fmoauth」 ; 引数: $param ]
# 
# ──────────────────── Response Data
# 
If [ IsEmpty ( FilterValues ( JSONListKeys ( Get ( スクリプトの結果 ) ; "" ) ; "refresh_token" ) ) ] 
	# error
	フィールド設定 [ USER::googleRefreshToken ; Get ( スクリプトの結果 ) ] 
Else
	# ok
	フィールド設定 [ USER::googleRefreshToken ; JSONGetElement ( Get ( スクリプトの結果 ) ; "refresh_token" ) ] 
End If
#