Date: 2009-10-24
Tags: python, windows

ckw のテキスト貼り付けをPythonのInteractiveShellでも正しく動作するように改造してみた

ckw + nyacus はとても便利なんですが、ckw上でpythonのインタラクティブシェルを使用していると、右クリックでのテキスト貼り付け時に \r\n をEnterキー押下と同等では認識せずに文字コードとして\rと\nを貼り付けてしまいます。

例えば以下を貼り付けるとPythonのインタラクティブシェルは1行として受け取ってしまい、変なことになります。:

def foo():
  return 'bar'

シェル(cmd.exeやnyacus)は \r\n を改行として処理してくれるのでPythonの問題のような気はしますが、このままだと不便なので、 \r を受け取ったら破棄して、 \n を受け取ったら VK_RETURN として処理するように改造してみました。

改造したexeを以下に置いておきます。

../../_images/20091024_ckw_python_ng.jpg ../../_images/20091024_ckw_python_ok.jpg