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 형식으로 저장.
  • 구현:
    • 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 }
  • 사용법: 터미널에서 md2html 실행 후 Teams에 붙여넣기.

개발 임팩트

  • Obsidian과 Teams 간의 문서 공유 및 협업 효율성 증대.
  • 마크다운 서식 유지로 인한 정보 전달의 정확성 및 가독성 향상.
  • 반복적인 수작업을 자동화하여 시간 절약 및 생산성 향상.

커뮤니티 반응

원문에서는 다른 사용자들이 유사한 문제를 겪고 있으며, 제안된 워크플로우가 일관성 있고 잘 작동한다고 언급하고 있습니다. 특히 온라인 도구 사용에 대한 거부감 및 민감한 정보 노출 우려를 해소하는 로컬 기반 솔루션이라는 점이 중요합니다.

📚 관련 자료