Releases: tommie-jp/tommie-fence
Release list
tommie-fence-v0.2.0
Added
-
配線の端だけを掴んで引き直せるようになった。 線の上を掴むと今までどおり
配線ぜんぶが動くが、端の丸を掴むとその端だけが動く (実機で「配線の先端を
選択して、その先端だけ移動できるようにする」)。引き直しは書いた行の
つなぎ先の綴りを 1 つ書き換えるだけなので、色も注記もそのまま残る。
3 つのフェンスとも同じように効く。 -
右クリックの一覧に「テキストコピー」が付いた (
C)。カーソルの下の
textの注釈の言葉をクリップボードへ写す。図に書いた言葉を打ち直さずに
使えるようにするためのもので、3 つのフェンスとも同じように効く。
写せる字を持たない相手 (部品・配線・印) では、そう言って何もしない。 -
フェンスの一覧に「最初へ」「最後へ」が付いた。 並びも印もメディア
プレーヤーと同じ (|◀◀▶▶|)。前後の‹›は三角にして、
ボタンも押しやすい大きさに広げた。
Changed
-
ドラッグで動かすときに影がずれなくなった。 部品は書かれた 1 つ目の穴
(アンカー) を基準に動くので、胴の途中を掴むとその差だけ跳んでいた。
掴んだ升を一緒に送って差を引く ようにしたので、影も落とし先も掴んだ場所の
ままになる (3 つのフェンス共通)。 -
升目の刻みが既定で 1/10 升になった (circuit)。
Ctrlを押している間だけ
細かかったのを入れ替え、Shiftを押している間だけ升ちょうどに吸い付く
ようにした。矢印も同じで、素の矢印が 1/10 升、Shift+ 矢印が 1 穴。
Ctrl+ クリックとCtrl+ 矢印は無くなった (Ctrl+DとCtrl+Zは今まで
どおり)。配線を引いている間のShiftは、升ちょうどと「先に横へ折る」を
兼ねる。 -
「エディターで開く」の名前を短くした。 拡張の表示名を
tommie-fence、
editor の表示名をFence Editorにして、メニューには
Fence Editor - tommie-fenceと並ぶようにした
(Fence Editor (図を掴んで動かす) - tommie Fenceは長すぎた)。
コマンドの分類もtommie-fenceに揃えた。 -
フェンスの一覧が「行番号: 題」になった (
185: 図17 コネクタとレギュレータ)。
行番号は 3 桁に揃える (001012) — 桁数が違うと題の頭が縦にずれる。
Fixed
- コアを直したのに
.vsixが作り直されないことがあった。 束ねる相手
(breadboard / circuit / perfboard) のソースを入力に数えていなかったので、
描画を直しても前の図のままの拡張が入ったまま残っていた。数えるのは
fence-kitだけではなく、WSDEPSに挙がる依存すべてにした。
perfboard-fence-v0.4.0
Added
-
注釈を交点の間へ置けるようになった (
d3c3=d3から 0.2 行下・0.3 列右)。
升目は既定で 1/10 升を送り、Shiftを押している間だけ升ちょうどに
吸い付く (実機で「フェンス editor すべてで 1/10 単位をデフォルトにする。
マウス操作コマンドすべて」)。綴りは breadboard と同じ。
足は穴に挿すので、部品・配線・節点・機器は交点そのものを指す —
端数を落とされたら書き込む前に断る (黙って升へ吸い付けない)。 -
DIP・SIP・マイコンボードの姿を breadboard と同じにした。 板の上に載る
実物は同じものなので、板によって違って見える理由が無い (実機で「pico など、
全ての部品の見た目を breadboard と perfboard で共通にする。breadboard を
基準にする」)。樹脂は黒、足の跡と足の番号が付き、DIP には 1 番ピン側の
切り欠き、マイコンボードには USB とアンテナと01 GP0の番号入りのピン名が
出る。外形も同じになったので、当たり判定 (重なりの報告) も一緒に動く。 -
配線の端だけを掴んで引き直せるようになった。 升目の配線に端の的
(.cf-wire-end) を足し、掴んだ端の綴りだけを書き換える。線の途中を掴めば
今までどおり配線ぜんぶが動く。breadboard と同じ約束。 -
板の外の機器 (
device) を升目から掴めるようになった。 図には出ているのに
升目から触れない物が残っていた (実機で「基板外の部品もマウスコマンドの対象に
する」)。動かすというのはat:を書き換えること — 機器は入れ子で書くので、
1 行の綴りを書き換える部品の道には乗らない。書いていなければat:を足す。 -
回路図にあって板に無かった実物を置けるようになった —
battery(電池
ホルダー)・solar(太陽電池)・speaker・mic(エレクトレット)・
switch(a 接点) /switch-nc(b 接点)。同じ回路を回路図でも実体配線図でも
書けるようにするため (52 の docs/21 の手順 7)。姿は 2 つの板で共有。 -
breadboard にあって perfboard に無かった 3 つ (
varicapdiacreed)
も置けるようになった。板の 2 つは完全に揃う — どちらも実体配線図なので、
片方に置けてもう片方に置けない理由が無い。 -
タクトスイッチ (
button/button-nc) を置けるようになった。
名前だけ知っていて「まだ置けません」と言っていたもの。足の位置は
パッケージが決めるので、書くのはアンカー 1 つ (DIP と同じ)。
4 本が 2 穴角の四角に並び、上の 2 本と下の 2 本が内部でつながっている —
ネットリストでもそう数える。a 接点と b 接点は同じ形 (実物も外から見て
見分けが付かず、図で描き分けると実物に無い情報になる)。 -
変圧器 (
transformer) を置けるようになった。 4 本足の形を足した
(巻線の端が 4 つ)。書かれた穴がそのまま足 — 2 本足・3 本足と同じ考え方で、
実物の足の並びは品によって違い、決め打てないため。積層鉄心と巻線の姿は
fence-kit で breadboard と共有する。 -
マイコンボード (
pico/pico-w/pico2/pico2-w) を置けるように
なった。 breadboard にあって perfboard に無かったもので、どちらも
実物として板に挿せる。表は 2 つのフェンスで共有しているので、綴りも
ピン名も同じ (U1.GP0)。並べ方は DIP と同じ (1 番が左上、右へ数えて折り返す) で、列の間隔だけが
広い (0.7 インチ = 7 穴)。基板は板とも IC の樹脂とも違う色で、
透かさずに描く — 実物の基板は不透明で、下の穴には配線できない。基板の上には本体チップ・USB の口・アンテナ (無線つきの版)・足の名前を
描く。breadboard の基板と同じものが載るが、絵は別に持つ — あちらは
溝をまたぐ板の幾何に依っていて、共有できるのは「どのボードに何番のピンが
あるか」の表だけだった。足の名前は基板の内側へ縦書きにする。外へ出すと、
実際に配線を挿す隣の穴を字が覆う。
Changed
-
言語をまたいでもパレットが入れ替わるようになった。 1 つの殻が 3 つの
フェンスを扱うので、置ける部品も種類の候補も言語ごとに違う。送っては
いたが受け手が無く、最初に開いた言語のパレットが残っていた。 -
拡張ではなくなった。 掴んで動かす editor もプレビューも文法も、
1 つに畳んだtommie-fenceが出す (52 の docs/19)。このパッケージは
ライブラリ + CLI —<pkg>/coreと<pkg>/editorと<pkg>/pluginを
出し、<pkg> render/checkの CLI はそのまま。
入れるのはtommie-fenceの 1 つだけ で、古い 3 つは消す
(make installが先に消す)。 -
フェンスの一覧の横に前後のボタン (
‹›) が付いた。 一覧を開いて
選び直さずに隣のフェンスへ行ける。端では止まる (巻き戻ると、最後まで
来たことが分からない)。 -
升目にスクロールバーが常に出るようになった (縦・横とも)。図が箱に
収まっていても場所を空けておくと、拡大したときに幅が動かない。
中ボタン (かSpace+ ドラッグ) で動かす操作は今までどおり。 -
フェンスの一覧が「行番号: 題」になった (
185: 図01 LED)。行番号は
3 桁に揃える (001012)。
上から順に並ぶ一覧なので、頭が揃っていると目で追える。 -
複製したら写しが選ばれるようになった。 そのまま動かせば写しが動く —
元が選ばれたままだと、複製したのに元を動かしてしまう。まとめて複製した
ときは写しを全部選ぶ。 -
Shiftを押しながらクリックすると、まとめ選びに出し入れできるように
なった。入っていなければ足し、入っていれば外す。帯で囲むだけでは作れない
飛び飛びの組が作れる。 -
SMA コネクタの姿を fence-kit へ引き上げた (図は無差分)。同じコネクタを
breadboard にも置けるようにするため。板の縁に載せる横置きはこちらに残る —
縁の無い板には置き場が無い。 -
1 つの殻で複数のフェンスを扱えるようになった (
createSessionに
実装をいくつでも渡せる)。同じ.mdに circuit と perfboard が並んでいても、
いまのフェンスの言語で引く。一覧には言語が添う。
1 つ渡せば今までと同じ動きなので、いまの拡張はそのまま。editor を 1 つに畳む足回り (52 の docs/19 の手順 1〜2)。
-
領域で囲んでまとめて選べるようになった。 何も無い所から引くと帯が出て、
中心が入った部品を全部選ぶ。動かす・回す・反転・複製・消すが選んだ全部に
効く。書き換えは 1 回にまとめる — 1 つずつ当てると、戻すのに選んだ数だけ
押すことになる (選んだのは 1 回なので、戻すのも 1 回であるべき)。
途中で断られたものは飛ばして続け、何件できなかったかを言う。動かすときは押した部品の動きをほかにも掛ける。行き先は 1 つしか
来ないので、その差だけ全部をずらす。 -
パレットに部品の姿が出るようになった。 名前の前に実物の姿を置く。
以前は「小さな枠に落とすと読めない別物になる」として出していなかったが、
胴はもともと小さい (抵抗で 38 × 13) ので縮めずに置ける。
図と同じ関数で描くので、姿を直すとパレットも一緒に直る。 -
主なフットプリントを一通り足した。 実物で姿の分かれるものを、
姿として選べるようにした (resistor/halfのように書く)。種類 姿 resistorquarter(1/4W) /half(1/2W)。実物なりに胴が大きくなるdiode/zener/schottkydo35(ガラス管) /do41(黒いプラスチック)inductoraxial(芯に巻いた軸物) /radial(樹脂で固めた立てた缶)potentiometertrimmer(ねじで回す半固定) /knob(軸の立つボリューム) -
属性パネルの種類の欄で姿を選べるようになった (
crystal/cylinder)。
候補に姿つきの綴りも並ぶので、姿を変えるためだけに本文へ戻らずに済む。 -
言うことの行番号を Markdown の行にした。 これまでフェンスの中の数え方で
出していたので、書き手が Markdown の何行目かを数え直すことになっていた
(実機で指摘された)。プレビューでも CLI でも.mdの行番号で出る
(.yamlを丸ごと 1 枚として描くときはそのまま)。 -
配線を選ぶと、左の属性パネルで色を選べるようになった。 これまで配線は
行が光るだけで、色を変えるには本文を直すしかなかった。空にすると色の語ごと
消えるので、図の既定の色に戻すのも同じ欄でできる。
掴み手は書かれた行 (注釈と同じ考え方で、名前の無いものは行で指す)。 -
ゴーストの絵が穴からずれることがあったのを直した。 絵と穴を重心で
合わせていたが、足の並べ方は板が決めるので、板の端では左へ伸びたり右へ
伸びたりする。伸びる向きが変わると重心がずれて、絵が穴から離れた。
アンカー (先頭の穴) で合わせる — 置くのも動かすのもアンカーが押した穴に
来る決まりなので、そこを合わせれば必ず揃う。 -
textの注釈の書き方を 3 つのフェンスで揃えた。
- text 番地 [語]: 字の 1 つの形にする。語は色と向きで、順不同。
向きの語 (r90/r180/r270/mirror) も 3 つで同じ綴り。
perfboard だけ書き方が違った (- text 番地 言葉…で、字が番地のあと
全部)。字と語が分かれていなかったので色も書けず、向きは種類のほうに/で
書くしかなかった。:で分けたので、textにも色を書けるようになり、
向きもほかと同じ語の並びに入った。古い書き方は読めなくなる —
- text c3 ここは- text c3: ここに直す。 -
道具の絵とマップの色を、テーマのグラフ色から実色に変えた。 グラフの
系列色は明るいテーマだと淡く出て、橙が黄色に寄って読めなかった (実機で
「黄色は見にくい」と指摘された)。白地でも黒地でも読める濃さに決め打ちした。
カーソルの下の印も同じ橙だったので、あわせて直した。 -
道具の絵に色が付いた。 白黒の絵が 9 つ並んでいて見分けにくかった。
意味の同じ道具は同じ色 — 増える (部品・複製) が緑、つなぐ (配線) が青、
動く (動かす・引きずる) が橙、向きが変わる (回す・反転) が紫、
減る (消す) が赤。9 つに 9 色を配ると、色そのものが手がかりにならない。
右クリックの一覧も同じ色にする。 -
textの注釈に向きを書けるようになった (text/r90 f6 ここから電源)。
書ける語は部品と同じr90/r180/r270/mirror。
向きは種類のほうに/で書く —textは番地のあとが全部言葉なので、
そこに語を置くと「r90で始まる注釈」と区別が付かない (色をtextに
書けないのと同じ理由)。回るのは指す穴のまわりで、mirrorは字を
裏返さず指す穴の反対側へ移す (鏡文字は読めない)。 -
注釈 (
notes:) を掴めるようになった。 選ぶ・動かす・複製する・消す・
言葉を直すが、部品と同じ手つきでできる。掴み手は書かれた行 — 注釈には
名前が無いので、行そのもので指す (配線と同じ考え方)。
2 点で形が決まる注釈 (box/arrow) は両方の穴が一緒に動くので、
動かしても形が変わらない。回す・反転するはtextだけ —
印や枠には向きが無いので、理由を言って断る。 -
メニューから選んだ部品も、置く前に実物の姿で見えるようになった。
行き先の穴を光らせるだけでは何を置こうとしているのか読み取れなかった。
動かすときと同じ見え方に揃えた (置けないときは赤く濁る)。
名札も置いたときに付く名前で出る。図にまだ無い部品なので、試し当てで作った写しの図から切り出して渡す。
姿が変わったときだけ組み直す — 場所を変えただけなら前の絵をずらすので、
穴をまたぐたびの重さは増えない。 -
図に書き出せるフェンスの行数を 80 行から 1000 行にした。 項目ごとの上限を
全部使い切るとフェンスは 1000 行を超えるので、80 行では自分の図の書き出しさえ
切れていた。709 行のフェンスで 0.06 秒・530KB と測れたので、重さは問題にならない
(circuit は 1 行ごとに TeX の節点が増えるぶん重く、309 行で 6.8 秒)。 -
CLI に
--versionが付いた。 版を答えて終わる (図に刻むなら
style: stamp: on)。circuit にしか無かったものを 3 つに揃えた。 -
CLI が空のディレクトリを黙って通さなくなった。
.mdも.yamlも無い
指定を渡した CI が、何も検証しないまま緑になっていた (perfboard にしか
入っていなかった守りを 3 つに揃えた)。
Fixed
-
名札がぶつかったら 1 行下げるようになった。 隣り合う行に部品を置くと、
上の部品の名札と下の部品の名札が同じ高さに並んで重なっていた (3 本足は
足の名前の 1 行下に名札が来るので、1 行違いでもぶつかる)。先に書いた
部品の名札は動かないので、部品を書き足しても図の他の場所は動かない。
板に書いた注釈も先に場所を取る — 番地で置き場所を書いたほうが強い。 -
マイコンボードの名前が足の名前と重ならなくなった。 基板の中 (チップの
手前) に置いていたので、長い足の名前 (ADC_VREF 35) と食い合っていた。
ほかの部品と同じで胴の下に出す (実機で「すべての部品名は部品の下側に
表示する」)。板の 2 つとも同じ。 -
板の縁を挟むコネクタの名前が消えなくなった。 凹は縁をまたぐので先端を
板の外の列に書ける (sma/female-edge h1 g0 i0) が、そのとき足の中点が縁に
寄りすぎて幅が取れず、部品の名前が…に切られていた。入らないときは
中心導体の穴へ引き戻す — そこは必ず板の内側にある。 -
同軸コネクタ (
sma) の姿を breadboard と揃えた。 合わせ面の丸が四角の
真ん中に来る。姿の名前 (SMA male) は胴に刷るのをやめ、名前の 1 行下へ出す
(胴に刷ると丸を下へ押しやることになり、2 つの板で姿が変わっていた)。 -
注釈 (
textほか) を板の外へも動かせるようになった。 半田付けする場所では
なく図に添える字なので、板の脇や上下の余白にも置ける。離れすぎだけ断る
(番地の届く 4 つ先まで)。掴む升も板のすぐ外に 1 周ぶん立つ。 -
キャプションが胴に食い込まなくなった。 胴の下端から測る距離に字の高さを
足していなかったので、字の頭が胴に入っていた (2 端子はどれも、砲弾や円板の
背が高いものほど深く)。 -
穴の綴りを数える
stepが、端数の行・列に読めない綴り (a1.25) を黙って
返していた。 升目は端数を送らないので踏んでいなかったが、null を返すように
した (穴の間は文法に無い)。Ctrlを押しながらのクリックは、この板では
素のクリックのまま (52 の docs/23)。
circuit-fence-v0.6.0
Added
-
配線の端だけを掴んで引き直せるようになった。 升目の配線に端の的
(.cf-wire-end) を足し、掴んだ端の綴りだけを書き換える。線の途中を掴めば
今までどおり配線ぜんぶが動く。 -
升目で 1/10 升に置ける・動かせる・配線の端を打てる (52 の docs/23)。
升の中のカーソルの位置を 1/10 に丸め、小さい四角で落ち先を見せてから、
交点の間の番地 (b2d7) で書く。帯には綴りと段が並ぶ (b2d7 (+.3, +.7))。
Shiftを押している間だけ升ちょうどに吸い付く — 端数を捨てて交点へ
戻したいときはこちら。板の 2 つは穴の間が無いので、どちらでも穴ちょうど。 -
矢印で 1/10 升ずつ動かせる (circuit)。升の 1/10 はマウスでは狙いにくい
ので、クリックで近くへ置いてから 1 段ずつ直す。Shift+ 矢印は 1 穴ずつ。
板の 2 つは今までどおりいつも 1 穴。 -
節点に名前を付けられるようになった (
points:)。升目で交点を選ぶと欄に
名前が出て、そこへ書くとpoints:に 1 行足り、その交点を書いていた
場所の綴りが全部その名前に変わる。空にすると名前が消えて番地に戻る。
同じ節点を何か所からも指すとき、動かすときに直すのはpoints:の 1 行だけ
になる (計画の第 2 段 #12)。 -
升目にスクロールバーが常に出るようになった (縦・横とも)。今までは
平行移動をtransformで掛けていたので、中身は動くが箱の大きさが
変わらず、ブラウザにスクロールバーを出す手がかりが無かった。図の外側の
箱を拡大の分だけ広げて、はみ出したぶんをブラウザに送る。中ボタン
(かSpace+ ドラッグ) で動かす操作は今までどおり。 -
フェンスの一覧が「行番号: 題」になった (
185: 図07 多端子)。上から順に
並ぶ一覧なので、頭が揃っていると目で追える。行番号は 3 桁に揃える
(001012) — 桁数が違うと題の頭が縦にずれる。 -
ERC が入った (
circuit-fence check)。読めなかったわけでも描けなかった
わけでもないが、そのとおりに組むと動かないところを言う — どこにも
つながっていない端、どの配線も指していない足、両端が同じネットに来ている
部品 (線で跨いだ短絡)、部品の足を 1 つもつないでいない配線の 4 つ。プレビューには出ない。走らせたときだけ出る。 記号を 1 つ見せる図や
書き方の例は端が開いているのが当たり前で、描くたびに叱ると帯を読まなくなる
(KiCad の ERC と同じ立て付け)。style: check: offの図では走らない。
終了コードも変えない — 図は書かれたとおりに描けているので、直すかどうかは
書いた人が決める。
Changed
-
FET の記号に必ず矢印が入るようになった。
nmos/pmosは
circuitikz の既定だとゲートの丸 1 つしか違いが無く、n 形か p 形かを
読み取れなかった。図ではtripoles/mos style/arrowsを入れてソースの足に
矢を出し、升目の記号も同じ向きに描く。簡易記号を置いた図にだけ書くので、
MOSFET の無い図の TeX は変わらない。接合型 (njfet/pjfet) と
-e/-dは元から矢が付いている。矢の向きは記号によって意味が違うので n 形でも揃わない — 接合型と
-e/-dは pn 接合の向き (n は内)、簡易記号のソースの矢は電流の向き
(n は外)。一度「逆では」と見て内向きに揃えたが、調べ直して戻した。 -
升目の足の名前が記号に重ならなくなった。 これまでは「どの部品も胴の
中」だったが、棒だけの胴では字が棒や矢に乗る — FET のGはゲートの棒に、
接合型では矢の上に乗って n 形と p 形を分ける印が読めず、バイポーラの
Bはベースの棒に、トランス・切り替えスイッチ・同軸・ロジックゲートは
巻線・接点・中心導体・背の線に乗っていた。胴の中に書くのは中が空いている記号だけになった (名前を入れた箱と、
図が記号の中に ± を描くオペアンプ)。あとは接続点の脇 — その辺に足が
1 本なら丸の下 (上下の足なら右)、2 本以上並ぶなら丸の外 (下に置くと隣の
足の丸に乗るため)。回した記号でも同じ関係を保つ。
名前のために胴を広げる必要が無くなったので、足の棒が記号の縁から出る
ようにもなった (ゲートとトランスは棒と記号の間が切れて見えていた)。 -
ロジックゲートの出口に名前を出さなくなった。 三角の向きが入口と出口を
言っているので字で繰り返さない。2 本足 (not/buffer) は名前を 1 つも
出さず、2 入力のゲートは12だけ出す。接続点は残るので
G1.out -- a5はこれまでどおり押して書ける。 -
升目で MOSFET の増強形と空乏形を描き分けるようになった。 図
(circuitikz のnigfete/nigfetd) と同じで、チャネルの棒が増強形
(-e) では 3 つに切れ、空乏形 (-d) では 1 本でつながる。これまでは
4 種類が 2 つの形に落ちていて、pmos-eとpmos-dを見分けられなかった。
切れるのはチャネルの棒だけで、ゲートの棒は両方とも 1 本のまま。 -
破壊的変更: 交点の間の番地の綴りを「英字 + 数字の組」にした
(52 の docs/24)。_で行と列を切って小数を書く綴り (a_1.5a.5_1.5) は
通らなくなり、a1の後ろに組を足す形になった。これまで これから 意味 a_1.5a1a5列が 1 と 2 の間 (行はずれ無し) a.5_1a1f0行が a と b の間 a.5_1.5a1f5行も列も間 a.25_1.25a1c2f5行も列も 1/4 (2 組目が 1/100 を刻む) b.7_3b3h0行が b から 0.7 下 組の英字が行のずれ、数字が列のずれで、英字は
a〜jの 10 段
(a= 0、f= .5)。行の英字がa= 1 行目なのと同じ数え方の延長。
組 1 つで 1/10、2 つで 1/100 まで — 刻みの細かさは今までと同じ。番地から
.と_が消えた。 英字と数字が交互に並ぶので区切りが要らず、
「.を含む綴りは足 (U1.5)」と 1 行で分かれる。足とも番地とも読める綴りが
無くなったので、U_1.5に書き分けを頼んでいた知らせも消えた。旧い綴りはエラーになり、案内が新しい綴りを返す
(a_1.5 は番地の形ではありません (交点の間は 英字+数字 の組で書きます (a1a5。…)))。
まとめて書き直すにはscripts/rewrite-address.mjsを使う。 -
言語をまたいでもパレットが入れ替わるようになった。 1 つの殻が 3 つの
フェンスを扱うので、置ける部品も種類の候補も言語ごとに違う。送っては
いたが受け手が無く、最初に開いた言語のパレットが残っていた。 -
拡張ではなくなった。 掴んで動かす editor もプレビューも文法も、
1 つに畳んだtommie-fenceが出す (52 の docs/19)。このパッケージは
ライブラリ + CLI —<pkg>/coreと<pkg>/editorと<pkg>/pluginを
出し、<pkg> render/checkの CLI はそのまま。
入れるのはtommie-fenceの 1 つだけ で、古い 3 つは消す
(make installが先に消す)。 -
フェンスの一覧の横に前後のボタン (
‹›) が付いた。 一覧を開いて
選び直さずに隣のフェンスへ行ける。端では止まる (巻き戻ると、最後まで
来たことが分からない)。 -
足の名前を胴の中に書くようになった (DIP の番号、レギュレータの
IN/OUT、ボードのGP0、SMA の1)。外に出すと隣の升へはみ出し、
部品を並べたときに名前どうしがぶつかる。箱は名前が入る幅まで広がる —
狭いままだとINとOUTがくっついて 1 語に読める。 -
マイコンボードは箱の中に種類を書くようになった (
pico2)。図も升目も。
40 本の足の名前は左右の縁に寄るので真ん中が空いていて、そこが実物のチップの
場所でもある。型番を書いてあれば、そちらは箱の外へ回る。 -
升目の名前の置き場を回路図と揃えた。 DIP・SIP・マイコンボード・
レギュレータは箱の中に名前を書いていたが、図は箱の外 (足の無い辺) に
出す。同じ部品が図と升目で違う所に名前を持っていた。あわせて、
名前は箱と切り欠きを避けるようにした — 箱は足の本数で伸びるので、
決め打ちの距離だと足の多い DIP で名前が切り欠きの上に乗る。
グラウンドは名前を出さない (図が出していない)。 -
トランジスタと FET の矢を、n 形と p 形で描き分けた。
矢の向きが両者を分ける記号なので、同じ形に落とすと図と食い違う:n 形 p 形 バイポーラ・IGBT エミッタの矢が外へ エミッタの足が入れ替わり、矢は内へ 接合形 FET ゲートの矢が内へ 外へ 絶縁ゲート FET 矢なし ゲートに丸 基板の足つき (増強形・空乏形) 真ん中の矢がゲートへ 外へ -
升目の記号を回路図と突き合わせて 15 か所直した。 全 98 種類を升目と
プレビューで並べて見て、違う記号を出していたところを寄せた:部品 直したこと schottkyphotodiode素のダイオードだった。棒の S 字と、内へ入る光の矢を足した potentiometer可変抵抗と同じ斜めの矢だった。上から下りるワイパーの矢にした sinesquaretriangleisource丸の中の字 ( ~⊓∿I) だった。図と同じ波と矢を描くbattery極板が 2 組 (電池 2 本の記号) だった。1 セルにした solar丸 + ☀だった。極板に光の矢が差す形にしたswitch-nc短い縦棒だった。閉じた線を斜めの棒が横切る形にした diactriac横に並べた蝶ネクタイだった。上下に積んだ 2 つの三角にした thermistor-ntcthermistor-ptcサーミスタと見分けが付かなかった。名前の下に NTC/PTCを出すnjfetpjfet絶縁ゲートの形だった。1 本のチャネル + ゲートの矢にした nigbtpigbt同じく。絶縁ゲート + 出口の矢にした dipN1 番ピン側の切り欠きが無かった。1 番ピンと最終ピンの間の縁に出す 落とすのは同じ記号の中の細部だけ — npn と pnp の矢の向き、MOSFET の
増強形と空乏形のチャネルの切れ方は、この大きさでは読めないので同じ形のまま。 -
複製したら写しが選ばれるようになった。 そのまま動かせば写しが動く —
元が選ばれたままだと、複製したのに元を動かしてしまう。まとめて複製した
ときは写しを全部選ぶ。 -
Shiftを押しながらクリックすると、まとめ選びに出し入れできるように
なった。入っていなければ足し、入っていれば外す。帯で囲むだけでは作れない
飛び飛びの組が作れる。 -
テキスト側のカーソルを当てた部品の欄が出るようになった。 光るだけで
何を選んでいるかは分からなかったので、指したものを選んだことにして
欄を開く。そのまま値も種類も直せる。何も指していないときは欄を閉じない
(マップで選んだ欄を、カーソルが余白へ動いただけで閉じないため)。 -
1 つの殻で複数のフェンスを扱えるようになった (
createSessionに
実装をいくつでも渡せる)。同じ.mdに circuit と perfboard が並んでいても、
いまのフェンスの言語で引く。一覧には言語が添う。
1 つ渡せば今までと同じ動きなので、いまの拡張はそのまま。editor を 1 つに畳む足回り (52 の docs/19 の手順 1〜2)。
-
領域で囲んでまとめて選べるようになった。 何も無い所から引くと帯が出て、
中心が入った部品を全部選ぶ。動かす・回す・反転・複製・消すが選んだ全部に
効く。書き換えは 1 回にまとめる — 1 つずつ当てると、戻すのに選んだ数だけ
押すことになる (選んだのは 1 回なので、戻すのも 1 回であるべき)。
途中で断られたものは飛ばして続け、何件できなかったかを言う。動かすときは押した部品の動きをほかにも掛ける。行き先は 1 つしか
来ないので、その差だけ全部をずらす。 -
パレットの一覧にも回路記号が出るようになった。 よく使う 12 個は前から
絵で並んでいたが、一覧のほうは名前だけだった。名前を覚えていなくても
選べるように、名前の前に記号を置く。 -
注釈 (
notes:) を掴めるようになった。 マップに注釈の札が出て、選ぶ・
動かす・複製する・消す・字を直す・回すが、部品と同じ手つきでできる。
掴み手は書かれた行 — 注釈には名前が無いので行そのもので指す。
マップは掴むための升目なので印そのものは描かない (指した升に小さな札)。部品を指している注釈は動かさない (
- circle R1)。R1は番地としても
読める (行 r・列 1) ので、綴りだけで見分けると部品を指した注釈を番地に
書き換えてしまう。文書の部品名で決める。 -
配線を選ぶと、左の属性パネルにその配線が出るようになった。
色は書けない — 回路図の線は図の地の文と同じ色で引くもので、1 本ずつ
色を変える意味が無い (色はstyle: ink-colorで図ごとに決まる)。
書ける欄が空であることで、そのことが伝わる。 -
ゴーストの絵が穴からずれることがあったのを直した。 絵と穴を重心で
合わせていたが、足の並べ方は板が決めるので、板の端では左へ伸びたり右へ
伸びたりする。伸びる向きが変わると重心がずれて、絵が穴から離れた。
アンカー (先頭の穴) で合わせる — 置くのも動かすのもアンカーが押した穴に
来る決まりなので、そこを合わせれば必ず揃う。 -
textの注釈の書き方を 3 つのフェンスで揃えた。
- text 番地 [語]: 字の 1 つの形にする。語は色と向きで、順不同。
向きの語 (r90/r180/r270/mirror) も 3 つで同じ綴り。
circuit にも向きの語が書けるようになった (- text b1 blue r90: …)。
mirrorはここでは書けない — 字を指し先そのものに置くので、
移す側が無い。語彙は揃えたうえで、意味の無いものは理由を言って断る。 -
道具の絵とマップの色を、テーマのグラフ色から実色に変えた。 グラフの
系列色は明るいテーマだと淡く出て、橙が黄色に寄って読めなかった (実機で
「黄色は見にくい」と指摘された)。白地でも黒地でも読める濃さに決め打ちした。
カーソルの下の印も同じ橙だったので、あわせて直した。 -
道具の絵に色が付いた。 白黒の絵が 9 つ並んでいて見分けにくかった。
意味の同じ道具は同じ色 — 増える (部品・複製) が緑、つなぐ (配線) が青、
動く (動かす・引きずる) が橙、向きが変わる (回す・反転) が紫、
減る (消す) が赤。9 つに 9 色を配ると、色そのものが手がかりにならない。
右クリックの一覧も同じ色にする。 -
メニューから選んだ部品も、置く前に実物の姿で見えるようになった。
行き先の穴を光らせるだけでは何を置こうとしているのか読み取れなかった。
動かすときと同じ見え方に揃えた (置けないときは赤く濁る)。
名札も置いたときに付く名前で出る。図にまだ無い部品なので、試し当てで作った写しの図から切り出して渡す。
姿が変わったときだけ組み直す — 場所を変えただけなら前の絵をずらすので、
穴をまたぐたびの重さは増えない。 -
style: check: offで図の中身の検査を外せるようになった (perfboard にしか
無かったものを 3 つに揃えた)。debug: offとは違う — あちらは「言うのを
やめる」、こちらは**「見るのをやめる」**。外れるのは読めているものへの検査だけで、
読めなかった行は必ず出る。
外れるのは部品の重なりと、足に触れて見える番地のお知らせ。 -
図に書き出せるフェンスの行数を 80 行から 1000 行にした。 項目ごとの上限を
全部使い切るとフェンスは 1000 行を超えるので、80 行では自分の図の書き出しさえ
切れていた。709 行のフェンスで 0.06 秒・530KB と測れたので、重さは問題にならない
(circuit は 1 行ごとに TeX の節点が増えるぶん重く、309 行で 6.8 秒)。 -
長いフェンスを書き出しごと断るのをやめた。 上限を超えたぶんは切って
「… ほかに N 行」と書く (breadboard と perfboard に揃えた)。断られるより、
途中まで出て切れたと分かるほうが直しやすい。切り方は fence-kit にある。 -
CLI に
--versionが付いた。 版を答えて終わる (図に刻むなら
style: stamp: on)。circuit にしか無かったものを 3 つに揃えた。 -
CLI が空のディレクトリを黙って通さなくなった。
.mdも.yamlも無い
指定を渡した CI が、何も検証しないまま緑になっていた (perfboard にしか
入っていなかった守りを 3 つに揃えた)。 -
升目の部品を回路図の記号に寄せた。 描いた図と 1 種ずつ見比べて直した:
抵抗は折れ線、サーミスタとバリスタは IEC の箱、感光は箱に光の矢、
電源レールは上下の矢印、電池は極板、トランジスタと FET は丸を付けず
ベースの棒と 2 本の足、論理ゲートは背の形 (AND は平ら、OR は反り、XOR は
反りがもう 1 本)、水晶・ヒューズ・ランプ・スピーカー・マイク・押しボタン・
リードスイッチ・ダイアック・トライアック・バリキャップ・トランス・
オペアンプもそれぞれの記号になった。77 種のうち 40 種が名前入りの箱
だったのを 6 種 (DIP) まで減らした — DIP は箱がその部品の正しい姿でも
あるので残してある。パレットの絵も同じ形で出る。 -
すべての足に接続点が出るようになった。 数えたら 15 種で欠けていた —
オペアンプの ±、論理ゲート 6 種の入力、DIP 6 種 (8〜40 本すべて)、
トランスの 4 本、切り替えスイッチの行き先 2 つ。1 辺に何本でも並べられる
ようにし、箱は足の本数で伸びる (DIP40 は片側 20 本)。DIP の番号は実物と
同じ回り方 (左を上から、右を下から) で、回すと辺も並びも一緒に回る。
足を足したときに置き場を書き忘れると落ちるテストを置いた。置き場は
pinSideとは別の表 (pinRow) にした。あちらは「--でまっすぐ
引けるか」を答える表で、混ぜると斜めに入る配線を黙って通すようになる
(実際に一度そうして、テストが捕まえた)。 -
引いている最中の配線が影で見えるようになった。 1 点目を押してから
2 点目を押すまで、引かれる線を先に見せる。Shiftで折る指定も同じ形で
出るので、押す前にどちらに折れるか分かる。線はカーソルの下の穴・足まで
引く (生のカーソル位置まで引くと、見えている線と書かれる線が食い違う)。 -
配線を選ぶと、属性パネルで折れ方を選べるようになった (
--/-|/
|-)。掴んで引き直さなくても折れ方だけ変えられる。つなぐ先は動かないので、
ネットも動かない。 -
足を指した配線を、接続点まで引くようになった。 升の真ん中で止めていたので、
押した丸と線の先が食い違って見えていた。折れた線は角で 2 本に割れるので、
足に付くのは外側の端だけ。 -
升目で足を押して配線できるようになった。 トランジスタなど多端子部品の
足の先に接続点が出る。配線の道具でそこを押すと `Q1.C -- a4...
breadboard-fence-v0.7.0
Added
-
配線の端だけを掴んで引き直せるようになった。 升目の配線に端の的
(.cf-wire-end) を足し、掴んだ端の綴りだけを書き換える (実機で「配線の先端を
選択して、その先端だけ移動できるようにする」)。線の途中を掴めば今までどおり
配線ぜんぶが動く。 -
板の外の機器 (
device) を升目から掴めるようになった。 図に出ているのに
升目から触れない物が残っていた (実機で「ブレッドボード外にある部品も選択、
動かす…の対象にする」)。動かすというのは上下どちらの帯にするか —
落とした穴が溝より上ならtop、下ならbottom。この板では左右の位置は
つながる穴から決まるので、選べるのは帯だけ。at:が無ければ足す。 -
升目でも注釈を交点の間へ落とせるようになった。 端数が効く相手を能力表で
言えるようにして (fineFor)、この板では注釈だけに効かせる。刻めない物を
掴んでいる間は小さい四角も出ない (置けるように見えて置けない、を作らない)。
部品・配線・節点を間へ落とそうとしたら、書き込む前に断る。 -
交点の間を指す番地が書けるようになった (
b5c3= b5 から 0.2 行下・0.3 列右)。
綴りは circuit と同じ「行の英字 + 列の数字」の組で、1 組で小数第 1 位まで。
レール番地にも付く (+t20c5)。書けるのは注釈だけ。 部品と配線は穴に挿すものなので交点そのものを指し、
間を書くと行番号つきで断る。これで注釈を溝の中・穴と穴の間・レールの外側
へ置ける (実機で「text はどこでも移動できるようにする」)。
端数は次の行までの隔たりで測るので、0.5と書けば溝のちょうど真ん中に来る。 -
マイコンボードのピン名にヘッダの番号が付いた (
01 GP0/VBUS 40)。
実物のピンアウト図と突き合わせるときに、何番目の足かを数え直さずに済む
(回路図フェンスと同じ)。番号は足の側の端に来る。 -
回路図にあって板に無かった実物を置けるようになった —
battery(電池
ホルダー)・solar(太陽電池)・speaker・mic(エレクトレット)・
switch(a 接点) /switch-nc(b 接点)。同じ回路を回路図でも実体配線図でも
書けるようにするため (52 の docs/21 の手順 7)。姿は 2 つの板で共有。 -
b 接点のタクトスイッチ (
button-nc) を置けるようになった。形はbutton
と同じ — 実物も外から見て見分けが付かず、図で描き分けると実物に無い情報になる。 -
変圧器 (
transformer) を置けるようになった。 4 本足の形を足した
(巻線の端が 4 つ)。書かれた穴がそのまま足 — 2 本足・3 本足と同じ考え方で、
実物の足の並びは品によって違い、決め打てないため。積層鉄心と巻線の姿は
fence-kit で perfboard と共有する。 -
regulator(三端子レギュレータ) とsma(同軸コネクタ) を置けるように
なった。 perfboard にあって breadboard に無かった 2 つで、どちらも
実物としてブレッドボードに挿せる部品。姿はto92/to220、
male/femaleから選ぶ。板の縁に載せる横置きの SMA (
male-edge) は perfboard だけ —
ブレッドボードに縁は無い。
Changed
-
DIP・SIP・マイコンボードの姿を fence-kit へ引き上げた (
parts/chips.ts)。
図は 1 バイトも変わらない — こちらが基準で、perfboard があちらを
こちらに合わせた (実機で「全ての部品の見た目を breadboard と perfboard で
共通にする。breadboard を基準にする」)。 -
言語をまたいでもパレットが入れ替わるようになった。 1 つの殻が 3 つの
フェンスを扱うので、置ける部品も種類の候補も言語ごとに違う。送っては
いたが受け手が無く、最初に開いた言語のパレットが残っていた。 -
拡張ではなくなった。 掴んで動かす editor もプレビューも文法も、
1 つに畳んだtommie-fenceが出す (52 の docs/19)。このパッケージは
ライブラリ + CLI —<pkg>/coreと<pkg>/editorと<pkg>/pluginを
出し、<pkg> render/checkの CLI はそのまま。
入れるのはtommie-fenceの 1 つだけ で、古い 3 つは消す
(make installが先に消す)。 -
フェンスの一覧の横に前後のボタン (
‹›) が付いた。 一覧を開いて
選び直さずに隣のフェンスへ行ける。端では止まる (巻き戻ると、最後まで
来たことが分からない)。 -
升目にスクロールバーが常に出るようになった (縦・横とも)。図が箱に
収まっていても場所を空けておくと、拡大したときに幅が動かない。
中ボタン (かSpace+ ドラッグ) で動かす操作は今までどおり。 -
フェンスの一覧が「行番号: 題」になった (
185: 図01 LED)。行番号は
3 桁に揃える (001012)。
上から順に並ぶ一覧なので、頭が揃っていると目で追える。 -
複製したら写しが選ばれるようになった。 そのまま動かせば写しが動く —
元が選ばれたままだと、複製したのに元を動かしてしまう。まとめて複製した
ときは写しを全部選ぶ。 -
Shiftを押しながらクリックすると、まとめ選びに出し入れできるように
なった。入っていなければ足し、入っていれば外す。帯で囲むだけでは作れない
飛び飛びの組が作れる。 -
1 つの殻で複数のフェンスを扱えるようになった (
createSessionに
実装をいくつでも渡せる)。同じ.mdに circuit と perfboard が並んでいても、
いまのフェンスの言語で引く。一覧には言語が添う。
1 つ渡せば今までと同じ動きなので、いまの拡張はそのまま。editor を 1 つに畳む足回り (52 の docs/19 の手順 1〜2)。
-
領域で囲んでまとめて選べるようになった。 何も無い所から引くと帯が出て、
中心が入った部品を全部選ぶ。動かす・回す・反転・複製・消すが選んだ全部に
効く。書き換えは 1 回にまとめる — 1 つずつ当てると、戻すのに選んだ数だけ
押すことになる (選んだのは 1 回なので、戻すのも 1 回であるべき)。
途中で断られたものは飛ばして続け、何件できなかったかを言う。動かすときは押した部品の動きをほかにも掛ける。行き先は 1 つしか
来ないので、その差だけ全部をずらす。 -
パレットに部品の姿が出るようになった。 名前の前に実物の姿を置く。
以前は「小さな枠に落とすと読めない別物になる」として出していなかったが、
胴はもともと小さい (抵抗で 38 × 13) ので縮めずに置ける。
図と同じ関数で描くので、姿を直すとパレットも一緒に直る。 -
主なフットプリントを一通り足した。 実物で姿の分かれるものを、
姿として選べるようにした (resistor/halfのように書く)。種類 姿 resistorquarter(1/4W) /half(1/2W)。実物なりに胴が大きくなるdiode/zener/schottkydo35(ガラス管) /do41(黒いプラスチック)inductoraxial(芯に巻いた軸物) /radial(樹脂で固めた立てた缶)potentiometertrimmer(ねじで回す半固定) /knob(軸の立つボリューム) -
属性パネルの種類の欄で姿を選べるようになった (
crystal/cylinder)。
候補に姿つきの綴りも並ぶので、姿を変えるためだけに本文へ戻らずに済む。 -
言うことの行番号を Markdown の行にした。 これまでフェンスの中の数え方で
出していたので、書き手が Markdown の何行目かを数え直すことになっていた
(実機で指摘された)。プレビューでも CLI でも.mdの行番号で出る
(.yamlを丸ごと 1 枚として描くときはそのまま)。 -
配線を選ぶと、左の属性パネルで色を選べるようになった。 これまで配線は
行が光るだけで、色を変えるには本文を直すしかなかった。空にすると色の語ごと
消えるので、図の既定の色に戻すのも同じ欄でできる。
掴み手は書かれた行 (注釈と同じ考え方で、名前の無いものは行で指す)。 -
ゴーストの絵が穴からずれることがあったのを直した。 絵と穴を重心で
合わせていたが、足の並べ方は板が決めるので、板の端では左へ伸びたり右へ
伸びたりする。伸びる向きが変わると重心がずれて、絵が穴から離れた。
アンカー (先頭の穴) で合わせる — 置くのも動かすのもアンカーが押した穴に
来る決まりなので、そこを合わせれば必ず揃う。 -
textの注釈の書き方を 3 つのフェンスで揃えた。
- text 番地 [語]: 字の 1 つの形にする。語は色と向きで、順不同。
向きの語 (r90/r180/r270/mirror) も 3 つで同じ綴り。
breadboard の書き方は前から- text 番地 [語]: 字だったので変わらない。 -
道具の絵とマップの色を、テーマのグラフ色から実色に変えた。 グラフの
系列色は明るいテーマだと淡く出て、橙が黄色に寄って読めなかった (実機で
「黄色は見にくい」と指摘された)。白地でも黒地でも読める濃さに決め打ちした。
カーソルの下の印も同じ橙だったので、あわせて直した。 -
注釈 (
notes:) を掴めるようになった。 選ぶ・動かす・複製する・消す・
字を直すが、部品と同じ手つきでできる。掴み手は書かれた行 — 注釈には
名前が無いので、行そのもので指す (配線と同じ考え方)。
2 点で形が決まる注釈 (box/arrow/line) は両方の指し先が一緒に動く。部品を指している注釈は動かさない (
- circle R1)。指し先を番地に
書き換えると名前が外れ、あとで部品を動かしても注釈が付いてこなくなる。
動かすなら部品のほうを動かす、と理由を言って断る。 -
textの注釈に向きを書けるようになった (- text d4 r90 red: ここから電源)。
語は部品と同じr90/r180/r270/mirrorで、向きを書けるのはtext
だけ。部品と違って 4 方向とも回る — 板の溝は部品の置き方を縛るが字は縛らない。
回るのは指し先のまわりで、mirrorは字を裏返さず指し先の反対側へ移す
(鏡文字は読めない)。 -
道具の絵に色が付いた。 白黒の絵が 9 つ並んでいて見分けにくかった。
意味の同じ道具は同じ色 — 増える (部品・複製) が緑、つなぐ (配線) が青、
動く (動かす・引きずる) が橙、向きが変わる (回す・反転) が紫、
減る (消す) が赤。9 つに 9 色を配ると、色そのものが手がかりにならない。
右クリックの一覧も同じ色にする。 -
メニューから選んだ部品も、置く前に実物の姿で見えるようになった。
行き先の穴を光らせるだけでは何を置こうとしているのか読み取れなかった。
動かすときと同じ見え方に揃えた (置けないときは赤く濁る)。
名札も置いたときに付く名前で出る。図にまだ無い部品なので、試し当てで作った写しの図から切り出して渡す。
姿が変わったときだけ組み直す — 場所を変えただけなら前の絵をずらすので、
穴をまたぐたびの重さは増えない。 -
style: check: offで図の中身の検査を外せるようになった (perfboard にしか
無かったものを 3 つに揃えた)。debug: offとは違う — あちらは「言うのを
やめる」、こちらは**「見るのをやめる」**。外れるのは読めているものへの検査だけで、
読めなかった行は必ず出る。
外れるのは「足と配線が同じ穴に来ている」のお知らせ。 -
図に書き出せるフェンスの行数を 80 行から 1000 行にした。 項目ごとの上限を
全部使い切るとフェンスは 1000 行を超えるので、80 行では自分の図の書き出しさえ
切れていた。709 行のフェンスで 0.06 秒・530KB と測れたので、重さは問題にならない
(circuit は 1 行ごとに TeX の節点が増えるぶん重く、309 行で 6.8 秒)。 -
CLI に
--versionが付いた。 版を答えて終わる (図に刻むなら
style: stamp: on)。circuit にしか無かったものを 3 つに揃えた。 -
CLI が空のディレクトリを黙って通さなくなった。
.mdも.yamlも無い
指定を渡した CI が、何も検証しないまま緑になっていた (perfboard にしか
入っていなかった守りを 3 つに揃えた)。
Fixed
-
注釈を交点の間へ動かすと、端数が黙って捨てられていた。 番地の文法には
組 (d3c3) があり升目も 1/10 升を送っていたのに、書き込むときに升へ
吸い付いていた (掴んだ場所と書いた場所が食い違う)。端数ごとずらすようにした。 -
名札がぶつかったら 1 行下げるようになった。 隣り合う行に部品を置くと、
上の部品の名札と下の部品の名札が同じ高さに並んで重なっていた (3 本足は
足の名前の 1 行下に名札が来るので、1 行違いでもぶつかる)。先に書いた
部品の名札は動かないので、部品を書き足しても図の他の場所は動かない。
板に書いた注釈も先に場所を取る — 番地で置き場所を書いたほうが強い。 -
名札が乗る所には板の列番号を印字しなくなった。 縁取りでは消しきれず、
字の隙間から欠けた数字が覗いて汚れて見えていた (TH1 10kの間に5の
欠片が出ていた)。番号は 5 列おきに何度も出るので、1 つ伏せても数えられなくならない。
逃がした名札は配線もよける (描く位置と同じ勘定をrender/captions.tsに集めた)。 -
マイコンボードの名前が足の名前と重ならなくなった。 基板の中 (チップの
手前) に置いていたので、長い足の名前 (ADC_VREF 35) と食い合っていた。
ほかの部品と同じで胴の下に出す (実機で「すべての部品名は部品の下側に
表示する」)。板の 2 つとも同じ。 -
変圧器とタクトスイッチの名前も胴の下に出るようになった (
transformer/
button/button-nc)。押しボタンだけ胴の上に出ていて、ほかと側が揃って
いなかった。 -
部品名がいつも胴の下に出るようになった。 溝の側へ振り分けていたので、
上のブロックと下のブロックで名前の出る側が変わり、同じ図の中で揃わなかった
(photodiodeなど下のブロックの部品が上に出ていた)。3 本足の足の名前も同じ側へ。 -
名札が胴に乗らなくなった。 胴の外へ逃がす距離を決め打ちにしていたので、
背の高い胴 (円板のバリスタ・CdS・サーミスタ、箱のヒューズ・ランプ・電池・
太陽電池・スイッチ、砲弾のダイオードの仲間、スピーカー) で字が本体に重なって
いた。胴の高さから測るようにしたので、姿で背の変わる部品
(capacitor/electrolyticなど) も一緒に逃げる。 -
1 列ヘッダ (
sipN) のピン名が本体にも穴にも乗らなくなった。
本体の縁から穴の列までの半ピッチ足らずに収まるよう、字の高さを見て置く。
本体の帯もわずかに薄くした。 -
穴の綴りを数える
stepが、端数の行・列に読めない綴り (a5.25) を黙って
返していた。 升目は端数を送らないので踏んでいなかったが、null を返すように
した (穴の間は文法に無い)。Ctrlを押しながらのクリックは、この板では
素のクリックのまま (52 の docs/23)。
perfboard-fence-v0.1.0
最初のリリース。 ```perfboard フェンスで、2 本足の部品なら
置いて・つないで・検証して・書き出すところまで動く。
Added
- パッケージの骨格。
```perfboardフェンスを認識し、読めなかったところを
行番号つきのカードで返す (Phase 0)。 - 板と穴を描くようになった (Phase 1)。
board: 28x18(列 × 行) と書くと、
その大きさの板が、行の名前 (ab…aa) と列の番号を添えて出る。
番地はb3の形。 - 2 本足の部品を置けるようになった (Phase 2)。
R1: resistor b3 b7 10kと書くと、2 つの穴を結ぶ線の上に胴が寝る。
抵抗は値が読めればカラーコードを塗り、LED は書かれた色で光る。
1 つの穴に 2 本目の足は挿せないので、重なりは行番号つきで返す。
3 本足・DIP・SIP はまだ。 - 配線を引いてネットリストが出るようになった (Phase 3)。
- b7 -- c5 redと書くと 2 つの穴をまっすぐ結ぶジャンパが引かれ、
そこから導通をたどってネットリストが出る。points:で穴に名前を付けると、
配線の端にその名前を書け、ネットの名前にもなる。
全穴が独立しているので、配線を書かないと何もつながらない。 - ERC が入った (Phase 4)。図のとおりに組むと動かないところを、行番号つきの
お知らせで返す。見るのは 3 つ — どこにもつながっていない足、配線で短絡した
部品、部品の足を 1 つもつないでいない配線。points:で名前を付けた穴は
「基板の外へ出る」意思表示として見逃す。
読めなかったところがあるうちは掛けない (掛けていないことは言う)。 - 当たり判定と足の間隔を見るようになった (Phase 5)。足の穴が別でも
胴が重なる組を名指す。軸物 (胴の両端から足が出る部品) が実物では
入らない間隔に置かれていたら、その穴を名指して言う。 - 図に題を付けられるようになった (
title:)。 - CLI が入った (
perfboard-fence render/check)。.mdからフェンスを
取り出して.svgに書き出す。checkは何も書かずに検証だけする
(読めない行が 1 つでもあれば終了コードは 1)。 - 例と文法リファレンスが入った。examples/ と
docs/01-syntax.md。どのフェンスの直後にもその図を貼ってある。 - 板を名前で書けるようになった。
board: akizuki-c(短くc) や、
実寸の綴り72x47mm72x47.5mm7.2x4.7cmでも同じ板が出る。
持っているのはakizuki-b(36 列 27 行) /akizuki-c(25 列 15 行) /
akizuki-d(17 列 14 行) の 3 つで、穴数は商品写真から数えた値。
数えていない大きさ (7x5cmなど) は、近い板を挙げて返す —
実寸から穴数は計算しない (縁の余白が板ごとにも辺ごとにも違うため)。
単位を書き忘れたboard: 72x47は穴数として読むが、お知らせでそう言う。
Changed
board:が読めなかったときの報告を、理由ごとに言い分けるようにした。
綴りが読めないのか、板が大きすぎるのか、知らない名前なのかで直す手が違う。
circuit-fence-v0.3.1
図もエラーの文面も変わらない。 モノレポ (tommie-fence) へ移したことに伴う
内側の整理だけで、利用者から見た振る舞いは 0.3.0 のまま。
Changed
- 改行の正規化・フェンスの取り出し・markup のエスケープを、共有パッケージ
fence-kitへ移した。escapeXmlとescapeHtmlは名前が違うだけの同一実装
だったので 1 つにまとめた。出力は.texまでバイト単位で無差分であることを
確かめてある。 repositoryをtommie-jp/tommie-fenceに直した。README の図とリンクは
vsceがここを基準に絶対 URL へ書き換えるので、旧リポジトリを指したままだと
archive 後に古い場所を指し続ける。
breadboard-fence-v0.4.0
Added
-
同じ行の 2 穴をつなぐ配線が、行に沿った 1 本の直線になった。 これまでは
3 ピッチを超えると横レーンまで登って戻る遠回りになっていた (b10 -- b14が
a 行の上を回っていた)。実物のジャンパも板の上に寝るので、直線のほうが近い姿になる。またぐ穴が空いているときだけまっすぐ引く。途中の穴に部品の足や別の配線の端が
来ていれば今までどおりレーンへ回す。線は下を通る穴を隠すので、そのまま引くと
そこにもつながっているように見えてしまう。長い配線は部品の胴も避ける
(短いジャンパは避けない。穴 1 つぶんの線をレーンまで回すと、よけた胴より
図を汚す大回りになるため)。同じ行に配線を書いている図は描き直される (例図では 6 枚)。
導通もネットリストも変わらない。 -
配線の端点と足が同じ穴の部品は、同じ列の空いている行へ寄って描かれるようになった。
resistor j17 j20とj20 -- -b20のように書くと、実物では j20 に足とジャンパを
両方挿せない。図は抵抗を i17–i20 に寄せ、配線は書かれた j20 からまっすぐレールへ
下ろす。寄せる向きは配線の出口と反対側で、同じ列の中の移動なのでネットリストは
変わらない。ピン参照 (Re.2) は「そのピンにつなぐ」という明示なので寄せない。この書き方は既存の例のほとんどが使っている慣用なので、多くの図で部品が 1 行
ずれて描き直される (例:+t5 -- a5とresistor a5 a10なら抵抗が b 行へ)。
寄せる先が無いとき (行が全部塞がっている・上下両方から配線が来る・DIP のように
行を変えられない部品) は書かれたまま描き、実物に挿せない旨をお知らせに出す。
Fixed
- DIP と 1 列ヘッダのラベルが、日本語だと本体の枠から飛び出していた。
枠に収まる字の大きさを文字数 × 半角の幅で見積もっていたため、全角の
ラベルを 1.7 倍ほど小さく数えていた (dip8 の本体 78px に対して字が 95px)。
部品リストやキャプションと同じrender/textFit.tsの物差しに揃えた。
英数字だけのラベルも見積もりが 0.58 → 0.55 に揃うぶんわずかに大きくなる
(examples/out/10-bh-ad2.svgのU1 NJM4556Aが 10.03 → 10.58)。