メモはどこへ行った

自分用のメモです。

AutoHotkey で Alt-Spc で IME 切替え

AutoHotkey で私がよくやる設定 (Windows) です。

要点

  • US 配列キーボードで Alt-Spc に IME 切替えを割り当てる。
  • AutoHotkey を使う。
  • Alt-Spc の元々の機能 (ウィンドウメニュー) は諦めてマウスを使う。
  • AutoHotkey が効かないアプリ (VSCode 等) は PowerToys を使う。

手順

  1. Win-R → "shell:startup" としてスタートアップフォルダを開く。
  2. xx.ahk ファイルを作って中身を以下のようにする。

    !Space::!`

  3. ログインしなおすか、xx.ahk をダブルクリック (AutoHotkey で開く)。
  4. AutoHotkey が効かないアプリは PowerToys の Keyboard Manager で同じことをする。
    • こっちをメインにすると一部アプリで動作が重くなるので、アプリごとの設定のみする。
    • ショートカットの再マップで物理ショートカットを「Alt (Left) Space」、マップ先を「Alt (Left) IME Kanji」、ターゲットアプリを「code」とする (VSCode の場合)。

Python の仮想環境のショートカット

WindowsPython の仮想環境を開くショートカットを作る方法です。

要点

  • PowerShell で ps1 ファイルを実行してウィンドウを開いたままにする」という事の応用です。
  • 仮想環境は venv で作っているものとします。

手順

  1. あらかじめ PowerShell で ps1 ファイルを実行できるようにしておきます。
  2. 仮想環境を開きたいフォルダで右クリックメニューからショートカットを新規作成します。
  3. 「項目の場所を入力してください」に対して、powershell -noexit .venv\Scripts\Activate.ps1 を入力します。
  4. 「次へ」を押して適当な名前をつけて「完了」を押します。
  5. できたショートカットのプロパティを開いて「作業フォルダー」を空にします。

Excel の新規作成テンプレート

エクスプローラで「右クリック -> 新規作成 -> Microsoft Excel ワークシート」した時のテンプレートを自分好みにする方法です。

要点

  • テンプレートの場所をレジストリエディタで確認して、そこにあるファイルを編集します。

手順

  1. Win-R -> "regedit " などとして、レジストリエディタを開く。
  2. HKEY_CLASSES_ROOT.xlsx\Excel.Sheet.12\ShellNew\FileName でパスを確認する。
  3. そこにある EXCEL12.XLSX を一旦デスクトップ等に移して編集する。
    主に以下の設定を変えたくなると思います。
    1. 全選択してホームメニューから
      1. フォント
      2. 配置
    2. Alt-O -> Alt-S して新規シート設定から
      1. フォント
      2. 配置
  4. 保存した EXCEL12.XLSX を元のフォルダに戻す。

Python でリストを転置する

"Python でリストを転置する" についてのメモです。

要点

  • 2次元のリストを展開して zip() すると、転置することができる。
>>> aList = [[11, 12, 13], [21, 22, 23]]
>>> list(zip(*aList))
[(11, 21), (12, 22), (13, 23)]

原理

  • 関数に複数の引数を渡す時、リスト名に * をつけると、展開され各要素が引数として渡される。
>>> aList = [[11, 12], [21, 22]]
>>> '1個めは {} で、2個めは {} です。'.format(*aList)
'1個めは [11, 12] で、2個めは [21, 22] です。'
  • zip() 関数に複数のリスト (イテラブル) を渡すと、各リストの i 番目の要素同士をタプルにして返すイテレータとなる。
>>> listA = ['a1', 'a2', 'a3']
>>> listB = ['b1', 'b2', 'b3']
>>> list(zip(listA, listB))
[('a1', 'b1'), ('a2', 'b2'), ('a3', 'b3')]

VSCode で相対パスの仮想環境を使う

"VSCode相対パスの仮想環境を使う" についてのメモです。
下記の手順で使っている VSCode は Version 1.36.0、Python 拡張は 2019.6.24221 です。

要点

  • VSCodePython Interactive で .py ファイルを実行する時の仮想環境を設定できる。
  • 相対パスで指定しておけば、VSCode でフォルダを開いた時、そのフォルダ内の仮想環境が使われる。

前提

  • VSCodePython 拡張がインストールされ有効である。
  • 仮想環境が、プロジェクトフォルダ以下の決まったパスに存在する。
    • 例 : プロジェクトフォルダ直下の ".venv" フォルダなど。

手順

  1. VSCode の "Settings" を開く。
  2. "Python: Venv Path" を検索する。
  3. "Python: Venv Path" の値として、仮想環境の相対パスを設定する (".venv" など)。
    • 絶対パスを指定したり、複数のパスを指定することも出来るようです。

駄目な場合

"Venv Path" を設定しても仮想環境を使ってくれない場合

  1. F1 を押してコマンドパネルから Python: Select Interpreter を選択して、いずれかの python.exe を選ぶ。
  2. または、Python Interactive Window のツールバーの右端に、Python 3: Idle などと書かれているので、これをクリックして、いずれかの python.exe を選ぶ。

フォルダ右クリックで VSCode で開く

"フォルダ右クリックで VSCode で開く" についてのメモです。

要点

  • VSCode インストール時に「フォルダのコンテキストメニューに "Code で開く" を追加」をしなかった場合の対処法。
  • VSCode では、フォルダを開いている状態にすると、仮想環境などプロジェクトごとの設定を読み込んでくれる。

手順

背景を右クリックした時のメニュー

背景を右クリックした時のメニューに "VSCode で開く" を追加する手順は以下のとおり。

  1. レジストリエディタを開く。
  2. コンピューター\HKEY_CLASSES_ROOT\Directory\Background\shell にキーを追加する(e.g. "VSCode" など)。
  3. 追加したキーの既定の文字列値を "VSCode で開く" などとする。
  4. 追加したキーに "command" というキーを追加する。
  5. "command" の既定の文字列値を "Path\To\Code.exe" "%V" とする。

アイコンを右クリックした時のメニュー

フォルダアイコンを右クリックした時のメニューに "VSCode で開く" を追加する手順は以下のとおり。

  1. レジストリエディタを開く。
  2. コンピューター\HKEY_CLASSES_ROOT\Folder\shell にキーを追加する(e.g. "VSCode" など)。
  3. 追加したキーの既定の文字列値を "VSCode で開く" などとする。
  4. 追加したキーに "command" というキーを追加する。
  5. "command" の既定の文字列値を "Path\To\Code.exe" "%1" とする。

Windows Explorer 新規作成メニュー

"Windows Explorer 新規作成メニュー" についてのメモです。
下記の手順で使っている Right Click Enhancer は、Ver. 4.5.4 の Free 版です。

要点

  • Windows Explorer の背景を右クリックした時の "新規作成" メニューをカスタマイズできる。
  • Right Click Enhancer が使える。Ver. 4.5.4 の Free 版で、十分な機能がある。
  • レジストリエディタが必要な場合も、Right Click Enhancer から開いて、該当のキーを選択した状態にできる。

手順

新規作成メニューを削除する

  1. Right Click Enhancer を起動する。
  2. New Menu Editor を起動する。
  3. 削除したい Extension を選択して Remove (✖) する。
Remove で削除できない場合
  1. New Menu Editor で削除したい Extension を右クリックする。
  2. "Open in RegEdit" を選択する。
    • レジストリエディタが起動して、該当のキーが選択された状態になる。
  3. レジストリエディタで ShellNew を削除する。
    • 削除でなく ShellNew.bak にリネームすれば、あとで New Menu Editor から復活できる。

新規メニューを追加する

  1. Right Click Enhancer を起動する。
  2. New Menu Editor を起動し、追加したい Extension を探す。
    • 追加したい Extension が無ければ File Types Editor で追加する。
  3. New Menu Editor で追加したい Extension を Add (✔) する。