Windows10でキーボード割り当て変更-その2
先週「Microsoft PowerToysのKeyboard Manager」というのがあること知り、行頭・末移動のキーをホームポジションから押しやすいところに変更しました。
- 「無変換」→「home」
- 「変換」→「end」
1週間使ってみたのですが、行頭・末移動以外もやりたくなったのと、
Macのように無変換と変換キーを使ったほうが良さそうなのでガラッと変更してみました。
キーの再マップは行わずに、ショートカットの再マップを行っています。
(Caps LockをAltに割り当てたかったのですが、ブラウザ使用時に単純に別タブ開こうとするとhtmlをダウンロードしたりとよくわからない感じになりやめました)
現在、Caps LockはCtrlに割り当ててます。この割り当てにはPowerToysは使っていません。
参考:Windows10でCaps LockキーをCtrlキーに変更する - アナグマのモノローグ
新しい割り当て
機能 | Linuxショートカットキー | Windowsでのキー | マップ先 | |
---|---|---|---|---|
カーソルを左 | Ctrl + b | ← | Alt + b | backward |
カーソルを下 | Ctrl + n | ↓ | Alt + n | next |
カーソルを上 | Ctrl + p | ↑ | Alt + p | previous |
カーソルを右 | Ctrl + f | → | Alt + f | forward |
カーソルを行頭 | Ctrl + a | home | Alt + a | |
カーソルを行末 | Ctrl + e | end | Alt + e | |
カーソルの文字削除 | Ctrl + d | delete | Alt + d | |
カーソルの一文字前削除 | Ctrl + h | back space | Alt + h |
Windows10でキーボード割り当て変更
Windows10をつかっています。
標準機能で一部変更(設定 -> キーとタッチのカスタマイズ -> キーの割り当て)はできるみたいですが、今回変更したいキーは対象になっていなかったのでメモします。
今回変更したキー
- 「無変換」→「home」
- 「変換」→「end」
検索したところキー割り当てを変更するソフトがいくつかありました。
検討したソフト
AutoHotkeyやChange Keyなども検索に出てきましたがMicrosoftとあるものから試していった結果です。
Microsoft Keyboard Layout Creator
目当てのキーは変更できないと思って諦めました
Microsoft PowerToysのKeyboard Manager
PowerToysKeyboard Manager10 のユーティリティ Windows | Microsoft Docs
直感的な設定でやりたいことをできました。
Microsoftも絡んでるし、このソフトを使っていくことにしました。
まとめ
これで、ホームポジションで行頭、行末移動ができるようになったので何かが捗るはずです。
PowerToysは他にもWindowsを便利にしてくれそうなものがあるので、試して使っていきたいと思います。
VSCodeのターミナルでショートカットキーを使う
VSCodeのターミナルでショートカットキーを使えるようにしてみました。
使えるようにしたショートカットキー
移動
- 行頭
- Ctrl + a
- 行末
- Ctrl + e
- 前(右)
- Ctrl + f
- 後(左)
- Ctrl + b
- ワード単位で前(右)
- Esc + f
- ワード単位で後ろ(左)
- Esc + b
削除
- カーソルの文字
- Ctrl + d
- カーソルの一文字前
- Ctrl + h
- 行頭まで
- Ctrl + u
- 行末まで
- Ctrl + k
- ワード単位で行頭方向の文字列を
- Ctrl + w
その他
- 前のコマンド履歴
- Ctrl + p
- 次のコマンド履歴
- Ctrl + n
- 画面クリア
- Ctrl + l
VSCodeの設定
keybindings.json
に以下の設定をすることで上のショートカットを使えるようになりました
// Place your key bindings in this file to override the defaults [ { "key": "ctrl+a", "command": "", "when": "terminalFocus" }, { "key": "ctrl+e", "command": "", "when": "terminalFocus" }, { "key": "ctrl+b", "command": "", "when": "terminalFocus" }, { "key": "ctrl+f", "command": "", "when": "terminalFocus" }, { "key": "esc+b", "command": "", "when": "terminalFocus" }, { "key": "esc+f", "command": "", "when": "terminalFocus" }, { "key": "ctrl+d", "command": "", "when": "terminalFocus" }, { "key": "ctrl+h", "command": "", "when": "terminalFocus" }, { "key": "ctrl+u", "command": "", "when": "terminalFocus" }, { "key": "ctrl+k", "command": "", "when": "terminalFocus" }, { "key": "ctrl+w", "command": "", "when": "terminalFocus" }, { "key": "ctrl+p", "command": "", "when": "terminalFocus" }, { "key": "ctrl+n", "command": "", "when": "terminalFocus" }, { "key": "ctrl+l", "command": "", "when": "terminalFocus" } ]
viでサーバ内の設定ファイルを修正する
普段はIDEとかを使っていてvi
を使わないので、サーバの設定ファイルを修正する場合に、すごく非効率だったので反省も込めて整理します。
例として、postgresql.confのwork_memを以下のように修正する
#work_mem = 4MB # min 64kB ↓ work_mem = 12MB # min 64kB
今まで
vi postgresql.conf
でファイルを開く/work_m
ぐらいで対象に移動する- インサートモードにして目的の形に修正する
i
- 「#」を削除:「←」、「バックスペース」
- 「4MB」の先頭文字まで移動して「4」を削除:「→」を12回、「バックスペース」
- 「12」を入力
改善
vi postgresql.conf
でファイルを開く/work_m
ぐらいで対象に移動する^
で行頭に移動するx
で「#」の文字を削除する:s/4MB/12MB/
で値部分を置換する
参考)移動系
- 行末へ
- $
- 行頭へ
- ^
- 単語単位で次(単語文字の最初)
- w
- 単語単位で次(単語文字の最後)
- e
- 単語単位で前
- b
- 文字単位で次
- l
- 文字単位で前
- h
もっと改善
vi
で設定ファイルを修正するのはやめる。手順が残りづらいので
% sed -i -e "s/#work_mem = 4MB/work_mem = 12MB/" postgresql.conf
AWSアカウントを作ったら最初にやるべきこと For 自分
AWSは今のところハンズオンなどで利用するだけなので、お金がかからず最低限必要そうなことのみ行いました。
アカウント周り
ルートアカウントは極力利用しないことが推奨されているので、作業用のIAMユーザを作成する
- ルートアカウントのMFA設定する
- パスワードポリシーの設定
- 作業用のIAMユーザを作成する
請求周り
- IAM ユーザー/ロールによる請求情報へのアクセスをアクティブ化する
- 請求アラームを有効化する
- 支払通貨の変更
支払通貨の変更
日本円を選択することで、外貨取扱手数料に相当する費用を削減することが可能になるらしいので。
設定 -> お支払い通貨の設定
お客様のお支払い通貨:USD リンクをクリックする
※ JCBは使えなかったです。
参考
ssmonline #14に参加
ssmonline #14 - connpassの参加(視聴)メモです。
手順書に関しての話をしていました。
手順書の書き方
- 体言止めはやめる。動詞をちゃんと使う。
- 主語と目的語を省力しない。
- よほどの理由がある場合以外は絶対パスを利用する。
- → 普段やってる人がやると無意識に補完してたりするけど、絶対パスで書くのが正解と思いました。
- ダイイングメッセージ性のあるコマンドを使う。
- 設定ファイルの新規作成はヒアドキュメントで書く、変更は
sed -e
がおすすめ。 - → 手順の中で
vi
とかで直で修正してしまうの微妙ですよね、反省します。
- 設定ファイルの新規作成はヒアドキュメントで書く、変更は
- 可読性などを考えると
$()
を使うようにする。
参照する
「正しい」運用手順書を作る /20181106-ssmjp-operation-procedure - Speaker Deck
ShellのGoogleのコーディング規約は目を通す
styleguide | Style guides for Google-originated open-source projects
grepのオプションをうまく使う
- -A NUM で行の後も表示
- -B NUM で行の前も表示
- -C NUM で行の前後も表示
grepのオプションとか確認したことはありますが、使えそうにないと思いスルーしていたのだと思います。
IaCで幸せにならない
運用が続いていく前提で設計していないと、引き継いだ人が困る。
構築した人はできてもその後が大事。
どう構築したか、どうアップデートするつもりか残すこと。
CFnは変更に弱い、引継ぎ大変。
学習コスト高い、AWSの全サービスに対応しているわけではない。
参考:CloudFormationで管理されたシステムの変更でエラー連発した話 - Speaker Deck
CFnは実務で使ったことないのですが、引継ぎ大変はなんでも同じで前任者が学習して構築したものを、後任が無学習で理解できるほどやさしい世界になってしまうと私が仕事でできることは完全になくなってしまうと思ってしまった。
Infrastructure as Codeのつらみの原因を探れ 恐怖症による負のサイクルを断ち切る“予測可能性” - ログミーTech
これ読んでみよう