Extend Purpose
This commit is contained in:
parent
384c33e6a6
commit
7f2471103b
23
src/intro.md
23
src/intro.md
@ -1,16 +1,21 @@
|
||||
# 1. 소개(Introduction)
|
||||
|
||||
> Version : 1.0.1
|
||||
|
||||
본 문서는 전북대학교 컴퓨터공학과의 Floor 팀에서 Scrap Yard라는 어플리케이션을 설계 및 구현하기 위한 소프트웨어 요구사항 명세서(SRS)이다.
|
||||
> Version : 1.1.0
|
||||
>
|
||||
> Version Hash : <%= it.gitHash %>
|
||||
>
|
||||
> 본 문서는 전북대학교 컴퓨터공학과의 Floor 팀에서 Scrap Yard라는 어플리케이션을
|
||||
> 설계 및 구현하기 위한 소프트웨어 요구사항 명세서(SRS)이자 어플리케이션의 구조를
|
||||
> 나타내는 설계서이자 어플리케이션의 시험 결과 보고서이다. 정리하면 어플리케이션을
|
||||
> 개발하면서 발생하는 산출물들을 정리한 문서이다.
|
||||
|
||||
## 1.1. 목적(Purpose)
|
||||
|
||||
본 문서의 목적은 프로젝트의 관련된 모든 아이디어들을 정리하고 분석해서 나열하는 것이다. 또한 프로젝트를 더 잘 이해하기 위해 이 제품이 어떻게 사용될지 예측하고 분류하고, 나중에 개발될 요소를 설명하고, 고려 중이지만 폐기될 수 있는 요구사항들을 문서화한다.
|
||||
본 문서의 목적은 첫째로 프로젝트의 관련된 모든 아이디어들을 정리하고 분석해서 나열하는 것이다. 또한 프로젝트를 더 잘 이해하기 위해 이 제품이 어떻게 사용될지 예측하고 분류하고, 나중에 개발될 요소를 설명하고, 고려 중이지만 폐기될 수 있는 요구사항들을 문서화한다. 둘째로 이러한 요구사항을 해결하기 위해 만들어진 설계를 나열하고 문서화하는 것이다. 셋째로 이러한 설계로 구현된 프로그램을 시험을 하고 그 결과를 정리해서 보기좋게 문서화하고 색인하는 것이다.
|
||||
|
||||
## 1.2. 범위(Scope)
|
||||
|
||||
본 문서의 범위는 ScrapYard의 기능들과 그 환경이다.
|
||||
본 문서의 범위는 ScrapYard의 기능들과 그 환경 그리고 상세 설계 및 인터페이스이다.
|
||||
|
||||
ScrapYard는 문서 작성 밎 문서를 아카이빙 할 수 있는 웹 어플리케이션이다. 같이 제공되는 확장기능을 통해 북마크(즐겨찾기)를 구조적으로 보관할 수 있고 미리보기를 보여줄 수 있다.
|
||||
|
||||
@ -27,7 +32,8 @@ ScrapYard는 문서 작성 밎 문서를 아카이빙 할 수 있는 웹 어플
|
||||
|
||||
## 1.4. 참고자료(References)
|
||||
|
||||
- [repo](https://github.com/vi117/scrap-yard)
|
||||
- [repository](https://github.com/vi117/scrap-yard)
|
||||
- [document repository](https://git.prelude.duckdns.org/ScrapYard/SRS)
|
||||
- [react](https://reactjs.org/)
|
||||
- [recoil](https://recoiljs.org/)
|
||||
- [MUI](https://mui.com/)
|
||||
@ -36,4 +42,7 @@ ScrapYard는 문서 작성 밎 문서를 아카이빙 할 수 있는 웹 어플
|
||||
|
||||
## 1.5. 개요(Overview)
|
||||
|
||||
2장에서는 종합적인 요구사항을 서술하고, 3장에서는 기능 및 UI에 대해서 상세한 요구사항을 설명한다.
|
||||
2장과 3장은 SRS(소프트웨어 요구사항 명세서)의 양식에 맞추어 작성되었다. 2장에서는 종합적인 요구사항을 서술하고, 3장에서는 기능 및 UI에 대해서 상세한 요구사항을 설명한다.
|
||||
4장은 SRS의 추가 이력사항에 대해서 서술한다. 여기에서는 어플리케이션 개발 일정표가 포함되어 있다.
|
||||
5장은 어플리케이션의 상세한 설계에 대해서 서술한다.
|
||||
6장은 개발된 어플리케이션의 시험과 그 결과에 대해서 서술한다.
|
||||
|
@ -54,7 +54,6 @@
|
||||
%><%=`${subIndex++}. #${i.number} ${i.title}\n` %><%
|
||||
}
|
||||
%>
|
||||
|
||||
<%
|
||||
}
|
||||
%>
|
||||
|
@ -19,18 +19,20 @@ class StderrHandler extends WriterHandler {
|
||||
}
|
||||
|
||||
interface Book {
|
||||
sections: Section[];
|
||||
sections: BookItem[];
|
||||
}
|
||||
interface Section {
|
||||
//chapter or separtor or PartTitle
|
||||
type Separator = "Separator";
|
||||
//type PartTitle = ;
|
||||
type BookItem = Separator | {
|
||||
Chapter: Chapter;
|
||||
}
|
||||
|
||||
interface Chapter {
|
||||
name: string;
|
||||
content: string;
|
||||
/** section number */
|
||||
number?: number[];
|
||||
sub_items: Section[];
|
||||
sub_items: BookItem[];
|
||||
path?: string;
|
||||
source_path?: string;
|
||||
parent_names: string[];
|
||||
@ -66,6 +68,13 @@ function toHeadId(name: string){
|
||||
return name.replaceAll(/[^A-Za-z\s0-9]/gi,"").toLocaleLowerCase().replaceAll(" ","-");
|
||||
}
|
||||
|
||||
async function getCurrentGitHash() {
|
||||
const res = await Deno.run({cmd:["git", "rev-parse", "HEAD"], stdout:"piped"});
|
||||
const hash = new TextDecoder().decode(await res.output()).trim();
|
||||
res.close();
|
||||
return hash;;
|
||||
}
|
||||
|
||||
async function main(args: string[]) {
|
||||
if (args.length > 1) {
|
||||
//log.info(`args: ${JSON.stringify(args)}`);
|
||||
@ -84,19 +93,26 @@ async function main(args: string[]) {
|
||||
table.set(category,c);
|
||||
}
|
||||
c.push(x);
|
||||
})
|
||||
});
|
||||
const gitHash = await getCurrentGitHash();
|
||||
|
||||
log.info(`start`);
|
||||
log.info(`start\n`);
|
||||
const data = await readAll(Deno.stdin);
|
||||
const jsonText = new TextDecoder().decode(data);
|
||||
await Deno.writeTextFile("log.json", jsonText);
|
||||
const [context, book] = JSON.parse(jsonText) as [any, Book];
|
||||
book.sections.forEach(x=>{
|
||||
x.Chapter.content = Eta.render(x.Chapter.content, {
|
||||
issues: issues,
|
||||
table: table,
|
||||
toHeadId: toHeadId,
|
||||
}) as string;
|
||||
if(x === "Separator"){
|
||||
//skip
|
||||
}
|
||||
else {
|
||||
x.Chapter.content = Eta.render(x.Chapter.content, {
|
||||
issues: issues,
|
||||
table: table,
|
||||
gitHash: gitHash,
|
||||
toHeadId: toHeadId,
|
||||
}) as string;
|
||||
}
|
||||
})
|
||||
//Deno.stderr.writeSync(new TextEncoder().encode(`context: ${JSON.stringify(context)}\n`));
|
||||
console.log(JSON.stringify(book));
|
||||
|
Loading…
Reference in New Issue
Block a user