Kubuntu でアクティブウィンドウの上にあるウィンドウだけを半透明化することができなかったので Ruby で作ってみた
ruby.wasm の JS ライブラリは JavaScript に対する薄いラッパーなので、そのままだと Ruby では使いにくいことがあるので、最近は JS を Ruby らしく使えるようにするためのライブラリを作ってそれを使ってる。 github.com 使い方 <html> <script src="https://cdn.jsdelivr.net/npm/@ruby/3.3-wasm-wasi@2.6.2/dist/browser.script.iife.js"></script> </html>
十数年ぶりにデスクトップ環境を Kubuntu にしてみた。 インストール sudo apt install kubuntu-desktop 起動時スプラッシュ画像を変更 sudo update-alternatives --config default.plymouth /usr/share/plymouth/themes/kubuntu-logo/kubuntu-logo.plymouth…
ruby.wasm で作ったやつの紹介と ruby.wasm の使い方
Ruby の CSV ライブラリはとても便利なんだけど、ひとつだけ問題があって、CSV をパースしたときに nil を返すことがある。 つぎのような CSV をパースすると2番目のカラムが nil になる。4番目のカラムは空文字になるのに! hoge,,fuga,"",piyo require 'cs…
MySQLのバージョン間のいろんな差分を見れる MySQL Parameters というのがあるんだけど、SQL 構文の差分を見れるようにしてみた。 たとえば、8.0 の最初のリリースの 8.0.11 と最後のリリースの 8.0.37 の構文の差分はここから見れる。 https://mysql-params…
2024-05-15〜17 と RubyKaigi 2024 が沖縄で開催されて行ってきたのでその記録。今月中に書いた。えらい! 0日目 ESM Night Cruise at RubyKaigi 2024 1日目 Writing Weird Code Namespace, What and Why An adventure of Happy Eyeballs RubyKaigi 2024 Off…
追記したよ! 注意 Mac にもいいところはあるけど書いてない Windows の方がいいとは言ってない ハード / MacBook Pro 14インチ 会社から貸与されているのは MacBook Pro 14インチなのでそれについて。他のは知らない。 JIS キーボード キーボードは US でも…
2024年になったので2023年を振り返ってみる。 仕事 11月で現職丸2年になった。 目標設定は2年経っても苦手。というか、前職で目標管理制度が30年くらい前に導入されてからずっと苦手なのでまあ仕方ない。 2年経ったけどやっぱり Mac は使いづらい。 2022年は…
パスワード管理はずっと Firefox のを使ってたんだけど、9月頃から KeePassXC を使い始めた。しばらく使ってみてそれなりに使えてるのでメモ。なお KeePass と KeePassXC の違いはよくわかってない。 KeePassXC はデータベースを開くためにパスワードだけじ…
最近は Emacs の LSP クライアント機能である Eglot を使って Ruby を書いたり読んだりしてる。 ruby-mode では LSP サーバーはデフォルトで Solargraph が使われてる。 半年くらい前に rubocop に LSP サーバー機能が搭載されたらしいんで使ってみた。 (add…
これはRubyアドベントカレンダーとSmartHRアドベントカレンダーの17日目の記事です。 qiita.com qiita.com 12/9 に nagano.rb で文字について発表して、同じのを 12/15 に SmartHR 社内で LT しました。 スライドはこちら speakerdeck.com 同じ文字? この2…
Ruby の SMTP ライブラリ net-smtp の 0.4.0 をリリースしたので変更内容を書いておく。 認証用のクラスを分離 今まで Net::SMTP クラス中に全部の認証用のメソッドが用意されていたんだけど、新しい認証方式に対応するたびに Net::SMTP 本体に手を入れるの…
Ruby から Bluesky に投稿してみようとあれこれやってみたのでメモ。 Gem Bluesky のプロトコルについて何もわかってないので Gem を探す。 bluesky という gem が見つかったけど、これは違うやつっぽい。 bskyrb というのがあったので使ってみる。 atproto …
Ruby で ActiveRecord じゃなくて Sequel を使いたい場合のウェブフレームワークは何がいいかなぁ。Hanami かな。まあ Rails で Sequel 使ってもいいんだけども。— とみたまさひろ (@tmtms) 2023年5月27日 Ruby で ActiveRecord じゃなくて Sequel を使いた…
2023-05-11〜13と RubyKaigi 2023 が松本で開催されて、行ってきたのでその記録。一ヶ月以内に書いた!えらい! 松本開催 RubyKaigi は 2016年から地方都市で開催されてる。地方に行くには大都会発着だとそれなりに便利なんだけど、地方地方間の移動は結構大…
最近はずっと ruby.wasm で遊んでます。 2023/5/19 に ruby.wasm 2.0 が出ました。 ruby.wasm 1.0 では await がうまく動かないことがあったけど、2.0 でちゃんと動くようになったんで、記念に前の記事以降にやったこと等をまとめてみた。 await ruby.wasm …
Rabbit というプレゼンツールがある。画面の下の方でウサギとカメが追いかけっこをしてるプレゼンツールで、Ruby で作られててまつもとさんがよく使ってる。 www.youtube.com PDF 表示時にもこれと同じようなウサギとカメを表示できないかなーと思っていろい…
プライベートでは基本的に誰の役にも立たないプログラムを作ってるんだけど、たまにうっかり MySQL Parameters みたいな役に立つものを作ってしまう。 MySQL Parameters は5年くらい前に Vue.js の勉強のために作ってみたんだけど、結局そのまま Vue.js は触…
ハイバネート Ubuntu 22.04でのハイバネーション - Journal InTime(2023-01-03) を見て、自分の ThinkPad T14 Gen3 はそんなでもないけどサスペンド時にまあまあバッテリーが減るので、自分もハイバネートしようかと思ってやってみた。 ハイバネートの設定手…
2023年になったので2022年を振り返ってみる。 仕事 2021年11月に転職したので、2022年が実質1年目だった。 仕事でバリバリ Ruby が書ける環境は良いね。 プロダクトの機能開発以外は、テスト周りとかデータベース周りをやってた気がする。 フロントエンド難…
OpenSSL まわりでちょっとハマったのでメモ。 こんな Ruby のコードを動かすと環境によって warning になったりエラーになったりする。 require 'faraday' ssl_opts = {ca_file: OpenSSL::X509::DEFAULT_CERT_FILE} Faraday::Connection.new('https://tmtms.…
Ruby 3.2 アドベントカレンダーの最終日記事です。 qiita.com 3.2 rc1 以降の変更 今年も 12/25 に無事 Ruby 3.2.0 がリリースされた ということで、3.2 rc1 以降の変更を、3.2.0-rc1 の NEWS.md と 3.2.0 リリースの NEWS.md の差分からピックアップ。 3.2…
Ruby 3.2 アドベントカレンダーの24日目の記事です。 qiita.com Fiber Fiber[], Fiber[]=, Fiber#storage 追加 Feature #19078: Introduce Fiber#storage for inheritable fiber-scoped variables. - Ruby master - Ruby Issue Tracking System Fiber ストレ…
Ruby 3.2 アドベントカレンダーの23日目の記事です。 qiita.com default gem のバージョンアップで面白いのがあるかなーと眺めてみた。 OptionParser OptionParser#raise_unknown Mode for accepting all unknown options · Issue #38 · ruby/optparse raise…
Ruby 3.2 アドベントカレンダーの22日目の記事です。 qiita.com default gem の差分 default gem は Ruby に同梱されていて削除できない gem。新しいバージョンの gem のインストールは可能。 default gem のバージョンの Ruby 3.1 との差分を調べてみた。 G…
Ruby 3.2 アドベントカレンダーの21日目の記事です。 qiita.com RubyVM::AbstractSyntaxTree RubyVM::AbstractSyntaxTree.parse に error_tolerant オプション追加 Feature #19013: Error Tolerant Parser - Ruby master - Ruby Issue Tracking System RubyV…
Ruby 3.2 アドベントカレンダーの20日目の記事です。 qiita.com Proc Proc#dup が元のオブジェクトと同じクラスのオブジェクトを返す Bug #17545: Calling dup on a subclass of Proc returns a Proc and not the subclass - Ruby master - Ruby Issue Track…
Ruby 3.2 アドベントカレンダーの19日目の記事です。 qiita.com Process Process に定数追加 FreeBSD で Process::RLIMIT_NPTS が追加された。FreeBSD 使ってないからよくわからん。 Socket Socket に定数追加 Socket に定数が追加された。 Socket::SO_INCOM…
Ruby 3.2 アドベントカレンダーの18日目の記事です。 qiita.com Integer Integer#ceildiv 追加 Feature #18809: Add Numeric#ceildiv - Ruby master - Ruby Issue Tracking System 商を切り上げる割り算の Integer#ceildiv が追加された。 123.ceildiv(10) #…