Tera Term ini ファイルでの設定事項

長年継ぎ足し継ぎ足しで使ってきた ini ファイルについて、2024.09 時点の最新 5.3 同梱の TERATERM.ini と diff して点検してみました。差分を挙げてみます。

コピーペースト

DisablePasteMouseMButton=off
ConfirmChangePaste=off
ConfirmChangePasteCR=off
DelimList=$20!"#$24%&'()*+,-./:;<=>?@[\]^`{|}~

中ボタンによるペーストは無効にする理由がわかりません。就職して配属された職場では、Apple のコンピュータはマウスのボタンが1つ、PC/ATのマウスはボタンが2つ、ワークステーションやサーバのマウスはボタンが3つでした。ホイールは存在しませんでした。インプリンティングとは恐ろしいもので、ホイールが登場してからも中ボタンを押すことでペーストされることは「普通の挙動」なのです。

クリップボードの内容を貼り付ける意思を持ってペーストの操作をしている時には、それを阻害されたくありません。この貼り付け確認機能が事故防止であることは理解しますが、同じ内容を複数のウィンドウに改行を含めてポンポン貼り付けていくという操作をする際には、作業効率の低下によるストレスの方が事故を惹起する要因になりかねないので、都度都度の確認は不要なのです。

DelimList には - . / ~ を追加しています。減らした文字はありません。これも新人の頃に jxterm か何かの挙動に合わせたような淡い記憶があります。

色の設定

ANSIColor=0,28,28,28, 1,208,90,110, 2,27,129,62, 3,201,152,51, 4,0,98,132, 5,102,50,124, 6,58,143,183, 7,254,223,225, 8,83,89,83, 9,245,150,170, 10,93,172,129, 11,220,184,121, 12,123,144,210, 13,178,143,206, 14,81,168,221, 15,189,192,186
VTColor=189,192,186,11,16,19
VTBoldColor=144,180,75,11,16,19
VTBlinkColor=215,84,85,11,16,19
VTReverseColor=255,255,251,67,67,67
URLColor=105,103,171,11,16,19

時々、訳も無く眠れない夜があります。そんな時に、「本邦の色彩を用いて ANSI color を構成してみたらどうだろう?」とやってみたものです。

No R,G,B, RGB 名前 読み方
Black 0 28,28,28, 1C1C1C SUMI
Red 1 208,90,110, D05A6E 今様 IMAYOH
Green 2 27,129,62, 1B813E 常盤 TOKIWA
Yellow 3 201,152,51, C99833 桑茶 KUWACHA
Blue 4 0,98,132, 006284 HANADA
Magenta 5 102,50,124, 66327c SUMIRE
Cyan 6 58,143,183, 3a8fb7 千草 CHIGUSA
White 7 254,223,225, fedfe1 SAKURA
Black 8 83,89,83, 535953 青鈍 AONIBI
Red 9 245,150,170, f596aa MOMO
Green 10 93,172,129, 5dac81 若竹 WAKATAKE
Yellow 11 220,184,121, dcb879 白橡 SHIROTSURUBAMI
Blue 12 123,144,210, 7b90d2 紅碧 BENIMIDORI
Magenta 13 178,143,206, b28fce USU
Cyan 14 81,168,221, 51a8dd 群青 GUNJO
White 15 189,192,186 bdc0ba 白鼠 SHIRONEZUMI

Text

属性 R,G,B RGB 名前 読み方
Normal 189,192,186 bdc0ba 白鼠 SHIRONEZUMI
Bold 144,180,75 90b44b 鶸萌黄 HIWAMOEGI
Blink 215,84,85 ff6000 鉛丹 ENTAN
Reverse 255,255,251 fffffb 胡粉 GOFUN
URL 132,145,195 8491c3 紅碧 BENIMIDORI
Underline 181,160,105 b5a069 枯色 KAREIRO

Background

属性 R,G,B RGB 名前 読み方
Normal 11,16,19 0b1013 黒橡 KUROTSURUBAMI
Bold 11,16,19 0b1013 黒橡 KUROTSURUBAMI
Blink 11,16,19 0b1013 黒橡 KUROTSURUBAMI
Reverse 67,67,67 434343 消炭 KESHIZUMI
URL 11,16,19 0b1013 黒橡 KUROTSURUBAMI
Underline 11,16,19 0b1013 黒橡 KUROTSURUBAMI

ウィンドウの設定

HideTitle=on

画面解像度がどれだけ大きくなっても、画面上にできるだけたくさんのターミナルを並べたいと思う時はあるものです。 タイトルバーを消すことでメニューが消え、矩形選択もできなくなりますが、それでも画面表示面積の方を優先するのです。 メニューは Ctrl-Click で出ますし、ウィンドウの移動は Alt-Drag で、サイズ変更は Alt-Shift-Drag で可能です。

TitleFormat=2

タイトルバーを隠しているのに タイトルバーの書式を設定する意味!?と思われるかもしれませんが、これは BroadCast command ダイアログや Alt-TAB で切り替えるときに「どれだっけ」をわかりやすくするためのものです。

ログ

LogTypePlainText=off
LogTimestamp=on
LogDefaultName=%Y%m%d_x.log
LogDefaultPath=c:\Users\(ユーザ名)\Desktop

自分にとっては、ログ上に ^H などが見えたほうが好ましいのです。またタイムスタンプは作業の証跡として大変心強い要素であり、外すわけにはいきません。

ファイル名は 日付_x.log にしておいて、ログダイアログで x 部分を書き換えて使います。出力パスに %USERPROFILE% とかが使えればよいのですが、今は使えないようです。 デスクトップに出すようにしているのは、デスクトップが散らかってくるとイライラするのでログを所定の場所に片付ける動機になる…という情けない理由です。

ログダイアログは 5.x から使いづらくなってしまい、残念です。

親切機能

EnableClickableUrl=off

ターミナル操作に集中したい時に URL「らしき」文字列を触ってアプリケーションが切り替わってしまうことは作業効率の低下であり、そのストレスは事故を惹起する要因になりかねないので、ブラウザが起動しなくてよいのです。必要であれば URL を自分でコピーしてブラウザに貼り付ければ済む話です。

HistoryList=off

どこに接続したか、を記憶してくれるより、ini ファイルのタイムスタンプの方が重要なのです。

BroadcastCommandHistory=off

自分は、コマンドの履歴をターミナルに覚えてもらう必要はありません。

Beep=off

鳴らないでほしいです。静かに作業したい。

ClearOnResize=off

好き嫌いあると思いますが自分の ini ファイルはいつの間にかこうなってました。

MaxBuffSize=10000

デフォルトの 500000行は、自分には過剰です。たくさんターミナルを開くので、メモリのインパクトが少ない方が好ましいのです。

MaxComPort=8

デフォルトが 256 なんですが、そんなに COMポート無いです。たまに USB 挿した時に 4 より大きなポートになることがあるので、8 にしています。

TranslateWheelToCursor=off

これが「on」になっていると(デフォルトはon)、 マウスホイールを上下回転させたときに矢印キーを押したかのような動きをします。 矢印キーを理解しない古典的なシェル(ksh とか)を使っていると、 この動作は大変困ったことになります。 off にしておくと、ホイールは「期待通り」スクロール上下として働いてくれます。

SSHIcon=flat

これだけ [TTSSH] セクションの話です。この緑のフラットなアイコンが気に入っておりまして。画面上に表示される濃い黄色が目に痛くて変えている、という面もあります。

ここに挙げなかった差分もありますが、おおむねデフォルトで使っている、と言ってよいでしょうか。そんなこと無いか。

Vimconf2017

2014年の会に参加して、しばらく日程が合わず参加できなかった vimconf に
今年は強権発動して日程調整して、無理やり参加できました。
相変わらず nvi ユーザなのに、vim のカンファレンスてどうよ…と自分に疑問を感じつつ。

10:10 - 11:10
Vim, Me and Community
@haya14busa
https://docs.google.com/presentation/d/14pViuMI_X_PiNwQD8nuGRG72GUqSeKDqoJqjAZWS39U/edit

残念ながら遅刻して、最初の方は聞き逃しました。スライドの 43枚めあたりで到着。
「酒が呑めるgif」という言葉にグっときました。

11:20 - 12:05
The Past and Future of Vim-go
@fatih
https://speakerdeck.com/farslan/the-past-and-future-of-vim-go

広く使ってもらうために使われやすいライセンスを明示的に採用することなど、なるほどと思わされる作戦。go はぜんぜん使っていませんが、vim-go を使ってみたいと感じさせられました。

しかし何しろ、翻訳の良さが際立っていました。 "super awesome" が "めっちゃやばい" になったり、ネーミングに .vim と付けるか付けないかなどの迷った点については訳者の私見も交えたり。
内容を理解した上で行われる同時通訳の妙に唸らされました。

13:05 - 14:05
Talk show
@mattn_jp @k_takata @kaoriya
# no URLs. (movie...?)

今半のすきやき弁当、めっちゃ美味しかったです。
壇上にレジェンドが3人。実物の mattn さんを初めて拝見しました。
気になるプラグインとして minpac なるものが上げられていて、そもそもプラグインを全く使わない自分としてはプラグインマネージャから試してみるのがよいのかな、と思ってみたり。

14:15 - 14:45
Creating your lovely color scheme
@cocopon
https://speakerdeck.com/cocopon/creating-your-lovely-color-scheme

最も感動した発表。

  • lovely にするには、まずコンセプトを決める。
  • 背景と前景となる primary color を設定して、あとは色相だけを調整してカラーパレットを作る。
  • そうやって最初にパレットを決めておくと色数が爆発しなくてすむ。
  • positive な要素を増やし、negative な要素を減らす。
  • 先人の知恵を参考にする。

こつこつやること、継続すること。語りに愛を感じる発表だったし、スライドのデザインがこれまた秀逸。

colorscheme を探すときには http://colorswat.ch/vim を使おう。

14:45 - 15:15
vim-mode-plus: The most ambitious vim emulator in the world
@t9md
https://qiita.com/t9md/items/236d09fea9bcdfabdcea

油断してたら英語発表。
でも atom か、そんなら自分はそんなにがっつり関係ないかも、と思っていたら、なんという力強いデモ。うぉ、なんだそりゃ、便利そうではないか、と ぐいぐい惹きつけられました。
このデモの見せ方がとても巧い。タイピングしている内容(キーとその機能)が hover されるし、その hover のフォントサイズはデモしながら on the fly に調整するし。
で、これまた同時通訳が最高に awesome でした。デモの通訳、なんてハードル高いんだ。"「ぽっ」とすると「あっ」てなって「しゅっ」と" とか、ツボりました。

デモで特に惹かれた move-down-to-edge , move-up-to-edge は便利そう…と思っていたら 数時間で haya14busa さんが実装してて「え?え?」とびっくりしました。

https://twitter.com/haya14busa/status/926712287066406912

早い…早すぎるよ…

15:35 - 16:05
Vim and Compatibility
@senopen
http://lamsh.github.io/slide/2017/20171104_VimConf2017/index.html

POSIX原理主義者きたー!?とビビったけど、内容は至ってまとも。ed からのエディタの歴史のまとめとか、現在の主要 distribution で搭載されている vim バージョンとか、資料性も高い。

16:05 - 16:35
neosnippet.vim + deoppet.nvim
@ShougoMatsu
https://www.slideshare.net/Shougo/neosnippetvim-deoppetnvim-in-vim-conf-2017

歌はありませんでした。

16:45 - 17:10
How ordinary Vim user contributed to Vim
@dice_zu
https://speakerdeck.com/daisuzu/how-ordinary-vim-user-contributed-to-vim
http://daisuzu.hatenablog.com/entry/2017/11/04/212947

「大したことしてません」て、いやいやいやいやご謙遜を。「壊れていることがわかる」と「どこを直せばいいかがわかる」の間には圧倒的な違いがありますし、それを upstream にきちんと取り込んでもらって世界中の誰かの時間を節約できているというのは「大したこと」です。

17:10 - 17:30
The new syntax highlighter for Vim
@p_ck_
https://speakerdeck.com/pocke/the-new-syntax-highlighter-for-vim

ruby か、… と思いながら聞きました。外部ツールにぶん投げて結果をうまいこと使う、という発想は好き。

17:30 - 17:50
You've been Super Viman. After this talk, you could say you are Super Viman 2 -- Life with gina.vim
@lambdalisue
https://github.com/lambdalisue/vimconf2017

勢いのある英語発表。
そりゃ「Gina のために vim を使う」という発想も出てくることでしょう。非同期処理は vim8 でも neovim でも使えるように切り出されるという話だし、不慣れな後輩ちゃん達に使ってもらうには敷居は低いほうがいいのは間違いない。


総じて今年も「天才たちの挙動を見られるイベント」でした。内容もさることながら、発表のやり方、見せ方、喋り方、という面でも非常に刺激になりました。
「高まる」とか「感極まる」とか言われるのも頷けます。これで参加費 5000yen は、破格だと思います。
kaoriyaさんはじめ、スタッフ各位の熱意に感服仕ります。

ローカル環境をあまり贅沢にして慣れてしまって素の vi しか無い環境で困るようになってしまわないように気をつけなければならないと自分を戒めつつも、まずは windows機に vim8 を入れて :Terminal を使ってみることにします。

WiMAX 通信状況

AtermWM3300R のあちこちの電波状況をメモしておく。

日付 20100523
場所 茅場町〜要町(走行区間)
状況 電波0

大手町ですら0、池袋ですら0。
ただし、飯田橋の乗り換え間はオートオフで切れてたため、計測なし。
それ以外は、ネゴってる気配もなし。
要町駅改札出てネゴり始め、エスカレータ乗るあたりでアンテナ表示点滅。

2010.06.28 追記

東京メトロの地下部分は全滅と思ってよさそう。
そのかわり(と言っては何だが)、都内の地上ではほぼ問題なし。
カバー率さえ上がれば、転送速度的には間違いなく最強なので、頑張って欲しい。

ssh 経由でコマンドが実行できない時に読むメモ

server 上にあるコマンド hogehoge を

 user@ws% ssh server hogehoge

のように呼び出すことができないことがある。
これは、「リモートコマンドを実行する時、リモート側ではログインシェルは動作しない」という ssh の動作にハメられている可能性がある。

この場合、まず以下のように

 user@ws% ssh server "echo $PATH"

リモート側での PATH を確認する。ここに hogehoge への PATH が含まれていなかったら、ビンゴだ。

  • server の sshd_config で PermitUserEnvironment が Yes になっているか
  • server 上の ~user/.ssh/environment に PATH がちゃんと書いてあるか
  • server 上の ~user/.ssh/environment に書かれている PATH に hogehoge があるか
  • server の hogehoge に、user が実行できる権限があるか

このあたりを確認しよう。ちなみに sshd_config を書き換えた場合、sshd に -HUP を送ってあげる必要がある。

ディレクトリ追加失敗時の挙動はアトミックでない

ちょっとびっくりしたので記録。

ディレクトリを追加する操作で、先行の追加に失敗すると後行はローカル作業ディレクトリだけ管理情報が更新されてしまい、リポジトリには存在しない状態になる。

例えばリポジトリ内に hoge が既に存在し、moge は存在しないとする時に、以下のように両方を追加しようとすると

% cvs add hoge moge (←二つのディレクトリを追加しようとする)
cvs [add aborted]: there is a version in hoge already (← hoge は既にある)
% cvs update
cvs update: cannot open directory /repo/module/moge: No such file or directory
cvs update: skipping directory moge (← moge はリポジトリ内に追加されていない)
% find moge
moge/CVS/Root
moge/CVS/Repository
moge/CVS/Entries
(↑しかし、作業ディレクトリ側の管理情報は、できてしまっている…)

cvs って、ディレクトリ操作はやっぱり苦手なのね。教訓としては…、一個づつやれってことかな。

5.1 には atoll が無い

急遽、AIX 5.1 な環境で long long を使う必要が湧いて出た。値の範囲が long では足りなくなったためだ。
既存のソースでは atol を使っていたので、安直に atoll にすればよいかと思ったが、これがうまくない。無いみたいなのだ。

 AIX5100-09 % oslevel -r
 5100-09
 AIX5100-09 % lslpp -hac bos.rte.libc | sort | tail -1
 /usr/lib/objrepos:bos.rte.libc:5.1.0.69::COMMIT:COMPLETE:07/09/25:10;04;40
 AIX5100-09 % nm /usr/lib/libc.a | grep atol
 ../../../../../../../src/bos/usr/ccs/lib/libc/atol.c f           -
 .atol                T      319216
 .watol               T     1476716
 atol                 D      262148          12
 watol                D      280756          12

一方、AIX 5.2 の libc にはちゃんと装備されているようだ。

 AIX5200-10 # oslevel -r
 5200-10
 AIX5200-10 # lslpp -hac bos.rte.libc | sort | tail -1
 /usr/lib/objrepos:bos.rte.libc:5.2.0.107::COMMIT:COMPLETE:11/27/08:09;41;08
 AIX5200-10 # nm /usr/lib/libc.a | grep atol
 ../../../../../../../src/bos/usr/ccs/lib/libc/atol.c f           -
 ../../../../../../../src/bos/usr/ccs/lib/libc/atoll.c f           -
 .atol                T      305824
 .atoll               T      818548
 .watol               T     1473336
 atol                 D      274048          12
 atoll                D      274060          12
 watol                D      292824          12

AIX 5.1 は既に EOL なので、今さら libc が更新されるとは考えにくい*1。念のため最終FIX (Post ML9 Bundle) まで確認したが、やはり存在しないものは存在しない。仕方がないので strtoll を用いて書いた。書いてみてからいろいろ探ったら、手もとにあった FreeBSD の libc のソース*2によれば、atoll とは strtoll の wrapper のようだ。テストもうまく通った。

規格に照らしてみれば、atoll は C99 に含まれるようだ。逆に言えば C90 には含まれていない。

要するに 5.2 以上に上げなさい…ということで FA と言えよう。