Rider で Save 時に Reformat と Cleanup を実行する方法

Settings > Tools > Actions on Save で Reformat an Cleanup Code にチェックを入れる。 右のプルダウンで、デフォルトでは Full Cleanup Reformat Code Reformat & Apply Syntax Style の中から Clean 方法を、 Whole Changed lines の中から clean 対象を…

【Python】pipをmacOSにインストールする

概要 pipをmacにインストールする方法をまとめた。 環境 macOS Monterey 12.0.1 Apple M1 Python2.7.18とPython3.9.10がインストール済み インストール方法 % curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py % python get-pip.py --user インスト…

【bash】バックグラウンドでコマンドを実行したい場合

sh

例えば % cp file1 file2 このコマンドをバックグラウンドで実行したい場合は % cp file1 file2 & のように語尾に&を付ける 完了すると [1] done cp file1 file2 のようにターミナルに出力される

【terraform】UbuntuのGCEのインスタンスを起動する方法

概要 boot_diskにUbuntuを指定する方法が中々見つからなかったのでメモ。 設定方法 どのUbuntuを使うかを調べる $ gcloud compute images list | grep ubuntu このコマンドを実行する。 2022年2月15日の時点では以下のように出力された。 ubuntu-1804-bionic…

【Rust】テストコード用のマクロ

macro_rules! test_eq { ($func_name:ident, $arg:expr => $ans:expr) => { #[test] fn $func_name() { assert_eq!($arg, $ans); } } } macro_rules! test_ne { ($func_name:ident, $arg:expr => $ans:expr) => { #[test] fn $func_name() { assert_ne!($arg…

【terraform】tfenvとは

tfenvとは tfenvとは複数のterraformのバージョンを管理するためのツール 以下のようなサブコマンドが使える。 install: 指定したバージョンのterraformをインストールする use: 有効化するバージョンを切り替える

gcloud services enable の意味

GCP

概要 $ gcloud services enable ... このコマンドの意味を調べてみました。 gcloud services enable とは? 公式ドキュメントによると消費系のサービスを有効化するために使うコマンドみたいです。 例 Compute Engine APIを有効化する場合 $ gcloud services…

Rustの定数の定義方法

構造体や関数の外でグローバルに宣言できる。 const CONST_NUM: i32 = 10; fn main() {} ドキュメント: https://doc.rust-jp.rs/rust-by-example-ja/custom_types/constants.html

dev-dependenciesの意味

概要 サンプルプロジェクトを見ていて、Cargo.tomlに [dev-dependencies] なる項目を発見し、初めて見たので調べてみました。 dev-dependenciesとは テストコードやexamplesでしか使わないcrateを導入するために用いる様です。 例) test-caseを導入する場合 …

dev-dependenciesの意味

概要 サンプルプロジェクトを見ていて、Cargo.tomlに [dev-dependencies] なる項目を発見し、初めて見たので調べてみました。 dev-dependenciesとは テストコードやexamplesでしか使わないcrateを導入するために用いる様です。 例) test-caseを導入する場合 …

Rustのパターンマッチングまわりの小ネタ

struct Sample { value: i32, } fn main() { let sample = Sample { value: 10 }; println!("{}", sample.value); } この出力は当然 10 になりますね。 それではこの場合はどうなるでしょうか? struct Sample { value: i32, } fn main() { let sample = Sam…

ggezことはじめ

Cargo.tomlの[dependencies]に [dependencies] ggez = "0.6.0-rc1" と入力。 公式のリポジトリのREADMEには"0.6"と書かれているが、これだと stdout : Updating crates.io index error: failed to select a version for the requirement `ggez = "^0.6"` can…

競技プログラミング テンプレ

C++

#include <bits/stdc++.h> int main() { std::cout << "Hello, world!" << std::endl; }</bits/stdc++.h>

Input System (v1.0.2)の導入方法

Input Systemとは? いかなる種類のデバイスの入力も扱うことができる 従来のInput Manager(UnityEngine.Input)の改良版的な立ち位置 インストール方法 動作環境 Unity 2019.1 以上 .NET4 Runtime (.NET3.5 Runtimeでは動かないので注意) PackageのInstall W…

upmのテストが実行できなかった時に試すこと

AssemblyDefinitionFilesをメインのフォルダ下にちゃんと作成する manifest.jsonにtestablesとして登録する

Effective C# 読書メモ

C#

第1章 1.ローカル変数の型はできるだけvarを使うこと 人の手によるミスを防げる コンパイラが最適な型を選択してくれる 2.constよりもreadonlyを使うこと readonlyは実行時に値が決定するので、値が正確 constはコンパイル時に値が決定しILが吐き出されてし…

Enum.Parse

C#

Prefabの生成ファクトリ 

UI Elements, UI Builder 入門メモ

UI Elements UIElementsはretained-modeGUIである。 retained-mode とはコンピュータグラフィックの用語で、グラフィックスライブラリの主要なAPI Desginのパターンである。 UI Builder Reference UIElements: First Steps - Unity Learn 【Unity】Runtime U…

C#でIteratorパターン

using System; using System.Collections.Generic; namespace DesignPatternTest { class Program { static void Main(string[] args) { BookShelf bookShelf = new BookShelf(); bookShelf.appendBook(new Book("Around the world in 80 days")); bookShelf…

ソースコードの読み方

2つのステップから成る。 ステップ1. 全体像を把握する プロジェクトが依存しているランタイムやライブラリ、ミドルウェアを把握する ドキュメントがあれば読む ディレクトリ構造をtreeを実行して調べる 設定ファイルを把握する(どこにあるか、何が設定され…

OpenSiv3DをXcodeではなくてCLionでやる方法

OpenSiv3Dの入手 https://siv3d.github.io/#getting-started こちらからmacOS版のOpenSiv3Dをダウンロードしてください。 CLionで開く CLionでダウンロードしたフォルダを開きます

CLionで相対パスを指定したときにエラーが出る

ファイルを読み込む際など、ファイルのパスを絶対パスで指定した場合はうまくいくのに、相対パスの時はエラーになってしまう。 そんな時の対処法です。 Edit Configuration -> Working Directory を設定 参考 パス変数 - ヘルプ | CLion

CLionでfind_packageがうまく行かないときの対処法

/Applications/CLion.app/Contents/bin/cmake/Mac/bin/cmake にFindhogehoge.cmake を入れる。

CMakeリンク集

CMake : out-of-sourceビルドで幸せになる - Qiita find_packageの動作 - Qiita

OpenGLチュートリアル1 Windowをただ表示する

#include <stdio.h> #include <stdlib.h> #include <GL/glew.h> #include <GLFW/glfw3.h> GLFWwindow* window; // グローバル変数を定義 #include <glm/glm.hpp> using namespace glm; int main( void ) { // GLFWの初期化 if( !glfwInit() ) { fprintf( stderr, "Failed to initialize GLFW\n" ); getchar(); return -</glm/glm.hpp></glfw/glfw3.h></gl/glew.h></stdlib.h></stdio.h>…

Go言語予習

qiita.com 集合 グラフアルゴリズム

型の変換

Go

キャスト var i uint8 = 3 var j uint32 = uint32(i) // uint8 -> uint32 fmt.Println(j) // 3 var s string = "abc" var b []byte = []byte(s) // string -> []byte fmt.Println(b) // [97 98 99] // cannot convert "a" (type string) to type int a := in…

ポインタについて

Go

構造体を生成して変数に代入する時に,構造体の前に&を付けると,変数には構造体の値ではなくアドレスが格納される。 var task Task = Task{} // Task型 var task *Task = &Task{} // Taskのポインタ型 参考 第3章 型システム―型を用いた安全なプログラミン…

typeを用いた既存の型を拡張する

Go

func ProcessTask(id, priority int) { } という関数を考える時、2つの引数id, priorityはどちらもint型。 なので、もし間違えてidとpriorityの順序を逆にして使ってしまっても普通に動いてしまう。 これを防ぐために使えるのがtype 以下のように、int型をty…