月面三点倒立

後方2回宙返り1回ひねり三点倒立

今だからこそ「キーボードと社会」みたいなのを誰か真面目に発表してほしい

はじめに

この記事は キーボード #2 Advent Calendar 2019 の 12 日目の記事です。

adventar.org

今回はポエムというか、とりとめのないグダグダした内容になるのでお役立ち情報をお求めの方は他の記事を読むことをオススメする。
特に最近キーボードを始めた方はこの機会に 2017 年版や、2018 年版のアドカレも見に行くと面白いかもしれない。

実際問題、この期に及んでキーボードが何たるかをまだよく分かっていない気がするのだ。

自作キーボード振り返り

自作キーボードを始めてから2年近くになるのだが(開始は 2018 年 5 月)、
その間に遊舎工房さんリアル店舗を開店して、気づけばもうすぐ一年になりそうなので
ここらで軽く振り返ってみようと思う。

  • 2018 年 春頃
    • 何かの拍子に Twitter で ErgoDox を見た
    • レツプリや Helix の GB があったことを終わってから知った
    • 来る日も来る日も Twitter でレツプリや Helix を眺める日々...
    • 我慢ならん!と Barocco を購入。そして直後に Ergo42 の Booth 販売を知る
    • 今買わないと今後手に入らない気がしたので Ergo42 キットを 3 つ買い
    • Iris、Dilly、そして Corne と続々入手しては作る
    • キーキャップは海外の通販がメイン
    • 目についたもの(特に国内設計のキット)は全て買う!位の意気込みがあった

だったのだが、
キーボードのコミュニティを近くで見ていたところ

  • 2019 年末
    • キーキャップはガチャでも入手可能になった
    • Ergo42 は市販してる
    • 自作キットもよりどりみどり
    • ケーブル作る人も多い
    • Diamond Starstones スイッチというのがあるらしい(天キー3行きたかった...)
    • 界隈と繋がりも深い VTuber も活動中で、日曜には Youtube で「ほぼ週刊キーボードニュース」やってる
    • 知らないキーボードの画像もよく流れてくるようになった
    • 飲み会にキーボードを持参する光景は日常
    • 基板設計者多数、空中配線あり、3Dプリント、描き下ろしのシルク、浴衣、射出成形、鋳造、焼き物、染め物、ガラス、レジン、テストマン、ご飯、自作ステム、サウンド連動、光る、音が鳴る、1キー、140%、フリマ、組み立て会、インターン、カフェ、ビール、サバゲー、スイーツ、DJ、忘年会、ネジ、ネジカウンタ、たのししま、etc...

とまあ、思い出した事柄を書いていたら途中よく分からなくなったが、とにかく 2 年の間色々な情報が流れてきた。
(一時期キーボードコミュニティの多くの人が Twitter のアイコンを美少女アイコンに変えるというのも流行ってカオスで面白かった。
⇒と下書きしてたが、つい最近はお嬢様口調になるのに夢中でこれもまたカオスだった)

界隈にいると感覚がほんのちょっとズレるのかもしれないが
一般的な製品は居酒屋で話しのネタに何人もの鞄から机の上に出てきたりしないし、 DJ プレイや楽器として演奏道具にしたり、部屋の照明の ON/OFF スイッチに使ったり、 エモい写真を撮るために苔むした石段や木の上に置いたり、旅行の際に記念撮影( 旅するキーボード )したりもしない。
ましてや雪が積もったからと言って(濡れないようにビニール袋などに入れて細心の注意を払った上で)雪に突き刺して写真を撮ったりもしないのだ。

一体何がどうしてこうなった...?

単純な消費ではない世界

今までキーボードと言えば、 PC を買う時にオマケで付いてたり、 1000 円そこらで追加出来るもので、仕事や趣味でこだわりのある人が高級なキーボードを買うといった具合であった。

アメリカ西部のカウボーイたちは、馬が死ぬと馬はそこに残していくが、どんなに砂漠を歩こうとも、鞍は自分で担いで往く。
馬は消耗品であり、鞍は自分の体に馴染んだインタフェースだからだ。
いまやパソコンは消耗品であり、キーボードは大切な、生涯使えるインタフェースであることを忘れてはいけない。
東京大学 和田英一 名誉教授の談話]
Happy Hacking Keyboard | 和田先生関連ページ | PFU

上記は有名な HHKB の和田先生の談話を引用させていただいたのだが、仕事でキーボードを多用する自分もご多分に漏れず、仕事用と家で使う用の HHKB を買い
「この配列しか打てなくなってもいい。この配列に身体を最適化するのだ」
とまで思ったものだ。

...で、そんなカウボーイ達の現在はと言うと、鞍を自分達で作り始めたかと思うと、
ついには居酒屋で鞍を並べて語り始めたではないか。
並べられた鞍はシックなものからデコデコで派手なもの、あまつさえ光る。
おいおいおい、治安、治安。

さておき、世の中は大企業が大量の広告を使い大衆に売り込む時代から、 工夫や試行、知識次第では自分達で作ることが可能な時代になりつつある。 ただ、「キーボード」はそうした作ることが出来る物の中でも、凄く特殊な位置にあるのではないか。

  • 人間が社会の中でコミュニケーションを取る上で重要な 言葉とも関係が深い
  • 趣味や生活での利用は勿論のこと、様々な仕事でも 効率を上げる ために使うことが出来る
  • 扱う範囲はハードウェアからソフトウェアまで 幅広い領域 に掛かる
  • キーキャップ等の自由度の高い周辺要素があるため、何かしらの 技術を生かす余地 がある
  • 好みや使用感など、正解は各個人の中に存在

短くまとめると
コミュニケーションに関係し、様々な仕事や知識と接点があり、使うと役立つ上に、色々な技術を活かせる懐の深さがある。
といった具合か。 そんな訳でキーボードは、作れるようになった物の中でもやべぇ部類なのでは、と思っている。

長々打ってみたが、ご存知の様にキーボードは人間とコンピューターを繋ぐ道具で、キーボードをいじる時には
「コンピューター寄りの側面」「人間寄りの側面」 があり、そのバランスの取り方も個人に委ねられる。
その辺りをもう少しだけ書く。

キーボード界隈(コミュニティ?)とキーボードの繋がり

キーボード界隈が今の様に広がる上でコミュニティの存在は大きい。

こだわる部分ごとに中心的な人達がいたりするので、その人達を探して Twitter でフォローしてやり取りしてみるのも良いし、
キーボード界隈の色々な人を片っ端からフォローして様々なキーボード情報を取り入れるのも楽しい。
自作だけでなく、カスタムだったり配列などソフトウェア寄りもフォローすると新しい発見になるだろう。 勿論自分で新しい何かを思いついた時には道を切り開いてみるなんてことも出来る。
上記でも少し書いたが、キーボードにはまだまだ何かを取り入れる余地がある。
この点がコミュニティの発展にも大きな影響を及ぼしていると思う。

キーボードはパソコンの周辺機器なので、基本的に入り口としては電子工作なのだが、時に色々な仕事の知識やスキルを持った人達がキーボードを作るついでに(?)電子工作以外の新しい技法や要素を持ち込むことがある。
中には最初に見た時に「なぜそれを...」と驚くものもあるのだが、実物を見たり触ったりすると不思議と「これは良いな」とか「アリかもしれない」に落ち着く。
これはキーボードの人間寄りの部分(見た目の綺麗さや、触った時の感触)がそうさせているのかもしれない。

この人間寄りの部分がなかなかに曲者で、スイッチやキーキャップの新商品が出ては押し心地が気になったり、自分のキーボードに合うか、コレクションとして欲しい、とキリが無い。
これらは単なる好みの問題として放っておくことも出来るが、日常で触れる機会が多いほど、効率や気分にも跳ね返ったりするので尚のことクセが強い。

あと、規模の大きな展示系イベントも有志達によってゆるく行われているのもありがたい。
初対面ではあまり話せないような人もイベントに来て並んでいるキーボードを打ってみるだけで沢山の発見を得ることが出来るハズだ。
展示している人それぞれの好きなスイッチが一堂に介するので、参加の際には見るだけでなく押し忘れることが無いようにしたい。
後からイベントの写真や他の人の感想を見て、触ってなかったことを後悔することも多々ある。。。

ともあれ、キーボードのカスタムや自作を行う上で多くの人と意見を交換したり、わいわいと色々なキーボードを打ってみるのは楽しめると思うので、キーボードを始めたばかりの人や、作るかどうか迷っている人はコミュニティの方にも顔を出してみてはどうだろうか。

まとまらない

ネットワークが広がったことで、仕事や日常の会話もオンライン上で行うことが増えた。
どちらかと言えば割合としてオンラインの方が多い、といった人も結構いるのではないだろうか(ゲーム等も含む)。
そうした社会の中で仕事で使ったり、言葉を打つことと関係の深いキーボードは、カスタムしたり自作出来る身近な道具でありながら、
ソフトウェア方面としても、ハードウェア方面としても使う人本人を表現する何かになりつつある気がしている。

当然ながら
コンピューターに信号が渡った先はゼロとイチの世界で
そこに何か特別な情報が乗ることはない。

だからこそ、なのかは分からないが、大量生産で市場に出回っているキーボードよりもほんの少しだけ。
自分でカスタムしたり半田付けした部分や、作ったケーブル、手を入れたファームウェアの分だけ。
コンピューターに信号が渡るギリギリの瞬間までは、何か特別な気持ちは乗せられる気がする。

そしてそんなコミュニティの中で出会った人達と日々 Twitter や Discord で話す際、
画面のずっと向こうには見たり触ったことのあるキーボードが繋がっていて、自分の手元にも自分だけのキーボードが繋がっているのだ。

discordapp.com

www.youtube.com

この記事の全文はいつも通り 30 個のスイッチから生まれた。
洒落たシェイクスピアの欠片にもならない乱文だが、無限の猿によって偶然書かれるよりも先にこの世に出しておく。

ja.wikipedia.org

オリジナル自作キーボード開発(2D)を早足で説明する

はじめに

この記事は 「自作キーボード Advent Calendar 2018」その1(3まであるよ!)の13日目の記事です。 adventar.org

どもどもども。自作キーボードを5月頃に始めたので半年ちょっとのまだまだ初心者の みなも です!
この記事を書いてる時点ではまだ 3台位しか自作キーボードを開発してない のですが、2Dキーボード開発が思ったより簡単で楽しかったので、もっと多くの人に作ってもらいたいし、色々見てみたいので、今回は
「2Dオリジナルの自作キーボード開発のきっかけになる」を目標に書いています。(3Dは手配線だと思うので大変...)
まず、キーボード開発の全体の流れですが

順番 内容 初心者的難易度 備考
1 キーボードの回路を学ぶ ★★★ 難しいというより基本
2 KiCadで基板を設計 ★★☆ 慣れたら楽しい
3 DraftSightでプレートを設計 ★☆☆ チェック大事

の3ステップで進めます。
これらの内、最初のキーボードの回路だけゆるく分かれば後は出来た様なものです。
 

キーボードの回路を学ぶ

booth.pm こちらを読めば解決です。ゆかりさんの本では今まさに界隈で始まりつつある立体的なキーボードについても扱っておられますが、全体の約半分(32ページ位)までを読めば 2D のキーボードに取り掛かれる感じです。
押さえておきたいポイントとしては

  • 可能なら手元で実際に試しながら読む(オススメ!)
  • キーマトリックスを理解する

です。
補足というか、適当な図解を描いてみました(筆圧感知変で所々ヘロヘロ)。

f:id:X---MOON---X:20181201215558p:plain
逆方向は流れにくいけど流したら壊れると思われるダイオードの図
f:id:X---MOON---X:20181201183419p:plain
キーマトリックスはお得らしいですヨの図

ヘロヘロな図解ですが、要するに 沢山のスイッチを限られたポートを使って全てチェックする方法 です。
行と列をどの様に分割するかは開発者次第です。(上の図は拙作 ことのは『侘寂』 の左手側として見た回路)
国内自作はスプリット型が多いのでシリアル通信についても知っておくのが当然良いのですが、OSSとして基板やファームが公開されている自作キーボードを参考にさせてもらうことで、最低限キーマトリックスだけ押さえておけば出来てしまったりもします。
( ただし後でちゃんと勉強すること )
回路を学ぶ上で重要なのは「実際に手元で動かしながら少しづつ読み進めること」で、手元に余分に買っておいた ProMicro などがあるならブレッドボードなどの道具を揃えて、動かしてみるだけでも 難易度がゴリゴリ下がって理解が早くなります
検証大事。
回路を押さえておけば6割位は出来たようなものです。

KiCadで基板を設計

回路について理解したら後は作業するだけです。
まず、取り掛かる前に KiCad での全体の流れと工程の目的を押さえましょう。

順番 作業 目的
1 キーボード回路を書く 部品をどう繋ぐか指示する
2 フットプリントを決める どの部品を使いたいか決める
3 配置したり外形を決めたりする EndGameを目指す

間違えないでおきたいのは KiCad は「部品を取り付けるための基板を設計する」ためのソフトです。私も最初は「いきなり電子回路を書くなんて。。動かないかもしれないし、マヂ無理。。」と思っていましたが、回路は既に学んでますし、他のキーボードキットの基板を参考にしつつキーマトリックスだけちゃんと出来てれば案外問題無いことに気付いて気持ちが楽になりました。
KiCad は「電子回路の動作をチェック」するのではなく「回路が正しいか知らないけど、未接続だったり うっかり繋がってしまった配線のチェック」位のイメージです(個人の感想です) 。

※ とは言え、ショートさせるような変な繋ぎ方をすると危険なこともあり得るので丁寧に進めましょう

f:id:X---MOON---X:20181201234525p:plain
作りやすさも考えて「フットプリント」を決めてネの図
f:id:X---MOON---X:20181202224141p:plain
回路通りに補助線出るからその通りに繋げば良いですの図
f:id:X---MOON---X:20181202231543p:plain
某キャラはあまり似せない様に描いたの図

開発者の性格なども影響すると思いますが、細かくきっちりとやり過ぎると反対側に回すビア(穴)を空けるスペースが無くなったり、接触をかわす為に裏に回したけど裏も隙間が無くて詰む、みたいなこともあるので多少ゆるくやると良いかもしれません。
(回路の良し悪しを考えるとノイズの発生を避ける良い配線の仕方などもあるようなので慣れてきたらその辺りを追求しても楽しいと思います)

配線を経験しておくと、他の開発者のキーボードキットを作る時に「この配線はこの穴で裏に回ってるのかー」とか基板を眺めてみるとチョット楽しいです。

全体の作業を把握したら、まずは KiCad ことはじめ で操作方法を確認しましょう。
(チュートリアルはぼんやり進めるとあまり役に立たないこともあるので、今やっている作業の目的が何かを考えながら進めると良いです)
その後は
booth.pm こちらの foostan さんが書かれた入門書がオススメです。
特にキースイッチの高さや、スペーサーとプレートの厚みの関係など、設計する上で押さえておきたい情報が沢山載っています。
部品のフットプリントもライブラリを使わせてもらうことでかなり簡単に良いものが作れるのでひたすらありがたい...。

また、配置や外形の決定は下の順で進めると EndGame を妥協せず、手戻り無しで出来るのでは?と思います。

順番 作業 備考
1 スイッチの配置 これが一番大事。妥協しない
2 その他部品の配置 作りやすく無理せず配線も考えながら置く
3 外形の決定 必要なら手順2の部品も再調整しつつ形を決める
4 ネジ穴 配線前にプレートの形もネジ穴も決めておく(大事)
5 配線 楽しい。繋ぎ忘れだけは要注意

※ 今回プレートは後でサンドイッチ型で作るので「こんな感じで付けたい」という 形をイメージしつつ、止めるネジを決めておく

ここでのポイントは

  • 後の工程になるほど置ける位置や動かせる範囲が狭くなること
    • ⇒自作の目的であるスイッチの位置は自由に配置出来る序盤に決めましょう
  • プレートやネジ穴など回路に存在しない要素を忘れない内にちゃんと考慮して早めに配置すること
    • ⇒配線後に思い出してもネジを付けたい位置に配線が通ったりしてると大変です

部品はなるべく余裕を持って配置したいですが、どうしても狭い範囲に置きたい場合は、既存キットで狭い箇所を見てどの位スペースを取っているか確認したり、
後は...ダメになることを覚悟して発注して気絶する位...かなぁ?
(フチギリギリのスイッチはプレートの枠の幅などにも影響するので、プレート発注先のデータ作成ルールなども先に確認しておくと安心です)

配線まで終わったら基板の方は Elecrow などの PCB を作成してくれるサービスに発注します。
各サービス毎にデータの提出方法が異なると思うので、提出方法やフォーマットを確認しつつ、好みのサービスに発注しましょう。

またこの時、海外のサービスを利用するのであれば、PCB が出来上がるまでにある程度時間が必要なので、待ち時間にプレートの作成を進めておくと効率的です。

そんな訳で、今回は KiCad から Draftsight 用に DXF ファイルを出力することにします。
出力はチェック付けたレイヤーが個別のファイルで出力されるため、合成するなどの手間が少し掛かります。

f:id:X---MOON---X:20181211001459p:plain
レイヤー合成の目印も一緒に出力する

DraftSightでプレートを設計

DraftSight での作業の全体の流れは

順番 作業 備考
1 位置合わせ 比較的簡単
2 穴や外形の調整 作る時の精度に影響
3 トップやボトムなどの調整 組み立てを意識する
4 配置 パズルっぽい
5 紙に印刷して確認 めちゃ大事

紙に印刷しての確認は 必ず行いましょう
確認のやり方としては、コンビニなどで 等倍印刷 してから、 実際に切り取って基板に乗せてみること が重要です。
(なので、PCB基板が届いて確認してからプレート発注みたいなスケジュールがオススメ)
筆者が『侘寂』を作った際、少し急いでいて 印刷した後、紙を切り取らずに表も裏も基板とサイズや穴が合うことだけしか確認してませんでした が、
その後、「部品を付けたら部品の高さと干渉する箇所があってプレートを切らないと付けられない」という事態に陥りました。
紙でも問題無いので、必ず切り取って実際に組み立てる様子をシミュレートしながら、干渉する場所が無いか十分にチェックしましょう。

全体の流れを把握したところで、実際に Draftsight で合成してみます。

f:id:X---MOON---X:20181211001528p:plain
多分枠本来の使い方間違ってるけど今の所不具合無し

イラレは持ってないので詳しいことは分からないのですが、Inkscape の場合だと枠ごとグループ化しておいて計3つのオブジェクトを中心揃えで整列したのちグループ化を解除して枠だけ消せば
同様のことが出来たと思います。(その後、結局 Draftsight にしたので詳しいことはあまりよく分かってないです)

レイヤーの合成がサクッと終わったら、プレートを作成する前に調整を行っていきます。
まずはキースイッチから

f:id:X---MOON---X:20181211001537p:plain
PCBでプレートを作るなら外側が良いかも

画面を撮影し忘れましたが、外形も2重の線になっています。外側の線の方が角を丸めてあったりするので
内側の線を消しておけばひとまず問題無いと思います。

次にネジ穴ですが、M2用の穴ではなかったり、出力した DXF の円が直線で構成されている為カクカクしているので
ひとまずM2ネジのサイズで綺麗な円になる様に修正します。
これはもっと上手な方法があるかもしれませんが、私の方は現状こんなやり方でやっています。(参考にならないかも?)

f:id:X---MOON---X:20181211001548p:plain
これももっと上手な方法あるはず

合成が終わり、外形、スイッチの穴、ネジ穴の調整が終わればいよいよプレートの作成です。
途中で失敗した場合にすぐやり直せるように、調整が終わったものを別の位置に配置して、トップ用・ボトム用のプレートとしてコピーしてから作業します。

コツとしては実際の組み立てを頭の中でシミュレートしながら、各プレートに何が必要で何が不要なのか、また干渉する部分を別のパーツに分割することを忘れないようにすることです。

合成・調整が終わったものをベースにしているのでそこから大きく外れなければプレートを少しだけ大きめにしたり、逆にフチの部分を少し小さくしたり丸めたり等々、アレンジを加えてみるのも良いでしょう。

f:id:X---MOON---X:20181211001557p:plain
この配置パズルが結構難しい...

のんびり進めれば、配置が終わる頃には PCB が手元に届いてるハズなので、等倍で印刷してハサミで切り抜いて確認した後、プレートを発注します
(大事なので念押ししておきます...)

終わりに

さて、かなり早足でしたが、キーボード開発の全体の流れと、要所要所のポイントとかを筆者のヘロヘロな図解と共に紹介しました。
色々な方のキーボードキットを組み立てるのはとてもワクワクするのですが、「最終的には自分で設計しないとジリ貧かな」と 10台近く作ってから薄々と 気づき始めて、えいや、で作ってみましたが参考となる資料がとても良いものばかりだったのでかなり楽に作ることが出来て驚きました。
完全自作する前はあんなに欲しがっていた Minidox も Orthodox も今では懐かしい思い出です。
(それでも一式キットで出てきたら少し揺らぐかもですが)
自分のPCBやプレートなどが揃ったら是非一度小袋にネジとか部品一式を入れてキットっぽく揃えて眺めてみてください。
結構嬉しいものですよ?
(揃うのを待ちきれずに少しずつ作り始めてしまうかもしれませんが)

そんな訳でこの記事で「なんかヘロヘロで簡単そうだし、ちょっとオリジナル自作やってみようかな?」って思ってくれたら嬉しいですし、
筆者としても日々新しいキーボードを見て「いいね」を押したいなー、と思っています。

そしてこの後はお待ちかね、30キーのキーボードのレイアウトやキーマップの妙について
(...えっ?紙面が無いし、30キーを使う人は殆どいないって?...いやいやいや、実は30キーはレイアウトの自由度がめちゃくちゃ高いし、30キーじゃないと作れない形があってね...あぁ、うん、その内また紙面があれば書こう。)

ー 了 ー

この記事は自作30%キーボードシリーズより、
ことのは『侘寂』(Kailh Speed RosePink) やことのは『居合』(Kailh Speed Silver)で書きました。

f:id:X---MOON---X:20181205234742p:plain
「えにし」なので読み方は違いますけどね

vimでファイル操作あれこれ

普段vim使ってる時に
:e .
とかやってExploreっぽいのをよく使うんだけど、ファイルのコピーとか移動もできるんだね〜。


今まで出来たらいいなぁ〜って思ってたんだけど、久々にヘルプ見たら何やら使えるみたいだったので、やってみたv
Exploreのバッファ(?)を表示してる時に該当のファイルかディレクトリの文字上にカーソルを合わせて
mf:ファイルをマーク
mt:ターゲットディレクトリをマーク
でそれぞれマーク。で、
mc:ファイルをターゲットディレクトリにコピー
mm:ファイルをターゲットディレクトリに移動
という感じにコピーとか移動が出来る。
画面分割したら2画面ファイラになるじゃん!って思って結構期待してるんだけど操作性はまあまあかなぁ。
他にも色々機能があるかもしんないからちょっとずつ調べていこうかな。


会社でKaoriya版使って試した時はmmが出来なかったんだけど、
家でFreeBSDで試したら出来た(^-^)v
環境によって出来たり出来なかったりするのは何だか微妙だけど、設定とかちゃんとやったら出来るのかも。

最近なんとなくスクリプト言語に夢中な感じ。

きっかけはawkで、これがなかなかの使い勝手で「何で今まで使わなかったんだろぅ」とか当時プチ後悔したりしました。
で、awkの他にもいくつか言語をストックしておこうかなーってことでperlsedを考え中。
perlは思ったより面倒そうな雰囲気で導入部分でのんびりしてるんだけど、sedは一応一通り目は通したつもりでこれから本格的にいぢり倒したいなぁ、なんて思ってます。


そんな中早速ハマりましたヨ…。
適当なcsvのサンプルを拾ってきてその中から「異常」と書かれた行だけ取り出そうとか思ってスクリプトを書いてみたんだけど何か上手くいかない。
試しに書いてみたスクリプト(sample.sed)はこんな感じ。

                                                  • -

#!/usr/bin/sed
/異常/p
d

                                                  • -

で、動かすと
$ sed -f sample.sed sample.csv
sample.sed line 2: unterminated address regex
とか言われてボツ。なんか正規表現とこが変らしい。英文字だとちゃんと動く。
迷走しつつ環境変数がアレなのかなぁ、とか色々見てもよく分からず。


結局お手上げじゃん、ってことでワンライナーにしたら動いたというオチ。
$ sed -e '/異常/p;d' sample.csv


(′・ω・)えぇぇぇ〜
そりゃぁ、スクリプト書く規模じゃないからワンライナー書けばいーじゃん、ってのは分かるんだけど釈然としないなぁ。複雑なのを書くときもアドレスに日本語含む正規表現使ったらアウトなんだろなぁ。

vimの自動実行

[PC][雑記]
えっとぉ〜…色々あったり他のことに夢中だったりで、ものすごく放置してたんだけど何となく気まぐれで更新してみます。
当時は はてな記法(?)なんかも覚えてた(と思う)んだけど今はさっぱり(汗
なのでシンプルにテキストだけ。


仕事でテキストを出力(例えばCSVとか)するプログラムを使ってて、その結果を使いやすいように加工することが結構頻繁にあるんです。
…で、大体いつもやる操作なんかもあったりして、何回か同じ操作をしてたら次第に面倒になってきちゃって自動でできないかなー、なんて。
もちろんテキストを出力してるプログラム自体をいじっちゃって出力を変える、なんてこともOKなんだけど他の人も使うツールだったりするので何だかなー、な訳なんです。


まぁそんな感じの前置きはさておいちゃって、手順とか書いてみます。
普段からvim使ってる人は知ってる人も多いんじゃないかなー。

                                                                        • -

1.vimでやりたい操作手順をテキストに保存しておきます。
 これはキー入力をそのまま書くだけです。
 ここでは例として内容を単純に置換して保存(test.out)する手順にしてみます。
 ファイル名は何でも良いです。とりあえず auto.vim とでもしておきます。


 ---以下 auto.vim の内容----
 %s/これを/これに/g
 :w test.out
 :q!


2.操作手順を書いたら vimにコマンドを渡して起動します。
 今回は test.log というファイルに対して自動実行してみます。


 vim -c ":source auto.vim" test.log



上のを実行すると test.log に対して 置換処理が行われて、その結果を test.out に出力した後vimを終了します。
これをバッチなんかに組み込んでおくと自動で簡単なテキスト処理ができて便利です。


あ〜い。以上で説明おしま〜い。


あ。読んでて気づいた人もいると思うけど、この自動実行で使ってる :source はセッションを復元する時にも使うコマンドです。
自動実行の方法を探してる時、コマンド文字列に複数のコマンドを書けないか試してたんだけど上手くいかなくて(書き方が悪かったのかも?)、何となくセッションのファイルの中身を覗いたらピンと来たんですよぅ。


なので自動実行の他にも、終了時にセッションを特定の場所・名前で保存しておいて(:mksession)起動する時のコマンドに渡してあげれば前回の作業状態の復元に便利なのです〜。
#Win機ならショートカットのパラメータに指定しとくとかね。

WILLCOMのカードでネットとか。

久しぶりにおもちゃ機器(AX420N)が手に入ったので、技術的なことでも書いてみたり。
まぁ、他にも同じような内容の記事があるから真新しいものでも無いんだけどね。
さてさて、そんなところで接続しちゃいましょう。

環境はFreeBSD6.2+AX420N+PRIN(プロバイダ)
あ。大体がroot権限なので最初にsuしておいてね。

                                                                                      • -

1.umodem.koを組み込み(?)ます。
  #kldload umodem.ko
2.カードを挿します。※先に3やってても良いかも
  たぶん、sio4って名前のデバイスで認識される。
  そこらへんは環境によるのかな?
3./etc/ppp/ppp.confを弄ります。
  ※アレだったらバックアップとか取っておいてね。
  弄った辺りを以下抜粋
  ・変更箇所
   set device /dev/cuaa4 ← 元はcuaa1
  ・追記
  prin: ←先頭はスペース無し。これは接続の時の名前
   set phone "0123456789##64" ←接続先の電話番号。""で囲むこと。
   set login
   set authname id ← ここにID
   set authkey pass ← ここにパスワード
   set timeout 180 ← タイムアウト時間。適当に
   add default HISADDR
   enable dns
4.で、pppコマンドを打つ。
  #ppp
  すると、何やら接続するデバイスやらが表示された後に
  ppp ON xxxxx>
  って出てくるので、
  ppp ON xxxxx>dial prin ← ここにさっき書いた接続の名前
  接続がうまく出来ると
  Ppp ON xxxxx> こうなって PPp ON xxxxx> こうなって PPP ON xxxxx> こうなる。
  「p」が全部「P」に変わったらOK。後はネットをする。
5.片付ける時は
  PPP ON xxxxx>close とやって、ppp ON xxxxx> こうなったら
  ppp ON xxxxx>quit でおしまい。

                                                                                      • -

途中でpppがPPPになるところが如何にも「繋げてます!」って感じで面白い。


おまけ。
なんかRWINパラメータとかいうのがあって、TCPの受信サイズを変更して高速化を図るとかいうのがあるみたい。よく分からないんだけどやってみた。

                                                                                      • -

1./etc/sysctl.confを弄る。
  ※これもアレならバックアップ
2.で、中身に
  net.inet.tcp.recvspace=131072
  と追記すると良いんだって。受信が128KBに拡張されるらしいです。

                                                                                      • -


今回はそんなとこ。
思ったより64Kって速度出ないね。

手抜き静音化

んと、神殿に行ったわけではないけど気づいたら転職してました。*1
で、今は関西人となってる訳です。
道を歩けばすぐにたこ焼き屋が見つかる面白い街です。
今日もついつい仕事が終わった後で買っちゃいました。


まぁ、そんなこんなで一人暮らしを満喫しているのですが、それに伴い手持ちのPCが減りました。
今までベッドで寝転びながら使ってたノート1台目ですが、コレは実家の方でネット用端末として使用中です。持ち運びにくい割りに使い勝手はそこそこ良かったので、ちょっち残念ですが家族が使うというので仕方ないかなぁ。


前置きはこんなところで現在の環境ですが、デスク1台・ノート1台が手元にあります。
以前の如くノートでゴロ寝しながらネット……といきたいところなんだけど、このPCがFreeBSD専用にしてあって使えないのです。それもその筈、現在訳あって無線LAN環境で接続しているのでUSBのアダプタに対応していないFreeBSDではネットができないのだ。
そこでデスクトップの出番なんですけどぉ。音が・・・大きくて。


流石に隣人に迷惑をかけてまでネットするのは何だか悪い気がするので控えてたのですが、やはり調べ事がしたいときには困る。
静音化したいけど何かいい手はない??
#_____ 暫し検索 _____#
んー?コレ何だか良さそうかも「speedFan」*2


結果としては良い感じ。ファンの速度を69%に落としたら音も静かになったし、熱も・・・下がった?
何でだろ。。ファンを回してたときの熱も影響してたのかなぁ。
ソフトだけでなくちゃんと大きなファンをつけたほうがいいのかも。
まぁ、手軽に静音化する分にはオススメかな。

*1:まぁ自分の意思ですけど

*2:http://www.altech-ads.com/product/10001072.htm