# こんにちは[DEV]のみんな; わたしはバッシュで参戦しました、だけど一口で全部!
ここでは、私が見つけて役立つと思ったツールに謙虚な改良を加えたものを共有したいと思います。使い勝手が良くなったと自分では思っています。それは私のデスクトップManjaro Linuxでの話です。
「借りて」改善する、それがモットーですよね?
最初に、私が探していたのは、bash
ターミナル内で関数を使用するためのbashスクリプトでした。Hugoで静的なウェブブログをデザインして作成する過程で、エイリアスとして名前を呼び出して投稿を作成できるものです。通常のやり方に不満はありませんが、なんだか少し不便ですよね?
hugo new posts/your-new-post.md
なぜ2つの単語でなくて1つではいけないのか?そして、毎回パスを指定しなくてはならないのでしょうか?.md
の拡張子も同様です。マークダウン投稿にはハイフンがよく使われるので、それも「自動的に」挿入できないでしょうか?私はそう考えます。
私が考えたのはhugpost my new post
みたいな感じ。私がHugoインスタンスのベースにいると仮定した時、この場合my-new-post.md
という新しいmarkdown
ファイルをそのインスタンスの/content
ディレクトリに作成し、作ったばかりのファイルで_vscode_をそのディレクトリで開く、という一連の作業を一つの短いコマンドで実行したい。どうですか?
私が見つけたのはこのブログ投稿でほぼ私の要望を満たしてくれました。匿名の著者がbash構文を丁寧に説明し、インスピレーションの源をリンクで紹介している点もとても役に立つ内容です。でも、私は新しい投稿を作るだけではなく、それを現在の作業ディレクトリにパイプ
し、さらに私の選択したエディター:_vscode_で開くこともできるようにしたかったのです。
こちらが彼らの記事、Create New Hugo Post Faster With Bashからのスクリプトです:
function hugonp() {
str="$*"
hugo new posts/$(echo $str | sed -e 's/[^[:alnum:]]/-/g' | tr -s '-' | tr A-Z a-z.md).md
}
フルスクリーンモードを終了する
余談: そして、ブログ投稿で使われているその「bitesize」_モードはどうですか?いいツールだと思います。
こちらが私のとっても控えめな拡張バージョンで、|
を2つ使い、2つの呼び出し(1つはスイッチ付き)、そして_ウォーラ!_:
# 例: $:>> hugpost my new post
function hugpost() {
str="$*"
hugo new post/$(echo $str | sed -e 's/[^[:alnum:]]/-/g' | tr -s '-' | tr A-Z a-z.md).md | pwd | code -n .
}
フルスクリーンモードを終了する
カッチョウ! ほんとに控えめなものです。でも、少なくとも私のラップトップでは動作します。
bashスクリプトに詳しくない方のために、上記は通常、ホームディレクトリのベースにある隠しファイルの.bashrc
ファイルに配置されます。リナックスのバージョンによって異なりますが、そうするとターミナルで次のコマンドを打つだけで済みます:
hugpost my new post
フルスクリーンモードを終了する
次の投稿の予告- 私の新しいお気に入りで驚くべき学習ツールについてです: Lurnby
乞うご期待...
こちらの記事はdev.toの良い記事を日本人向けに翻訳しています。
https://dev.to/ludicrousgibs/-hello-dev-world-im-bashing-in-but-all-in-one-bite-a46