タグ

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

  • 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
  • 2021年後半の自作キーボードの歩み — KaoriYa

    自作キーボードを始めてちょうど1年。 前回の報告より約7か月。 その遍歴を振り返ってみたいと思います。 はじめに 2020年12月3日の夜中に人生初の自作キーボードに組み立て始めました。 そのまま徹夜をしてちょうど1年前の今日12月4日に自分だけのErgoDashを手にしました。 (前回の記事参照) 怒涛の如くキーボードを組み立てたことを紹介した前回の報告記事から約7か月間、 私が何をやっていたのかダイジェストで振り返ってみます。 そして記事の終盤にはコミックマーケット99における頒布物の宣伝があります。 4月下旬~5月上旬 まず何と言ってもその後HHKBを置き換えて常用することになる YUIOP60HH4 が完成しました。 現場でYUIOP60HH4がHHKBを置き換える瞬間 YUIOP60HH4 は、 自作キーボード活動を続けてる際に出会った Everglide Dark Jadeキー

    2021年後半の自作キーボードの歩み — KaoriYa
    yogasa
    yogasa 2021/12/06
  • 自作キーボードを始めて5か月の歩み — KaoriYa

    はじめに 2020年の11月末。 なんとなく自作キーボードでも始めて見るかと思い付きました。 それまで自分にとって自作キーボードはハードウェア技術的にも既知で、 さらに長年使い続けたHHKBから乗り換える気も起こらず見向きもしなかったわけですが 「実際にやってもいないのにわかった気になるのは頭でっかちでよくないな」 と考えてやってみることにしたのです。 ということでやってみて見事にハマりまして 始めて1か月で数台のキーボードを組み立て この5か月で10台を超え20台に迫る勢いでキーボードを組み立て・設計・制作するに至りました。 この記事では自分が作ってきたキーボードたちを振り返ってみたいと思います。 なにぶん数が多いので1つのキーボードにつきなるべく量を絞って以下の観点から書き下していきます。 なぜそのキーボードを選択したのか(作ろうと思ったのか) 作った際の特徴、思い出話とかあれば 作っ

  • Vimmerに捧げる正規表現の基礎中の基礎 — KaoriYa

    正規表現はVimに限らずコンピューター上でのテキスト操作において非常に強力です。 しかし学習の難しさも非情で多くのIT技術者、Vimmerが正規表現に苦しんでいるのを幾度となく目の当たりにしています。 ただ正規表現は当にそんなに難しいのでしょうか。 いいえそんなことはありません。 正規表現は来とても簡単な原理で学習も容易なのです。 にも関わらず難しいと思われてしまうのは、原理を理解しないまま外見上の機能をそのまま覚えようとするからです。 記事では正規表現の原理にフォーカスし解説することで、Vimを含む様々な正規表現実装の利用難度を適切にしようという記事です。 記事は Vim Advent Calendar 2019 の1日目の記事です。 「正規表現」はもともと形式言語という言語学の一分野の研究から生まれました。 言語学というのは言葉を科学的に研究する学問です。 形式言語はその中でも

  • 書籍「みんなのGo言語」を著者陣よりも早く読んだ — KaoriYa

    先行販売された書籍 「みんなのGo言語」の紙の実物を著者陣よりも早く入手し読んだので、 夏休みの宿題には少し遅れましたが読書感想などまとめてみます。 来たる 9/9 に発売予定の書籍 みんなのGo言語 が、例によって書泉ブックタワーにおいて先行販売されました。この屋の店頭には、著者に見紙が届くよりも早くが並ぶということで、一部にはとても有名です。そのため僕は、著者よりも早く実物のを手にして読んで感想を記事にすることを画策し、数日前から足繁く通っては別のを買ってたりしました。おかげで結構な出費になりました。でも技術書漁りは仕事かつ趣味みたいなところがあるからね。しょうがないね。 9/2先行販売『みんなのGo言語 [現場で使える実践テクニック] 』技術評論社(978-4-7741-8392-3)松木雅幸,mattn,藤原俊一郎,中島大一,牧大輔,鈴木健太著 入荷● Go言語を適材適所

    yogasa
    yogasa 2018/02/09
  • カラー絵文字パッチ制作の経緯 — KaoriYa

    2017/11/26 19:30 頃に vim/vim へ pull request を出したカラー絵文字パッチが、 わずか3時間半のうちにマージされました。 制作に関わったのは mattn さん、k-takata さんそして私の3人で、 超優良な品質のパッチという自負はありましたが、 それでもこの短時間でのマージはまったく予想しておらず、 望外のことに喜びと達成感もひとしおです。 ではその余韻の残るうちに、 この色付き絵文字対応パッチ制作の時間的経緯を ログを掘り返して書き記しておきましょう。 来は Vim アドベントカレンダーのほうにも使えるネタなんですが、 まぁそちらには別のやつを考えましょうってことで。 あ、メッチャ長いんで要注意。 前日譚 まず以前から mattn さんは色付き絵文字を出したいと表明していました。 先日行われた VimConf 2017 でも言っていましたね。

    yogasa
    yogasa 2017/11/27
  • 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

    yogasa
    yogasa 2016/06/26
  • Vim の配布場所を github に変更しました — KaoriYa

    香り屋版の Vim の一次配布場所を github の releases に変更しました。今後は以下のURLより最新版の香り屋版 Vim にアクセスしてください。 最新リリース情報: https://github.com/koron/vim-kaoriya/releases/latest 過去のリリース情報: https://github.com/koron/vim-kaoriya/releases また vim-jp より、各最新バイナリへのショートカットURLが提供されています。クッションページを挟む形になりますが、必要に応じてご利用ください。 Windows 32bit版 : http://vim-jp.org/redirects/koron/vim-kaoriya/latest/win32/ Windows 64bit版 : http://vim-jp.org/redirects/

    yogasa
    yogasa 2016/04/10
  • 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 - ジ

    yogasa
    yogasa 2015/12/13
  • あぁ^~Vimがぴょんぴょんするんじゃぁ^~ — KaoriYa

    let s:gravity = 2.4 function! s:start_pyonpyon() set guioptions-=m redraw! winpos 4000 4000 | winsize 80 24 let [s:maxX, s:maxY] = [getwinposx(), getwinposy()] let [s:unit_h, s:unit_v] = [s:maxX / 133.0, sqrt(s:maxY * s:gravity * 2)] let [s:v, s:w] = [-s:unit_h, s:unit_v] let [s:x, s:y] = [s:maxX, 0] set updatetime=13 augroup PyonPyon autocmd! autocmd CursorHold,CursorHoldI * call s:pyonpyon() aug

    yogasa
    yogasa 2015/09/08
  • 最近よく見かけるバッドエンジニアリング — KaoriYa

    最近よく見かけるバッドエンジニアリングの発生パターン。 イカしたフレームワーク/ライブラリが誕生する あるプロダクトがそのフレームワークを利用する フレームワークのスコープから少し外れたことをやるためにハックする フレームワークがセキュリティ問題などにより更新される 3のハックのせいでアップデートできない どーすんだよ、これ。 もちろんハックがシンプルで規模が小さい or 適切な方法ならば、アップデート時にフレームワークのソース読んでなんとかできるわけだけれど。 とくにフレームワークがカジュアルに使えるほど、3のハックを行う人がド素人で、どうにもならなくなるように感じてる。

    yogasa
    yogasa 2014/10/20
  • スパルタンVim 4.0のPDF公開 — KaoriYa

    すっかり涼しくなってまいりましたが、夏の暑いさなかに行われたコミケ C86において頒布した スパルタンVim 4.0 のPDFを公開いたします。 http://files.kaoriya.net/goto/c86pdf Vim scriptがどう実装されているかを、そのソースコードを通じて理解してしまおうという、斜め&明後日な方向からの超Vim script入門書です。先日、私は Vimlambda()関数の実装 をお手伝いしていましたが、このを読めばあなたも同じようにできるようになるかもしれません(なれるとは言っていない)。 秋の夜長のお暇つぶしになれば幸いです。

    yogasa
    yogasa 2014/09/24
  • Go/Migemo の紹介 — KaoriYa

    Migemo とは Migemo とはローマ字を入力して漢字を検索するためのライブラリです。詳しく言うとローマ字をひらがなへ変換し、そのひらがなを基に漢字として変換可能な候補を列挙し、それら複数の候補を合成して正規表現パターンを生成する、それが Migemo の主機能です。Migemo が生成した正規表現パターンを用いて検索すれば「ローマ字を入力すれば漢字を含む日語を検索できる」ようになるのです。 1つ具体的な例を示しましょう。ローマ字「kikai」を考えましょう。これはひらがなで示すと「きかい」です。漢字に変換すると「奇怪」「機械」「機会」…まだまだありますが、ひとまず複数候補があるということはわかります。ここまであげた5個の単語に一度にマッチする正規表現は以下のようになります。

  • jQueryのメモリーリークの傾向と対策 — KaoriYa

    Web開発にとても便利なjQueryですが、 実はメモリーリークを誘発しやすい構造であることは あまり知られていないようです。 記事ではメモリーリークが発生する傾向と対策を紹介します。 皆さんjQueryは使ったことありますよね。Webでの開発ではとても便利で、ほぼ必須と言っても過言ではありません。しかしながらこのjQueryはメモリーリークを誘発しやすい構造であることはあまり知られていません。 GCのあるJavaScriptでメモリーリークが発生するとは何を言っとるんだ、と思われる向きもあるやもしれません。しかしGCがあっても、もう使わなくなったオブジェクトを配列やテーブル(Object)にしまいこんでいて、それを回収するタイミングが存在しなければ積もり積もってメモリを圧迫する、メモリーリークとなりうるというのは想像に難くないでしょう。jQueryで起こりうるメモリーリークはそのような

  • Vimが変なファイルを作るようになった — KaoriYa

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

    yogasa
    yogasa 2014/04/01
  • Webアプリをいまどきの手法で爆速開発した — KaoriYa

    外道はるかぜちゃんジェネレータというWebアプリを いまどきな手法を用いて爆速で開発した話を紹介します。 先の3連休中、外道はるかぜちゃんジェネレータというWebアプリを開発&公開しました。ここで採用した開発手法がいまどきな爆速開発でしたのでちょっと紹介&ステマします。使った技術は以下の通りです。 AngularJS: Googleが開発しているViewModelなWeb開発ライブラリ(MVW: Model View Whateverだったかな?w) Github pages: スタティックサイトのホスティングに最適 Kii Cloud: mBaaS (mobile backend as a service) で共有データの保存に利用 HTML5 Canvas: 画像生成に。サーバサイドではなにもしてない! サービス概要 外道はるかぜちゃんジェネレータはベースとなる画像があり、そこに面白い

  • 正しいVimのロゴ — KaoriYa

    よく使われているVimのロゴ、なんかおかしいのです。 間違っているのです。その原因を明らかにし正しいロゴの使い方を啓蒙したいのです。 この記事は Vim Advent Calendar 2013 6日目です。 変なロゴとその出自 まずは下の画像を見てください。 2日目からの引用ですが、一見なんの変哲も無いVimの正式なロゴです。しかし何かがおかしい。わからない人もいるかもしれませんが、これは縦横比がおかしいのです。背景の緑の四角は来なら正方形でなければならなにもかかわらず、この画像では菱型になっています。この違いは昔からVimのアイコンに慣れ親しんだ身としては、快速電車の中で足の裏が痒くなったけど掻くに掻けないそんなもどかしさを感じずにはいられない、というわけです。 問題はこの縦横比が狂った画像がどこからやってきたのか。そのネタで引っ張ろうかとも思いましたが、実はWikipediaでした

    正しいVimのロゴ — KaoriYa
    yogasa
    yogasa 2013/12/06
  • 書評:実践Vim 思考のスピードで編集しよう! — KaoriYa

    http://vim-jp.org の関係で 実践Vim 思考のスピードで編集しよう を献いただきました。そこでさっそく斜め読みしましたので紹介&レビューしてみます。あ、当に30分程度で流し読んだだけなので、レビューはあっさり目ということで。 まずはじめにこのは「Vimの実践的なTIP集」です。プラグインを使わない純粋なVimのTIP集になっています。そのため私の スパルタンVim との相性は抜群でw、私が無意識のうちに使っている操作の大半がしっかりと解説されています。非常に好みです。 (もしかしたらプラグインについての記述もあったのかもですが、まぁしっかり読み込んでいるわけではないので、気が付かなかったということですね) またTIP集であることからやや散漫になるだろうと推測していましたが、意外にも章立てが良いのか系統だって読めるのが良い点です。先頭から順番に、実際に試しながら読むと

  • もんたメソッドプラグインの紹介 — KaoriYa

    もんたメソッド は(最近、突然TVでは見なくなった)某司会者がTV番組で行なっていた、一部を隠した文章を基にそれを徐々に見せながら行なうプレゼンテーションの方法です。さっきそれを知った私は、手軽にHTMLでもできたらな、ということで早速 jQuery プラグイン jquery-monta を書いてみました。 使い方は簡単です。まずは jQuery を読み込んでから、jquery-montaを読み込んで、隠したい 要素を jQuery で選択して monta() メソッドを呼ぶだけです! 実際の書き方はこんな感じ。 <div id="monta-sample"> これは<span>もんたメソッド</span>のサンプルです<br /> <span>隠したい要素</span>を jQuery でクエリーして <span>monta() メソッド</span>を呼ぶだけで<br /> 手軽に<s

  • iBusがクソになった理由 — KaoriYa

    Xubuntu を 13.10 へアップデートしたら日本語入力(iBus)がクソになったのでその理由を調べてみました。 Xubuntu を 13.10 へアップデートしたら日本語入力(iBus)がクソ(1.5)になりました。どんなにクソかは iBus 1.5がクソすぎる に譲るとして、私はどうしてそうなったのか (あわよくばどうすれば直るのか) を真夜中に調べてましたのでその成果を記しておこうと思います。 私の場合 Vim でIMEを制御 できないことで問題が根深いことを知りました。調べてみると InputContext というクラスから is_enabled(), enable(), disable() の3つのメソッドが消えていました。これらのメソッドは端的に言うと日語の状態を取得、有効化、無効化するものです。うんもうIME制御なんてできません。ちなみに その修正が行われたのは約2年