タグ

ブックマーク / www.kaoriya.net (14)

  • HHKB Studio レビュー — KaoriYa

    2023/10/25発売のHHKB Studioを購入し、構成・構造を細部まで検証したのでレビューします。 注意: 詳細レビューは執筆中で、随時追記しています。ひとまず総評まで読んでいってください。 レビューする私の立場 私はHHKB Studioの購入者です。 特にどこからか提供や依頼を受けてのレビューではありません。 またHHKBの従来品の愛用者でした。 初期のHHKB Professionalから始まり、 Pro 2、Type-S、HYBRID Type-Sまで色違いや予備品も含めて 合計7台を所有しています。 加えて2020年末より自作キーボードに傾倒しました。 短期間で大量のキットを組み立てたり、 自ら回路を設計したり、 ファームウェアを書き起こしたり、 あのKeyballシリーズのファームウェアを担当したり と 自作キーボードとポインティングデバイスに関する一定以上の知見を持っ

    HHKB Studio レビュー — KaoriYa
    soh335
    soh335 2023/10/28
  • golang は ゆるふわに JSON を扱えまぁす! — KaoriYa

    以下のツイートにもある通り、一見 golang は struct を定義しないと JSON を扱えないように見えます。他にも似たようなツイートをチラホラと見かけましたが、それらは全部誤解です。そこでこの記事では、golang でゆるふわ (structを定義せず) に JSON を扱う方法を紹介します。 golangrubyのようにゆるふわにJSONは扱えない? https://t.co/olsryDHc5G — bamchoh (@bamchoh) 2016年6月24日 この記事では入力の json.Unmarshal() を取り扱いますが、出力の json.Marshal() にも応用できます。 TL;DR json.Unmarshal() には *interface{} を渡せます interface{} は dproxy を使うと、値のアクセスで楽ができます json.Unmar

    soh335
    soh335 2017/10/02
  • Vim scriptによるゲームの新アーキテクチャの考察 — KaoriYa

    従来のVim scriptによるゲーム作成時の問題点を解消する、 新しいアーキテクチャを考察してみました。 この記事は Vim script Advent Calendar 2015 の 13日目の記事です。 まずは以下のデモ画像(別ウィンドウ)を見てください。 かなりスムーズに○リオが動いています。実はこれ、全部Vim scriptでできています。 ソースコードは koron/vim-ario に置いてありますので、チェックアウトして gvim -S game.vim することで試せます。ただし動作確認・保証は Windows版の +kaoriya な gvim でしかしておりません。また解像度も画面幅1920ドット無いとおかしなことになるので、異なる環境の場合は各自で調整してPRなどしてください。 操作は以下のとおりです。 h - 左ボタンのトグル l - 右ボタンのトグル f - ジ

    soh335
    soh335 2015/12/13
  • Ractive.js の紹介 — KaoriYa

    HTML の DOM 操作を良い感じで隠蔽してくれる Ractive.js というライブラリを紹介します。 記事は VirtualDOM Advent Calendar 2014 の13日目の記事です。 VirtualDOM といえば React だ、と言わんばかりの流れですが、記事では敢えて Ractive.js を取り上げます。Ractive.js が VirtualDOM かって? 確かめてみましょう。 良し、大丈夫。VirtualDOMです。 Ractive.js とは? Ractive.js は家サイトの説明を借りれば、テンプレートドリブンなUIライブラリです。なんのこっちゃわからないでしょうね。 まずVirtualDOMのメリットとは 生のDOMを直接操作しなくても、JavaScriptのオブジェクトだけを操作すれば、上手いこと自動的に書き換えてくれる ことだと言えます。

    soh335
    soh335 2014/12/14
  • Vimが変なファイルを作るようになった — KaoriYa

    +kaoriya版として配布しているVimでは デフォルトで undofile がオンになった関係で ファイルの保存時に変な名前のファイルが作成されるようになりました。 その解説をします。 うちで配布している Vim は 7.4.227 から、デフォルトで undofile がオンの状態で配布されるようになりました。そのためデフォルトではファイルを保存した時に同時に.{ファイル名}.un~ を undo ファイルを作成します。この undo ファイルにより Vim は undo の情報をセッションを越えて保持できます。 しかしいきなりゴミのような名前のファイルが生成され、普通のユーザは驚くことでしょう。かく言う私も驚きました。っていうかそのまま間違えてレポジトリに commit しちゃいました。それでは困りますので、無効化する設定などを紹介しておきます。 完全に無効化する こう設定してくだ

    soh335
    soh335 2014/06/30
  • または私は如何にして例外するのを止めて golang を愛するようになったか — KaoriYa

    Java の finally よりも golang の defer のほうが筋が良さそうだ、 ということから考え始めた結果、 どうして私が golang を気に入ったのかがわかった気がしたので書いておきます。 ファイルをオープンし読み込みな処理で何かして終わったら閉じる、という関数を Javagolang で書き比べてみましょう。 Java で書くとこんな感じですね。 public static void readFile(String fname) throws IOException { InputStream s = null; try { s = FileInputStream(fname); // // Do something with "s". // } finally { if (s != null) { s.close(); } } }

  • お好み焼きを食べに大阪まで来ました — KaoriYa

    場のお好み焼きべたいなぁ。と思い立ったので大阪に来てしまいました。折もよく h_east さんが場をセッティングしてくれたということと、私の「夕飯にお好み焼きべに大阪行ったよ」って言えたらカッコイイんじゃないか、というお子さまじみた考えがマッチしてしまいまして。 場所は新大阪駅から御堂筋線で約30分、長居にある…あれお店の名前しらないやw 駅から出て5秒という好立地、事前に写真を見せられていた分かりやすさからお店の名前を覚えてなくても行けます。お隣が「宮むなし」でした。(帰りに確認したらお好み焼き屋さんの名前は丸葉でした。) 場のお好み焼きはなんて言うか軽い感じでべやすく、ワイノワイノ言いながらヘラ(?)で取り分けると…なんというか連帯感が高まるのです。 以上、おしまい。 じゃ、ダメですよね。やっぱりw twitter を見ていた方ならわかるかもしれませんが、このお好み焼き

    soh335
    soh335 2013/09/16
  • golang でループを手っ取り早く並列化する方法 — KaoriYa

    func execLoop(list []Item) { for _, item := range list { do_something(item) } } list に格納された各 item に対して do_something() を適用する、よくあるタイプのループ処理です。 goroutine で並列化、その副作用 golang ではこの do_something() の適用を超お手軽に並列化できます。あ、もちろん do_something() はリエントラントである前提ですね。

  • Vimスクリプトを書いてみよう — KaoriYa

    目的 機能を持ったVimスクリプト(プラグイン)を徐々に作る様子を見て、書き方を学習してみよう 作るのはよくあるタイプのプラグイン Javaの単体テスト用クラスファイルを開く(作る)コマンドを作るよ 「ね、簡単でしょう(by ボブ)」と言ってみたい まずは雛形 ひな形としてこんなスクリプトを作ります。 command! -nargs=0 UtestAppend call <SID>UtestAppend() function! s:UtestAppend() echo 'HERE' endfunction " s:UtestAppend() UtestAppendというコマンドを追加 UtestAppendコマンドいが実行されたら ‘HERE’ と表示する ほら、すごく簡単ですね。 Javaだけに作用させる 以下はdiff形式で変更点だけ。 @@ -1,5 +1,17 @@ c

    soh335
    soh335 2012/02/20
  • VimだけでXML Reformat — KaoriYa

    <status><created_at>Mon Feb 06 21:07:52 +0000 2012</created_at><id>166629198054690816</id><text>Post-Bowl Twitter analysis http://t.co/OYYSRSew http://t.co/M0AtLQVd</text><source>web</source><truncated>false</truncated><favorited>false</favorited><in_reply_to_status_id></in_reply_to_status_id><in_reply_to_user_id></in_reply_to_user_id><in_reply_to_screen_name></in_reply_to_screen_name><retweet_cou

    soh335
    soh335 2012/02/10
  • codejamでの考え方(問題A) — KaoriYa

    性懲りもなくcodejam Japanの予選に参加したので、その解き方、考え方をざっくり解説してみようと思います。 2011/10/01にcodejam Japan(プログラミングコンテスト)の予選が開催されました。前回の世界大会やgdd11jpのスライドパズル問題に参加した際に自分の実力不足&伸びしろ不足を実感し、もうこの分野からは手を引こうと考えていたのですが、たまたま時間が有った&合ったのでついヤッちゃいました。で、ヘボい私がどう解いたか考えたかを初歩的にまとめて解説することで、これから競技プログラミングの分野に乗り込んで行こうという人たちの助けになるかもと思いましたので、ちょっと一問だけ書いて見ることにしました。 問題Aの要点 問題Aの要点を引用します。 カードは M 枚からなり、それぞれ 1 から M までの数字が重複しない カードの山を C 回カットすることでシャッフル i 回

    soh335
    soh335 2011/10/07
  • Vimをお使いの皆さまへ — KaoriYa

    お詫びとお知らせとお願いがあります。今、Vimを使っているかたはもちろん、これから使ってみようかなという方、以前使っていた方も是非、文章の続きをご覧ください。 お詫び 2011/09/15の午前中にふとしたキッカケで、一部ユーザの間で日Vimのコミュニティを統合しようという機運が高まり、実際にそのように行動を開始しました。それに関してまずは幾つかお詫びをしなければなりません。 既に各コミュニティに所属し、頑張っていただいている方々への相談なしに決めて、行動を開始してしまったこと 一時的に各種リソースの位置(URL)が混乱すること 各種リソースの位置(URL)が変化すること これまでそのような情報やコミュニティをまとめていなかったこと 以上により、長い間に渡ってご不便やご不快な思いをされた方、これからされる方もいるかと考えます。まことに申し訳ありません。 ただしそのようなことも今後は過去

    soh335
    soh335 2011/09/16
  • rubyをdisってみる — KaoriYa

    自分で運用しているredmineが依存性の問題で動かなくなったので、腹いせ&八つ当たりでrubyをdisってみることにしました。 redmineが動かなくなりました。背景はこうです。 FreeBSDにportsでredmine入れて快適だぜ! セキュリティとか怖いからなるべくportsは新しくするぜ! あれredmineが動かくなったぜ? なんでだぜ? 結論からいうとruby-gemsとrailsのバージョンがコンフリクトしたのが原因でした。もともとこのFreeBSD boxにはredmine 1.2.1とruby-gems 1.7が入っていました。そしてある時portsでruby-gemsが1.8にアップグレードされたのです。redmine 1.2.1にはrails 2.3.11がバンドルされています。このrails 2.3.11、実はruby-gems 1.7以前でないと動かないという

    soh335
    soh335 2011/09/13
  • 3D in Vim — KaoriYa

    某万能エディタに触発され、Vimスクリプトで3D迷路ゲームっぽい物を作ってみました。 ソースコードは https://github.com/koron/maze3d-vim で公開しています。 左から右へ二次元で奥行きを求めて一次元データにし、 それを3次元っぽい色合い&高さで立ち上げて描画しているだけです。

    soh335
    soh335 2011/04/20
    うけるw
  • 1