Obsidian 101 - 강력한 노트 관리 도구 활용법

Obsidian의 주요 기능과 설정, 테마와 외관, 그리고 필수 커뮤니티 플러그인을 활용한 생산성 향상 방법 Obsidian이란? Obsidian은 마크다운 기반의 강력한 노트 관리 및 지식 관리 도구로, 로컬 파일을 활용해 개인 지식 베이스를 구축하는 데 최적화되어 있습니다. 링크를 통한 노트 간 연결, 그래프 뷰, 플러그인 생태계를 통해 유연한 워크플로우를 제공합니다. 이번 포스트에서는 Obsidian의 주요 기능, 설정, 테마와 외관, 그리고 생산성을 극대화할 수 있는 커뮤니티 플러그인(예: Tasks, Advanced Tables, Git 등)을 자세히 다룹니다. ...

July 4, 2025 · Byung Kyu KIM

정규식의 멀티라인 expressions 활용

멀티라인 표현식의 활용법, Dotall (Single Line) 모드, Multi Line 모드, Non-Dotall 모드의 차이점, 여러 줄을 처리하는 방법 정규식의 멀티라인 표현식이란? 정규식(Regular Expression, Regex)은 텍스트 패턴을 검색하거나 조작할 때 강력한 도구로 사용됩니다. 특히 멀티라인 표현식은 여러 줄에 걸친 텍스트를 처리할 때 유용하며, 줄바꿈(\n)을 포함한 패턴 매칭을 가능하게 합니다. 이번 포스트에서는 멀티라인 표현식의 활용법, Dotall (Single Line) 모드, Multi Line 모드, Non-Dotall 모드의 차이점, 여러 줄을 처리하는 방법, 그리고 특정 패턴(예: start로 시작하고 end로 끝나는 패턴) 매칭 방법 등을 다룹니다. 또한, /s, /S, /w, /W, .|\n의 모드별 동작 차이를 설명합니다. ...

July 1, 2025 · Byung Kyu KIM

MCP-SuperAssistant 사용법

Model Context Pro **Model Context Pro MCP-SuperAssistant란? MCP-SuperAssistant는 MCP를 활용해 AI 플랫폼(ChatGPT, Perplexity, Google Gemini, Grok 등)과 외부 데이터 및 도구를 연결하는 크롬 확장 프로그램입니다. 이 도구는 AI 대화 내에서 MCP 도구 호출을 감지하고, 실행 결과를 자동 또는 수동으로 대화에 삽입하여 워크플로우를 간소화합니다. MCP-SuperAssistant는 다양한 AI 플랫폼과의 호환성과 유연한 설정을 통해 개발자와 비즈니스 사용자의 생산성을 극대화합니다. MCP-SuperAssistant의 주요 기능 MCP-SuperAssistant는 다음과 같은 기능을 제공합니다: 다양한 AI 플랫폼 지원: ChatGPT, Perplexity, Google Gemini, Grok, Google AI Studio, OpenRouter, DeepSeek 등에서 MCP 도구 실행 가능 MCP 도구 실행 및 결과 삽입: AI 대화 내 도구 호출을 감지해 실행하고 결과를 대화에 삽입 실시간 데이터 연결: MCP를 통해 콘텐츠 저장소, 비즈니스 앱, 개발 환경 등과 안전하게 연결 자동/수동 모드: 자동 모드(도구 실행 및 결과 제출 자동화)와 수동 모드(사용자 제어) 지원 확장성과 모듈성: 플러그인 기반 아키텍처로 새로운 플랫폼 및 도구 추가 가능, WebSocket 및 SSE 지원 보안 및 접근성: 복잡한 API 키 설정 없이 기존 AI 구독 활용, 최소 설정으로 사용 가능 6000+ MCP 서버 지원: 다양한 MCP 서버와 통합해 AI 워크플로우 강화 특징: 확장 프로그램은 간단한 설치로 즉시 사용 가능하며, 샌드박스 환경에서 실행되어 보안성을 유지합니다. 제약사항: 일부 복잡한 도구 호출은 MCP 서버 설정이 필요하며, AI 모델의 프롬프트 이해도에 따라 결과 정확도가 달라질 수 있습니다. 초기 설치 및 세팅, 실행 준비 MCP-SuperAssistant를 사용하려면 크롬 확장 프로그램 설치와 MCP 프록시 서버 설정이 필요합니다. 아래는 단계별 설치 및 실행 준비 과정입니다. ...

June 24, 2025 · Byung Kyu KIM

Gemini CLI의 MCP(Model Context Pro

Gemini CLI의 MCP(Model Context Pro Model Context Pro **Model Context Pro Gemini CLI와 MCP 지원 개요 Gemini CLI는 Google의 생성형 AI 모델인 Gemini를 터미널에서 활용할 수 있는 오픈소스 도구로, MCP를 통해 내장 및 외부 도구와의 통합을 지원합니다. MCP를 활용하면 Gemini CLI는 파일 시스템 작업, 웹 검색, 버전 관리 시스템(Git 등)과의 연동, 또는 사용자 정의 API와의 상호작용과 같은 다양한 기능을 수행할 수 있습니다. Gemini CLI는 MCP를 통해 모델의 컨텍스트를 확장하여 복잡한 작업을 처리하거나, 외부 시스템과의 실시간 데이터 교환을 가능하게 합니다. ...

June 23, 2025 · Byung Kyu KIM

Gemini CLI 툴 소개

Gemini CLI 툴: VSCode 플러그인과의 차이, 활용법, 실전 시나리오 Gemini CLI 이란? Gemini CLI는 Google의 생성형 AI 모델인 Gemini를 터미널 환경에서 직접 사용할 수 있도록 지원하는 커맨드라인 도구입니다. 이 도구를 활용하여 코드 생성, 요약, 번역, 문서화 등 다양한 AI 기능을 명령어 한 줄로 빠르게 수행할 수 있습니다. 특히, 별도의 통합 개발 환경(IDE) 없이도 쉘 스크립트, 자동화, 지속적 통합(CI)과 같은 다양한 환경에서 AI 기능을 활용할 수 있다는 점이 큰 특징입니다. Gemini CLI는 또한 **mcp(Model Context Pro ...

June 22, 2025 · Byung Kyu KIM

정규식 탐색 기법 - 전방탐색, 부정형 전방탐색, 후방탐색, 부정형 후방탐색

정규식 탐색 기법: 전방탐색과 후방탐색 정규식 탐색 기법 요약 정규식(Regular Expression)은 텍스트 패턴 매칭에 강력한 도구. **전방탐색(Lookahead)**과 **후방탐색(Lookbehind)**은 특정 조건을 만족하는 패턴을 찾되, 그 조건 자체는 결과에 포함시키지 않는 고급 기법 기법 문법 설명 전방탐색 (?=패턴) 패턴이 앞에 있을 때 매칭 부정형 전방탐색 (?!패턴) 패턴이 앞에 없을 때 매칭 후방탐색 (?<=패턴) 패턴이 뒤에 있을 때 매칭 부정형 후방탐색 (?<!패턴) 패턴이 뒤에 없을 때 매칭 왜 전방탐색과 후방탐색이 필요한가? 전방탐색과 후방탐색은 매칭 조건을 설정하지만, 해당 조건은 최종 결과에 포함되지 않습니다. 이는 URL, 로그, 텍스트 파싱에서 특정 패턴의 주변 정보만 필요할 때 유용합니다. 주요 장점: ...

June 20, 2025 · Byung Kyu KIM

모던 쉘 명령어로 터미널 생산성 높이기

모던 쉘 명령어: 전통적인 도구를 대체하는 강력한 대안 터미널은 개발자와 시스템 관리자의 핵심 도구입니다. 하지만 전통적인 쉘 명령어(grep, sed, find, cat, watch, top, du)는 속도, 가독성, 사용 편의성 면에서 한계가 있습니다. 2025년 기준, 이러한 명령어들을 대체하는 모던 대안들이 주목받고 있습니다. 이 포스트에서는 ripgrep, sd, fd, bat, hwatch, htop, dust를 전통 명령어와 비교하며 특징과 사용법을 소개합니다. 모던 쉘 명령어 요약 전통 명령어 모던 대안 주요 특징 설치 명령어 (Ubuntu/Debian) grep ripgrep (rg) 고속 검색, .gitignore 통합, 컬러 출력 sudo apt-get install ripgrep sed sd 간단한 치환 문법, 빠른 처리 sudo apt-get install sd find fd 직관적 검색, .gitignore 지원 sudo apt-get install fd-find cat bat 구문 강조, Git 통합, 페이징 sudo apt-get install bat watch hwatch 변경 강조, 로그 저장 sudo apt-get install hwatch top htop 컬러 UI, 프로세스 트리 뷰 sudo apt-get install htop du dust 트리 구조, 직관적 시각화 sudo apt-get install dust 왜 모던 쉘 명령어가 필요한가? 모던 쉘 명령어는 Rust, Go 같은 현대 언어로 작성되어 속도와 효율성이 뛰어나며, 사용자 친화적인 인터페이스를 제공합니다. 주요 장점은 다음과 같습니다: ...

May 25, 2025 · Byung Kyu KIM

GitHub Actions YAML 사용법

GitHub Actions YAML: CI/CD 워크플로우의 핵심 GitHub Actions는 CI/CD 및 자동화 워크플로우를 정의하는 강력한 도구로, YAML 파일을 통해 설정됩니다. 이 포스트에서는 GitHub Actions YAML의 주요 사용법, 실행 환경, 쉘 스크립트 활용 방법, 그리고 실무에서 유용한 팁을 정리합니다. 왜 GitHub Actions YAML이 중요한가? GitHub Actions는 코드 푸시, 풀 리퀘스트, 스케줄링 등 다양한 이벤트를 기반으로 자동화된 워크플로우를 실행할 수 있습니다. YAML 파일은 이를 직관적이고 선언적으로 정의하며, 다음과 같은 장점을 제공합니다: 가독성: 명확한 구조로 워크플로우 정의. 유연성: 다양한 환경과 도구 지원. 재사용성: 액션과 워크플로우를 모듈화해 생산성 향상. 2025년 기준: GitHub Actions는 대부분의 주요 언어와 배포 환경을 지원하며, 커뮤니티 액션으로 확장 가능. 1. GitHub Actions YAML 기본 구조 GitHub Actions 워크플로우는 .github/workflows/ 디렉토리에 .yml 파일로 저장됩니다. 기본 구조는 다음과 같습니다: ...

May 23, 2025 · Byung Kyu KIM

C++ std::format, std::print 사용법과 컴파일러 호환성

C++20 std::format과 C++23 std::print: 현대적인 문자열 포매팅 C++20과 C++23은 문자열 포매팅을 현대화한 std::format과 std::print를 도입하며, 기존의 printf나 std::cout에 비해 안전하고 직관적인 API를 제공합니다. 이 글에서는 두 기능의 사용법, 컴파일러 호환성, 그리고 지원되지 않는 환경에서 fmt 라이브러리 사용 방법을 다룹니다. 왜 새로운 포매팅 API가 중요한가? 기존 C++ 문자열 포매팅 방법(printf, std::stringstream, std::cout)은 다음과 같은 단점이 있습니다: 안전성 부족: printf는 타입 안정성을 보장하지 않아 런타임 오류 발생 가능. 복잡성: std::stringstream은 장황하고 성능 오버헤드 존재. 가독성: std::cout은 연속적인 << 연산으로 코드가 길어짐. std::format(C++20)과 std::print(C++23)는 Python의 str.format에서 영감을 받아 타입 안전성, 가독성, 성능을 개선했습니다. fmt 라이브러리는 이를 보완하며, 최신 표준을 지원하지 않는 환경에서도 동일한 경험을 제공합니다. ...

May 22, 2025 · Byung Kyu KIM

정규 표현식(BRE, ERE, PCRE) 기능 비교 및 명령어 지원 가이드

정규 표현식(BRE, ERE, PCRE) 기능 비교 및 명령어 지원 가이드 1. 정규 표현식이란? 정규 표현식(Regular Expression, Regex)은 텍스트 패턴을 검색, 치환, 검증하는 데 사용되는 강력한 도구입니다. POSIX 기반의 BRE(Basic Regular Expressions), ERE(Extended Regular Expressions), 그리고 Perl 호환 PCRE(Perl-Compatible Regular Expressions)는 각각 다른 기능과 지원 범위를 제공합니다. 이 글에서는 각 정규 표현식 유형의 특징과 grep, egrep, sed, ripgrep, awk 같은 도구에서의 지원 옵션을 정리합니다. 2. 정규 표현식 유형별 기능 기능 BRE (Basic) ERE (Extended) PCRE (Perl) 기본 메타문자 ., *, ^, $, [], [^ ] BRE + +, ?, ` , {n,m}` 그룹화 \(\) () (), 이름 붙은 그룹 지원 백레퍼런스 \1, \2 \1, \2 \1, \2, 이름 참조 가능 반복 *, \{n,m\} *, +, ?, {n,m} *, +, ?, {n,m}, *?, +? 고급 기능 없음 없음 전방 탐색((?=...)), 후방 탐색((?<=...)) 예시 a\(b*\)c → abbbc `a(b+ c)d→abbd, acd` 제한점 +, ?, |는 이스케이프 필요 비탐욕적 매칭, 전방/후방 탐색 미지원 POSIX 도구에서 제한적 지원 2.1 기본 정규 표현식 (BRE) 설명: POSIX 표준의 기본 정규 표현식, 가장 제한적. 주요 기능: 메타문자(., *, ^, $, []), 그룹화(\(\)), 백레퍼런스(\1, \2). 제한점: +, ?, |는 이스케이프(\+, \?, \|) 필요. 2.2 확장 정규 표현식 (ERE) 설명: POSIX 확장 표준, BRE보다 간결하고 표현력 높음. 주요 기능: 추가 메타문자(+, ?, |, {n,m}), 그룹화(()). 제한점: 비탐욕적 매칭이나 전방/후방 탐색 미지원. 2.3 Perl 호환 정규 표현식 (PCRE) 설명: Perl 기반, 가장 강력한 정규 표현식. 주요 기능: 비탐욕적 매칭(*?, +?), 전방/후방 탐색, 유니코드 지원. 제한점: POSIX 도구에서 제한적 지원. 3. 명령어별 정규 표현식 지원 옵션 명령어 BRE ERE PCRE grep 기본 (옵션 없음) -E -P (GNU grep만) egrep - 기본 (옵션 없음) - sed 기본 (옵션 없음) -r (GNU) / -E (BSD) - ripgrep - 기본 (옵션 없음) 기본 (옵션 없음) awk 기본 (옵션 없음) - - (gawk는 제한적 PCRE 지원) 4. 모범 사례 POSIX 우선: 이식성을 위해 BRE/ERE 사용. ...

May 20, 2025 · Byung Kyu KIM