sci

最果て風呂

Heroku との思い出

Heroku という単語が私の日記に登場するのは 2012 年 2 月 23 日のこと。旧字旧仮名変換プログラムを Web でも使えるように、と Ruby + Sinatra で Web アプリを作成し、これを運用するレンタルサーバ的なものを探している際に発見したのでした。 26 日にア…

mto の VSCode 機能拡張を作成する

deno による TypeScript スクリプトの作成がうまくいったので、長年考えていた VSCode 機能拡張版を作成することにしました。 "Hello, World!" のチュートリアルを終えたのですが、これはコマンドパレットからコマンドを実行し、ポップアップウィンドウにメ…

mto を deno で実装してみる

Node.js に代わる JavaScript 実行環境である deno が言及されることが多くなり、自分も興味があったので使ってみることにしました。 素材はいつものように mto。Node.js で使う JavaScript 版を下地としてスタート。deno は JavaScript がそのまま使え、ま…

Swift の SPM を使ってみる

この記事に関連しそうなお話です。 コンソールアプリケーションの作成 Swift でもパッケージの作成が簡単にできるようになっているそうです。先にプロジェクトディレクトリを作成しておいてその中に入り、次のようなコマンドを使用してパッケージの雛形を作…

PHP で Composer と PHPUnit を使ってみる

この記事に関連するお話です。 PHP では自分の好きなものを組み合せてやるのが文化らしく、これといった決定版はないらしいです。ぼんやりとみんががやってるので合わせているみたいな。日本語で調べた範囲では Composer と PHPUnit を使う例が多いので、そ…

CSharp のプロジェクトを dotnet で

この記事に関連するお話です。 dotnet で C# のパッケージ作成をしてみます。手元にあるものが 1.0 系なので古いけど、雰囲気を味わうことはできるでしょう。 雛形の作成 雛形のディレクトリは作成してくれないので、あらかじめ作業ディレクトリを作成してお…

Perl の Cpanm と Minilla を使ってみる

この記事に関連するお話です。 Perl でのパッケージ作成をしてみます。デフォルトでの支援はないので、cpanm と minilla をインストールして、ライブラリはローカルにインストールするように環境変数を設定しました。 雛形の作成 Ruby の gem にあたる cpanm…

Ruby の Gem と Bundler を使ってみる

この記事に関連するお話です。 Ruby の開発版を使っていたので気付かなかったのですけれど、リリース版には gems/ 以下に bundled_gems として次のものが同梱されているのでした。 did_you_mean-1.2.0/ did_you_mean-1.2.0.gem minitest-5.10.3/ minitest-5.…

Python の Setup.py と pip3 を使ってみる

この記事に関連するお話です。 Python ではパッケージ作成を支援するもの (bundler, minilla, mix 等) はないようで、ディレクトリの構成も決まっていないらしい。setup.py がキモになるようで、これをスクラッチから書いていくことになります。 プロジェク…

Go でパッケージ作成

この記事に関連するお話です。 パッケージの雛形作成 go init のようなコマンドはなく、リポジトリの場所だけに気をつけておけば良いらしい。ディレクトリの構成は標準的な指針はないみたい。通常は $GOPATH/src/github.com/user_name/gomto/ に置くらしい。…

NodeJS の npm を使ってみる

この記事に関連するお話です。 NodeJS でもパッケージを作成してみました。 パッケージの雛形を作成 ディレクトリを作成してその中で npm init を実行します。対話的に package.json を作成することができるのです。 mto.js をコピーして、シェバング #!/usr…

Elixir の Mix を使ってみる

この記事に関連するお話です。 先日作成したスクリプトを手軽にインストールすることができるように Mix を使ってみました。 コンソールアプリケーションの作成 mix new mto でプロジェクトの雛形を作成し、mto/ の中に入ります。 mix.exs ファイル内の "def…

各種言語のパッケージングとテスト

各種言語でパッケージとテストの作成を練習しています。 パッケージング(プロジェクト作成支援) Elixir: mix new proj で雛形がディレクトリごと作成される。 NodeJS: npm init で package.json のみが作成される。ディレクトリ構成に決まりがあるのかどうか…

mto を Elixir で実装してみる

関数型言語を触ろうと思い続けて何年も経ってしまいました。今回は Ruby っぽい書き味という噂の Elixir を試してみることにしました。関数型の中でも非純粋・動的型付けなので、手続型思考になっている自分には取っ付き易いかも? 環境変数の取得 irb の仲…

忘れ去られてゆく過去

Mew を起動しようとしたら、次のメッセージが出て動かなくなってしまいました。問題は Mew ではなくて、どうやら mhc にありそうです。 Setting up Mew world... eval-buffer: Loading ‘/Users/umd/elisp/mhc-snap20100807/emacs/mhc-summary.el’: old-style…

論理演算

Emacs でことえり入力をする時に、カーソルがピコピコする問題があるそうです。自分は ddskk を使っているので気がつきませんでした。スラドのはいろむさんが言及している部分が論理演算のようなことをしていたので、勉強のために真理値表とにらめっこしなが…

Emacs まだまだぁ〜

Emacs のビルドができなくなってしまいました。 nsmenu.m:1496:70: error: expected a type - (instancetype)initWithContentRect: (NSRect)contentRect styleMask: (NSWind... ^ nsmenu.m:1520:62: error: use of undeclared identifier 'NSWindowStyleMask…

.NET Framework と .NET Core と Mono の違いがわからない

これまでの流れ はじめて C# に触れたのは Windows XP 機の Visual Studio Express 2008 上で、今から 5 年前のことになります。まずは CLI のプログラムを見よう見まねで作成し、それからひと月かかって Windows.Forms を使った GUI アプリを作成しました(…

VSCode と C# Extension

Vim の調子が悪かった時に、試しで Visual Studio Code の Terminal で動かしてみたら意外と良かったのです。VSCode は Markdown ファイルの編集をする程度の使い方しかしていなかったのですが、これをきっかけに本格的に使ってみたくなりました。 とは言っ…

端末の裏方

まえふり 以前の記事で issue 登録をしたところ、検証や助言を頂くことができました。結論を先に言うと、この現象は私だけに発生するもので、根本的な解決にはなりませんが、現象を回避する方法がわかりました。ターミナル.app の環境設定で「ターミナルの宣…

Vim の三角形表示がおかしい

以前の記事で少し触れたのですけれど、パッチ 543 を適用して以降、「▽」や「▼」がうまく表示されなくなってしまいました。 私は普段、Vim では skk.vim を使って日本語を入力しています。ちなみに Emacs では ddskk(Umeda) を使っていますが、AquaSKK は使…

はてブの威力

わたしがはてなブログをはじめてから 5 年半くらい経ちました。これまでの総アクセス数は 17000 程で、1 日あたり 8.5 アクセスという感じです。検索エンジンだけがお客さんという感じですね(>_<) さて、先日不具合報告を補完するために作成した記事が誰かさ…

こまります Vim さん

遭遇 事の発端はこの HTML ファイルを編集している時に生じたのです。何文字か削除してから上に移動しようとした際にターミナルごと終了してしまいました。 当初は「あれ?⌘-Q 押しちゃったかな?」と思い、ターミナルを起動し直して再編集をはじめたのです…

Heroku で Go アプリをデプロイするのがすんなりいかなかった

Vim のユーザーマニュアルをスマホで見やすいようにタグづけをしました。コンテンツの内容がコピペなので、著作権的にどうなの?というのがあるのですけれど、ちょっと今コミュニティがざわざわしているので相談し難い雰囲気(あくまで個人の感想です)。とり…

Texinfo で日本語 PDF 出力

Texinfo が 6.3 になってから、日本語の PDF を直接(TeX の助けを借りるけれども)生成することができるようになったそうです。6 系になってから Perl スクリプトになり、動作がかなり遅くなったのですが、出力される HTML のタグ付けはかなりまともになりま…

おもろいエスケープ

StackOverflow で質問されていたもの。 Python3 での後方参照がうまくいかなくて、少しだけ悩みました。マニュアルによると、グルーピングしたものは \1 等で参照できるハズなのに、思ったような結果にならないのです。\\1 のようにしないといけないのですわ…

Hugo によるはじめてのサイトジェネレート!

Jekyll での記事生成速度が遅くなってきたので、速いと評判の Hugo を使ってみることにしました。遅いといっても 146 記事で 5 秒ちょいなので、待てなくはありません。Jekyll は 2013 年 3 月から使いはじめたので、36 posts/year という増加量です。1000 …

pacman -Syu でハマる

サポート終了からそろそろ 3 年になる Windows XP。「えっ!もうそんなんなるぅ?」と驚いてしまう程に時が経つのは早いのですが、今でも私は使っています。今回は MSYS MinGW について、ちょっとした顛末を記事にします。 私はパソコンにあまり詳しくないの…

Python3 チュートリアルを読む

Python3 の Tutorial を読み終った。ある程度内容を知っているということもあるけれど、英文が平易でわかりやすい。特に Modules と Virtual Envrironment が印象に残りました。 今までモジュールのことを気にしていなかったけれども、自分の作成したスクリ…

ダイアクリティカルマーク

StackOverflow で質問されていたもの。下の画像↓ 「文字化け」の意味がわからなくて(リンク先はなぜか見れない)、普段は使っていない Safari を立ち上げて見てみました。「ᙏ」と「̤」と「̫」が結合されてウサギの顔のように表示されますね。下の画像↓ 文字化…