<commit_before># 入出力仕様とか

## ファイル構造
### time_table_change.csv
	日付1, 時間割変更時間, 教科, 時間割変更時間, 教科, ...
	日付2, ...

### task.csv
	日付1, 教科, 課題, 教科, 課題, ...
	日付2, 教科, 課題, 教科, 課題, ...

### event.csv
	日付1, ("休み"とか"月曜振り替え"とか), イベント, ...
	日付2, 上に同じ

### time_table.csv
||月|火|水|木|金|
|:-:|:-:|:-:|:-:|:-:|:-:|
|**1**|代数幾何|コンピューターアーキテクチャ|英語|応用物理|null|
|**2**|||||情報工学実験|
|**3**|保健体育|回路理論|政治経済|電子回路||
|**4**||||||
|**5**|計算機ネットワーク|微分積分|微分積分|歴史|国語|
|**6**||||||
|**7**|null|英文読解|null|特活|データ構造とアルゴリズム|
|**8**|null|null|null|null|||

曜日、時限はcsv内には記述しない
無記述のところは上を参照する

上みたいな感じで保持されている


## pythonで書こう
### データ操作系
	ファイルパスを指す定数
	メソッド群(メソッド名は書き足せ)
		日付を受けてその日の時間割を返す　休みならnullとか返そう
		日付を受けてその日のイベントを返す	なしならnu(ry)
		日付を受けてその日の課題を返す　なしn(ry)
		日付を受けてそれより先に期限のある課題を返す(日付も一緒に)
		日付を受けてそれより先にあるイベントを返す(日付も)(なくてもいいかな)

		日付、時間割変更を受けて　書き込む
		日付、イベントを受けて　書き込む
		日付、課題を受けて　書き込む
		時間割を書き込む　or　新しくファイルを作ってパスを書き換える？
		ファイルパスを書き換える

		ある程度古いデータを削除する(予定は未定)


### APIアクセス系
#### LINE
##### reply
		日付を送られたらその日付の時間割、課題、イベントを送る
		(明日、昨日、明後日を特別に受け付ける)
		"登録"が先頭についていたら、その日に登録
		(キーワード認証するかも?)
		次の語が時間割、課題、イベントならそのパターンに応じて書き込む
		例
			登録
			課題
			微分積分
			プリント

			登録　課題　微分積分　プリント

		いくつかのまとめて登録パターン実装したい(希望)


##### push
		毎日8時に明日の予定を通知
		時間割
		課題
		イベント<commit_msg>仕様変更、仕様の確定追加<commit_after># 入出力仕様とか

## ファイル構造
日付 = 月二桁/日二桁 (str)

### time_table_change.csv
3限目と4限目が教科1に -> 3.4,教科1

	日付1, 時間割変更時間, 教科, 時間割変更時間, 教科, ...
	日付2, ...

### task.csv
	日付1, 教科, 課題, 教科, 課題, ...
	日付2, 教科, 課題, 教科, 課題, ...

### event.csv
	日付1, ("休み"とか"月曜"とか), イベント, ...
	日付2, 上に同じ


### time_table.csv
||1|2|3|4|5|6|7|8|
|:-:|:-:|:-:|:-:|:-:|:-:|
|**月**|代数幾何|代数幾何|保健体育|保健体育|計算機ネットワーク|計算機ネットワーク|null|null|
|**火**|コンピュータアーキテクチャ|コンピュータアーキテクチャ|回路理論|回路理論|微分積分|微分積分|英文読解|null|
|**水**|英語|英語|政治経済|政治経済|微分積分|微分積分|プログラミング|プログラミング|
|**木**|応用物理|応用物理|電子回路|電子回路|歴史|歴史|特活|null|
|**金**|null|情報工学実験|情報工学実験|情報工学実験|国語|国語|データ構造とアルゴリズム|データ構造とアルゴリズム|

曜日、時限はcsv内には記述しない
無記述のところは上を参照する

上みたいな感じで保持されている


## pythonで書こう
### データ操作系
	ファイルパスを指す定数
	メソッド群(メソッド名は書き足せ)
		日付を受けてその日の時間割を返す　休みならnullとか返そう
			get_time_table()
		日付を受けてその日のイベントを返す	なしならnu(ry)
			get_event
		日付を受けてその日の課題を返す　なしn(ry)
			get_task
		日付を受けてそれより先に期限のある課題を返す(日付も一緒に)
			get_task_list
		日付を受けてそれより先にあるイベントを返す(日付も)(なくてもいいかな)

		日付、時間割変更を受けて　書き込む
			update_time_table
		日付、イベントを受けて　書き込む
			update_event
		日付、課題を受けて　書き込む
			update_task
		時間割を書き込む　or　新しくファイルを作ってパスを書き換える？
		ファイルパスを書き換える

		ある程度古いデータを削除する(予定は未定)


### APIアクセス系
#### LINE
##### reply
		日付を送られたらその日付の時間割、課題、イベントを送る
		(明日、昨日、明後日を特別に受け付ける)
		"登録"が先頭についていたら、その日に登録
		(キーワード認証するかも?)
		次の語が時間割、課題、イベントならそのパターンに応じて書き込む
		例
			登録
			課題
			微分積分
			プリント

			登録　課題　微分積分　プリント

		いくつかのまとめて登録パターン実装したい(希望)


##### push
		毎日8時(予定)に明日の予定を通知
		時間割
		課題
		イベント
{'fraction_non_alphanumeric': 0.17946796553016112, 'fraction_numerical': 0.013488197826901461, 'mean_word_length': 4.816993464052287, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4064921', 'n_tokens_mistral': 2404, 'n_tokens_neox': 2454, 'n_words': 180}