Keyboard Layout Editor JSONの使い方

この記事はキーボード #2 Advent Calendar 2020の8日目の記事です。 昨日は@F_YUUCHIさんの2020年にやったこと/できなかったこと&これからの話でした。 adventar.org TL;DR キーボードの配列を表現するのに Keyboard Layout Editorで使われているデータ形式…

AAQのDocker環境備忘録

yskoht/aaqをDocker化して Docker Hub に公開したので備忘録です。 aaqの開発環境を構築する $ git clone git@github.com:yskoht/aaq.git $ docker run -it -v $(pwd):/root ruby:2.7.1-alpine /bin/sh % apk add gcc libc-dev make git pkgconfig imagemagi…

コピーしてコメントアウトするVS Codeプラグインを作った

Duplicate, Then Comment-out DuplicateThenCommentOut - Visual Studio Marketplace コピーしてコメントアウト? プログラミングをしていると既存のコードを保持した上で、少し変更して動作を確認したいことがよくあります。そういう場合、自分は対象箇所を…

Binary Indexed Tree

AtCoder Beginner Contest 153 atcoder.jp BIT知らなかった。 BIT github.com 参考 Competitive Programming Tutorials - Binary Indexed Trees Binary Indexed Tree のはなし F - Silver Fox vs Monster class BIT def initialize(n) @tree = Array.new(n +…

My Technology Roadmap for DIY Keyboard (2018 ~ 2019)

新しいキーボードを作る際に技術的なチャレンジを毎回決めているのですが、 キーボードを作り始めてから2年経ったのでできるようになったことをまとめておきます。 9key (2018-01-13) キーマトリクス回路の実装 QMK firmwareのビルド&フラッシュ ICSP (in-c…

自作キーボード向けタイピングサイトを作った

この記事はキーボード #2 Advent Calendar 2019の25日目の記事です。昨日は神さんのトラックボールマウスを分解してArduino Microで動かした話でした。かなりヌルヌル動いていてすごい。 adventar.org 自作キーボード向けタイピングサイト 自作キーボードを…

名刺サイズキーボードを作った

Business Card Keyboard meishi展1に行ってからずっと作りたいなと思っていた名刺サイズ(91mm×55mm)のキーボードを作りました。 yskoht/business-card-keyboard-device: Business card sized keyboard yskoht/business-card-keyboard: business-card-keyboar…

[Rails] Active Record Transactions の requires_new

transactionをネストしたときに、子のtransaction内でActiveRecord::Rollbackを投げてもロールバックされない。 irb(main):059:0> User.transaction do irb(main):060:1* User.create(username: 'Kotori') irb(main):061:1> User.transaction do irb(main):0…

[Ruby] 再帰的group_by

やりたいこと こういうデータ↓を [ { prefecture: '埼玉県', city: '深谷市', town: '北根', address: '3-5' }, { prefecture: '埼玉県', city: '深谷市', town: '北根', address: '3-7-19' }, { prefecture: '埼玉県', city: '深谷市', town: '堀米', addre…

JSONからフットプリントを自動配置するスクリプトを作った

前置き キーボードを作ろう!と思い立ち、キーマトリクス回路を理解して、KiCadのEeschemaでスイッチとダイオードを結線して、フットプリントを関連付けして、pcbnewを開いて、「うわメンドクサイ」と思った経験はありませんか?僕は毎回思います。 作業を始…

[tmux] Ctrl-dでexitするのをやめる

環境 $ bash --version bash --version GNU bash, バージョン 4.4.23(1)-release (x86_64-apple-darwin17.5.0) Copyright (C) 2016 Free Software Foundation, Inc. ライセンス GPLv3+: GNU GPL バージョン 3 またはそれ以降 <http://gnu.org/licenses/gpl.html> This is free software; you ar</http://gnu.org/licenses/gpl.html>…

Python EDAで論理式を簡単化する

『CPUの創りかた』に載っているデコーダをPython EDAを使って簡単化してみた。 Python EDA Documentation — Python EDA Documentation 真理値表 OP3, OP2, OP1, OP0, CFlagが入力。B, A, ~LOAD0, ~LOAD1, ~LOAD2, ~LOAD3が出力。 OP3 OP2 OP1 OP0 CFlag B A …

RaspberryPi Helix

この記事は自作キーボード #2 Advent Calendar 2018 - Adventarの25日目の記事です。 昨日は@zeriyoshiさんの ALPS メカニカルキースイッチとその歴史でした。 TL;DR HelixのコントローラとしてRaspberry Pi Zero Wを使った Bluetoothキーボードをエミュレー…

pakbdについて。つまり僕の好きなキーボードについて

pakbd rev1 yskoht/pakbd_device - GitHub yskoht/pakbd - GitHub Row-Staggered 自作キーボードではOrtholinearと呼ばれる格子状の配列や、 Column-Staggerdと呼ばれる縦方向にキーがずれて配置されているレイアウトが多いですが1、 僕は一般的によく目にす…

KiCad備忘録

KiCadを使うたびに思い出すところから始まる。 バージョンは5.0.0-3。フットプリントを関連付けで左側ペインを選択しても右側ペインの絞り込みができないのはバグなんだろうか シンボルの作成(シンボルライブラリーエディター) 「ファイル」→「新規ライブ…

8月のキーボード

8月はキーボードイベントがたくさんありました。たくさんキーボードを見て、作ったのでそのメモです。 8/4, 8/5: Maker Fair Tokyo 2018 遊舎工房でアクリルキーホルダー買ったり、普通にProMicro買ったり、HelixPicoを遠くから眺めてみたり HelixPicoアクリ…

mac 環境構築メモ

OS macOS High Sierra 10.13.6 環境設定 トラックパッド ポイントとクリック 調べる&データ検出:OFF 副ボタンのクリック:2本指でクリックまたはタップ タップでクリック:1本指でタップ スクロールとズーム スクロールの方向:ナチュラル:OFF その他のジ…

画像からQuineを生成するGemを作った

AAQ - Ascii Art Quine aaq | RubyGems.org yskoht/aaq: Create ascii art quine from image file | Github できること 画像からRubyのQuineをつくれます。たとえば、Octocatの画像をQuineにしてみます。 Octcat 出力されるアスキーアートは自分自身を出力す…

Ubuntu 18.04 環境構築メモ

インストールを3回やるはめになったのでメモ。 インストール Get Ubuntu | Download | Ubuntu Rufus - Create bootable USB drives the easy way Create a bootable USB stick on Windows | Ubuntu tutorials インストールは日本語を選択 設定 背景 Dock ア…

Javascriptを調べたときのメモ

ES2015, ES2016, ES2017 ES2015~2017チートシート - Qiita ES2016 / ES2017の最新動向を追ってみた - Qiita 正式リリースされたES8の主な新機能 ???? | POSTD ES2015(ES6)な時代だからこそ、ES5を改めて調べたJavaScript初級者のメモ - Qiita JavaScriptのc…

Tutorial: Intro To Reactをやったメモ

追加課題のメモです。初心者です。 Tutorial: Intro To React - React yskoht/training-react: This is my training 1. Display the location for each move in the format (col, row) in the move history list. Merge branch 'Extra_task_1' · yskoht/trai…

Helixの親指拡張を作った

Thumbhelix Rev1 yskoht/thumbhelix yskoht/thumbhelix_device PCBとケースデータを置いていますが、いくつか不具合があります。Rev1を実際に作るのはおすすめしません。参考程度でお願いします。 先行例 既にHelixにトラックポイントを実装されている方がい…

Helix ビルドログ

Helix を作りました Helix キーボードキット | 遊舎工房 SHOP(通販ページ) Helix: qmk_firmware/keyboards/helix at master · qmk/qmk_firmware(ファームウェア) MakotoKurauchi/helix: A compact split ortholinear keyboard.(ビルドガイド、ツール、P…

ErgoDox EZを買った

ずいぶん時間が経ってしまったのですが、ErgoDox EZについて書いておこうと思います。 注文 2018/1/1にergodox-ez.comで注文しました。構成は以下です。 1x Tilt/Tent Kit - White for $25.00 each 1x The Wing: Custom ErgoDox EZ Wrist Rest - White for $…

QMK Firmwareのkeymap.cからアスキーアートを出力するスクリプトを作った

Keymapviz Keymapviz: https://github.com/yskoht/keymapviz 導入 Python3で動きます。 $ pip3 install keymapviz 使い方 レイヤーごとにアスキーアートを出力します。ファイルパスにキーボードの文字列があればそこからキーボードを特定します。 現状はergo…

Ruby on Rails チュートリアル 第14章をやったメモ

Ruby on Rails チュートリアル:実例を使って Rails を学ぼうのRails 5.1(第4版) 14章はユーザーのフォロー。 気合で終わらさせた。特に詰まったところはなかった。 11章でできなかったherokuでのメール送信のためにSendGridのインストールを試したけどで…

Let's split ビルドログ

Let's split を作りました Let's split: qmk_firmware/keyboards/lets_split at master · qmk/qmk_firmware youtu.be 今回はRGB Underglowなし、リセットスイッチなしで作りました。 ケースはサンドイッチプレート1です。サンドイッチプレートでも強度の面で…

Ruby on Rails チュートリアル 第13章をやったメモ

Ruby on Rails チュートリアル:実例を使って Rails を学ぼうのRails 5.1(第4版) 13章はマイクロポストの実装。 13.1.3: user.micropostsでUserのマイクロポストの集合を返す この機構すごい強力だなと思った 13.2.2 GitHub - okinawarb/faker-okinawa: Fa…

Ruby on Rails チュートリアル 第12章をやったメモ

Ruby on Rails チュートリアル:実例を使って Rails を学ぼうのRails 5.1(第4版) 12章はパスワードを忘れたときのためにメールで再設定できるようにする。 モチベーションが結構つらくなってきたのでさくっと終わらせた。 11章に引き続き、まだ本番環境で…

Ruby on Rails チュートリアル 第11章をやったメモ

Ruby on Rails チュートリアル:実例を使って Rails を学ぼうのRails 5.1(第4版) 11章はアカウントを有効化するためのメールを送れるようにする。 11.3.2 できないと思ったら、authenticated?をミスっていた。 def authenticated?(attribute, token) diges…