docs: [bending] 절곡품 전용 테이블 분리 완료 문서
- README: bending_items 266건 + bending_models 62건 DB 검증 완료 - README: 하장바 검색 문제 해결 (10건 정상) - README: bending_data JSON 통합, bending_item_mappings DROP - README: LOT 코드 체계, 테이블 관계도, 레거시 대응표 갱신 - step1: 데이터분석 업데이트 - step5: canvas 그리기 추가 - .gitattributes CRLF→LF 정규화
This commit is contained in:
@@ -1,150 +1,150 @@
|
||||
# Claude Code /btw (Side Question) 기능 가이드
|
||||
|
||||
> **작성일**: 2026-03-14
|
||||
> **상태**: 확정
|
||||
> **도입 버전**: Claude Code v2.1.72 (2026-03-10)
|
||||
|
||||
---
|
||||
|
||||
## 1. 개요
|
||||
|
||||
### 1.1 목적
|
||||
|
||||
`/btw` (By The Way)는 Claude Code에서 **작업 중단 없이 빠른 질문**을 할 수 있는 사이드 질문 기능이다. 대화 이력에 추가되지 않으며, 현재 세션의 컨텍스트를 기반으로 즉답을 제공한다.
|
||||
|
||||
### 1.2 핵심 원칙
|
||||
|
||||
- 대화 이력을 오염시키지 않는 임시 질문
|
||||
- Claude가 작업 중일 때도 사용 가능
|
||||
- 도구(파일 읽기, 명령 실행 등)에 접근하지 않고 **이미 알고 있는 정보만** 활용
|
||||
- 프롬프트 캐시를 재사용하여 토큰 비용 최소화
|
||||
|
||||
---
|
||||
|
||||
## 2. 사용법
|
||||
|
||||
### 2.1 기본 문법
|
||||
|
||||
```
|
||||
/btw 질문 내용
|
||||
```
|
||||
|
||||
### 2.2 사용 예시
|
||||
|
||||
```
|
||||
/btw 아까 수정한 설정 파일 이름이 뭐였지?
|
||||
/btw 우리 DB 커넥션 이름이 뭐야?
|
||||
/btw 방금 만든 API 엔드포인트 경로가 뭐지?
|
||||
/btw tenant_id 컬럼 타입이 뭐였지?
|
||||
/btw 아까 논의한 마이그레이션 순서 알려줘
|
||||
```
|
||||
|
||||
### 2.3 답변 닫기
|
||||
|
||||
답변은 오버레이 형태로 표시되며, 아래 키로 닫을 수 있다:
|
||||
|
||||
| 키 | 동작 |
|
||||
|----|------|
|
||||
| `Space` | 닫기 |
|
||||
| `Enter` | 닫기 |
|
||||
| `Escape` | 닫기 |
|
||||
|
||||
---
|
||||
|
||||
## 3. 특징
|
||||
|
||||
### 3.1 작업 중에도 사용 가능
|
||||
|
||||
Claude가 코드를 작성하거나 파일을 읽는 중에도 `/btw`를 실행할 수 있다. 메인 작업을 중단하지 않는다.
|
||||
|
||||
### 3.2 전체 컨텍스트 접근
|
||||
|
||||
사이드 질문은 현재 대화의 전체 컨텍스트를 볼 수 있다:
|
||||
- Claude가 이미 읽은 코드
|
||||
- 이전 대화에서 논의한 아키텍처 결정
|
||||
- 세션 중 수행한 모든 작업 내역
|
||||
|
||||
### 3.3 도구 접근 불가
|
||||
|
||||
```
|
||||
❌ 파일 읽기/쓰기
|
||||
❌ 명령어 실행 (bash, git 등)
|
||||
❌ 웹 검색
|
||||
❌ 새로운 정보 탐색
|
||||
```
|
||||
|
||||
오직 **현재 컨텍스트에 있는 정보만** 사용하여 답변한다.
|
||||
|
||||
### 3.4 단발성 응답
|
||||
|
||||
후속 대화(follow-up)가 불가능하다. 추가 질문이 필요하면 일반 프롬프트를 사용한다.
|
||||
|
||||
### 3.5 비용 효율성
|
||||
|
||||
- 부모 대화의 프롬프트 캐시를 재사용
|
||||
- 대화 이력에 추가되지 않아 이후 토큰 소비 없음
|
||||
- 동일 정보를 일반 프롬프트로 물어보는 것 대비 비용 절감
|
||||
|
||||
---
|
||||
|
||||
## 4. /btw vs 서브에이전트 비교
|
||||
|
||||
| 항목 | `/btw` | 서브에이전트 (Agent) |
|
||||
|------|--------|---------------------|
|
||||
| **컨텍스트** | 전체 대화 내용 접근 가능 | 빈 컨텍스트에서 시작 |
|
||||
| **도구 접근** | 불가 | 전체 도구 사용 가능 |
|
||||
| **용도** | 이미 아는 정보 조회 | 새로운 정보 탐색 |
|
||||
| **작업 중단** | 없음 | 병렬 실행 가능 |
|
||||
| **대화 이력** | 추가되지 않음 | 결과가 이력에 포함 |
|
||||
| **비용** | 최소 (캐시 재사용) | 별도 토큰 소비 |
|
||||
|
||||
### 4.1 판단 기준
|
||||
|
||||
```
|
||||
"Claude가 이미 알고 있는 정보인가?"
|
||||
→ Yes → /btw 사용
|
||||
→ No → 일반 프롬프트 또는 서브에이전트 사용
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. 사용 요건
|
||||
|
||||
| 항목 | 요건 |
|
||||
|------|------|
|
||||
| 환경 | Claude Code CLI (터미널) 전용 |
|
||||
| 버전 | v2.1.72 이상 |
|
||||
| 계정 | Pro, Max, Teams, Enterprise, Console |
|
||||
|
||||
---
|
||||
|
||||
## 6. 베스트 프랙티스
|
||||
|
||||
### 6.1 적합한 사용 사례
|
||||
|
||||
```
|
||||
✅ 파일명, 경로, 변수명 등 참조 정보 확인
|
||||
✅ 이전 논의에서 결정한 사항 재확인
|
||||
✅ 현재 작업 컨텍스트에 대한 빠른 질문
|
||||
✅ 코드 구조나 아키텍처 결정 사항 확인
|
||||
```
|
||||
|
||||
### 6.2 부적합한 사용 사례
|
||||
|
||||
```
|
||||
❌ 새 파일을 읽어야 하는 질문
|
||||
❌ 명령어 실행이 필요한 작업
|
||||
❌ 웹 검색이 필요한 조사
|
||||
❌ 후속 대화가 필요한 복잡한 논의
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 관련 문서
|
||||
|
||||
- [Claude Code → 슬랙 붙여넣기 가이드](claude-code-to-slack.md)
|
||||
- [개발 명령어 모음](../quickstart/dev-commands.md)
|
||||
|
||||
---
|
||||
|
||||
**최종 업데이트**: 2026-03-14
|
||||
# Claude Code /btw (Side Question) 기능 가이드
|
||||
|
||||
> **작성일**: 2026-03-14
|
||||
> **상태**: 확정
|
||||
> **도입 버전**: Claude Code v2.1.72 (2026-03-10)
|
||||
|
||||
---
|
||||
|
||||
## 1. 개요
|
||||
|
||||
### 1.1 목적
|
||||
|
||||
`/btw` (By The Way)는 Claude Code에서 **작업 중단 없이 빠른 질문**을 할 수 있는 사이드 질문 기능이다. 대화 이력에 추가되지 않으며, 현재 세션의 컨텍스트를 기반으로 즉답을 제공한다.
|
||||
|
||||
### 1.2 핵심 원칙
|
||||
|
||||
- 대화 이력을 오염시키지 않는 임시 질문
|
||||
- Claude가 작업 중일 때도 사용 가능
|
||||
- 도구(파일 읽기, 명령 실행 등)에 접근하지 않고 **이미 알고 있는 정보만** 활용
|
||||
- 프롬프트 캐시를 재사용하여 토큰 비용 최소화
|
||||
|
||||
---
|
||||
|
||||
## 2. 사용법
|
||||
|
||||
### 2.1 기본 문법
|
||||
|
||||
```
|
||||
/btw 질문 내용
|
||||
```
|
||||
|
||||
### 2.2 사용 예시
|
||||
|
||||
```
|
||||
/btw 아까 수정한 설정 파일 이름이 뭐였지?
|
||||
/btw 우리 DB 커넥션 이름이 뭐야?
|
||||
/btw 방금 만든 API 엔드포인트 경로가 뭐지?
|
||||
/btw tenant_id 컬럼 타입이 뭐였지?
|
||||
/btw 아까 논의한 마이그레이션 순서 알려줘
|
||||
```
|
||||
|
||||
### 2.3 답변 닫기
|
||||
|
||||
답변은 오버레이 형태로 표시되며, 아래 키로 닫을 수 있다:
|
||||
|
||||
| 키 | 동작 |
|
||||
|----|------|
|
||||
| `Space` | 닫기 |
|
||||
| `Enter` | 닫기 |
|
||||
| `Escape` | 닫기 |
|
||||
|
||||
---
|
||||
|
||||
## 3. 특징
|
||||
|
||||
### 3.1 작업 중에도 사용 가능
|
||||
|
||||
Claude가 코드를 작성하거나 파일을 읽는 중에도 `/btw`를 실행할 수 있다. 메인 작업을 중단하지 않는다.
|
||||
|
||||
### 3.2 전체 컨텍스트 접근
|
||||
|
||||
사이드 질문은 현재 대화의 전체 컨텍스트를 볼 수 있다:
|
||||
- Claude가 이미 읽은 코드
|
||||
- 이전 대화에서 논의한 아키텍처 결정
|
||||
- 세션 중 수행한 모든 작업 내역
|
||||
|
||||
### 3.3 도구 접근 불가
|
||||
|
||||
```
|
||||
❌ 파일 읽기/쓰기
|
||||
❌ 명령어 실행 (bash, git 등)
|
||||
❌ 웹 검색
|
||||
❌ 새로운 정보 탐색
|
||||
```
|
||||
|
||||
오직 **현재 컨텍스트에 있는 정보만** 사용하여 답변한다.
|
||||
|
||||
### 3.4 단발성 응답
|
||||
|
||||
후속 대화(follow-up)가 불가능하다. 추가 질문이 필요하면 일반 프롬프트를 사용한다.
|
||||
|
||||
### 3.5 비용 효율성
|
||||
|
||||
- 부모 대화의 프롬프트 캐시를 재사용
|
||||
- 대화 이력에 추가되지 않아 이후 토큰 소비 없음
|
||||
- 동일 정보를 일반 프롬프트로 물어보는 것 대비 비용 절감
|
||||
|
||||
---
|
||||
|
||||
## 4. /btw vs 서브에이전트 비교
|
||||
|
||||
| 항목 | `/btw` | 서브에이전트 (Agent) |
|
||||
|------|--------|---------------------|
|
||||
| **컨텍스트** | 전체 대화 내용 접근 가능 | 빈 컨텍스트에서 시작 |
|
||||
| **도구 접근** | 불가 | 전체 도구 사용 가능 |
|
||||
| **용도** | 이미 아는 정보 조회 | 새로운 정보 탐색 |
|
||||
| **작업 중단** | 없음 | 병렬 실행 가능 |
|
||||
| **대화 이력** | 추가되지 않음 | 결과가 이력에 포함 |
|
||||
| **비용** | 최소 (캐시 재사용) | 별도 토큰 소비 |
|
||||
|
||||
### 4.1 판단 기준
|
||||
|
||||
```
|
||||
"Claude가 이미 알고 있는 정보인가?"
|
||||
→ Yes → /btw 사용
|
||||
→ No → 일반 프롬프트 또는 서브에이전트 사용
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. 사용 요건
|
||||
|
||||
| 항목 | 요건 |
|
||||
|------|------|
|
||||
| 환경 | Claude Code CLI (터미널) 전용 |
|
||||
| 버전 | v2.1.72 이상 |
|
||||
| 계정 | Pro, Max, Teams, Enterprise, Console |
|
||||
|
||||
---
|
||||
|
||||
## 6. 베스트 프랙티스
|
||||
|
||||
### 6.1 적합한 사용 사례
|
||||
|
||||
```
|
||||
✅ 파일명, 경로, 변수명 등 참조 정보 확인
|
||||
✅ 이전 논의에서 결정한 사항 재확인
|
||||
✅ 현재 작업 컨텍스트에 대한 빠른 질문
|
||||
✅ 코드 구조나 아키텍처 결정 사항 확인
|
||||
```
|
||||
|
||||
### 6.2 부적합한 사용 사례
|
||||
|
||||
```
|
||||
❌ 새 파일을 읽어야 하는 질문
|
||||
❌ 명령어 실행이 필요한 작업
|
||||
❌ 웹 검색이 필요한 조사
|
||||
❌ 후속 대화가 필요한 복잡한 논의
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 관련 문서
|
||||
|
||||
- [Claude Code → 슬랙 붙여넣기 가이드](claude-code-to-slack.md)
|
||||
- [개발 명령어 모음](../quickstart/dev-commands.md)
|
||||
|
||||
---
|
||||
|
||||
**최종 업데이트**: 2026-03-14
|
||||
|
||||
@@ -1,116 +1,116 @@
|
||||
# Claude Code CLI 출력을 슬랙에 전달하는 방법
|
||||
|
||||
> **작성일**: 2026-03-11
|
||||
> **대상**: 슬랙으로 협업하는 모든 팀원
|
||||
|
||||
---
|
||||
|
||||
## 1. 문제
|
||||
|
||||
Claude Code CLI에서 복사한 텍스트를 슬랙 채팅창에 붙여넣으면 줄바꿈이 깨지고, 마크다운 문법이 원본 그대로 노출된다.
|
||||
|
||||
---
|
||||
|
||||
## 2. 원인 분석
|
||||
|
||||
텍스트가 깨지는 원인은 3가지가 복합적으로 작용한다.
|
||||
|
||||
### 2.1 터미널 줄바꿈 혼재
|
||||
|
||||
터미널에는 2종류의 줄바꿈이 존재한다.
|
||||
|
||||
| 종류 | 설명 | 복사 시 동작 |
|
||||
|------|------|-------------|
|
||||
| Hard wrap | 원본 텍스트의 실제 `\n` | 보통 유지됨 |
|
||||
| Soft wrap | 터미널 창 너비에 의한 시각적 줄바꿈 | 유실되거나 불필요하게 추가됨 |
|
||||
|
||||
Claude Code CLI는 터미널에서 실행되므로, 드래그 복사 시 실제 줄바꿈과 시각적 줄바꿈이 뒤섞여 클립보드에 들어간다. 그 결과 어떤 줄은 합쳐지고, 어떤 줄은 엉뚱한 곳에서 끊어진다.
|
||||
|
||||
### 2.2 Markdown vs Slack mrkdwn 문법 차이
|
||||
|
||||
Claude Code는 표준 Markdown을 출력하지만, 슬랙은 자체 마크업 문법(mrkdwn)을 사용한다.
|
||||
|
||||
| 요소 | Markdown (Claude Code) | Slack mrkdwn | 직접 붙여넣기 시 |
|
||||
|------|----------------------|-------------|----------------|
|
||||
| 볼드 | `**텍스트**` | `*텍스트*` | `**텍스트**` 그대로 표시 |
|
||||
| 이탤릭 | `*텍스트*` | `_텍스트_` | 슬랙에서 볼드로 오인식 |
|
||||
| 제목 | `## 제목` | 지원 안 함 | `## 제목` 그대로 표시 |
|
||||
| 취소선 | `~~텍스트~~` | `~텍스트~` | `~~텍스트~~` 그대로 표시 |
|
||||
| 링크 | `[텍스트](URL)` | `<URL\|텍스트>` | 원본 문법 그대로 표시 |
|
||||
| 구분선 | `---` | 지원 안 함 | `---` 대시 3개로 표시 |
|
||||
| 코드블록 | ` ```lang ``` ` | ` ``` ``` ` | 언어 지정자가 텍스트로 노출될 수 있음 |
|
||||
|
||||
### 2.3 슬랙 입력창의 공백 처리
|
||||
|
||||
슬랙의 메시지 입력창은 붙여넣기 시 다음 처리를 수행한다:
|
||||
|
||||
- 연속 빈 줄을 1개로 축소
|
||||
- 앞뒤 공백 제거
|
||||
- 일부 특수문자 이스케이프
|
||||
|
||||
이 3가지가 합쳐지면 **줄 합침, 문법 노출, 공백 손실**이 동시에 발생한다.
|
||||
|
||||
---
|
||||
|
||||
## 3. 해결 방법: 클코 → 슬랙 변환기
|
||||
|
||||
### 3.1 접속 경로
|
||||
|
||||
MNG 관리자 패널에 변환 도구가 있다.
|
||||
|
||||
| 환경 | URL |
|
||||
|------|-----|
|
||||
| 로컬 | `http://mng.sam.kr/rd/cc-to-slack` |
|
||||
| 개발 서버 | `https://admin.codebridge-x.com/rd/cc-to-slack` |
|
||||
| 운영 서버 | `https://mng.codebridge-x.com/rd/cc-to-slack` |
|
||||
|
||||
**메뉴 위치**: 연구개발 > 클코 to 슬랙형태
|
||||
|
||||
### 3.2 사용법
|
||||
|
||||
1. Claude Code CLI에서 메시지를 드래그하여 복사 (`Ctrl+C`)
|
||||
2. 변환기의 왼쪽 입력란에 붙여넣기 (`Ctrl+V`)
|
||||
3. 오른쪽 슬랙 미리보기에 변환 결과가 자동 표시됨
|
||||
4. **복사** 버튼 클릭 (또는 `Ctrl+Enter`)
|
||||
5. 슬랙 채팅창에 붙여넣기 (`Ctrl+V`)
|
||||
|
||||
### 3.3 변환 규칙
|
||||
|
||||
| 변환 전 (Markdown) | 변환 후 (Slack) | 설명 |
|
||||
|-------------------|----------------|------|
|
||||
| `**볼드**` | `*볼드*` | 슬랙 볼드 문법 |
|
||||
| `## 제목` | `*제목*` | 볼드 처리로 대체 |
|
||||
| `~~취소~~` | `~취소~` | 슬랙 취소선 문법 |
|
||||
| `[텍스트](URL)` | `<URL\|텍스트>` | 슬랙 링크 문법 |
|
||||
| `---` | `———` | em dash로 구분선 대체 |
|
||||
| 테이블 구분선 `\|---\|` | 제거 | 불필요한 구분선 삭제 |
|
||||
| 연속 빈 줄 | 1개로 정리 | 공백 정리 |
|
||||
| 코드블록 | 유지 | 슬랙도 ` ``` ` 지원 |
|
||||
|
||||
---
|
||||
|
||||
## 4. 작동 원리
|
||||
|
||||
변환기가 정상 작동하는 핵심 이유는 **리치 텍스트(HTML) 복사** 방식을 사용하기 때문이다.
|
||||
|
||||
```
|
||||
일반 텍스트 복사 (plain text)
|
||||
→ 슬랙이 자체적으로 재해석 → 줄바꿈 깨짐, 문법 노출
|
||||
|
||||
리치 텍스트 복사 (HTML)
|
||||
→ 슬랙이 HTML 서식을 그대로 수용 → 볼드, 코드블록, 줄바꿈 보존
|
||||
```
|
||||
|
||||
브라우저의 Selection API로 DOM 요소를 선택하면 클립보드에 `text/html`과 `text/plain` 두 가지 형식이 동시에 저장된다. 슬랙은 `text/html` 버전을 읽어서 `<b>`, `<code>`, `<br>` 등의 서식을 그대로 적용한다.
|
||||
|
||||
---
|
||||
|
||||
## 관련 문서
|
||||
|
||||
- MNG 소스: `mng/resources/views/rd/cc-to-slack/index.blade.php`
|
||||
- 컨트롤러: `mng/app/Http/Controllers/RdController.php` — `ccToSlack()`
|
||||
- 라우트: `GET /rd/cc-to-slack`
|
||||
|
||||
---
|
||||
|
||||
**최종 업데이트**: 2026-03-11
|
||||
# Claude Code CLI 출력을 슬랙에 전달하는 방법
|
||||
|
||||
> **작성일**: 2026-03-11
|
||||
> **대상**: 슬랙으로 협업하는 모든 팀원
|
||||
|
||||
---
|
||||
|
||||
## 1. 문제
|
||||
|
||||
Claude Code CLI에서 복사한 텍스트를 슬랙 채팅창에 붙여넣으면 줄바꿈이 깨지고, 마크다운 문법이 원본 그대로 노출된다.
|
||||
|
||||
---
|
||||
|
||||
## 2. 원인 분석
|
||||
|
||||
텍스트가 깨지는 원인은 3가지가 복합적으로 작용한다.
|
||||
|
||||
### 2.1 터미널 줄바꿈 혼재
|
||||
|
||||
터미널에는 2종류의 줄바꿈이 존재한다.
|
||||
|
||||
| 종류 | 설명 | 복사 시 동작 |
|
||||
|------|------|-------------|
|
||||
| Hard wrap | 원본 텍스트의 실제 `\n` | 보통 유지됨 |
|
||||
| Soft wrap | 터미널 창 너비에 의한 시각적 줄바꿈 | 유실되거나 불필요하게 추가됨 |
|
||||
|
||||
Claude Code CLI는 터미널에서 실행되므로, 드래그 복사 시 실제 줄바꿈과 시각적 줄바꿈이 뒤섞여 클립보드에 들어간다. 그 결과 어떤 줄은 합쳐지고, 어떤 줄은 엉뚱한 곳에서 끊어진다.
|
||||
|
||||
### 2.2 Markdown vs Slack mrkdwn 문법 차이
|
||||
|
||||
Claude Code는 표준 Markdown을 출력하지만, 슬랙은 자체 마크업 문법(mrkdwn)을 사용한다.
|
||||
|
||||
| 요소 | Markdown (Claude Code) | Slack mrkdwn | 직접 붙여넣기 시 |
|
||||
|------|----------------------|-------------|----------------|
|
||||
| 볼드 | `**텍스트**` | `*텍스트*` | `**텍스트**` 그대로 표시 |
|
||||
| 이탤릭 | `*텍스트*` | `_텍스트_` | 슬랙에서 볼드로 오인식 |
|
||||
| 제목 | `## 제목` | 지원 안 함 | `## 제목` 그대로 표시 |
|
||||
| 취소선 | `~~텍스트~~` | `~텍스트~` | `~~텍스트~~` 그대로 표시 |
|
||||
| 링크 | `[텍스트](URL)` | `<URL\|텍스트>` | 원본 문법 그대로 표시 |
|
||||
| 구분선 | `---` | 지원 안 함 | `---` 대시 3개로 표시 |
|
||||
| 코드블록 | ` ```lang ``` ` | ` ``` ``` ` | 언어 지정자가 텍스트로 노출될 수 있음 |
|
||||
|
||||
### 2.3 슬랙 입력창의 공백 처리
|
||||
|
||||
슬랙의 메시지 입력창은 붙여넣기 시 다음 처리를 수행한다:
|
||||
|
||||
- 연속 빈 줄을 1개로 축소
|
||||
- 앞뒤 공백 제거
|
||||
- 일부 특수문자 이스케이프
|
||||
|
||||
이 3가지가 합쳐지면 **줄 합침, 문법 노출, 공백 손실**이 동시에 발생한다.
|
||||
|
||||
---
|
||||
|
||||
## 3. 해결 방법: 클코 → 슬랙 변환기
|
||||
|
||||
### 3.1 접속 경로
|
||||
|
||||
MNG 관리자 패널에 변환 도구가 있다.
|
||||
|
||||
| 환경 | URL |
|
||||
|------|-----|
|
||||
| 로컬 | `http://mng.sam.kr/rd/cc-to-slack` |
|
||||
| 개발 서버 | `https://admin.codebridge-x.com/rd/cc-to-slack` |
|
||||
| 운영 서버 | `https://mng.codebridge-x.com/rd/cc-to-slack` |
|
||||
|
||||
**메뉴 위치**: 연구개발 > 클코 to 슬랙형태
|
||||
|
||||
### 3.2 사용법
|
||||
|
||||
1. Claude Code CLI에서 메시지를 드래그하여 복사 (`Ctrl+C`)
|
||||
2. 변환기의 왼쪽 입력란에 붙여넣기 (`Ctrl+V`)
|
||||
3. 오른쪽 슬랙 미리보기에 변환 결과가 자동 표시됨
|
||||
4. **복사** 버튼 클릭 (또는 `Ctrl+Enter`)
|
||||
5. 슬랙 채팅창에 붙여넣기 (`Ctrl+V`)
|
||||
|
||||
### 3.3 변환 규칙
|
||||
|
||||
| 변환 전 (Markdown) | 변환 후 (Slack) | 설명 |
|
||||
|-------------------|----------------|------|
|
||||
| `**볼드**` | `*볼드*` | 슬랙 볼드 문법 |
|
||||
| `## 제목` | `*제목*` | 볼드 처리로 대체 |
|
||||
| `~~취소~~` | `~취소~` | 슬랙 취소선 문법 |
|
||||
| `[텍스트](URL)` | `<URL\|텍스트>` | 슬랙 링크 문법 |
|
||||
| `---` | `———` | em dash로 구분선 대체 |
|
||||
| 테이블 구분선 `\|---\|` | 제거 | 불필요한 구분선 삭제 |
|
||||
| 연속 빈 줄 | 1개로 정리 | 공백 정리 |
|
||||
| 코드블록 | 유지 | 슬랙도 ` ``` ` 지원 |
|
||||
|
||||
---
|
||||
|
||||
## 4. 작동 원리
|
||||
|
||||
변환기가 정상 작동하는 핵심 이유는 **리치 텍스트(HTML) 복사** 방식을 사용하기 때문이다.
|
||||
|
||||
```
|
||||
일반 텍스트 복사 (plain text)
|
||||
→ 슬랙이 자체적으로 재해석 → 줄바꿈 깨짐, 문법 노출
|
||||
|
||||
리치 텍스트 복사 (HTML)
|
||||
→ 슬랙이 HTML 서식을 그대로 수용 → 볼드, 코드블록, 줄바꿈 보존
|
||||
```
|
||||
|
||||
브라우저의 Selection API로 DOM 요소를 선택하면 클립보드에 `text/html`과 `text/plain` 두 가지 형식이 동시에 저장된다. 슬랙은 `text/html` 버전을 읽어서 `<b>`, `<code>`, `<br>` 등의 서식을 그대로 적용한다.
|
||||
|
||||
---
|
||||
|
||||
## 관련 문서
|
||||
|
||||
- MNG 소스: `mng/resources/views/rd/cc-to-slack/index.blade.php`
|
||||
- 컨트롤러: `mng/app/Http/Controllers/RdController.php` — `ccToSlack()`
|
||||
- 라우트: `GET /rd/cc-to-slack`
|
||||
|
||||
---
|
||||
|
||||
**최종 업데이트**: 2026-03-11
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user