인용구 강조

:information_source: 요약 마크다운 인용구를 대체할 수 있는 Obsidian 스타일의 콜아웃(callouts)을 추가합니다.
:eyeglasses: 미리보기 Theme Creator
:hammer_and_wrench: 저장소 GitHub - Arkshine/discourse-quote-callouts · GitHub
:question: 설치 가이드 테마 또는 테마 컴포넌트 설치 방법
:open_book: Discourse 테마 초보자? Discourse 테마 사용 입문 가이드

이 테마 컴포넌트 설치

이 테마 컴포넌트는 Discourse에서 마크다운 인용구의 대안으로 Obsidian 스타일의 콜아웃을 지원합니다.

콜아웃은 콘텐츠를 강조하고 게시글에 노트, 경고 또는 기타 특수 메시지를 추가하는 훌륭한 방법입니다.


사용법

콜아웃을 만드는 방법은 여러 가지가 있습니다.

마크다운 문법

인용구의 첫 줄에 [!type]을 추가합니다. 여기서 type은 유형 식별자입니다. 유형 식별자는 콜아웃의 모양과 느낌을 결정합니다. 사용 가능한 모든 유형을 보려면 ‘지원되는 유형’ 섹션을 참조하세요.

:information_source: 유형 식별자는 대소문자를 구분하지 않습니다.

> [!tip] 
> **팁**: 가독성을 높이기 위해 `코드 스니펫`을 사용하세요. 명확함과 정밀도를 제공합니다.

미리보기

아이콘을 클릭하여 유형을 변경할 수 있습니다: 

![chrome_atmmLf0v3c|690x209](upload://hZYzuK1MCwo7vsMEV9uYEZZOqjn.jpeg) 

리치 텍스트 에디터

이제 완전히 지원됩니다. 리치 텍스트 에디터 지원 섹션을 참조하세요.

키보드 단축키

  • Ctrl + q — 빈 콜아웃 삽입

도구 모음

채팅

기본 콜아웃을 삽입하기 위한 도구 모음 버튼이 제공됩니다.

사용자 정의 제목

기본적으로 콜아웃의 제목은 타이틀 케이스로 표시된 유형 식별자입니다. 유형 식별자 뒤에 텍스트를 추가하여 변경할 수 있습니다:

> [!question] Custom Label 🤗
> Callouts labels can be customized.

> [!abstract] [date=2032-12-22 timezone="Europe/Paris"]
> They can also contain special inline formatting like dynamic dates.

제목만 있는 콜아웃도 만들 수 있습니다:

> [!success] solved.

chrome_z53bS1GCew

접이식 콜아웃

유형 식별자 바로 뒤에 더하기 + 또는 빼기 -를 추가하여 콜아웃을 접이식으로 만들 수 있습니다.

  • +는 기본적으로 콜아웃을 펼칩니다
  • -는 대신 접어둡니다
> [!todo]- My Todo List
>
> - [x] Write documentation
> - [ ] Add tests
> - [ ] Review code

> [!todo]+ My Expanded Todo List
>
> - [x] Create repository
> - [ ] Setup CI/CD
> - [ ] Deploy to production

이미지는 "arkshine"이라는 제목의 Todoist 프로젝트를 보여줍니다. "My Expanded Todo List" 아래에 "저장소 생성", "CI/CD 설정", "프로덕션 배포"의 체크박스가 있으며, "My Todo List" 및 "My Expanded Todo List" 옵션이 보입니다. (AI 캡션)

중첩 콜아웃

콜아웃을 여러 단계로 중첩할 수 있습니다.

> [!question] Can callouts be nested?
>
> > [!todo] Yes!, they can.
> >
> > > [!example] You can even use multiple layers of nesting.

> [!tip]
> Here's a helpful tip
>
> > [!info]
> > With some additional information
> >
> > > [!example]
> > > And a nested example
>
> Back to the main tip

지원되는 기본 유형

여러 가지 콜아웃 유형과 별명을 사용할 수 있습니다.
각 유형에는 고유한 배경색과 아이콘이 있습니다.

:information_source: 콜아웃을 생성하거나 기본 콜아웃을 관리할 수 있습니다.
callouts 설정을 참조하세요.

:information_source: 지원되지 않는 유형은 기본적으로 note 유형으로 처리됩니다. 자세한 내용은 기본 폴백 섹션을 참조하세요.

:information_source: 유형 식별자는 대소문자를 구분하지 않습니다.

유형 설명 별명
note 일반적인 노트 및 정보용 -
abstract 요약 또는 초록 섹션용 summary, tldr
info 정보성 콘텐츠용 -
todo 작업 목록 또는 할 일 항목용 -
tip 팁 및 중요한 정보용 hint, important
success 성공 메시지용 check, done
question 질문 및 FAQ용 help, faq
warning 경고용 caution, attention
failure 실패 공지용 fail, missing
danger 위험 또는 오류 메시지용 error
bug 버그 보고서 또는 알려진 문제용 -
example 예시용 -
quote 인용구용 cite

사용자 정의

아이콘

FontAwesome 아이콘을 사용하거나 SVG 요소를 직접 제공할 수 있습니다.

SVG 요소

무료 FontAwesome 버전은 많은 선택지를 제공하지만, 때로는 제한적으로 느껴질 수 있습니다.
SVG 요소 <svg>...</svg>를 제공할 수 있습니다.

예: Lucide icons – 스트로크 두께를 선택할 수 있는 장점이 있는 훌륭한 아이콘 세트입니다.

  1. 아이콘 선택
  2. 스트로크 두께 조정
  3. Copy SVG 클릭
  4. 테마 컴포넌트 설정으로 이동하여 내용 붙여넣기



image

기본 폴백

지정된 콜아웃 유형을 찾을 수 없을 때 사용할 기본 값을 다음 설정으로 지정할 수 있습니다:

  • callout_fallback_type
  • callout_fallback_icon
  • callout_fallback_color
> [!discourse is fantastic]
> Yes.

전역 구성

다음과 같은 콜아웃의 다양한 측면을 사용자 정의할 수 있습니다.

  • 배경 불투명도
  • 경계선 속성 (너비, 스타일, 색상, 반경)
  • 패딩
  • 제목 글꼴 속성 (크기, 굵기)
  • 아이콘과 제목 간 간격

콜아웃별 구성

각 콜아웃 유형은 다음으로 사용자 정의할 수 있습니다:

  • 사용자 정의 아이콘
  • 제목 텍스트
  • 색상 스킴
  • 경계선 속성

아래의 설정 섹션을 참조하세요.

설정

목록
설정 설명
callouts 콜아웃을 정의합니다.
callout_fallback_type 지정된 유형을 찾을 수 없을 때 사용할 기본 콜아웃 유형.
기본 값: note
callout_fallback_icon 지정된 유형을 찾을 수 없을 때 사용할 기본 아이콘.
기본 값: far-pen-to-square
callout_fallback_color 지정된 유형을 찾을 수 없을 때 사용할 기본 색상.
기본 값: #027aff
callout_background_opacity 콜아웃의 전역 배경 불투명도 (1~100).
기본 값: 10
callout_border_width 콜아웃의 전역 경계선 너비.
기본 값: empty
callout_border_style 콜아웃의 전역 경계선 스타일.
기본 값: empty
callout_border_color 콜아웃의 전역 경계선 색상.
기본 값: empty
callout_border_radius 콜아웃의 전역 경계선 반경.
기본 값: var(--d-border-radius)
callout_padding 콜아웃의 전역 패딩.
기본 값: 0.75em 0.75em 0.75em 1.5em
callout_title_font_size 콜아웃 제목의 전역 글꼴 크기.
기본 값: inherit
callout_title_font_weight 콜아웃 제목의 전역 글꼴 굵기.
기본 값: bold
callout_title_gap 콜아웃 아이콘과 제목 간의 전역 간격.
기본 값: 0.5em
callout_icon_sizep 콜아웃 아이콘의 전역 크기.
callout_transition_duration_ms 열기 및 닫기 애니메이션의 지속 시간 (ms).
svg_icons 이 테마 컴포넌트에서 사용되는 FontAwesome 6 아이콘 목록.

콜아웃별 설정 페이지:

설정 설명
Type* 콜아웃의 유형.
이 식별자는 콜아웃 문법에서 사용됩니다: [!type]
Alias |로 구분된 콜아웃의 별명.
예: cite|quote
Icon 콜아웃의 fontawesome 아이콘.
기본 하위 집합에 없을 경우 svg_icons 설정에 추가해야 할 수 있습니다.
대신 SVG 요소를 직접 제공할 수 있습니다. 예: <svg>...</svg>
Icon size 콜아웃 아이콘의 크기.
참고: 1em, 16px, 1.5rem 등 유효한 CSS 값만 사용하세요
Title 콜아웃의 제목.
콜아웃에 제목이 제공되지 않으면 이 설정이 사용됩니다.
참고: 둘 다 비어 있으면 제목은 콜아웃 유형이 됩니다.
Color 콜아웃의 색상.
배경, 제목, 아이콘에 사용됩니다.
참고: #027aff 등 16진수 색상 코드만 사용하세요
Border width 콜아웃의 경계선 너비.
Border style 콜아웃의 경계선 스타일.
Border color 콜아웃의 경계선 색상.
중요: rgba와 같은 알파 값을 생성하는 CSS 함수를 사용하는 경우, 값 사이에 공백을 사용하지 마세요. 예: rgba(145,145,145,0.1)
Border radius 콜아웃의 경계선 반경.

* 필수 설정

리치 텍스트 에디터 지원

이 컴포넌트는 이제 Discourse 리치 텍스트 에디터를 지원하여 콜아웃을 더 쉽게 생성, 편집 및 정리할 수 있습니다.

콜아웃 생성

콜아웃을 여러 방식으로 삽입할 수 있습니다:

  • 키보드 단축키: Ctrl + Q
  • 도구 모음 버튼
  • 입력 규칙:
    • /callout<:type>
    • !!<type>
  • 붙여넣기 지원
비디오

콜아웃 편집

콜아웃을 편집하기 위한 컨트롤은 콜아웃을 선택한 후에만 나타납니다.

  • 유형 선택기
    아이콘을 클릭하면 플로팅 메뉴가 나타납니다.

  • 사용자 정의 제목
    인라인 포맷팅 및 이모지 지원

  • 접기(Folding)
    콜아웃을 접이식으로 설정합니다. 옵션 메뉴에서 접근할 수 있습니다.

비디오

이동 컨트롤

  • 데스크톱

    • 핸들을 사용하여 드래그 앤 드롭
  • 터치 디바이스

    • 콜아웃 위/아래로 이동
    • 인접한 콜아웃 내부에 중첩
    • 기본적으로 비활성화 (옵션에서 활성화 가능)
비디오

키보드 내비게이션

중첩된 콜아웃 내부의 내비게이션을 개선합니다:

  • 제목 시작 부분에서 ← 키를 누르면 유형 선택기가 열립니다
  • 빈 영역 내부에서 ↑ / ↓ 키를 누르면 단락을 생성/제거합니다
  • 제목에서 Enter 키를 누르면 커서가 본문으로 이동합니다
비디오

클릭하여 삽입

  • 빈 영역을 클릭하여 단락을 생성합니다
  • 선택적 버튼을 사용하여 콜아웃 내부 또는 외부에 콘텐츠를 삽입할 수 있습니다
비디오

로드맵

향후 개발 계획에는 다음이 포함될 수 있습니다:

  • 입력 시 유형 자동 완성

크레딧

57개의 좋아요

오, 좋다!

이걸 이 용도로 사용할 수 있을까요?:

7개의 좋아요

그것은 유효한 사용 사례로 보입니다!

9개의 좋아요

놀랍네요! 정말 대단해요

5개의 좋아요

정말 훌륭한 추가입니다. 기초 토론에서 다루었던 것보다 훨씬 많은 내용을 담고 있네요(물론 저는 Obsidian을 사용해본 적은 없습니다).

2개의 좋아요

정말 멋져 보입니다. 이메일에서도 콜아웃(Callouts)이 올바르게 스타일링되나요?

3개의 좋아요

이 구성 요소를 사이트에 추가했을 때 다음과 같은 오류 메시지가 표시되었습니다.

:warning: 테마/구성 요소에 오류가 있어 사이트가 제대로 작동하지 않을 수 있습니다.
원인은 'Quote Callouts’입니다. 여기에서 업데이트, 재구성 또는 비활성화를 수행하세요.

1개의 좋아요

어떤 버전의 Discourse를 사용 중이신가요?

저는 Tests-passed(3.5 베타)를 사용 중인데 문제는 없는 것 같습니다.

Stable 버전을 사용 중이라면 3.4 또는 그 이전 버전일 수 있습니다. 3.4가 방금 Stable로 배포되었기 때문입니다.

1개의 좋아요

아, 최근에는 PostgreSQL 관련 문제 때문에 업그레이드를 하지 못했어요. 업그레이드하면 다시 알려드릴게요!

2개의 좋아요

그렇지는 않을 수도 있습니다. 하지만 TC 등의 구조가 많이 변경되면서 여러 가지 변화가 반영되었기 때문에, 글리머 컴포넌트로의 전환처럼 구조적 변화가 원인이 될 가능성이 큽니다.

1개의 좋아요

아쉽게도 그렇게 되지는 않을 것 같습니다. 플러그인이 필요할 것입니다.

현재 사용 중인 Discourse 버전은 무엇입니까?

3개의 좋아요

최신 버전으로 업데이트했고 이제 잘 작동합니다.

불행히도 이메일 지원이 없어서 저희 상황에서는 사용할 수 없습니다. 회원 대부분이 그룹과 카테고리에 가입되어 있어 이메일로 메시지를 읽고 있기 때문입니다. 아쉬워요!

4개의 좋아요

나중에 플러그인 버전도 만들어볼 것 같아요!

7개의 좋아요

Discourse에 정말 훌륭한 추가 기능입니다! :heart: :heart: :heart:

이것은 정확히 Discourse 코어에서 빠져 있는 부분입니다. 적어도 info, danger, warning, success와 같은 4가지 가장 일반적인 callout 유형 말이죠. 그동안 blockquote + 이모지 형식을 사용해 왔는데, 이번에는 definitely 시도해 볼 것입니다 :slight_smile:

6개의 좋아요

여기서 하신 작업이 정말 마음에 들어요!

7개의 좋아요

정말 감사합니다!

3개의 좋아요

안녕하세요, 한 가지만 말씀드리면, 인용구(callout) 코드가 제 홈페이지의 발췌문에 표시됩니다. 이게 안 나오는 게 더 나을 것 같습니다:

4개의 좋아요

@patrickemin 최신 버전을 테스트해 주실 수 있나요? 이제 토픽 발췌문이 정리될 거예요.

5개의 좋아요

네, 작동합니다! 감사합니다!

3개의 좋아요

테마 컴포넌트 감사합니다. 정말 마음에 듭니다!

불행히도 제 사이트에서 시각적인 문제를 일으켜서 일시적으로 비활성화해야 했습니다. 그리고 콘솔에서 다음 오류를 확인했는데, 이는 당신의 callouts.gjs 파일로 추적할 수 있었습니다.

3개의 좋아요