見出し画像

Visual Studio Codeの環境構築(Python)

概要

個人的に一番大好きなIDE(統合開発環境)いわゆるエディタのVS Codeの環境構築を記載します。

【VS CODEの特徴】
●動作が軽い(主観ですが少なくともJupyter Notebookよりは軽い)
●ショートカットが豊富でエディタの操作がしやすい(一括選択や移動など)。
●拡張機能が豊富
●PythonだけでなくHTMLやJava Scriptなど多言語に対応している

【留意事項】
●一般的よりは自分用のメモレベルです。
●拡張機能は十分理解できていないため機能の重複があるはずですとりあえず動いているのでヨシ!

 Pythonの環境構築は別記事で作成しましたのでご参考までに。

1.インストール

下記サイトからUser Installerでファイルをダウンロードしてファイル実行

画像1

2.事前設定

VS CODEを使いやすくするように調整します。設定画面は左下歯車を押して設定ボタンを押します。

画像6

2-1.Python.exeのパス設定:Python.Path

使用するPythonのパスを設定します。「python.python」で検索して「Python: Python Path」にPython.exeのパスを入力デフォルトは空します。
(※非推奨Depricatedになっているため設定はいらないのかも。)

画像7

2-2.自動補完機能のEnter動作をOFF

自動補完のEnter機能をなくしますTabボタンで充分じゃ!。「accept」で検索して「Accept Suggention On Enter」をonデフォルト->offにします。
これにより自動補完機能が動作しているときEnterを押しても機能が実行されなくなり改行時にイライラしなくなります。

画像9

2-3.型チェック機能::Type checking Mode

型チェック機能を設定します。「Type checking Mode」で検索して「Type Checking Mode」をoffデフォルト->basicにします。
なくてもいいかも。あとPylance入れた後じゃないとダメかも昔入れてたけどPC変えたら入ってなかったから

画像10

2-4.文字区切り(形態素):Word Separators

 VS CODEでは「Ctrl + 矢印」で指定文字区切り文字まで移動できます。区切り文字は「Word Separators」に追記をします。(下記では句点を追加しただけです。これで句点を通り過ぎないようにしました。)

デフォルト値(上図):`~!@#$%^&*()-=+[{]}\|;:'",.<>/?
編集後   (下図):`~!@#$%^&*()-=+[{]}\|;:'",.<>/?。

3.拡張機能(Extensions)の追加

 拡張機能によりVS CODEに便利な機能を追加車でいうオプションできます。ほしい機能があれば適宜追加していきます。

画像2

 拡張機能はいろいろあり下記記事は参考になります。

3-1.Python関係

Python:とりあえず追加

画像4

Python Extension Pack:補完機能やデバッグ機能がつく。

画像5

3-2.日本語設定

Japanese Language Pack for Visual Studio Code:デフォルトが英文ですが日本語に変更できます。

画像3

3-3.自動補完機能(予測変換)

Pylance:自動補完やエラー検索を実施してくれます。

画像8

3-4.Jupyter関係

Jupyter:VS CODEでJupyterを使うために入れます。

画像12

Jupyter Keymap:Jupyter用コマンドを使用するために入れます。(コードセルをCtrl+Enterで実行させるなど

3-5.コードの見映えを変更

Bracket Pair Colorizer:それぞれのカッコBracketに色付けしてくれるため見やすくなります。

Python Indent:コードを改行する時にインデントの高さを自動で調整してくれます。

3-6.ドキュメント作成

 3-6-1.Markdown用:Markdown PDF

 MarkDownでドキュメントを作成したい方向けです。Markdownのドキュメントを作成する場合は拡張子:.mdを選択します。
 なおMarkdown Docを作成する場合は"Markdown: Open Preview to the Side"を選択すると実際の表示を横に並べてみることができます。

 インストールは下記で実行できます。

 なお下記記事の通り、PDF化する場合は「コマンドパレットで「Open Extension Folder」して、yzane.markdown-pdf-x.x.x → template → template.htmlを開き、”{{{mermaid}}}”の文字の下に下記記載」が必要です。

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.10.0/dist/katex.min.css" integrity="sha384-9eLZqc9ds8eNjO3TmqPeYcDj8n+Qfa4nuSiGYa6DjLNcv9BtN69ZIulL9+8CqC9Y" crossorigin="anonymous">
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.0/dist/katex.min.js" integrity="sha384-K3vbOmF2BtaVai+Qk37uypf7VrgBubhQreNQe9aGsz9lB63dIFiQVlJbr92dw2Lx" crossorigin="anonymous"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.0/dist/contrib/auto-render.min.js" integrity="sha384-kmZOZB5ObwgQnS/DuDg6TScgOiWWBiVt0plIRkZCmE6rDZGrEOQeHM5PcHi+nyqe" crossorigin="anonymous"></script>
<script>
 document.addEventListener("DOMContentLoaded", () => {
   renderMathInElement(document.body, {
     delimiters: [
       { left: "$$", right: "$$", display: true },
       { left: "$", right: "$", display: false }
     ]
   });
 });
</script>

 3-6-2.LaTeX用:LaTeX Workshop

 追って

3-7.コード自動生成:GitHub Copilot(★有料)

 コード自動生成するサービスです。よくわからなくても入れてみて使ってみればすごさがわかります。
 2022年8月より有料化されてますのが、普段コードを書く方なら一度は使ってみてほしいサービスです(要Githubアカウント)。

3-8.Docker

 Docker(コンテナ)を使用したい方向け(初心者は不要)

4.特殊設定

4-1.Proxyの設定:社内でGitHub Copilot利用

 通信が必要なサービス(例:GitHub Copilot)は社内で使用するとProxyにより使用できないことがあります。私の例として社内でもGitHub Copilotを使用するためにVS CODEにProxy設定しました。

 初めに「Ctrl + ,」または下記手順で設定画面を開きます。設定画面の右上にあるアイコン「設定(JSON)を開く」を押すと"settings.json"が開きます。

 "settings.json"に「"http.proxy": <Proxy>」と「 "http.proxyStrictSSL": false」を追記します。proxyは各社の情シスにご確認ください。設定後に再起動するとつながらなかったGitHub Copilotが通信できるはずです。

【settings.json ※下記proxyは参考値】
    "http.proxy": "http://111.111.1.11:10000",
    "http.proxyStrictSSL": false,

4-2.ショートカットキーの割り振り

 通常は設定不要ですがショートカットキーの変更したい方は「設定->キーボードショートカット」を選択します。
 私の場合はGitHub Copilotを開くコマンドとJupyterの実行が干渉してしまったため(普段全く使わない)"Open GitHub Copilot"を適当に変更します。

 キーバインドの行yを押すとポップアップが出るため、枠内でショートカットにしたいキーを押してEnterを押すと設定できます。

5.ショートカット一覧

 VS Code使用時に必須のショートカットは下記参照。注意点としてJupyter使用時においてセルブロック内選択/セルブロック選択の2種類がある。これらの切り替えは「Esc」キーで切り替え可能。

【選択】

  • Ctrl+D:選択箇所以降にある同じ文字を1個選択

  • Ctrl+Alt+L:同じ文字を全選択

  • Ctrl+Alt+(上下)矢印矩形選択(選択位置と同じ位置から上下選択)

  • Shift + Alt+ドラッグ(or クリック)矩形選択

【コピー/移動】

  • Shift+Alt+下矢印(↓):選択行を下側にコピー

  • Alt+(上下)矢印:選択行を矢印方向へ移動(行の入れ替え)

  • Ctrl+(左右)矢印:形態素まで移動(2-4節参照)

【画面】

  • Ctrl+|:ウィンドウを分割

  • Ctrl+Alt+(左右)矢印:開いているウィンドウを移動分割

【その他】

6.参考資料

 VS CODEに関連するオススメ資料を記載します。

6-1.チートシート

 下記記事よりショートカット一覧(チートシート)を参照しました。

6-2.My拡張機能一覧

 2022年1月現在の私の拡張機能一覧です。”おすすめ”と出てポチポチしてるので、入れてる理由がわからない機能も結構あります。

7.トラブルシューティング

7-1.JupyterのKernel Connectionエラー

※完全に自分用であり動作の保証はなし

【現象】
 ある日突然Kernelへ接続できなくなりJupyterが使用できなくなった。

【対応事項】
 
下記記事を参考にライブラリのVersion変更やipykernelのインストールをしてみたけど問題は解決しなかった。なおAnacondaの仮想環境を新しく作って動作させてもエラー解決できなかったつまりVS CODE側の設定

Unable to start session for kernel Python 3.8.5 32-bit #728
Unable to start Jupyter notebook on VS Code
How to fix Kernel Error or broken Python in Jupyter Notebook(Youtube)

python -m pip install 'traitlets==4.3.3' --force-reinstall
python -m pip install ipykernel
python -m ipykernel install —user

【解決方法】

 右上の「base(Python)」で似たようなbase(Python ver.)を選択したらいけた。(動いたからヨシ)


あとがき

 今更整理し始めたけど入れた理由を覚えていない拡張機能が多すぎる。思い出したやつもどんどん入れていきたいです。


この記事が気に入ったらサポートをしてみませんか?