OSDN Git Service

[add] : ブログを更新
authorhayao <hayao@fascode.net>
Tue, 19 Oct 2021 05:28:45 +0000 (14:28 +0900)
committerhayao <hayao@fascode.net>
Tue, 19 Oct 2021 05:28:45 +0000 (14:28 +0900)
blog/new-post.sh
blog/new-post.vbs [new file with mode: 0644]
blog/src/content/posts/20211019/at-school/index.md [new file with mode: 0644]
blog/src/content/posts/20211019/blog-on-windows/dialog.PNG [new file with mode: 0644]
blog/src/content/posts/20211019/blog-on-windows/index.md [new file with mode: 0644]
blog/src/content/posts/20211019/blog-on-windows/windows-1.png [new file with mode: 0644]

index a74a9e4..0713532 100755 (executable)
@@ -4,7 +4,7 @@ set -eu
 
 script_path="$( cd -P "$( dirname "$(readlink -f "${0}")" )" && pwd )"
 
-[[ -z "${1-""}" ]] && echo "引数としてページ名を英語で短く指定してください" >&2 && exit 1
+[[ -z "${1-""}" ]] && echo "Set English short title for argument" >&2 && exit 1
 
 cd "${script_path}" || return 0
 filename="posts/$(date +%Y%m%d)/${1}/index.md"
diff --git a/blog/new-post.vbs b/blog/new-post.vbs
new file mode 100644 (file)
index 0000000..acdaae2
--- /dev/null
@@ -0,0 +1,7 @@
+Dim Input\r
+Input = InputBox("Set English short title for argument")\r
+Dim objShell\r
+Set objShell = CreateObject("WScript.Shell")\r
+Dim FlSysObj\r
+Set FlSysObj = createObject("Scripting.FileSystemObject")\r
+objShell.Run "cmd /c " & "bash .\new-post.sh " & Input ,0,false\r
diff --git a/blog/src/content/posts/20211019/at-school/index.md b/blog/src/content/posts/20211019/at-school/index.md
new file mode 100644 (file)
index 0000000..32482ba
--- /dev/null
@@ -0,0 +1,55 @@
+---
+title: "学校であったことの日記"
+description: ""
+date: 2021-10-19T14:16:43+09:00
+categories:
+  - "Blog"
+tags:
+  - "Blog"
+draft: true
+---
+
+学校であったことをだらだらと書いてみる。なかなかに今日も面倒だった。
+
+まずは友達Hに卵焼きをもらった。1年の頃からいつももらってる。
+
+最近はそいつの卵焼きの微妙な味の変化もわかるようになってきた。
+
+ぶっちゃけこれが高校生活の毎日の唯一の楽しみみたいなところがある。
+
+あとは科学部の唯一まともに使えるPCをいろいろいじった。
+
+Ivy世代なのでまともとは言えないが他のPCがC2Dなので十分まともだ。
+
+Windows 8.1が動いてるのだが、メニューがClassic Shellになってて笑ってしまった。
+
+流石に学校の先生もあのユーザーインターフェースには耐えられなかったようだ。
+
+あとは最近謎の1年がよく話しかけてくるようになった。
+
+突然廊下で話しかけられて「仲良くなりましょう」とか言われて、コミュ障を発揮してなんとか返事をして逃げて以来、自習室とか廊下ですれ違う度に話しかけられる。
+
+これが男ならまだいいのだが、女が3人くらいの集団で来るのでぶっちゃけ怖い。
+
+個人的な妄想だが、たぶんコミュ障発揮して反応が一瞬どもるのを楽しんでる、それかマジの変人か。どちらにせよ他の教室で遊んでるかぼっちで本読んでるかしかない俺に話しかけてくるやつにろくなやつはいない。相手の意図が一切掴めないからなおのこと怖い。
+
+しかもグータッチとかいろいろをしようとしてくる。これが健全な男子高校生ならかわいい後輩で嬉しいと思うのかもしれないが、女子に恐怖心しか抱かない身としては精神を削られる一方である。本当にやめてほしい。
+
+他には探究活動で作ってたマルバツゲームの進捗を。
+
+勝利判定が丸にしか動かず、バツが勝っても無視されるという致命的なバグがあった。
+
+JSのforループの中にreturnを書くとかいう初心者も驚きのバグ。というかミス。
+
+最近知ったというか言われれば当たり前なのだけど、HTMLのnumberフォームから取得した値もJS上では文字列の扱いらしい。
+
+この暗黙の型変換で随分と悩まされた。以下にTSが素晴らしいのかというのがわかる気がする。
+
+設定フォームの値チェックなんて何もしてないから、少数とか文字とか負の数を入れ放題。
+
+おかげでプレーヤー数を-1、マス目の数を0とかに指定できるクソゲーになってた。
+
+いくら3日で作ったからと言っても過去の自分に呆れ返ってる。
+
+そんなクソコードは[こちら](https://hayao.fascode.net/sanmoku)で遊べる。
+
diff --git a/blog/src/content/posts/20211019/blog-on-windows/dialog.PNG b/blog/src/content/posts/20211019/blog-on-windows/dialog.PNG
new file mode 100644 (file)
index 0000000..bf08d45
Binary files /dev/null and b/blog/src/content/posts/20211019/blog-on-windows/dialog.PNG differ
diff --git a/blog/src/content/posts/20211019/blog-on-windows/index.md b/blog/src/content/posts/20211019/blog-on-windows/index.md
new file mode 100644 (file)
index 0000000..721f2d1
--- /dev/null
@@ -0,0 +1,128 @@
+---
+title: "Windows上でブログを書く環境を構築した話"
+description: ""
+date: 2021-10-19T13:53:23+09:00
+categories:
+  - "Blog"
+tags:
+  - "Blog" "Windows"
+draft: true
+---
+
+もしかしたらこの記事あとからFascodeのブログに載ってこっちじゃ非公開にされるかもしれん。
+
+Windows上でこのブログを執筆できるようにした。
+
+なかなかにいいかんじに構築てきたのでそのメモを残してみる。
+
+## このブログの構成
+
+そもそもこの`hayao.fascode.net/blog`はどういう技術で構成されてるのか。
+
+もともと`hayao.fascode.net`はなおこさんにサーバとドメインを借りて公開してる小さいサイトの集まり。
+
+過去の自分が書いたHTMLとかを保存するために借りてる場所。
+
+でもなんか個人だけのブログってほしいよねってことで作ったのがこのブログ。
+
+完全に私用だし、更新をいつやめるかも不明なのでWPみたいな大掛かりなやつは嫌だった。(もともと好きじゃないし)
+
+ということで趣味が似てそうな(?)山Dに相談したところ教えてもらったのがHugo
+
+テーマとかのソースコードを読んだりいろいろ構築が大変で未だにできてないけどなんとか最低限の形は完成。
+
+新規でHugoを構築する方法を解説してるサイトは何個もあったんだけど、既存のリポジトリのサブディレクトリにHugoを展開する方法はどこにも載ってなかった。
+
+まぁ設定ファイルで強引にいろいろを書き換えることでうまくいけたのでヨシ()
+
+まず最終的なアドレスを`hayao.fascode.net/blog`にしたいので、`/blog/src`にHugoの設定をすべて移動させた。
+
+その上でGitHub Actionsを使って`public`ブランチにHugoでビルドしたHTMLを`/blog`上にぶちまけてもらってる。
+
+コンパイル後のツリーがこの上なく汚いのが現状の課題だけどまぁどうでもいいかな。
+
+## Windows上の環境
+
+というわけでGitを使っているので、Linux上では何の苦もなく構築できた。というか作業は全部Linux。
+
+最近Windows PCを寝室に自作したので、そっちでも書きたいってことでWindowsで環境を整えた。
+
+それがなかなかに曲者で、まずシェルスクリプトやGitが一切使えない。Windows常用者には当然なのかもしれないがLinux信者の俺にはとうてい耐えられる環境ではない。
+
+ということでまずはGitKraken、gpg4win、VScode、Typoraをインストール。
+
+MSYS4みたいなやつは環境が汚くなるしWindowsとの連携も悪いので今回は採用しなかった。
+
+WSL2もディスクのスペースの関係上採用を見送り。OSまるまる打ち込んだらそれなりにサイズ食うからね。
+
+GitKrakenは単体でGitが使えるという便利な代物。
+
+どうせLinuxでもGitのGUiクライアントとしてGitKrakenを愛用してるので迷わずインストール。
+
+署名の設定に手間取ったけどgpg4winと組み合わせることでうまくいった。
+
+lsとかBashが使えないのもかなり問題なので、Busyboxをインストールしてつかえるようにした。
+
+<img src=".\windows-1.png" alt="windows-1" style="zoom:75%;" />
+
+
+
+一番シンプルなLinuxライクな環境になったと思う。
+
+## 新しい記事を作る
+
+Linux環境では新しい記事を作成する小さいシェルスクリプトを書いてそれを使っていた。
+
+Windows歴が短いのでVBSやJScript、PowerShellでこれを書き直すのは面倒なので、短いVBSを書いてシェルスクリプトをBusyBox経由で無理やり実行した。
+
+```vbs
+Dim Input
+Input = InputBox("Set English short title for argument")
+Dim objShell
+Set objShell = CreateObject("WScript.Shell")
+Dim FlSysObj
+Set FlSysObj = createObject("Scripting.FileSystemObject")
+objShell.Run "cmd /c " & "bash .\new-post.sh " & Input ,0,false
+
+```
+
+VBSは学校の社会情報の暇な時間に軽く触った程度なのでどういうバグがあるかわからない。
+
+現状はこれで動いてるのでよしとする。
+
+ちなみにBusyboxで実行してるシェルスクリプトはこれ。
+
+```bash
+#!/usr/bin/env bash
+
+set -eu
+
+script_path="$( cd -P "$( dirname "$(readlink -f "${0}")" )" && pwd )"
+
+[[ -z "${1-""}" ]] && echo "Set English short title for argument" >&2 && exit 1
+
+cd "${script_path}" || return 0
+filename="posts/$(date +%Y%m%d)/${1}/index.md"
+[[ ! -f "${script_path}/${filename}" ]] && hugo new "${filename}"
+type code 1>/dev/null 2>&1 && code "${script_path}/src/content/${filename}"
+
+```
+
+なんでこれがBusyBoxで動いたんだろうって疑問に思ってるんだけど動いたのでおk
+
+hugoだけはhugo.exeというWin版をダウンロードしてきてBusyboxと同じパスにぶちこんでおいた。
+
+実を言うとBusyBoxのBashはBashじゃなくてShなのに、なんでこのBash方言ゴリゴリのコードが動いてるのかまじでわからない。案外行けるもんなんだなって思ってる。
+
+![dialog](C:\Users\hayao\Git\hayao.fascode.net\blog\src\content\posts\20211019\blog-on-windows\dialog.PNG)
+
+
+
+というわけで、Linuxで作ったものを強引にWindowsで動かした経緯を書いてみた。
+
+言いたいことは「OSにあった言語と方法を使え」ってことですかね。
+
+結局エミュレーションとか互換環境ってのはカオスしか生み出さないので。
+
+それでは、また今度。
+
diff --git a/blog/src/content/posts/20211019/blog-on-windows/windows-1.png b/blog/src/content/posts/20211019/blog-on-windows/windows-1.png
new file mode 100644 (file)
index 0000000..aeb8262
Binary files /dev/null and b/blog/src/content/posts/20211019/blog-on-windows/windows-1.png differ