railsgirls-jp / railsgirls.jp

Japanese translation of Rails Girls
https://railsgirls.jp/
Other
60 stars 128 forks source link

Rakefileの:directory_with_pageタスクの処理を見直す #761

Open maimux2x opened 10 months ago

maimux2x commented 10 months ago

Rakefileでディレクトリ+ファイルを同時に生成するタスク :directory_with_page を実行する際、

とどのディレクトリにも属さないファイルが作成される。

$ bundle exec rake directory_with_page                 
(in /Users/maimux2x/Documents/Source/RailsGirls/railsgirls-jp.github.io/railsgirls.jp)
mkdir -p .
Creating new page: ./new-page.md

現在、公開されているファイルは何らかのディレクトリ配下にて管理されているため、:directory_with_pageタスクの処理を見直したい。

ガイド・ブログ・独自コンテンツを作成するためのタスクはあるため、:directory_with_page は名前の通りディレクトリとファイルを生成するためのものとして修正する方向でひとまず修正してみる。

urimaro commented 10 months ago

現状、定義されているrakeタスクは以下のとおりです

> bundle exec rake -T                                                                                                                                                                                                                         (master)
rake blog                 # Begin a new post in ./_posts/blog
rake directory_with_page  # Create a new directory and page
rake guide                # Begin a new guide in ./_pages
rake original_content     # Begin a new original_content in ./_pages-jp
rake preview              # Launch preview environment

現状、以下のように棲み分けされていると思っています

コンテンツの呼び名 説明 追加するrakeタスク
ガイド .comのコンテンツを翻訳したもの https://railsgirls.jp/start rake guide
独自コンテンツ .jp独自のコンテンツ https://railsgirls.jp/getting-started-jp rake original_content
ブログ 参加者の感想など https://railsgirls.jp/2023/11/09/kaigi-on-rails-support-for-alumni/ rake blog

rake preview はローカル環境で動作を確認するのに使うタスクですね rake directory_with_page は…🤔


imo 3つのコンテンツ以外のコンテンツを追加する場合を想定したタスクだと理解しています directory_with_page について今の挙動から以下のような意図で作られたのだろうと推測しました

これを踏まえて「このタスクが必要か」を検討するのが良さそうに思いました 必要な場合、追加で以下のようなことを検討すると良さそうに思いました

  1. 拡張子の有無を考慮しない
    指定されたパスにファイルを作成する
  2. 拡張子の有無を考慮する
    1. 拡張子あり
      指定されたパスにファイルを作成する
    2. 拡張子なし
      1. 指定されたパスにディレクトリだけ作成する
      2. 指定されたパスにディレクトリを作り、特定の名前でファイルを作成する
maimux2x commented 9 months ago

@urimaro わかりやすく整理してくださり、ありがとうございます😭✨

私自身の考えは上記にまとめていただいた

拡張子の有無を考慮しない 指定されたパスにファイルを作成する

です。 理由としては

なためです🤔

urimaro commented 9 months ago

以下のように理解しました

rake original_content name=path/to/file を実行した場合、以下のような結果になるということであっていますか?

気になることがあるというわけではなく、どんな動きをイメージしているのか知りたかったので質問しました

maimux2x commented 9 months ago

@urimaro

タスク rake original_content は残す 拡張子の有無は考慮しない

こちらで相違ありません。 ただ、directory_with_page を実行した場合の動作としてはディレクトリの階層は directory/file の一階層の想定でいます。

まとめると以下のように考えています。

■ タスク rake original_content は残す

こちらは現在の実装通り、_pages-jp 配下にファイルを作成するタスク railsgirls.jp/_pages-jp/about.md のようなパスになる

■ タスク directory_with_page も残す

こちらはdirectory/file の一階層でディレクトリとファイルを新規作成する railsgirls.jp/events/index.html のようなパスになる ※railsgirls.jp/ 以下がタスクによって作成される

また、name に渡す文字列は拡張子は考慮せず、ディレクトリ名となる

==========

上記について認識の相違や気になりがありましたら教えていただけると幸いです🙏

urimaro commented 9 months ago

タスク rake original_content は残す

すみません 書き間違えていました:bow: rake original_content ではなく rake directory_with_page のことでした

■ タスク directory_with_page も残す

こちらはdirectory/file の一階層でディレクトリとファイルを新規作成する railsgirls.jp/events/index.html のようなパスになる ※railsgirls.jp/ 以下がタスクによって作成される

また、name に渡す文字列は拡張子は考慮せず、ディレクトリ名となる

理解しました ありがとうございます

maimux2x commented 9 months ago

@urimaro ご確認ありがとうございます🙏 上記に記載の要件で修正あげてみます!