TIL閲覧ツールを作成しました
初めに
TILとは
Today I Learning(今日学んだこと)の略。
毎日の少しの学びを記録していく。
動作環境
Windows10 pro
完全なパスを取得するのにこだわりの技術を使用しているのでその部分を他の環境にも対応しないといけない。
コマンドオプション
TIL登録
私のTIL構成
PS>tree /f
C:.
│ README.md
├─c
│ └─compile
│ README.md
├─firebase
│ README.md
├─powershell
│ import_VisualStudio_code.md
├─Rust
│ ├─json
│ │ README.md
│ ├─std_fs
│ │ README.md
│ └─termcolor
│ README.md
└─security
├─cdb
│ README.md
├─process_hollowing
│ README.md
└─rp++
README.md
登録するには以下のコマンドを入力する
PS>mel init
[ o ] Init Complete
今いるディレクトリ下の***.mdで終わるファイルを登録することができる。
登録しているTILを見る
PS>mel list
[ <3 ] Can Use Commands!!
[ 0 ] /compile/README.md
[ 1 ] /firebase/README.md
[ 2 ] /powershell/import_VisualStudio_code.md
[ 3 ] /TIL/README.md
[ 4 ] /json/README.md
[ 5 ] /std_fs/README.md
[ 6 ] /termcolor/README.md
[ 7 ] /cdb/README.md
[ 8 ] /process_hollowing/README.md
[ 9 ] /rp++/README.md
TILを見る
2パターンの使い方がある。
- 番号を指定する
mel listで出力された左側の数値を指定することで出力できる
PS>mel -n 1 # 1番を指定して出力する
# firebase
## Deploy
deployするときの手順メモ
$ npm run build
$ npm run generate
$ firebase deploy
...
},
logout() {
firebase.auth().signOut()
.then(() => {
this.setUser(null)
}).catch((error) => {
alert(error)
})
},
- pathを指定する
PS>mel /cdb/README.md
# CDB
## 主要コマンド一覧
'''
? - help view
'''
日々の悩み
詰まったところ。
こんなコードになってしまった。
for entry in WalkDir::new(".").into_iter().filter_map(|e| e.ok()) {
if entry.file_name().to_string_lossy().ends_with(".md") {
let path = PathBuf::from(String::from(entry.path().display().to_string()));
let cwd = canonicalize(&path).unwrap();
match cwd.into_os_string().into_string() {
Ok(aa) => {
// create full path
let path_vec: Vec<&str> = aa.split("\\").collect();
let mut index = 0;
for p in path_vec[3..path_vec.len()].into_iter() {
jsontree.push_str(&p);
if index != path_vec.len() - 4 {
jsontree.push_str("/");
}
index += 1;
}
jsontree.push_str("&");
}
Err(e) => {
panic!("{:?}", e);
}
}
}
}
pathBufで所得した値をstringに変換するのにかなり手間取った。
こういった値
C:/path
がほしいところ
"C:/path"
という形になってしまうことがあり、無理やりmatch
にかけて結果として取れた値を使用しているのが不格好だ。
この辺りをもっと改善していきたい。
あとaa
という変数名はやめた方がいいと思いました。
終わりに
- もう少しRustっぽく書けるようになりたいと思った。
- 文章に
。
が多いわね