InfoGrab DocsInfoGrab Docs

GitLab Flavored Markdown (GLFM) 개발 가이드라인

GitLab Flavored Markdown(GLFM)의 구조, 기본 흐름, 목표 및 추가 리소스를 포함한 개발자 가이드라인을 설명합니다.

이 페이지와 인접 페이지에는 GitLab Flavored Markdown(GLFM)에 대한 개발자 가이드라인이 포함되어 있습니다. GitLab의 Markdown에 관한 사용자 문서는 GitLab Flavored Markdown 을 참조하세요. GitLab은 이슈나 머지 리퀘스트 설명, 댓글, 위키 등 다양한 곳에서 Markdown을 지원합니다. GitLab이 사용하는 Markdown 구현체는 GitLab Flavored Markdown(GLFM)이라고 합니다. CommonMark 는 GLFM의 핵심입니다. …Markdown에 대한 표준적이고 모호하지 않은 구문 명세와 이 명세를 기반으로 Markdown 구현체를 검증하는 포괄적인 테스트 모음을 제공합니다. GitHub Flavored Markdown (GFM) 의 테이블 및 작업 목록과 같은 확장 기능이 지원됩니다. 수식 및 여러 줄 블록 인용과 같은 다양한 확장 기능 이 추가되어 GLFM이 만들어집니다. 코드 내 여러 곳에서 gfm 또는 GFM 을 사용합니다. 이러한 경우에는 GLFM만을 특정하지 않고 일반적인 Markdown을 가리키는 경우가 많습니다. 기본 흐름 # 사용자에게 표시할 HTML을 생성하기 위해, Markdown은 일반적으로 다음과 같이 처리됩니다: Markdown을 사용자 또는 데이터베이스에서 읽어 백엔드로 전달합니다. 처리 파이프라인("Banzai" 파이프라인)이 실행됩니다. 일부 전처리 과정을 거친 후, comrak 을 사용하는 gitlab-glfm-markdown 젬(gem)을 통해 기본 HTML로 변환됩니다. 다양한 필터가 실행되어 HTML을 추가로 변환합니다. 예를 들어 참조(references) 또는 커스텀 이모지 처리 등이 이에 해당합니다. HTML은 프론트엔드로 전달되어 다양한 방식으로 표시되거나 데이터베이스에 캐시됩니다. 예를 들어, 리치 텍스트 에디터는 HTML을 tiptap 에서 사용하는 형식으로 변환하여 표시하고 편집할 수 있도록 합니다. 목표 # GLFM이 항상 CommonMark와 100% 호환되도록 하는 것을 목표로 합니다. 진정으로 필요한 경우가 아니면 새로운 구문을 추가하지 않도록 최대한 노력합니다. 새로운 구문이 필요한 경우, 가능하다면 공통 구현체를 최대한 따르면서 가장 수용 가능한 "Markdown" 구문을 찾기 위해 조사를 수행해야 합니다. CommonMark 포럼 은 다양한 주제에 관한 토론을 조사하기에 좋은 곳입니다. 추가 리소스 # GitLab Flavored Markdown 리치 텍스트 에디터 개발 가이드라인 이모지 프론트엔드에서 GitLab Flavored Markdown을 렌더링하는 방법 Diagrams.net 통합 질문이 있으시면 Plan:Knowledge 팀 에 문의하세요.