학습 로그 생성기
note-writer로 작성된 노트의 git 커밋 히스토리를 분석하여 학습 로그를 생성합니다.
핵심 기능
| 기능 | 설명 |
|---|---|
| 일자별 학습 로그 | 커밋 기반 날짜별 학습 내용 정리 |
| 요약 및 질문 | 핵심 내용 요약 + 복습용 필수 질문 |
| 옵시디언 링크 | 학습 문서 연결 ([[노트명]] 형식) |
| Recap 일정 | 망각 곡선 기반 복습 날짜 제안 |
워크플로우
1단계: 커밋 히스토리 분석
# notes/ 디렉토리 관련 커밋 조회
git log --oneline --since="2024-01-01" --until="2024-01-31" -- notes/
# 상세 커밋 정보 (날짜, 메시지, 변경 파일)
git log --pretty=format:"%h|%ad|%s" --date=short -- notes/
# 특정 기간 커밋된 파일 목록
git log --name-only --pretty=format:"%ad" --date=short -- notes/
2단계: 학습 내용 추출
커밋된 노트 파일에서 정보 추출:
| 추출 항목 | 출처 |
|---|---|
| 주제/제목 | frontmatter name, # 제목 |
| 핵심 요약 | ## 요약 섹션 |
| 키워드 | frontmatter keywords |
| 관련 개념 | frontmatter related, [[링크]] |
3단계: 학습 로그 생성
일자별로 그룹화하여 로그 작성:
## 2024-01-15 (월)
### 학습 내용
- [[React Hooks]] - useState, useEffect 기본 개념
- [[Promise]] - 비동기 처리 패턴
### 핵심 요약
1. useState는 컴포넌트의 상태를 관리하는 React Hook
2. Promise는 비동기 작업의 완료/실패를 나타내는 객체
### 복습 질문
1. useState의 초기값 설정 방식 두 가지는?
2. Promise의 세 가지 상태는 무엇인가?
### Recap 일정
- [ ] 2024-01-16 (1일 후) - 첫 복습
- [ ] 2024-01-18 (3일 후) - 간격 복습
- [ ] 2024-01-22 (7일 후) - 주간 복습
- [ ] 2024-02-14 (1개월 후) - 월간 복습
4단계: 복습 질문 생성
노트 내용 기반 질문 유형:
| 질문 유형 | 목적 | 예시 |
|---|---|---|
| 정의 질문 | 개념 이해 확인 | "X란 무엇인가?" |
| 비교 질문 | 차이점 파악 | "A와 B의 차이는?" |
| 적용 질문 | 실제 활용 | "언제 X를 사용하는가?" |
| 관계 질문 | 연결 이해 | "X가 Y에 미치는 영향은?" |
Recap 일정 (망각 곡선 기반)
에빙하우스 망각 곡선을 기반으로 최적 복습 시점 제안:
| 복습 회차 | 간격 | 기억 유지율 |
|---|---|---|
| 1차 | 1일 후 | ~75% |
| 2차 | 3일 후 | ~85% |
| 3차 | 7일 후 | ~90% |
| 4차 | 14일 후 | ~92% |
| 5차 | 30일 후 | ~95% |
출력 형식
단일 날짜 로그
# 학습 로그: 2024-01-15
## 오늘 학습
| 주제 | 카테고리 | 난이도 |
|------|----------|--------|
| [[React Hooks]] | React | 중 |
| [[Promise]] | JavaScript | 중 |
## 핵심 내용
> [!summary]
> React Hooks 중 useState와 useEffect의 기본 사용법 학습.
> JavaScript Promise 패턴과 async/await 비교.
## 복습 질문
1. useState에서 이전 상태 기반 업데이트 방법은?
2. useEffect의 의존성 배열이 비어있으면 어떻게 동작하는가?
3. Promise.all과 Promise.race의 차이는?
## Recap 체크리스트
- [ ] 2024-01-16 첫 복습
- [ ] 2024-01-18 3일 복습
- [ ] 2024-01-22 주간 복습
- [ ] 2024-02-14 월간 복습
## 관련 학습
- 이전: [[2024-01-14 학습 로그]]
- 다음: [[2024-01-16 학습 로그]]
사용 예시
/learning-log-generator 오늘
/learning-log-generator 이번 주
/learning-log-generator 2024-01-01 ~ 2024-01-31
/learning-log-generator 최근 7일