Obsidian 마크다운을 Teams에서 제대로 활용하기 위한 Python 기반 쉘 스크립트
🤖 AI 추천
Obsidian에서 작성한 마크다운 노트를 Teams에 복사/붙여넣기 할 때 서식 깨짐 문제로 불편함을 겪는 개발자 및 IT 실무자.
🔖 주요 키워드
💻 Development
핵심 기술
Obsidian에서 작성한 마크다운 노트를 Teams로 복사 시 발생하는 서식 깨짐 문제를 해결하기 위해 Python의 markdown
패키지와 uv
CLI 도구를 활용하여 마크다운을 HTML로 변환하고, 이를 클립보드에 저장하는 워크플로우를 제안합니다. 이 방식은 Teams가 HTML 서식을 더 잘 지원한다는 점을 이용합니다.
기술적 세부사항
- 문제점: Obsidian에서 작성된 마크다운을 Teams로 직접 복사/붙여넣기 할 때 서식이 제대로 유지되지 않는 현상.
- 해결 접근법: 마크다운을 HTML로 변환 후 Teams에 붙여넣기.
- 활용 도구:
- Python
markdown
패키지: 마크다운을 HTML로 변환하는 라이브러리. uv
(Umbrella Version Manager): Python CLI 도구를 쉽게 실행하기 위한 도구.- 클립보드 조작:
powershell
(Windows) 또는 쉘 명령어(macOS/Linux)를 사용하여 클립보드에서 텍스트를 읽고 HTML 형식으로 저장.
- Python
- 구현:
- Nu Shell (config.nu):
nu def md2html [] { let markdown = (powershell -c "Get-Clipboard -Raw") let html = ($markdown | uvx --from markdown --with markdown python -m markdown -e utf8) $html | powershell -c "Set-Clipboard -AsHtml -Value $input" }
- PowerShell (profile.ps1):
powershell Function md2html { $OutputEncoding=[System.Text.Encoding]::UTF8 $markdown=Get-Clipboard -Raw $html=$markdown|uvx --frommarkdown --withmarkdownpython -mmarkdown -eutf8 $html|Set-Clipboard -AsHtml }
- Nu Shell (config.nu):
- 사용법: 터미널에서
md2html
실행 후 Teams에 붙여넣기.
개발 임팩트
- Obsidian과 Teams 간의 문서 공유 및 협업 효율성 증대.
- 마크다운 서식 유지로 인한 정보 전달의 정확성 및 가독성 향상.
- 반복적인 수작업을 자동화하여 시간 절약 및 생산성 향상.
커뮤니티 반응
원문에서는 다른 사용자들이 유사한 문제를 겪고 있으며, 제안된 워크플로우가 일관성 있고 잘 작동한다고 언급하고 있습니다. 특히 온라인 도구 사용에 대한 거부감 및 민감한 정보 노출 우려를 해소하는 로컬 기반 솔루션이라는 점이 중요합니다.
📚 관련 자료
Python-Markdown
이 라이브러리는 마크다운 텍스트를 HTML로 변환하는 핵심 기능을 제공하며, 본문에서 설명하는 Python 스크립트의 기반이 됩니다.
관련도: 95%
uv
`uv`는 Python CLI 도구를 효율적으로 관리하고 실행하는 데 사용되며, 본문에서 `markdown` 패키지를 쉽게 호출하는 데 활용되었습니다.
관련도: 80%
Obsidian
콘텐츠의 소스인 Obsidian 노트 관리 도구의 릴리스 저장소입니다. 직접적인 코드 연관성은 낮지만, 사용자가 이 솔루션을 찾게 되는 배경을 제공합니다.
관련도: 70%