2011年7月18日月曜日

IronPythonをVisualStudioで使う

【効能】
構文色分け、インテリセンス

【材料】
【作り方】
  1. 材料を水でよく洗う
  2. インストーラーの指示に従う
    ※ Visual Studio SP1のインストールを促されればそれも入れる
【カスタマイズ】
フォントの色やサイズ
  Visual Stidioのツールメニュー→オプション→環境→フォントおよび色
行番号の表示
  Visual Studioのツールメニュー→オプション→テキストエディター→Python→全般

【トラブル】
◆ Pythonを実行すると画面が10秒ぐらい固まる
  2011年7月時点でPython Toolsの既知不具合。最新版のコードでは修正済みなのでバイナリへの反映待ち。Python Toolsは現在ベータ版(2011年8月に1.0のリリース予定)

2011年7月12日火曜日

Vimで拡張子に応じたテンプレートから新規ファイルを作る

【状況】vimでスクリプトを書くとき、シェバンとかエンコード指示が自動で入ると楽太郎なのに…。
【対応】
~/.vimrcに次の行を追加。新規ファイルが対応テンプレから作られるようになる。

autocmd BufNewFile * silent! :0r ~/.vim/templates/%:e.tpl


・%:eさんは、ファイル名の拡張子部分に変身する
・silent!さんは、対応するテンプレがないときもエラーにせず見逃してくれる
・silent!の次の指示は0行目からRする命令。間違えてAndOrのOrにするとドツボに
・最後のパスはテンプレを置くパス。たとえば拡張子.py用のテンプレートは~/.vim/templates/py.tplとして置いておく。パスは変えてもOK
・Courierのアスタリスクはヒトデ型なので好き(やや関係ない)


【懸案事項】
たまにまっさらのがいいと思うことがある。人間って身勝手。

MacPortsのkinput2でShift+Spaceを無効にする

kinput2は日本語入力切り替えキーにCtrl+OとShift+Spaceの2つを用意している。

【問題点】Shift+Spaceを無意識に発動させてしまうことが頻発する。
【環境】MacOS X 10.6+X11+MacPortsのkinput2とcanna

【対応】Shift+Spaceを無効化し、Ctrl+Oのみで切り替える。

【方法】~/.Xresoucesに次の行を書く。

kinput2*ConversionStartKeys:Mod2

【こんな方にも向いています】
・文字入力時、無意識にShiftキーでタイミングをとっている
・他人のPCで入力していると、ふいにピョロって音が鳴って「ユーザー補助」が発動してしまう(やや関係ない)

MacPortsのPythonのIDLE

MacPortsのPythonのIDLEはX11から起動されます。
環境設定メニューがなぜかごっそり抜け落ちていますが、次のどちらかの方法で設定できます(Mac OS X 10.6 / 10.7)。

  • 設定ファイルを~/.idlerc/直下に作って編集する
    詳しくは下に書きます。IDLEの出荷時設定の書かれたファイルは拡張子がdef、ユーザー設定ファイルは拡張子がcfgです。コピーしてきたときに拡張子を変え忘れると読み込まれません。
  • Mac同梱版IDLEを起動して環境設定メニューから設定し、設定を保存する
    同梱版と設定ファイルが共通なので、反映されます。

【Mac同梱版IDLE】
場所:/usr/bin/idle
  type -a idleでも確認できる
懸案事項:
・日本語を打てない/ペーストすると固まる
・たまにメニュー操作でも固まる

【悩み事】フォントを変えたい
対応:設定ファイル書き換え
編集対象ファイル:
~/.idlerc/config-main.cfg
[EditWindow]
font-size = 12
font = Menlo
font-bold = 1
height = 18
width = 60
encoding = utf-8

【悩み事】上下矢印で履歴を移動したい
  デフォルトはCtrl+PとCtrl+Nで移動。
対応:history絡みのキーを2つ設定
編集対象ファイル:
~/.idlerc/config-keys.cfg
[IDLE Classic OSX]history-next = <Key-Down>
history-previous = <Key-Up>
懸案事項:
Ctrl+Aで行頭に戻ると、プロンプトを通り越す。

【悩み事】日本語を打ちたい
対応:X11でkinput2とcannaを使えるようにする。
懸案事項:設定途中で挫折の可能性

【悩み事】IDLE起動後もターミナルを引き続き使いたい
対応:普通にバックグラウンドで実行してみる。
コマンド:
idle &