siropスマートフォン用の表示で見るsirop2016-10-29外国人向けに書道体験させるときメモ何度か大学で外国人向けに書道を教える機会があったので役に立ちそうなことをメモしておく。教室の状況9月入学で10月から授業を取り始めた主に外国人留学生を主体とするクラス。講義は英語で行われる。日本人学生も聴講可能であるが、似たテーマで日本語で行われるクラスもあるので日本人学生の数は少ない(1クラス約25人中3-4人程度)お話ネタ単に書道体験というだけではなく日本の書道について少し喋った。ひらがなについて外国人でもひらがなくらいは一応しってるかなーくらいの気持ちで興味を持ってもらえるんじゃないかと思ってテーマとして選定した。読むことを伝えるとみんな混乱して教室がざわつくそばの写真を移してどういうことなのか説明しますという変体仮名というものを登場させる「変体」を強調していうと、ウケが良いHentaiは割りとどこの国の人でも知ってるっぽい感じがしたHentaiのtaiは「態」であって字が違うよって教える「か」の変体仮名を10種類ほど登場させるみんなをビビらせるといいかもしれない(こんなに覚える必要があるのか、的な不安)直後に変体仮名の方はもう誰も使ってないのでとりあえず覚えなくていいし日本人も誰も覚えてないって言うひらがなの歴史について語る昔は日本には文字がなかったこと(厳密にはあったが面倒なので割愛)中国から漢字が輸入されたとき、日本語の音を漢字に割り当てたことしかし、漢字では表せない言葉があった→音だけ借用する万葉仮名を作り出したこと万葉仮名は漢字で画数多いし書きにくいので書きやすいようにくずし字を使用するようになったこともう一度「か」の変体仮名のスライドを見せる字母付きで見せる漢字は同じ音の物がいっぱいあるからたくさん同じ音のひらがなができたことを語る明治までは普通に使われていたけど近代化のときに使われなくなって、現在の「か」だけが残った道具の扱い方いきなり書けと言われても困ると思うので道具の準備の仕方などを説明した。事前課題として「好きな日本語の言葉」を挙げてもらってそれを体験のときに書くような漢字にした。最終的に色紙に書いて各自持ち帰るようなかんじ。説明するときに便利な言葉を羅列しておく。間違っていると思うが通じればあまり問題ない。LionからYosemiteにあげbrewが動かなくなったので直す今頃になって会社PCのOSを最新にした。会社用の設定をしなくてはいけなくて面倒だったけど、MountainLionだと動かないアプリが存在したためしょうがないからYosemiteにアップグレードした。めでたく目的のアプリは動くようになったわけだが何かと色々と調子が悪い。そんな中でもbrewは非常に重要なコマンドであるにもかかわらず、Yosemitizeしたら動かなくなってしまった。情報が散らばっていたのでまとめておく。キーワードに適当な英字を設定する(全角版も登録しておけばIMEを気にせず操作できる)。すればアドレスバーにそのキーワードを打ってエンターすればフォーカスが戻ってくれる。Chromeの操作をVi風にしていると、どうしても他の操作も極力キーボードのみで操作したくなる。拡張(Vimium)https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb操作をVi風にする。jで下方向、kで上方向へ移動する、みたいな。*1上記はツールの導入で何とかなったが、割と最近まで表題の問題が残っていた。アドレスバーにフォーカスがある状態というのは以下の様な状態のこと。アドレスバーにフォーカスを移せるが、意図せず用もないのにアドレスバーへ行ってしまう事がある。ページにフォーカスが戻らないと上で紹介したvichromeは使えなくなってしまう。何とかして元に戻さなくてはならないが、昔は以下の様な対応をしていた。F(ページ内検索)を実行するヤフー知恵袋かどこかで紹介されていた方法だった気がするどのページにもありそうな文字(aとか)を適当に入力するとページの方にフォーカスが戻っていくただし、ページに該当箇所がないと依然アドレスバーにフォーカスのままもちろんヒットした場所にスクロールされてしまうので長いページを見ていた時とかイライラするしかし、以下superuserの回答を実践していらいだいぶ快適になった。表示→検索エンジンの管理から追加できるこんなかんじになる。*1:会社でこの事を発表したがヴィマーは少なく共感を得られなかったためここで改めて発表した。OAuthScalaのプログラムでOAuthを利用してTwitterのユーザー情報なんかを利用して色々できたらいいなと思った。Frameworkとかに依存したScala向けのライブラリはあるようだった。波打際のブログさんみたいな。今回は、フレームワーク非依存にOAuthを利用したかった。Scalaではみつからなかったが、Scribe-javaというJava製のライブラリに巡りあった。JavaOAuth1.0も2.0も対応していて、Andoridでも使える。スレッドセーフな作りになっている安心な逸品。使い方を少しメモしておく。"1.3.2"を追加して終わり。使ってみる例にTwitterのOAuth(TwitterはOAuth1.0)アプリケーションを作ってみよう。tokenが手に入っていたみたいな事にはならないので、OAuthの仕組みについてある程度は理解しておく必要がある。図付きでシーケンスが解説してあった。サービスプロバイダとつながるもちろん、Twitterのアプリ登録はすんでいる前提。OAuth1.0の大まかな仕組みさえわかってREADMEよめば特に何のことはなくできると思う。.buildServiceBuilderというビルダーを使って、serviceを作る。このserviceを通してOAuthの処理を進めることになる。providerでサービスをしているすのだが、有名サービスはひと通り揃っているので、特のここを自分でなんらかするということはほとんどないと思う。対応サービスはREADMEに書いてあった。いうものを取得する必要があり、これを基に認証画面のURLを生成する。https://api.twitter.com/oauth/authorize?oauth_token=xxxxxxxユーザーさんにはauthUrlに飛んでもらう。後はTwitterさんとユーザーさんがよしなにやってくれる。ユーザーさんは認証を許可すると、設定したコールバックURLに帰ってくる。http://callback/callback?oauth_token=yyyy&oauth_verifier=zzzzzみたいにoauth_tokenとoauth_verifierという2つのクエリパラメータ付き。oauthVerifier)とするとアクセストークンが得られる。このアクセストークンは、ユーザーができる操作の一部を移譲してもらったものであるので、取り扱いには細心の注意が必要だ。なんかしてみるこのアクセストークンを使えば、そのユーザーになり代わって何らかの操作ができるようになる。それを行うためにAPIが用意されているわけで、例にTwitterに投稿してみよう。https://api.twitter.com/1.1/statuses/update.jsonにPOSTでリクエストし、その時のボディはstatus="内容"でいいようだ。OAuth1.0では毎回これやる必要あり。https://oauth.net/core/1.0/#signing_processrequest.send();これで完成。アクセストークンは一定時間するとexpireしてしまうので、認証が通らなかったら再度ユーザーを認証画面へリダイレクトさせて再度アクセストークンを取得させるとか、細かい仕組みは必要だけれど、これでだいたいOAuthを使ったリクエスト処理はできるようになったであろう。facebookとか最近のサービスはOAuth2.0だけど、大体に多様な雰囲気でできるんじゃないかな。気分が乗ったら追記します。ネタちょっと思いついたネタをメモ。お仕事中お茶をよく飲む。ティーバッグを利用するので浸出をある程度の時間待たなければならない。して放っているうちに茶葉を取り出すのを忘れちゃって渋くなったりする。そこで手軽にタイマーを使いたいと思った次第。これ書いている時間にダッシュボードウィジェットインストールすれば良かった。全部キーボードでできて鬱陶しくない。(なんでもいいからターミナル起動。finished;こうするとss秒後に「finished」と言われて終了する。いつもイヤホンしている人じゃないと使えないかも。橋本幸樹の無愛想な日記これつかえばubuntuとかでもできますね。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。