377 Views
March 18, 24
スライド概要
PHASE/0の入力ファイルを作成するのに便利なスニペットを紹介します。
PHASE/0で便利な Snippetsのご紹介 (初心者向き)
はじめに • PHASE/0の入力ファイルをテキストエディタで作るのは大変で すね。 • どう書けばよいのか、思い出せない;書式およびキーワード。 • 間違ったキーワード・不正な書式の入力ファイルでPHASE/0実行して も、エラーにならず、無視されるだけ。 • 実用上は、既存のファイルをベースに書き換えて使用している。 Snippetsで解決(改善)
テキストエディタ何使いますか? • Visual Studio Codeを使って説明します。 • クロスプラットフォームで動作します。 • Windows, macOS, Linux (,Webブラウザ) • 上級者にも満足できる程度に高機能。 • カスタマイズいろいろ • 初心者にもお勧めできるほどにわかりやすい。 • カーソルキーとマウスを使って編集できます。 • Vim、Emacs等向けは賛同者が(いれば)作ってください。 • 統一されたsnippetsができるとうれしい。 • (Github Gistも使ってみます。)
インストール • marketplaceからインストール • https://marketplace.visualstudio.com/items?itemName=matelier.ph ase0-snippets • Github公開;MITライセンス • https://github.com/matelier/vscode-phase0-snippets
使ってみましょう(VSCode) • 拡張機能を有効にする。 • ファイル名:nfinp.dataもしくはnfinput.data • ファイル先頭行を以下のように設定する。 • !-*- PHASE0 -*- • 「ph-」とタイプすると、選択肢が表示されます。それらしい ものを選びましょう。 • 不必要な項目は削除(もしくはコメントアウト)しましょう。 • Snippetにない(特殊な)設定は、マニュアルで調べてくださ い。 • なんでもかんでもsnippetsにすれば良い、とは思いません。 • 完成度高くありません。皆さんのご意見で改良したい、です。
Github Gist • スニペット、コードの断片を保存・共有するサービス。 https://gist.github.com • 利用にはGithubの知識が必要です(初心者向けでない)。 • テキストエディタによっては、Gistを利用するための機能が用 意されています。 • 再び、VSCodeの拡張機能を使います。 • サンプルを二つだけ用意しました。 • accuracyブロック • wavefunction_solver, charge_mixing両ブロック
Github Gistの使い方 • Githubアカウントが必要です。 • Personal access tokenも必要です。 • サンプルgistをforkします。(自分のリポジトリにコピー) • https://gist.github.com/matelier/b608568de5b7d65c8af3c1408a7ee959 • https://gist.github.com/matelier/0c44bb9f6003270511067225436a8f18 • VSCodeにはGist拡張機能があります。 • VSCodeコマンドパレットからGistを選択。 • Command + Shift + P • 別ファイルで開くのでコピペ。 • (気に入ったら★Starをお願いします。) • 自分用に好きなgistを登録できます。
Github Gistの欠点 • (専用拡張機能には劣る) • Github利用知識が必要。 • Githubの機能です。 • 初心者向けとは言えない。 • ソフトウェア開発者であれば、初心者でもGithub利用しましょう。 • 「材料シミュレーションの初心者向け」とは言えません。 • 分散型。中央集権的でない。 • 他者と共通化し難い。 • 個人用のメモの意味合いが強い。 • (各人の改変が容易。カスタマイズ性良好。)
まとめ • Snippetsを活用して、PHASE/0入力ファイルを楽に作りましょ う。 • 皆さんでSnippetsを拡充しましょう。 • “つかいやすい”snippetsを考えるのが得意な方(デザイン) • 他エディタでも拡張機能が使えると良いな。 • Vim得意な方、Emacs得意な方、拡張機能を作ってください。 • 利用環境が異なっても、同一Snippetsが使えると良いですね。