Skip to content

BaeTab/ClipboardPilot

Repository files navigation

๐Ÿ“‹ ํด๋ฆฝ๋ณด๋“œ ํŒŒ์ผ๋Ÿฟ (Clipboard Pilot)

License .NET Platform Status Version

Windows์šฉ ์Šค๋งˆํŠธ ํด๋ฆฝ๋ณด๋“œ ๊ด€๋ฆฌ ๋„๊ตฌ ๐Ÿš€

ํด๋ฆฝ๋ณด๋“œ ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ์ž๋™ ์ €์žฅํ•˜๊ณ  ๊ฐ•๋ ฅํ•œ ๊ฒ€์ƒ‰์œผ๋กœ ์–ธ์ œ๋“  ์ฐพ์•„ ์‚ฌ์šฉํ•˜์„ธ์š”!

๊ธฐ๋Šฅ โ€ข ์„ค์น˜ โ€ข ์‚ฌ์šฉ๋ฒ• โ€ข ๊ฐœ๋ฐœ โ€ข ๊ธฐ์—ฌ


๐ŸŽฏ ์†Œ๊ฐœ

ํด๋ฆฝ๋ณด๋“œ ํŒŒ์ผ๋Ÿฟ์€ Windows ํด๋ฆฝ๋ณด๋“œ์˜ ๋ชจ๋“  ๋‚ด์šฉ์„ ์ž๋™์œผ๋กœ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ•๋ ฅํ•œ ์ƒ์‚ฐ์„ฑ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

๋ณต์‚ฌํ•œ ๋‚ด์šฉ์„ ์žƒ์–ด๋ฒ„๋ฆฐ ๊ฒฝํ—˜์ด ์žˆ์œผ์‹ ๊ฐ€์š”? ๋ฉฐ์น  ์ „ ๋ณต์‚ฌํ•œ ํ…์ŠคํŠธ๋ฅผ ๋‹ค์‹œ ์ฐพ์œผ๋ ค๊ณ  ์• ์“ด ์ ์ด ์žˆ์œผ์‹ ๊ฐ€์š”? ํด๋ฆฝ๋ณด๋“œ ํŒŒ์ผ๋Ÿฟ์ด ์ด ๋ชจ๋“  ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค!

โš ๏ธ ์ค‘์š”: ์ด ์†Œํ”„ํŠธ์›จ์–ด๋Š” ๊ฐœ์ธ, ๊ต์œก, ์—ฐ๊ตฌ ๋ชฉ์ ์œผ๋กœ๋งŒ ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒ์—…์  ์‚ฌ์šฉ์€ ๋ณ„๋„ ๋ผ์ด์„ ์Šค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ผ์ด์„ ์Šค ์„น์…˜์„ ์ฐธ์กฐํ•˜์„ธ์š”.

โœจ ํ•ต์‹ฌ ๊ธฐ๋Šฅ

  • ๐Ÿ”„ ์ž๋™ ์ˆ˜์ง‘: ๋ชจ๋“  ํด๋ฆฝ๋ณด๋“œ ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ์ €์žฅ (ํ…์ŠคํŠธ, ์ด๋ฏธ์ง€, HTML, ํŒŒ์ผ ๋“ฑ)
  • ๐Ÿ” ๊ฐ•๋ ฅํ•œ ๊ฒ€์ƒ‰: ํ‚ค์›Œ๋“œ๋กœ ๋น ๋ฅด๊ฒŒ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ํ•„ํ„ฐ๋กœ ์ •ํ™•ํžˆ ์ฐพ๊ธฐ
  • โญ ์ฆ๊ฒจ์ฐพ๊ธฐ: ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ํ•ญ๋ชฉ์„ Ctrl+Alt+1~9๋กœ ์ฆ‰์‹œ ํ˜ธ์ถœ
  • ๐Ÿ“Œ ํ•€ ๊ณ ์ •: ์ค‘์š”ํ•œ ํ•ญ๋ชฉ์€ ์ƒ๋‹จ์— ๊ณ ์ •ํ•˜์—ฌ ํ•ญ์ƒ ์ ‘๊ทผ ๊ฐ€๋Šฅ
  • ๐ŸŽจ ์ปฌ๋Ÿฌ ๋ผ๋ฒจ: 7๊ฐ€์ง€ ์ƒ‰์ƒ์œผ๋กœ ํ•ญ๋ชฉ์„ ์‹œ๊ฐ์ ์œผ๋กœ ๋ถ„๋ฅ˜
  • ๐Ÿ–ผ๏ธ ์ด๋ฏธ์ง€ ์ง€์›: ์ด๋ฏธ์ง€ ์ž๋™ ์ €์žฅ ๋ฐ ์ธ๋„ค์ผ ์ƒ์„ฑ
  • โšก ์ „์—ญ ๋‹จ์ถ•ํ‚ค: ์–ด๋–ค ์•ฑ์—์„œ๋“  Ctrl+Shift+V๋กœ ๋ฏธ๋‹ˆ ํŒจ๋„ ํ˜ธ์ถœ
  • ๐ŸŽจ ๋ชจ๋˜ UI: DevExpress ๊ธฐ๋ฐ˜์˜ ์„ธ๋ จ๋˜๊ณ  ์ง๊ด€์ ์ธ ์ธํ„ฐํŽ˜์ด์Šค
  • ๐Ÿ”’ ํ”„๋ผ์ด๋ฒ„์‹œ: ๋กœ์ปฌ SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๋งŒ ์ €์žฅ (์ธํ„ฐ๋„ท ๋ถˆํ•„์š”)

๐Ÿ“ธ ์Šคํฌ๋ฆฐ์ƒท

์Šคํฌ๋ฆฐ์ƒท์€ ์ฒซ ๋ฆด๋ฆฌ์Šค ํ›„ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค

[๋ฉ”์ธ ์ฐฝ ์Šคํฌ๋ฆฐ์ƒท]
[๋ฏธ๋‹ˆ ํŒจ๋„ ์Šคํฌ๋ฆฐ์ƒท]
[์„ค์ • ์ฐฝ ์Šคํฌ๋ฆฐ์ƒท]

๐Ÿš€ ์ฃผ์š” ๊ธฐ๋Šฅ

๐Ÿ“ฅ ์Šค๋งˆํŠธ ํด๋ฆฝ๋ณด๋“œ ์ˆ˜์ง‘

  • ๋‹ค์–‘ํ•œ ํ˜•์‹ ์ง€์›:

    • ๐Ÿ“ ์ผ๋ฐ˜ ํ…์ŠคํŠธ (Text)
    • ๐ŸŒ HTML ์ฝ˜ํ…์ธ 
    • ๐Ÿ“„ RTF (Rich Text Format)
    • ๐Ÿ–ผ๏ธ ์ด๋ฏธ์ง€ (PNG, JPG, BMP ๋“ฑ)
    • ๐Ÿ“ ํŒŒ์ผ ๋ฐ ํด๋” ๋ชฉ๋ก
  • ์ค‘๋ณต ๋ฐฉ์ง€: ๋™์ผํ•œ ๋‚ด์šฉ์ด 10์ดˆ ๋‚ด ๋‹ค์‹œ ๋ณต์‚ฌ๋˜๋ฉด ์ž๋™์œผ๋กœ ํ•„ํ„ฐ๋ง

  • ๋ฏผ๊ฐ์ •๋ณด ๋ณดํ˜ธ: ๋น„๋ฐ€๋ฒˆํ˜ธ ํŒจํ„ด ์ž๋™ ๊ฐ์ง€ ๋ฐ ํ•„ํ„ฐ๋ง

  • ์šฉ๋Ÿ‰ ๊ด€๋ฆฌ: ์ตœ๋Œ€ 1000๊ฐœ ํ•ญ๋ชฉ ๋ณด๊ด€ (์„ค์ • ๊ฐ€๋Šฅ)

  • ์ž๋™ ์ •๋ฆฌ: 30์ผ ์ด์ƒ ์˜ค๋ž˜๋œ ํ•ญ๋ชฉ ์ž๋™ ์‚ญ์ œ (์„ค์ • ๊ฐ€๋Šฅ)

  • ์ž๊ธฐ ์ž์‹  ํ•„ํ„ฐ: ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ ๋ณต์‚ฌํ•œ ํ•ญ๋ชฉ์€ ๋‹ค์‹œ ์ˆ˜์ง‘ํ•˜์ง€ ์•Š์Œ โœจ

๐Ÿ” ๊ฒ€์ƒ‰ & ํ•„ํ„ฐ๋ง

๋น ๋ฅธ ํ•„ํ„ฐ ๋ฒ„ํŠผ

  • ๐Ÿ“… ์˜ค๋Š˜: ์˜ค๋Š˜ ๋ณต์‚ฌํ•œ ํ•ญ๋ชฉ๋งŒ ํ‘œ์‹œ
  • ๐Ÿ• ์ตœ๊ทผ 24์‹œ๊ฐ„: ์ตœ๊ทผ ํ•˜๋ฃจ ๋™์•ˆ์˜ ํ•ญ๋ชฉ
  • ๐Ÿ–ผ๏ธ ์ด๋ฏธ์ง€: ์ด๋ฏธ์ง€๋งŒ ํ•„ํ„ฐ๋ง
  • ๐Ÿ“ ํ…์ŠคํŠธ: ํ…์ŠคํŠธ๋งŒ ํ•„ํ„ฐ๋ง
  • ๐Ÿ“Œ ๊ณ ์ •๋จ: ํ•€์œผ๋กœ ๊ณ ์ •ํ•œ ์ค‘์š” ํ•ญ๋ชฉ

๊ณ ๊ธ‰ ํ•„ํ„ฐ

  • ๐Ÿ“Š ์œ ํ˜•๋ณ„: Text, HTML, RTF, Image, FileList
  • ๐ŸŽจ ๋ผ๋ฒจ๋ณ„: 7๊ฐ€์ง€ ์ปฌ๋Ÿฌ ๋ผ๋ฒจ๋กœ ๋ถ„๋ฅ˜
  • ๐Ÿ“… ๋‚ ์งœ ๋ฒ”์œ„: ํŠน์ • ๊ธฐ๊ฐ„์˜ ํ•ญ๋ชฉ ๊ฒ€์ƒ‰
  • ๐Ÿ“ ํฌ๊ธฐ๋ณ„: ํŒŒ์ผ ํฌ๊ธฐ๋กœ ํ•„ํ„ฐ๋ง

์‹ค์‹œ๊ฐ„ ๊ฒ€์ƒ‰

  • โšก ํƒ€์ดํ•‘ํ•˜๋Š” ์ฆ‰์‹œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์—…๋ฐ์ดํŠธ
  • ๐ŸŽฏ ์ œ๋ชฉ, ๋‚ด์šฉ, ์†Œ์Šค ์•ฑ ๋“ฑ ๋ชจ๋“  ํ•„๋“œ ๊ฒ€์ƒ‰

โญ ์ฆ๊ฒจ์ฐพ๊ธฐ ์‹œ์Šคํ…œ

ํ•ญ๋ชฉ ์„ ํƒ โ†’ 1~9 ์ˆซ์ž ํ‚ค ์ž…๋ ฅ โ†’ ์ฆ๊ฒจ์ฐพ๊ธฐ ๋“ฑ๋ก ์™„๋ฃŒ!
  • ๋น ๋ฅธ ์ ‘๊ทผ: Ctrl+Alt+1~9๋กœ ์–ด๋””์„œ๋“  ์ฆ‰์‹œ ๋ถ™์—ฌ๋„ฃ๊ธฐ
  • ์‹œ๊ฐ์  ํ‘œ์‹œ: ์ฆ๊ฒจ์ฐพ๊ธฐ ์ˆœ์œ„ ๋ฑƒ์ง€ ํ‘œ์‹œ
  • ๋ฎ์–ด์“ฐ๊ธฐ ํ™•์ธ: ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ธ ์ˆซ์ž ์„ ํƒ ์‹œ ํ™•์ธ ๋ฉ”์‹œ์ง€

โšก ๋‹จ์ถ•ํ‚ค

๐ŸŒ ์ „์—ญ ๋‹จ์ถ•ํ‚ค (๋ชจ๋“  ์•ฑ์—์„œ ์ž‘๋™)

๋‹จ์ถ•ํ‚ค ๊ธฐ๋Šฅ
Ctrl+Shift+V ๋ฏธ๋‹ˆ ํŒจ๋„ ์—ด๊ธฐ
Ctrl+Alt+V ์ด์ „ ํ•ญ๋ชฉ ๋ถ™์—ฌ๋„ฃ๊ธฐ
Ctrl+Alt+1~9 ์ฆ๊ฒจ์ฐพ๊ธฐ ํ•ญ๋ชฉ ๋ถ™์—ฌ๋„ฃ๊ธฐ

โŒจ๏ธ ํ”„๋กœ๊ทธ๋žจ ๋‚ด ๋‹จ์ถ•ํ‚ค

๋‹จ์ถ•ํ‚ค ๊ธฐ๋Šฅ
Ctrl+F ๊ฒ€์ƒ‰์ฐฝ ํฌ์ปค์Šค
Ctrl+D ์„ ํƒ ํ•ญ๋ชฉ ์‚ญ์ œ
Ctrl+P ์„ ํƒ ํ•ญ๋ชฉ ๊ณ ์ •/ํ•ด์ œ
F5 ์ƒˆ๋กœ๊ณ ์นจ
Esc ํ•„ํ„ฐ ์ดˆ๊ธฐํ™”
Enter ์„ ํƒ ํ•ญ๋ชฉ ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌ
1~9 ์ฆ๊ฒจ์ฐพ๊ธฐ ์„ค์ •

๐Ÿ” ๋ฏธ๋‹ˆ ํŒจ๋„ ๋‹จ์ถ•ํ‚ค

๋‹จ์ถ•ํ‚ค ๊ธฐ๋Šฅ
โ†‘ / โ†“ ํ•ญ๋ชฉ ์„ ํƒ ์ด๋™
Enter ์„ ํƒ ํ•ญ๋ชฉ ๋ถ™์—ฌ๋„ฃ๊ธฐ
Esc ๋ฏธ๋‹ˆ ํŒจ๋„ ๋‹ซ๊ธฐ
Ctrl+1~9 ์ฆ๊ฒจ์ฐพ๊ธฐ ๋ถ™์—ฌ๋„ฃ๊ธฐ

๐Ÿ’ป ์‹œ์Šคํ…œ ์š”๊ตฌ์‚ฌํ•ญ

์ตœ์†Œ ์‚ฌ์–‘

  • OS: Windows 10 (Build 1903 ์ด์ƒ) ๋˜๋Š” Windows 11
  • .NET: .NET 8.0 Runtime (์„ค์น˜ ํŒŒ์ผ์— ํฌํ•จ๋จ)
  • ๋ฉ”๋ชจ๋ฆฌ: 512MB RAM
  • ๋””์Šคํฌ: 100MB ์—ฌ์œ  ๊ณต๊ฐ„
  • ํ•ด์ƒ๋„: 1280x720 ์ด์ƒ

๊ถŒ์žฅ ์‚ฌ์–‘

  • OS: Windows 11
  • ๋ฉ”๋ชจ๋ฆฌ: 1GB RAM ์ด์ƒ
  • ๋””์Šคํฌ: 500MB ์—ฌ์œ  ๊ณต๊ฐ„ (์ด๋ฏธ์ง€ ์ €์žฅ ์‹œ)
  • ํ•ด์ƒ๋„: 1920x1080 ์ด์ƒ

์ง€์›ํ•˜์ง€ ์•Š๋Š” ํ™˜๊ฒฝ

  • โŒ Windows 7/8/8.1
  • โŒ Windows Server (ํ…Œ์ŠคํŠธ๋˜์ง€ ์•Š์Œ)
  • โŒ ARM64 ํ”„๋กœ์„ธ์„œ (ํ˜„์žฌ x64๋งŒ ์ง€์›)

๐Ÿ“ฆ ์„ค์น˜ ๋ฐฉ๋ฒ•

๋ฐฉ๋ฒ• 1: ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ (๊ถŒ์žฅ)

  1. Releases ํŽ˜์ด์ง€๋กœ ์ด๋™
  2. ์ตœ์‹  ๋ฒ„์ „์˜ ClipboardPilot-Setup-v1.0.0.exe ๋‹ค์šด๋กœ๋“œ
  3. ๋‹ค์šด๋กœ๋“œํ•œ ํŒŒ์ผ ์‹คํ–‰
  4. ์„ค์น˜ ๋งˆ๋ฒ•์‚ฌ๋ฅผ ๋”ฐ๋ผ ์ง„ํ–‰
  5. ์„ค์น˜ ์™„๋ฃŒ ํ›„ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰!

์„ค์น˜ ์œ„์น˜: C:\Program Files\Clipboard Pilot\

๋ฐฉ๋ฒ• 2: ZIP ํŒŒ์ผ (Portable)

  1. Releases ํŽ˜์ด์ง€์—์„œ ClipboardPilot-v1.0.0-win-x64.zip ๋‹ค์šด๋กœ๋“œ
  2. ์›ํ•˜๋Š” ํด๋”์— ์••์ถ• ํ•ด์ œ
  3. ClipboardPilot.exe ์‹คํ–‰

์žฅ์ : ์„ค์น˜ ๋ถˆํ•„์š”, USB์— ๋„ฃ๊ณ  ๋‹ค๋‹ˆ๊ธฐ ๊ฐ€๋Šฅ

๋ฐฉ๋ฒ• 3: ์†Œ์Šค์—์„œ ๋นŒ๋“œ

# 1. ์ €์žฅ์†Œ ํด๋ก 
git clone https://github.com/yourusername/ClipboardPilot.git
cd ClipboardPilot

# 2. ํŒจํ‚ค์ง€ ๋ณต์› ๋ฐ ๋นŒ๋“œ
dotnet restore
dotnet build -c Release

# 3. ์‹คํ–‰
dotnet run --project ClipboardPilot/ClipboardPilot.csproj

# ๋˜๋Š” ๊ฐ„๋‹จํ•˜๊ฒŒ
.\Build-Simple.ps1

์ƒ์„ธํ•œ ๋นŒ๋“œ ๊ฐ€์ด๋“œ๋Š” INSTALLATION.md๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.


๐Ÿ“– ์‚ฌ์šฉ๋ฒ•

๐ŸŽฌ ์‹œ์ž‘ํ•˜๊ธฐ

  1. ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰

    • ์„ค์น˜ ํ›„ ์ž๋™์œผ๋กœ ์‹คํ–‰๋˜๊ฑฐ๋‚˜
    • ์‹œ์ž‘ ๋ฉ”๋‰ด์—์„œ "Clipboard Pilot" ๊ฒ€์ƒ‰
  2. ์ž๋™ ์ˆ˜์ง‘ ์‹œ์ž‘

    • ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋ฉด ์ž๋™์œผ๋กœ ํด๋ฆฝ๋ณด๋“œ ๊ฐ์‹œ ์‹œ์ž‘
    • ์ƒํƒœ๋ฐ”์—์„œ "Clipboard watching..." ํ™•์ธ
  3. ์ฒซ ํ•ญ๋ชฉ ๋ณต์‚ฌ

    • ์•„๋ฌด ํ…์ŠคํŠธ๋‚˜ Ctrl+C๋กœ ๋ณต์‚ฌ
    • ๋ฉ”์ธ ์ฐฝ์— ์ฆ‰์‹œ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒƒ์„ ํ™•์ธ!

๐Ÿ“ ๊ธฐ๋ณธ ์ž‘์—… ํ๋ฆ„

graph LR
    A[์™ธ๋ถ€ ์•ฑ์—์„œ ๋ณต์‚ฌ] -->|Ctrl+C| B[์ž๋™ ์ €์žฅ]
    B --> C[๊ฒ€์ƒ‰/ํ•„ํ„ฐ]
    C --> D[ํ•ญ๋ชฉ ์„ ํƒ]
    D --> E[๋ณต์‚ฌ ๋˜๋Š” ๋ถ™์—ฌ๋„ฃ๊ธฐ]
    D --> F[์ฆ๊ฒจ์ฐพ๊ธฐ ๋“ฑ๋ก]
    D --> G[๋ผ๋ฒจ/ํ•€ ์„ค์ •]
Loading

๐Ÿ” ๊ฒ€์ƒ‰ ์˜ˆ์‹œ

๊ฒ€์ƒ‰์–ด: "invoice"  โ†’ ๋ชจ๋“  invoice ๊ด€๋ จ ํ•ญ๋ชฉ ํ‘œ์‹œ
๊ฒ€์ƒ‰์–ด: "2024"     โ†’ 2024๊ฐ€ ํฌํ•จ๋œ ๋ชจ๋“  ํ•ญ๋ชฉ
ํ•„ํ„ฐ: ์˜ค๋Š˜ + ์ด๋ฏธ์ง€ โ†’ ์˜ค๋Š˜ ๋ณต์‚ฌํ•œ ์ด๋ฏธ์ง€๋งŒ

โญ ์ฆ๊ฒจ์ฐพ๊ธฐ ํ™œ์šฉ

์‹œ๋‚˜๋ฆฌ์˜ค: ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์ด๋ฉ”์ผ ์ฃผ์†Œ

1. ์ด๋ฉ”์ผ ์ฃผ์†Œ ํ•ญ๋ชฉ ์„ ํƒ
2. ํ‚ค๋ณด๋“œ์—์„œ "1" ์ž…๋ ฅ
3. "Favorite rank set to 1" ๋ฉ”์‹œ์ง€ ํ™•์ธ
4. ์ด์ œ ์–ด๋””์„œ๋“  Ctrl+Alt+1๋กœ ์ฆ‰์‹œ ๋ถ™์—ฌ๋„ฃ๊ธฐ!

๐ŸŽจ ์ปฌ๋Ÿฌ ๋ผ๋ฒจ ํ™œ์šฉ

๋นจ๊ฐ•   โ†’ ๊ธด๊ธ‰/์ค‘์š”
์ฃผํ™ฉ   โ†’ ์ž‘์—… ๊ด€๋ จ
๋…ธ๋ž‘   โ†’ ์ฐธ๊ณ ์‚ฌํ•ญ
์ดˆ๋ก   โ†’ ์™„๋ฃŒ
ํŒŒ๋ž‘   โ†’ ๊ฐœ์ธ
๋ณด๋ผ   โ†’ ์•„์ด๋””์–ด

๐Ÿ—‚๏ธ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ

๐Ÿ“ ์ €์žฅ ์œ„์น˜

๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ํด๋”์— ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค:

%APPDATA%\ClipboardPilot\
โ”‚
โ”œโ”€โ”€ clipboard-pilot.db              # ๐Ÿ“Š SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (๋ฉ”์ธ ๋ฐ์ดํ„ฐ)
โ”œโ”€โ”€ clipboard-pilot.settings.json  # โš™๏ธ ์‚ฌ์šฉ์ž ์„ค์ •
โ”œโ”€โ”€ Images\                         # ๐Ÿ–ผ๏ธ ์ด๋ฏธ์ง€ ์บ์‹œ ํด๋”
โ”‚   โ”œโ”€โ”€ {guid}_001.png
โ”‚   โ”œโ”€โ”€ {guid}_002.jpg
โ”‚   โ””โ”€โ”€ ...
โ””โ”€โ”€ Logs\                          # ๐Ÿ“ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ๊ทธ
    โ”œโ”€โ”€ clipboard-pilot-20241031.log
    โ””โ”€โ”€ ...

์‹ค์ œ ๊ฒฝ๋กœ ์˜ˆ์‹œ:

C:\Users\YourName\AppData\Roaming\ClipboardPilot\

๐Ÿ”’ ํ”„๋ผ์ด๋ฒ„์‹œ & ๋ณด์•ˆ

  • โœ… ์™„์ „ ์˜คํ”„๋ผ์ธ: ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ ๋ถˆํ•„์š”
  • โœ… ๋กœ์ปฌ ์ €์žฅ: ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ์‚ฌ์šฉ์ž PC์—๋งŒ ์ €์žฅ
  • โœ… ๋ฏผ๊ฐ์ •๋ณด ํ•„ํ„ฐ: ๋น„๋ฐ€๋ฒˆํ˜ธ ํŒจํ„ด ์ž๋™ ๊ฐ์ง€ ๋ฐ ์ œ์™ธ
  • โœ… ์•”ํ˜ธํ™” ์˜ต์…˜: ํ–ฅํ›„ ๋ฒ„์ „์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•”ํ˜ธํ™” ์ง€์› ์˜ˆ์ •

๐Ÿ—‘๏ธ ๋ฐ์ดํ„ฐ ์‚ญ์ œ

๊ฐœ๋ณ„ ํ•ญ๋ชฉ ์‚ญ์ œ:

ํ•ญ๋ชฉ ์„ ํƒ โ†’ Ctrl+D ๋˜๋Š” ์šฐํด๋ฆญ > ์‚ญ์ œ

์ž๋™ ์ •๋ฆฌ:

์„ค์ • > ์ž๋™ ์ •๋ฆฌ > 30์ผ ์ด์ƒ ํ•ญ๋ชฉ ์ž๋™ ์‚ญ์ œ (๊ธฐ๋ณธ๊ฐ’)

์ „์ฒด ์‚ญ์ œ:

1. ํ”„๋กœ๊ทธ๋žจ ์ข…๋ฃŒ
2. %APPDATA%\ClipboardPilot ํด๋” ์‚ญ์ œ
3. ์žฌ์‹œ์ž‘ ์‹œ ์ƒˆ๋กœ ์ƒ์„ฑ๋จ

โš™๏ธ ์„ค์ •

์„ค์ • ํŒŒ์ผ ์œ„์น˜

%APPDATA%\ClipboardPilot\clipboard-pilot.settings.json

์ฃผ์š” ์„ค์ • ํ•ญ๋ชฉ

{
  "General": {
    "MaxItemsToKeep": 1000,           // ์ตœ๋Œ€ ๋ณด๊ด€ ํ•ญ๋ชฉ ์ˆ˜
    "AutoCleanupEnabled": true,       // ์ž๋™ ์ •๋ฆฌ ํ™œ์„ฑํ™”
    "AutoCleanupDays": 30,            // ์ •๋ฆฌ ๊ธฐ์ค€ (์ผ)
    "StartWithWindows": false,        // ์œˆ๋„์šฐ ์‹œ์ž‘ ์‹œ ์ž๋™ ์‹คํ–‰
    "MinimizeToTray": true,           // ํŠธ๋ ˆ์ด๋กœ ์ตœ์†Œํ™”
    "ShowNotifications": true         // ์•Œ๋ฆผ ํ‘œ์‹œ
  },
  "Collection": {
    "Enabled": true,                  // ํด๋ฆฝ๋ณด๋“œ ์ˆ˜์ง‘ ํ™œ์„ฑํ™”
    "SaveImages": true,               // ์ด๋ฏธ์ง€ ์ €์žฅ
    "SaveHtml": true,                 // HTML ์ €์žฅ
    "SaveFiles": true,                // ํŒŒ์ผ ๋ชฉ๋ก ์ €์žฅ
    "FilterSensitiveData": true,      // ๋ฏผ๊ฐ ์ •๋ณด ํ•„ํ„ฐ๋ง
    "MinTextLength": 1,               // ์ตœ์†Œ ํ…์ŠคํŠธ ๊ธธ์ด
    "MaxTextLength": 100000,          // ์ตœ๋Œ€ ํ…์ŠคํŠธ ๊ธธ์ด
    "ThumbnailSize": 200,             // ์ธ๋„ค์ผ ํฌ๊ธฐ (ํ”ฝ์…€)
    "MaxImageSizeMB": 10,             // ์ตœ๋Œ€ ์ด๋ฏธ์ง€ ํฌ๊ธฐ (MB)
    "ImageStorageMode": "FileSystem"  // ์ด๋ฏธ์ง€ ์ €์žฅ ๋ฐฉ์‹
  },
  "Hotkeys": {
    "ShowMiniPanel": "Control+Shift+V",
    "PastePrevious": "Control+Alt+V",
    "Favorite1": "Control+Alt+D1",
    // ... Favorite2~9
  }
}

UI์—์„œ ์„ค์ • ๋ณ€๊ฒฝ

๋ฉ”์ธ ๋ฉ”๋‰ด > ์„ค์ • (๋˜๋Š” F10) > ์›ํ•˜๋Š” ์˜ต์…˜ ์กฐ์ • > ์ €์žฅ

๐Ÿ› ๏ธ ๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ

๊ธฐ์ˆ  ์Šคํƒ

์นดํ…Œ๊ณ ๋ฆฌ ๊ธฐ์ˆ  ๋ฒ„์ „
Framework .NET 8.0
UI Framework WPF Latest
UI Library DevExpress WPF 23.2+
Database SQLite Latest
ORM Entity Framework Core 8.0
MVVM CommunityToolkit.Mvvm 8.2+
Logging Serilog 3.1+
Language C# 12.0

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

ClipboardPilot/
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Domain/                    # ๋„๋ฉ”์ธ ๊ณ„์ธต (ํ•ต์‹ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง)
โ”‚   โ”œโ”€โ”€ Entities/                # ์—”ํ‹ฐํ‹ฐ ํด๋ž˜์Šค
โ”‚   โ”‚   โ””โ”€โ”€ ClipboardItem.cs    # ํด๋ฆฝ๋ณด๋“œ ํ•ญ๋ชฉ ๋ชจ๋ธ
โ”‚   โ”œโ”€โ”€ Enums/                   # ์—ด๊ฑฐํ˜•
โ”‚   โ”‚   โ”œโ”€โ”€ ClipboardType.cs    # ํ•ญ๋ชฉ ์œ ํ˜•
โ”‚   โ”‚   โ””โ”€โ”€ ColorLabel.cs       # ์ปฌ๋Ÿฌ ๋ผ๋ฒจ
โ”‚   โ””โ”€โ”€ Interfaces/              # ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜
โ”‚       โ”œโ”€โ”€ IClipboardRepository.cs
โ”‚       โ””โ”€โ”€ IUnitOfWork.cs
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Infrastructure/           # ์ธํ”„๋ผ ๊ณ„์ธต (๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค)
โ”‚   โ”œโ”€โ”€ Data/
โ”‚   โ”‚   โ”œโ”€โ”€ AppDbContext.cs     # EF Core DbContext
โ”‚   โ”‚   โ””โ”€โ”€ UnitOfWork.cs       # Unit of Work ํŒจํ„ด
โ”‚   โ””โ”€โ”€ Repositories/
โ”‚       โ””โ”€โ”€ ClipboardRepository.cs  # ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๊ตฌํ˜„
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Services/                 # ์„œ๋น„์Šค ๊ณ„์ธต (์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง)
โ”‚   โ”œโ”€โ”€ ClipboardWatcher.cs     # ํด๋ฆฝ๋ณด๋“œ ๊ฐ์‹œ ์„œ๋น„์Šค
โ”‚   โ”œโ”€โ”€ HotkeyService.cs        # ๋‹จ์ถ•ํ‚ค ๊ด€๋ฆฌ
โ”‚   โ”œโ”€โ”€ ImageService.cs         # ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ
โ”‚   โ””โ”€โ”€ SettingsService.cs      # ์„ค์ • ๊ด€๋ฆฌ
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ ViewModels/               # MVVM ๋ทฐ๋ชจ๋ธ
โ”‚   โ”œโ”€โ”€ MainViewModel.cs        # ๋ฉ”์ธ ์ฐฝ ๋ทฐ๋ชจ๋ธ
โ”‚   โ”œโ”€โ”€ MiniPanelViewModel.cs   # ๋ฏธ๋‹ˆ ํŒจ๋„ ๋ทฐ๋ชจ๋ธ
โ”‚   โ””โ”€โ”€ SettingsViewModel.cs    # ์„ค์ • ์ฐฝ ๋ทฐ๋ชจ๋ธ
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Views/                    # XAML ๋ทฐ
โ”‚   โ”œโ”€โ”€ MiniPanelWindow.xaml    # ๋ฏธ๋‹ˆ ํŒจ๋„ ์ฐฝ
โ”‚   โ””โ”€โ”€ SettingsWindow.xaml     # ์„ค์ • ์ฐฝ
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Converters/               # XAML ๊ฐ’ ๋ณ€ํ™˜๊ธฐ
โ”‚   โ””โ”€โ”€ ValueConverters.cs      # ๊ฐ์ข… ์ปจ๋ฒ„ํ„ฐ
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Models/                   # ๋ชจ๋ธ ํด๋ž˜์Šค
โ”‚   โ””โ”€โ”€ AppSettings.cs          # ์„ค์ • ๋ชจ๋ธ
โ”‚
โ”œโ”€โ”€ MainWindow.xaml              # ๋ฉ”์ธ ์ฐฝ
โ”œโ”€โ”€ App.xaml                     # ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ง„์ž…์ 
โ””โ”€โ”€ clipboard-pilot.settings.json # ๊ธฐ๋ณธ ์„ค์ •

๐Ÿš€ ๋กœ์ปฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ •

1. ํ•„์ˆ˜ ๋„๊ตฌ ์„ค์น˜

# 1. .NET 8.0 SDK ์„ค์น˜
winget install Microsoft.DotNet.SDK.8

# 2. Visual Studio 2022 ์„ค์น˜ (Community ๋ฌด๋ฃŒ)
winget install Microsoft.VisualStudio.2022.Community

# 3. Git ์„ค์น˜
winget install Git.Git

2. ์ €์žฅ์†Œ ํด๋ก  ๋ฐ ๋นŒ๋“œ

# ์ €์žฅ์†Œ ํด๋ก 
git clone https://github.com/yourusername/ClipboardPilot.git
cd ClipboardPilot

# NuGet ํŒจํ‚ค์ง€ ๋ณต์›
dotnet restore

# ๋””๋ฒ„๊ทธ ๋นŒ๋“œ
dotnet build

# ์‹คํ–‰
dotnet run --project ClipboardPilot/ClipboardPilot.csproj

3. Visual Studio์—์„œ ์—ด๊ธฐ

1. Visual Studio 2022 ์‹คํ–‰
2. File > Open > Project/Solution
3. ClipboardPilot.sln ์—ด๊ธฐ
4. F5 (๋””๋ฒ„๊ทธ ์‹œ์ž‘)

๐Ÿ“ฆ ๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ

๊ฐ„๋‹จํ•œ ๋นŒ๋“œ

.\Build-Simple.ps1 -Version "1.0.0"

์™„์ „ํ•œ ๋ฆด๋ฆฌ์Šค ๋นŒ๋“œ (์„ค์น˜ ํŒŒ์ผ ํฌํ•จ)

.\Build-Release.ps1 -Version "1.0.0"

์ƒ์„ธ ๊ฐ€์ด๋“œ: INSTALLATION.md

๐Ÿงช ํ…Œ์ŠคํŠธ

# ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ์‹คํ–‰ (ํ–ฅํ›„ ์ถ”๊ฐ€ ์˜ˆ์ •)
dotnet test

# ์ปค๋ฒ„๋ฆฌ์ง€ ๋ฆฌํฌํŠธ ์ƒ์„ฑ
dotnet test --collect:"XPlat Code Coverage"

๐Ÿ“ ์ฝ”๋”ฉ ๊ทœ์น™

C# ์Šคํƒ€์ผ ๊ฐ€์ด๋“œ

  • โœ… .editorconfig ์„ค์ • ์ค€์ˆ˜
  • โœ… PascalCase: ํด๋ž˜์Šค, ๋ฉ”์„œ๋“œ, ํ”„๋กœํผํ‹ฐ
  • โœ… camelCase: ๋กœ์ปฌ ๋ณ€์ˆ˜, ๋งค๊ฐœ๋ณ€์ˆ˜
  • โœ… _camelCase: private ํ•„๋“œ
  • โœ… ์ฃผ์„์€ ํ•œ๊ธ€๋กœ ์ž‘์„ฑ (์ฝ”๋“œ ์ดํ•ด๋ฅผ ์œ„ํ•ด)
  • โœ… XML ๋ฌธ์„œํ™” ์ฃผ์„ ๊ถŒ์žฅ

Git ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€

feat: ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
fix: ๋ฒ„๊ทธ ์ˆ˜์ •
docs: ๋ฌธ์„œ ์ˆ˜์ •
style: ์ฝ”๋“œ ํฌ๋งทํŒ…
refactor: ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
test: ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€
chore: ๋นŒ๋“œ/์„ค์ • ๊ด€๋ จ

๐Ÿ” ๋””๋ฒ„๊น…

๋กœ๊ทธ ํŒŒ์ผ ์œ„์น˜

%APPDATA%\ClipboardPilot\Logs\clipboard-pilot-{date}.log

๋กœ๊ทธ ๋ ˆ๋ฒจ ์„ค์ •

appsettings.json ์—์„œ ๋กœ๊ทธ ๋ ˆ๋ฒจ ์กฐ์ • ๊ฐ€๋Šฅ:

{
  "Serilog": {
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        "ClipboardPilot": "Debug"
      }
    }
  }
}

๐Ÿค ๊ธฐ์—ฌํ•˜๊ธฐ

๊ธฐ์—ฌ๋Š” ์–ธ์ œ๋‚˜ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! ๐ŸŽ‰

๊ธฐ์—ฌ ๋ฐฉ๋ฒ•

  1. ์ด ์ €์žฅ์†Œ๋ฅผ Fork ํ•ฉ๋‹ˆ๋‹ค
  2. Feature ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค
    git checkout -b feature/AmazingFeature
  3. ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ปค๋ฐ‹ํ•ฉ๋‹ˆ๋‹ค
    git commit -m 'feat: Add some AmazingFeature'
  4. ๋ธŒ๋žœ์น˜์— Pushํ•ฉ๋‹ˆ๋‹ค
    git push origin feature/AmazingFeature
  5. Pull Request๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค

๊ธฐ์—ฌ ๊ฐ€์ด๋“œ๋ผ์ธ

  • ๐Ÿ“ ์ฝ”๋“œ ์Šคํƒ€์ผ ์ค€์ˆ˜ (.editorconfig)
  • โœ… ๋นŒ๋“œ ์—๋Ÿฌ ์—†์ด ์ปดํŒŒ์ผ๋˜์–ด์•ผ ํ•จ
  • ๐Ÿ“– ์ฃผ์š” ๋ณ€๊ฒฝ์‚ฌํ•ญ์€ ๋ฌธ์„œํ™”
  • ๐Ÿงช ๊ฐ€๋Šฅํ•˜๋ฉด ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ํฌํ•จ
  • ๐Ÿ’ฌ Pull Request์— ๋ช…ํ™•ํ•œ ์„ค๋ช… ์ž‘์„ฑ

๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ์˜์—ญ

  • ๐Ÿ› ๋ฒ„๊ทธ ์ˆ˜์ •
  • โœจ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ œ์•ˆ ๋ฐ ๊ตฌํ˜„
  • ๐Ÿ“š ๋ฌธ์„œ ๊ฐœ์„ 
  • ๐ŸŒ ๋‹ค๊ตญ์–ด ์ง€์› (i18n)
  • ๐ŸŽจ UI/UX ๊ฐœ์„ 
  • โšก ์„ฑ๋Šฅ ์ตœ์ ํ™”
  • ๐Ÿงช ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ

๐Ÿ› ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ & ๊ธฐ๋Šฅ ์ œ์•ˆ

๋ฒ„๊ทธ ๋ฐœ๊ฒฌ ์‹œ

Issues ํŽ˜์ด์ง€์—์„œ ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”.

๋ฒ„๊ทธ ๋ฆฌํฌํŠธ ํ…œํ”Œ๋ฆฟ:

## ํ™˜๊ฒฝ
- OS: Windows 11 22H2
- .NET: 8.0
- ๋ฒ„์ „: v1.0.0

## ์žฌํ˜„ ๋ฐฉ๋ฒ•
1. ๋ฉ”์ธ ์ฐฝ ์—ด๊ธฐ
2. ๊ฒ€์ƒ‰์ฐฝ์— "test" ์ž…๋ ฅ
3. Enter ํ‚ค ๋ˆ„๋ฅด๊ธฐ
4. ์—๋Ÿฌ ๋ฐœ์ƒ

## ์˜ˆ์ƒ ๋™์ž‘
๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ํ‘œ์‹œ๋˜์–ด์•ผ ํ•จ

## ์‹ค์ œ ๋™์ž‘
์•ฑ์ด ํฌ๋ž˜์‹œ๋จ

## ์Šคํฌ๋ฆฐ์ƒท
(๊ฐ€๋Šฅํ•˜๋ฉด ์ฒจ๋ถ€)

## ๋กœ๊ทธ
%APPDATA%\ClipboardPilot\Logs\ ์˜ ์ตœ์‹  ๋กœ๊ทธ ํŒŒ์ผ ์ฒจ๋ถ€

๊ธฐ๋Šฅ ์ œ์•ˆ

Issues ํŽ˜์ด์ง€์—์„œ ๊ธฐ๋Šฅ ์ œ์•ˆ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”.

๊ธฐ๋Šฅ ์ œ์•ˆ ํ…œํ”Œ๋ฆฟ:

## ์ œ์•ˆํ•˜๋Š” ๊ธฐ๋Šฅ
ํด๋ฆฝ๋ณด๋“œ ํžˆ์Šคํ† ๋ฆฌ ๋™๊ธฐํ™” ๊ธฐ๋Šฅ

## ํ•ด๊ฒฐํ•˜๋ ค๋Š” ๋ฌธ์ œ
์—ฌ๋Ÿฌ PC์—์„œ ๋™์ผํ•œ ํด๋ฆฝ๋ณด๋“œ ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

## ์ œ์•ˆํ•˜๋Š” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•
OneDrive/Google Drive๋ฅผ ํ†ตํ•œ ๋™๊ธฐํ™”

## ๋Œ€์•ˆ
์—†์Œ

## ์ถ”๊ฐ€ ์ปจํ…์ŠคํŠธ
(์Šคํฌ๋ฆฐ์ƒท, ์˜ˆ์‹œ ๋“ฑ)

๐Ÿ“ ๋ณ€๊ฒฝ ๋กœ๊ทธ

v1.0.0 (2024-10-31) - ์ดˆ๊ธฐ ๋ฆด๋ฆฌ์Šค

โœจ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • ๐ŸŽ‰ ์ตœ์ดˆ ๊ณต๊ฐœ ๋ฆด๋ฆฌ์Šค
  • ๐Ÿ“‹ ์ž๋™ ํด๋ฆฝ๋ณด๋“œ ํžˆ์Šคํ† ๋ฆฌ ์ˆ˜์ง‘
    • ํ…์ŠคํŠธ, HTML, RTF, ์ด๋ฏธ์ง€, ํŒŒ์ผ ๋ชฉ๋ก ์ง€์›
  • ๐Ÿ” ๊ฐ•๋ ฅํ•œ ๊ฒ€์ƒ‰ ๋ฐ ํ•„ํ„ฐ๋ง ์‹œ์Šคํ…œ
  • โญ ์ฆ๊ฒจ์ฐพ๊ธฐ ์‹œ์Šคํ…œ (1-9 ์ˆœ์œ„)
  • ๐Ÿ“Œ ํ•€ ๊ณ ์ • ๊ธฐ๋Šฅ
  • ๐ŸŽจ 7๊ฐ€์ง€ ์ปฌ๋Ÿฌ ๋ผ๋ฒจ
  • โšก ์ „์—ญ ๋‹จ์ถ•ํ‚ค ์ง€์›
    • Ctrl+Shift+V: ๋ฏธ๋‹ˆ ํŒจ๋„
    • Ctrl+Alt+V: ์ด์ „ ํ•ญ๋ชฉ ๋ถ™์—ฌ๋„ฃ๊ธฐ
    • Ctrl+Alt+1~9: ์ฆ๊ฒจ์ฐพ๊ธฐ ๋ถ™์—ฌ๋„ฃ๊ธฐ
  • ๐Ÿ–ผ๏ธ ์ด๋ฏธ์ง€ ์ธ๋„ค์ผ ์ž๋™ ์ƒ์„ฑ
  • ๐Ÿ”’ ๋ฏผ๊ฐ์ •๋ณด ์ž๋™ ํ•„ํ„ฐ๋ง
  • ๐Ÿ’พ SQLite ๊ธฐ๋ฐ˜ ๋กœ์ปฌ ์ €์žฅ์†Œ
  • ๐ŸŽจ DevExpress ๊ธฐ๋ฐ˜ ๋ชจ๋˜ UI

๐Ÿ›ก๏ธ ๋ณด์•ˆ & ํ”„๋ผ์ด๋ฒ„์‹œ

  • ๋กœ์ปฌ ์˜คํ”„๋ผ์ธ ์ €์žฅ (์ธํ„ฐ๋„ท ๋ถˆํ•„์š”)
  • ๋น„๋ฐ€๋ฒˆํ˜ธ ํŒจํ„ด ์ž๋™ ๊ฐ์ง€ ๋ฐ ์ œ์™ธ
  • ์ž๊ธฐ ์ž์‹ ์˜ ๋ณต์‚ฌ ์ž‘์—… ํ•„ํ„ฐ๋ง (๋ฌดํ•œ ๋ฃจํ”„ ๋ฐฉ์ง€)

๐Ÿ”ง ๊ธฐ์ˆ  ์Šคํƒ

  • .NET 8.0
  • WPF + DevExpress
  • Entity Framework Core 8
  • SQLite
  • Serilog

๐Ÿ“„ ๋ผ์ด์„ ์Šค

์ด ํ”„๋กœ์ ํŠธ๋Š” Creative Commons BY-NC-SA 4.0 ๋ผ์ด์„ ์Šค ํ•˜์— ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

๐ŸŽฏ ๊ฐ„๋‹จ ์š”์•ฝ

โœ… ๊ฐ€๋Šฅํ•œ ๊ฒƒ:

  • โœ… ๊ฐœ์ธ ์‚ฌ์šฉ: ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • โœ… ๊ต์œก ๋ชฉ์ : ํ•™๊ต, ๊ต์œก ๊ธฐ๊ด€์—์„œ ์‚ฌ์šฉ
  • โœ… ์—ฐ๊ตฌ ๋ชฉ์ : ํ•™์ˆ  ์—ฐ๊ตฌ์— ํ™œ์šฉ
  • โœ… ์ˆ˜์ • ๋ฐ ์žฌ๋ฐฐํฌ: ์†Œ์Šค ์ˆ˜์ • ๊ฐ€๋Šฅ (๋™์ผ ๋ผ์ด์„ ์Šค ์ ์šฉ ์‹œ)
  • โœ… ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ: ๋‹ค๋ฅธ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ํฌํ•จ

โŒ ๊ธˆ์ง€๋œ ๊ฒƒ:

  • โŒ ์ƒ์—…์  ํŒ๋งค: ์†Œํ”„ํŠธ์›จ์–ด ์ž์ฒด ํŒ๋งค ๊ธˆ์ง€
  • โŒ ์œ ๋ฃŒ ์„œ๋น„์Šค: ์œ ๋ฃŒ ์„œ๋น„์Šค์— ํฌํ•จ ๊ธˆ์ง€
  • โŒ ๊ธฐ์—… ๋‚ด๋ถ€ ์‚ฌ์šฉ: ์˜๋ฆฌ ๋ชฉ์  ํšŒ์‚ฌ ์—…๋ฌด์šฉ ์‚ฌ์šฉ ๊ธˆ์ง€
  • โŒ ๊ด‘๊ณ  ์ˆ˜์ต: ๊ด‘๊ณ ๋ฅผ ํ†ตํ•œ ์ˆ˜์ต ์ฐฝ์ถœ ๊ธˆ์ง€

๐Ÿ’ผ ์ƒ์—…์  ๋ผ์ด์„ ์Šค

๊ธฐ์—…์ด๋‚˜ ์ƒ์—…์  ์šฉ๋„๋กœ ์‚ฌ์šฉํ•˜์‹œ๋ ค๋ฉด ๋ณ„๋„์˜ ์ƒ์—…์  ๋ผ์ด์„ ์Šค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ƒ์—…์  ๋ผ์ด์„ ์Šค ๋ฌธ์˜:

  • ๐Ÿ“ง ์ด๋ฉ”์ผ: b_h_woo@naver.com
  • ๐Ÿข ๊ธฐ์—… ๋ผ์ด์„ ์Šค, OEM ๋ผ์ด์„ ์Šค ๋“ฑ ํ˜‘์˜ ๊ฐ€๋Šฅ

๐Ÿ“œ ๋ผ์ด์„ ์Šค ์ƒ์„ธ

Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International

Copyright (c) 2024 Clipboard Pilot

์ด ์ €์ž‘๋ฌผ์€ ํฌ๋ฆฌ์—์ดํ‹ฐ๋ธŒ ์ปค๋จผ์ฆˆ ์ €์ž‘์žํ‘œ์‹œ-๋น„์˜๋ฆฌ-๋™์ผ์กฐ๊ฑด๋ณ€๊ฒฝํ—ˆ๋ฝ 4.0 
๊ตญ์ œ ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ์ด์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ „๋ฌธ ๋ณด๊ธฐ: https://creativecommons.org/licenses/by-nc-sa/4.0/
ํ•œ๊ตญ์–ด: https://creativecommons.org/licenses/by-nc-sa/4.0/deed.ko

โš–๏ธ ๋ฉด์ฑ… ์กฐํ•ญ

์ด ์†Œํ”„ํŠธ์›จ์–ด๋Š” "์žˆ๋Š” ๊ทธ๋Œ€๋กœ(AS IS)" ์ œ๊ณต๋˜๋ฉฐ, ๋ช…์‹œ์ ์ด๊ฑฐ๋‚˜ ๋ฌต์‹œ์ ์ธ ์–ด๋– ํ•œ ๋ณด์ฆ๋„ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด ์‚ฌ์šฉ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ์†ํ•ด์— ๋Œ€ํ•ด ๊ฐœ๋ฐœ์ž๋Š” ์ฑ…์ž„์„ ์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ž์„ธํ•œ ๋ผ์ด์„ ์Šค ๋‚ด์šฉ: LICENSE.txt


๐Ÿ™ ๊ฐ์‚ฌ์˜ ๊ธ€

์ด ํ”„๋กœ์ ํŠธ๋Š” ๋‹ค์Œ ํ›Œ๋ฅญํ•œ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋“ค์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:


๐Ÿ“ž ์—ฐ๋ฝ์ฒ˜ & ์ง€์›

๊ฐœ๋ฐœ์ž

์ง€์› ์ฑ„๋„

  • ๐Ÿ› ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ: GitHub Issues
  • ๐Ÿ’ก ๊ธฐ๋Šฅ ์ œ์•ˆ: GitHub Discussions
  • ๐Ÿ“– ๋ฌธ์„œ: Wiki (์ค€๋น„ ์ค‘)

์ปค๋ฎค๋‹ˆํ‹ฐ

  • ๐Ÿ’ฌ Discord: (ํ–ฅํ›„ ๊ฐœ์„ค ์˜ˆ์ •)
  • ๐Ÿ“ข ๋ธ”๋กœ๊ทธ: (ํ–ฅํ›„ ๊ฐœ์„ค ์˜ˆ์ •)

๐Ÿ—บ๏ธ ๋กœ๋“œ๋งต

v1.1.0 (๊ณ„ํš ์ค‘)

  • ํด๋ฆฝ๋ณด๋“œ ํžˆ์Šคํ† ๋ฆฌ ๋‚ด๋ณด๋‚ด๊ธฐ/๊ฐ€์ ธ์˜ค๊ธฐ (JSON, CSV)
  • ํ…์ŠคํŠธ ๋ณ€ํ™˜ ๋„๊ตฌ (๋Œ€์†Œ๋ฌธ์ž, ์ธ์ฝ”๋”ฉ ๋“ฑ)
  • ํ–ฅ์ƒ๋œ ์ด๋ฏธ์ง€ ํŽธ์ง‘ ๊ธฐ๋Šฅ
  • ํ†ต๊ณ„ ๋Œ€์‹œ๋ณด๋“œ

v1.2.0 (๊ณ„ํš ์ค‘)

  • ํ”Œ๋Ÿฌ๊ทธ์ธ ์‹œ์Šคํ…œ
  • ํด๋ผ์šฐ๋“œ ๋™๊ธฐํ™” (์„ ํƒ์‚ฌํ•ญ)
  • OCR ์ง€์› (์ด๋ฏธ์ง€ โ†’ ํ…์ŠคํŠธ)
  • ๋‹ค๊ตญ์–ด ์ง€์› (์˜์–ด, ์ผ๋ณธ์–ด)

v2.0.0 (๋ฏธ๋ž˜)

  • ํฌ๋กœ์Šค ํ”Œ๋žซํผ ์ง€์› (macOS, Linux)
  • ๋ชจ๋ฐ”์ผ ์•ฑ ์—ฐ๋™
  • AI ๊ธฐ๋ฐ˜ ์Šค๋งˆํŠธ ๋ถ„๋ฅ˜
  • ์Œ์„ฑ ๋ช…๋ น ์ง€์›

โ“ FAQ

Q: ๋ฌด๋ฃŒ์ธ๊ฐ€์š”?

A: ๋„ค, ์™„์ „ ๋ฌด๋ฃŒ์ด๋ฉฐ ์˜คํ”ˆ์†Œ์Šค์ž…๋‹ˆ๋‹ค! ๋ผ์ด์„ ์Šค ํ•˜์— ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Q: ๋ฐ์ดํ„ฐ๋Š” ์–ด๋””์— ์ €์žฅ๋˜๋‚˜์š”?

A: ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ๋กœ์ปฌ PC (%APPDATA%\ClipboardPilot\)์—๋งŒ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ์ด๋‚˜ ํด๋ผ์šฐ๋“œ ์—…๋กœ๋“œ๋Š” ์—†์Šต๋‹ˆ๋‹ค.

Q: ๋น„๋ฐ€๋ฒˆํ˜ธ๋„ ์ €์žฅ๋˜๋‚˜์š”?

A: ์•„๋‹ˆ์š”. ๋น„๋ฐ€๋ฒˆํ˜ธ ํŒจํ„ด์œผ๋กœ ๊ฐ์ง€๋œ ํ…์ŠคํŠธ๋Š” ์ž๋™์œผ๋กœ ํ•„ํ„ฐ๋ง๋˜์–ด ์ €์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Q: ํ”„๋กœ๊ทธ๋žจ์ด ๋„ˆ๋ฌด ๋งŽ์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค

A: ์„ค์ •์—์„œ "์ตœ๋Œ€ ํ•ญ๋ชฉ ์ˆ˜"๋ฅผ ์ค„์ด๊ฑฐ๋‚˜ "์ž๋™ ์ •๋ฆฌ" ๊ธฐ๊ฐ„์„ ๋‹จ์ถ•ํ•ด๋ณด์„ธ์š”. ์ด๋ฏธ์ง€ ์ €์žฅ์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ฒƒ๋„ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

Q: DevExpress ๋ผ์ด์„ ์Šค๊ฐ€ ํ•„์š”ํ•œ๊ฐ€์š”?

A: ์‚ฌ์šฉ์ž๋Š” ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ ๋นŒ๋“œ๋œ ์‹คํ–‰ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋กœ ์†Œ์Šค๋ฅผ ๋นŒ๋“œํ•˜๋ ค๋ฉด DevExpress ํ‰๊ฐ€ํŒ ๋˜๋Š” ๋ผ์ด์„ ์Šค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

Q: ๋‹ค๋ฅธ ํด๋ฆฝ๋ณด๋“œ ๊ด€๋ฆฌ์ž์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

A: ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์˜ ํด๋ฆฝ๋ณด๋“œ ๊ด€๋ฆฌ์ž๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

Q: ํŠน์ • ์•ฑ์˜ ํด๋ฆฝ๋ณด๋“œ๋ฅผ ๋ฌด์‹œํ•˜๋ ค๋ฉด?

A: ํ˜„์žฌ๋Š” ์„ค์ •์—์„œ ์ง์ ‘ ํŽธ์ง‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. v1.1.0์—์„œ UI๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐœ์„ ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.


๐Ÿ’– ํ›„์›

์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ์œ ์šฉํ•˜๋‹ค๋ฉด ํ›„์›์„ ๊ณ ๋ คํ•ด์ฃผ์„ธ์š”!

  • โญ GitHub Star: ์ €์žฅ์†Œ์— Star๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”!
  • ๐Ÿ› ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ: ๋ฒ„๊ทธ๋ฅผ ๋ฐœ๊ฒฌํ•˜๋ฉด ์•Œ๋ ค์ฃผ์„ธ์š”
  • ๐Ÿ’ก ๊ธฐ๋Šฅ ์ œ์•ˆ: ์ข‹์€ ์•„์ด๋””์–ด๋ฅผ ๊ณต์œ ํ•ด์ฃผ์„ธ์š”
  • ๐Ÿ”€ Pull Request: ์ฝ”๋“œ๋กœ ๊ธฐ์—ฌํ•ด์ฃผ์„ธ์š”
  • ๐Ÿ“ข ๊ณต์œ : ์นœ๊ตฌ๋“ค์—๊ฒŒ ์†Œ๊ฐœํ•ด์ฃผ์„ธ์š”

โญ Star History

Star History Chart


๐Ÿ“‹ ํด๋ฆฝ๋ณด๋“œ๋ฅผ ๋” ์Šค๋งˆํŠธํ•˜๊ฒŒ!

Made with โค๏ธ in Korea

โฌ† ๋งจ ์œ„๋กœ

About

๐Ÿ“‹ Smart clipboard manager for Windows - Auto-save history, powerful search, favorites system. Built with .NET 8 & WPF. Free for non-commercial use.

Resources

License

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors