Nexa Shortcut 아이콘

Nexa Shortcut 사용 설명서

v0.3.0 기준 최종 수정 2026-11-05

개요

Nexa Shortcut은 “하나의 기능을 가장 가볍게”를 원칙으로 하는 Windows용 초경량 단축키 유틸리티 모음입니다. GUI 프레임워크도 C 런타임(CRT)도 쓰지 않고 순수 Win32 API만으로 만들어, 실행 파일 크기와 메모리 사용을 최소화했습니다.

현재 제공되는 도구는 nShiftSpace(Nexa ShiftSpace) 하나이며, 일반판과 누르는 키를 트레이 아이콘으로 보여 주는 LED판 두 가지 빌드가 있습니다.

항목내용
하는 일Shift+Space를 누르면 한/영 키를 대신 눌러 줍니다
파일 크기일반판 5,120바이트(x64) · 5,632바이트(x86) / LED판 6,144바이트(x64) · 6,656바이트(x86)
메모리작업 관리자 기준 약 70KB(x64) · 120KB(x86) — 리소스 사용 참고
실행 방식창 없이 트레이 아이콘(‘가·A’ 픽셀 아트)으로 상주
설정없음 — 설정 파일도 설정 화면도 없음. 레지스트리는 “로그인 시 자동 실행”을 켤 때만 값 하나를 씀
라이선스MIT — 누구나 무료로 사용 가능

한/영 키가 없는 외산 키보드나 일부 노트북, 또는 한/영 키 위치가 손에 맞지 않는 경우를 위한 도구입니다.

제품 소개 페이지: /apps/nexa-shortcut

시스템 요구사항

항목내용
운영체제Windows 10 / 11
아키텍처x64(64비트) · x86(32비트) 빌드 각각 제공
추가 설치필요 없음 — .NET, Visual C++ 재배포 패키지 불필요
사용하는 시스템 라이브러리kernel32 · user32 · shell32 · advapi32(자동 실행 메뉴) · imm32(IME 끄기) — 모두 Windows 기본 포함
winget 사용 시Windows 11 또는 Windows 10 1809 이상

설치와 제거

nShiftSpace는 설치 프로그램 없이 exe 하나로 동작합니다. 아래 세 방법 중 편한 것을 고르세요.

방법필요한 권한이런 분께
winget일반 사용자대부분의 Windows 10/11 사용자
Chocolatey관리자 권한이미 Chocolatey를 쓰는 경우
zip 직접 내려받기일반 사용자설치 위치를 직접 정하고 싶은 경우

설치한 뒤에는 트레이 메뉴에서 로그인 시 자동 실행을 한 번 켜 두세요. 어느 방법으로 설치해도 시작 프로그램에는 자동으로 등록되지 않습니다.

일반판과 LED판

패키지 이름이 다릅니다. 아래 명령은 일반판 기준이며, LED판은 패키지 이름만 바꾸면 됩니다.

구분일반판LED판
wingetSosomLab.nShiftSpace (0.3.0)SosomLab.nShiftSpace.LED — 아직 등록 전, 심사 중(2026-11-05 확인)
Chocolateynshiftspace (0.3.0)nshiftspace-led (0.3.0)
zipnShiftSpace-x64.zip · nShiftSpace-x86.zipnShiftSpace-led-x64.zip · nShiftSpace-led-x86.zip
실행 명령nshiftspace(winget) · nShiftSpace-x64(Chocolatey)nshiftspace-led(winget, 등록 후) · nShiftSpace-led-x64(Chocolatey)

둘 중 하나만 설치하세요. 같은 단축키를 쓰고 중복 실행 방지도 공유하므로 동시에 실행되지 않습니다.

winget

Windows 11과 Windows 10 1809 이상에는 winget이 기본으로 들어 있습니다. 없다면 Microsoft Store에서 앱 설치 관리자를 설치하세요.

winget install SosomLab.nShiftSpace     # 설치
nshiftspace                             # 실행
winget upgrade SosomLab.nShiftSpace     # 업그레이드
winget uninstall SosomLab.nShiftSpace   # 제거
  • 포터블 패키지로 설치되며 x64·x86이 자동으로 선택됩니다.
  • 설치 직후에는 PATH가 반영되도록 터미널 창을 새로 연 뒤 nshiftspace를 실행하세요.
항목경로
실행 별칭%LOCALAPPDATA%\Microsoft\WinGet\Links\nshiftspace.exe
실제 exe%LOCALAPPDATA%\Microsoft\WinGet\Packages\SosomLab.nShiftSpace_Microsoft.Winget.Source_8wekyb3d8bbwe\ 아래

주의 winget은 실행 중인 프로그램을 대신 종료해 주지 않습니다. 업그레이드나 제거 전에 트레이 아이콘에서 먼저 종료하세요. 켜져 있으면 파일이 잠겨 실패합니다.

Chocolatey

Chocolatey가 없다면 관리자 권한 PowerShell에서 먼저 설치합니다(공식 안내).

Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

이어서 관리자 권한 PowerShell에서:

choco install nshiftspace -y     # 설치
nShiftSpace-x64                  # 실행 (32비트 OS는 nShiftSpace-x86)
choco upgrade nshiftspace -y     # 업그레이드
choco uninstall nshiftspace -y   # 제거
  • OS 아키텍처에 맞는 exe 하나만 %ChocolateyInstall%\lib\nshiftspace\tools\에 설치되고, 같은 이름의 명령이 PATH에 등록됩니다. %ChocolateyInstall%의 기본값은 C:\ProgramData\chocolatey입니다.
  • Chocolatey는 업그레이드·제거 전에 실행 중인 nShiftSpace를 자동으로 종료해 줍니다.

zip 직접 내려받기

  1. GitHub Releases에서 nShiftSpace-x64.zip(64비트) 또는 nShiftSpace-x86.zip(32비트)을 내려받습니다. LED판은 nShiftSpace-led-x64.zip · nShiftSpace-led-x86.zip입니다.
  2. 원하는 폴더에 압축을 풉니다(예: C:\Tools\nShiftSpace\).
  3. nShiftSpace-x64.exe(또는 -x86.exe)를 더블클릭하면 트레이에 아이콘이 뜹니다.

설치 위치를 직접 정하므로 업그레이드해도 경로가 바뀌지 않는다는 것이 장점입니다. 내려받은 exe를 실행할 때 Windows SmartScreen 경고가 보이면 추가 정보 → 실행으로 진행할 수 있습니다.

채널 비교

작업wingetChocolatey
사전 준비대부분 기본 포함Chocolatey 설치 필요
권한일반 사용자관리자 권한 PowerShell
설치winget install SosomLab.nShiftSpacechoco install nshiftspace -y
실행nshiftspacenShiftSpace-x64
업그레이드winget upgrade SosomLab.nShiftSpacechoco upgrade nshiftspace -y
제거winget uninstall SosomLab.nShiftSpacechoco uninstall nshiftspace -y
실행 중 자동 종료안 됨 — 직접 종료 필요자동

제거

  • winget · Chocolatey: 위 표의 제거 명령을 씁니다(winget은 먼저 트레이에서 종료).
  • zip: 트레이에서 종료한 뒤 exe 파일을 지우면 끝입니다. 자동 실행을 꺼 두었다면 레지스트리에 남는 것이 없습니다.
  • 어느 방법이든 자동 실행을 켜 두었다면 제거 전에 해제하세요. 메뉴로 켠 Run 값은 패키지를 제거해도 지워지지 않습니다(자동 실행 해제 참고).

시작하기

  1. 설치 방법에 맞게 실행합니다.
설치 방법실행
wingetnshiftspace
ChocolateynShiftSpace-x64 (32비트 OS는 nShiftSpace-x86)
zipexe 더블클릭
  1. 창은 뜨지 않습니다. 트레이(작업 표시줄 오른쪽 알림 영역)에 ‘가·A’ 모양의 작은 아이콘만 생깁니다.
  2. 아이콘이 안 보이면 작업 표시줄의 ∧(숨겨진 아이콘 표시) 를 눌러 확인하세요. 항상 보이게 하려면 그 상태에서 아이콘을 작업 표시줄로 끌어다 놓으면 됩니다.
  3. 아무 입력칸에 커서를 두고 Shift+Space를 눌러 한/영이 바뀌면 정상입니다.
  4. 로그인할 때마다 자동으로 뜨게 하려면 트레이 메뉴에서 로그인 시 자동 실행을 체크하세요.

트레이 메뉴

트레이 아이콘을 클릭(좌·우 모두)하면 메뉴가 열립니다.

메뉴동작
로그인 시 자동 실행 (체크)켜면 지금 실행 중인 exe 경로를 시작 프로그램에 등록하고, 끄면 지웁니다 → 자동 실행
키보드 LED 표시 (체크, LED판만)키 입력 표시를 켜고 끕니다 → 키보드 LED 표시판
종료트레이 아이콘을 지우고 nShiftSpace를 종료합니다

아이콘에 마우스를 올리면 “nShiftSpace: Shift+Space 한/영 전환”이라는 툴팁이 보입니다.

동작 방식

Shift+Space 입력  →  Windows가 가로챔 (RegisterHotKey)
                  →  한/영 키(VK_HANGUL) 입력을 대신 보냄
                  →  Windows 입력기(IME)가 한/영 전환
  • 키보드 훅이 아니라 Windows의 단축키 등록 기능(RegisterHotKey)을 씁니다. OS가 Shift+Space만 골라 알려 주므로 모든 키 입력을 검사할 필요가 없어, 대기 중 CPU 사용량이 사실상 0입니다. 키 입력을 엿보는 방식이 아니어서 백신이 훅 기반 프로그램을 의심하는 문제에서도 자유롭습니다.
  • 실제 한/영 전환은 Windows 입력기가 합니다. nShiftSpace는 한/영 키를 눌러 줄 뿐입니다.
  • 중복 실행 방지 — 이미 실행 중이면 두 번째 실행은 바로 종료됩니다.
  • 트레이 아이콘 자동 복구 — 탐색기(explorer.exe)가 다시 시작되어도 아이콘이 저절로 되살아납니다.

키보드 LED 표시판

Shift+Space 기능은 일반판과 같고, 추가로 아무 키나 누르는 동안 트레이 아이콘이 초록으로 켜지고 떼면 파랑으로 돌아옵니다. 키보드 입력이 들어가고 있는지 트레이에서 한눈에 보고 싶을 때 쓰는 판입니다.

항목일반판LED판
파일nShiftSpace-x64.exenShiftSpace-led-x64.exe
크기(x64 / x86)5,120 / 5,632바이트6,144 / 6,656바이트
키 입력 수신없음 — Shift+Space 알림만 받음Raw Input으로 키 눌림·뗌을 받음
키보드 훅없음없음 — 다른 프로그램의 키 입력을 지연시키지 않음
  • 켜고 끄기 — 트레이 메뉴 키보드 LED 표시(체크 표시가 현재 상태). 끄면 키 입력 수신 자체를 해제하므로 일반판처럼 키 입력당 비용이 0이 됩니다.
  • 상태는 저장하지 않습니다. 다시 실행하면 켜짐으로 시작합니다. 항상 꺼 두고 싶다면 일반판을 쓰세요.
  • 여러 키를 함께 누른 경우 어느 키든 떼면 꺼집니다. 켜진 상태에서 탐색기가 다시 시작되면 꺼짐으로 돌아갑니다.
  • 받은 키 입력은 아이콘을 바꾸는 데만 쓰며 저장하거나 전송하지 않습니다(데이터와 개인정보 참고).

리소스 사용

항목값
메모리(작업 관리자 표시)약 70KB(x64) · 120KB(x86) — 기동 후 조용한 상태 기준. 메뉴 명령 직후에는 잠시 200KB대로 오르고 활동이 멈춘 뒤 다시 내려갑니다
커밋 메모리약 1.4MB — Win32 트레이 앱의 바닥값이며 변하지 않습니다
CPU유휴 시 사실상 0

작업 관리자 수치가 낮은 이유는 두 가지입니다. 텍스트 입력을 받지 않으므로 자기 스레드의 IME를 꺼 입력기 DLL이 붙지 않게 하고, 마지막 활동 2초 뒤 작업 집합을 한 번 비웁니다. 이는 표시 수치와 상주 페이지를 줄이는 것이며 메모리 할당 자체를 줄이는 것은 아닙니다. 주기 타이머가 아니라 활동 뒤 한 번만 깨어납니다.

단축키

키동작
Shift+Space한/영 전환(한/영 키 입력과 같음)
  • 단축키는 Shift+Space로 고정입니다. 초경량을 지키기 위한 의도적인 선택이라 바꿀 수 없습니다.
  • nShiftSpace가 실행 중인 동안에는 Shift+Space를 Windows가 가로채 nShiftSpace에 전달합니다. 다른 프로그램에서 Shift+Space 조합을 쓰고 싶다면 잠시 종료하세요.

설정

nShiftSpace에는 설정이 없습니다.

  • 설정 파일, 설정 화면이 없습니다.
  • 기본 상태에서는 레지스트리에 아무것도 쓰지 않습니다. 트레이 메뉴의 “로그인 시 자동 실행”을 켜거나 사용자가 직접 등록한 경우에만 값이 생깁니다.
  • 트레이 메뉴의 두 항목 중 “키보드 LED 표시” 상태는 저장되지 않습니다.
  • 단축키를 바꾸는 기능은 앞으로 만들 nexa-mapper에서 다룰 예정입니다(알려진 제한 참고).

자동 실행

nShiftSpace는 로그인할 때 자동으로 떠 있어야 제 역할을 하는 상주 프로그램이지만, winget과 Chocolatey 모두 시작 프로그램에 자동 등록하지 않습니다. 대부분은 트레이 메뉴 한 번이면 충분합니다. 관리자 권한 창에서도 쓰려면 아래 수동 절차의 방법 C를 따르세요.

가장 쉬운 방법 — 트레이 메뉴

  1. nShiftSpace를 한 번 실행합니다(winget은 nshiftspace, Chocolatey는 nShiftSpace-x64, zip은 exe 더블클릭).
  2. 트레이 아이콘을 클릭해 로그인 시 자동 실행을 체크합니다.

지금 실행 중인 exe의 경로를 큰따옴표로 감싸 HKCU\Software\Microsoft\Windows\CurrentVersion\Run의 nShiftSpace 값에 씁니다(아래 방법 B와 같은 값). 체크를 해제하면 그 값을 지우고, 체크 표시는 메뉴를 열 때마다 값이 있는지 보고 정합니다.

설치 방법이렇게 실행한 뒤 켜세요이유
wingetnshiftspace (별칭)탐색기에서 Packages\... 아래 exe를 직접 실행한 뒤 켜면 업그레이드 때 끊어질 수 있습니다
ChocolateynShiftSpace-x64 또는 tools 폴더의 exe경로에 버전이 없어 어느 쪽이든 유지됩니다
zip압축을 푼 위치의 exe그 위치가 그대로 기록됩니다. exe를 옮겼다면 다시 켜세요

주의 제거하기 전에 체크를 해제하세요. 패키지를 제거해도 이 값은 지워지지 않습니다. 일반판과 LED판은 같은 값을 쓰므로, 판을 바꿨다면 새 판에서 체크를 해제했다가 다시 켜 경로를 새로 기록하세요.

참고 이 메뉴로 등록하면 일반 권한으로 실행되므로 관리자 권한 창에서는 단축키가 전달되지 않습니다. 그럴 때는 방법 C를 쓰세요.

아래부터는 메뉴 대신 직접 등록하는 절차입니다.

1단계 — 가리킬 exe 경로 정하기

주의 winget으로 설치했다면 WinGet\Packages\... 아래의 실제 exe를 가리키면 안 됩니다. 업그레이드할 때 그 폴더가 다시 만들어지면서 바로 가기가 끊어집니다. 경로가 바뀌지 않는 별칭 경로 WinGet\Links\nshiftspace.exe를 가리키세요.

설치 방법가리킬 경로
winget%LOCALAPPDATA%\Microsoft\WinGet\Links\nshiftspace.exe
Chocolatey%ChocolateyInstall%\lib\nshiftspace\tools\nShiftSpace-x64.exe (32비트 OS는 -x86)
zip압축을 푼 위치의 exe

PowerShell에서 경로를 변수에 담고 존재하는지 확인합니다.

# winget
$exe = "$env:LOCALAPPDATA\Microsoft\WinGet\Links\nshiftspace.exe"
# Chocolatey라면
# $exe = "$env:ChocolateyInstall\lib\nshiftspace\tools\nShiftSpace-x64.exe"
# zip이라면
# $exe = "C:\Tools\nShiftSpace\nShiftSpace-x64.exe"

Test-Path $exe

True가 나오면 2단계로 넘어갑니다.

winget에서 False가 나올 때 — winget은 별칭을 심볼릭 링크로 만드는데, Windows 개발자 모드가 꺼져 있으면 만들지 못할 수 있습니다.

  1. 설정 → 개인 정보 및 보안 → 개발자용 → 개발자 모드를 켭니다.
  2. 다시 설치합니다.
winget uninstall SosomLab.nShiftSpace
winget install  SosomLab.nShiftSpace
Test-Path "$env:LOCALAPPDATA\Microsoft\WinGet\Links\nshiftspace.exe"

개발자 모드를 켤 수 없다면 실제 exe 경로를 찾아 쓸 수 있지만, 이 경우 업그레이드할 때마다 다시 등록해야 할 수 있습니다. 경로를 고정하고 싶다면 zip이나 Chocolatey 설치를 권합니다.

$exe = (Get-ChildItem "$env:LOCALAPPDATA\Microsoft\WinGet\Packages\SosomLab.nShiftSpace_*" `
        -Recurse -Filter "nShiftSpace-*.exe" | Select-Object -First 1).FullName
$exe

2단계 — 등록 방법 고르기

상황추천
그냥 로그인할 때 뜨기만 하면 됨방법 A — 시작프로그램 폴더
시작프로그램 폴더를 깔끔히 두고 싶음방법 B — 레지스트리 Run 키
작업 관리자·관리자 권한 터미널 위에서도 한/영 전환이 필요방법 C — 작업 스케줄러

셋 중 하나만 쓰세요. 1단계에서 $exe를 정한 같은 PowerShell 창에서 이어서 실행합니다.

방법 A — 시작프로그램 폴더에 바로 가기

$startup = [Environment]::GetFolderPath('Startup')
$lnk     = Join-Path $startup 'nShiftSpace.lnk'

$ws = New-Object -ComObject WScript.Shell
$sc = $ws.CreateShortcut($lnk)
$sc.TargetPath       = $exe
$sc.WorkingDirectory = Split-Path $exe
$sc.Description      = 'nShiftSpace - Shift+Space 한/영 전환'
$sc.Save()

Test-Path $lnk   # True면 등록 완료

모든 사용자에게 적용하려면 Startup을 CommonStartup으로 바꿔 관리자 권한 PowerShell에서 실행하세요.

마우스로 하려면

  1. Win+R(실행) 또는 파일 관리자 주소창에 shell:startup을 입력해 시작프로그램 폴더를 엽니다. 모든 사용자용은 shell:common startup(관리자 권한 필요)입니다.
  2. 1단계의 exe를 마우스 오른쪽 버튼으로 끌어다 그 폴더에 놓고 여기에 바로 가기 만들기를 고릅니다. 왼쪽 버튼으로 끌면 파일이 복사되거나 이동되므로 주의하세요.

듀얼 패널 파일 관리자로 하면 더 편합니다. 한쪽 패널 주소창에 shell:common startup(또는 shell:startup)을, 다른 쪽에 exe가 있는 폴더를 열어 두고 exe의 바로 가기를 만들어 시작프로그램 폴더 쪽으로 옮기면 됩니다. SosomLab의 Nexa Dir는 듀얼 패널과 주소창 shell: 경로 입력을 지원합니다.

Nexa Dir 듀얼 패널로 시작프로그램 폴더에 nShiftSpace 바로 가기를 등록한 모습

방법 B — 레지스트리 Run 키

New-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Run' `
  -Name 'nShiftSpace' -Value "`"$exe`"" -PropertyType String -Force

경로에 공백이 있을 수 있으므로 큰따옴표로 감싸는 것이 중요합니다.

방법 C — 작업 스케줄러 (관리자 권한 창에서도 쓰려면)

작업 관리자나 관리자 권한 터미널처럼 관리자 권한으로 실행된 창이 포커스를 가지면, 일반 권한으로 실행된 nShiftSpace의 단축키는 그 창에 전달되지 않습니다. Windows 보안 정책(UIPI) 때문이며 같은 방식의 프로그램은 모두 마찬가지입니다.

해결하려면 nShiftSpace 자체를 높은 권한으로 실행해야 하는데, 방법 A·B로는 불가능하고 작업 스케줄러만 가능합니다. 관리자 권한 PowerShell에서 실행하세요.

$exe = "$env:LOCALAPPDATA\Microsoft\WinGet\Links\nshiftspace.exe"   # 1단계에서 정한 경로

$action    = New-ScheduledTaskAction  -Execute $exe
$trigger   = New-ScheduledTaskTrigger -AtLogOn -User $env:USERNAME
$principal = New-ScheduledTaskPrincipal -UserId $env:USERNAME `
               -LogonType Interactive -RunLevel Highest
$settings  = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries `
               -DontStopIfGoingOnBatteries -ExecutionTimeLimit 0

Register-ScheduledTask -TaskName 'nShiftSpace' -Action $action -Trigger $trigger `
  -Principal $principal -Settings $settings -Force
옵션이유
-RunLevel Highest핵심. 관리자 권한 창 위에서도 Shift+Space가 동작하게 함
-ExecutionTimeLimit 0시간 제한 없음. 기본값(3일)이면 상주 중에 종료됨
-AllowStartIfOnBatteries노트북 배터리 사용 중에도 실행
-LogonType Interactive로그인한 세션에서 실행 — 트레이 아이콘이 보이려면 필요
  • 높은 권한으로 실행되지만 UAC 확인 창은 뜨지 않고 로그인할 때 조용히 실행됩니다.
  • 관리자 계정이 아니거나 조직 정책으로 막힌 PC에서는 실패할 수 있습니다. 그럴 땐 방법 A를 쓰세요.

3단계 — 확인

로그아웃 후 다시 로그인(또는 재부팅)해서 트레이에 ‘가·A’ 아이콘이 있는지 확인합니다. 지금 바로 확인하려면:

Start-Process $exe
Get-Process nShiftSpace-x64, nshiftspace -ErrorAction SilentlyContinue

Shift+Space로 한/영이 바뀌면 정상입니다. 중복 실행은 막혀 있으므로 이미 실행 중이어도 문제없습니다.

자동 실행 해제

등록할 때와 같은 방법으로 지웁니다.

# 트레이 메뉴로 켰다면 — 메뉴에서 "로그인 시 자동 실행" 체크 해제 (방법 B와 같은 값을 지웁니다)

# 방법 A — 바로 가기 삭제
Remove-Item (Join-Path ([Environment]::GetFolderPath('Startup')) 'nShiftSpace.lnk')

# 방법 B — Run 키 삭제
Remove-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Run' -Name 'nShiftSpace'

# 방법 C — 예약 작업 삭제 (관리자 권한 PowerShell)
Unregister-ScheduledTask -TaskName 'nShiftSpace' -Confirm:$false

화면에서 확인하려면 방법 A·B는 작업 관리자 → 시작 프로그램(시작 앱) 탭, 방법 C는 작업 스케줄러를 보면 됩니다.

업그레이드할 때

채널할 일
Chocolatey없음 — 알아서 종료해 줍니다. 그대로 choco upgrade nshiftspace -y
winget트레이 아이콘 → 종료 후 winget upgrade SosomLab.nShiftSpace

Links 별칭 경로로 등록했다면 업그레이드 후에도 자동 실행이 그대로 유지됩니다. 다른 경로를 썼다면 1단계의 Test-Path로 경로가 아직 유효한지 확인하세요.

데이터와 개인정보

  • nShiftSpace는 아무 데이터도 저장하거나 전송하지 않습니다. 네트워크 통신 코드도 설정 파일도 로그도 없습니다.
  • 일반판은 키 입력을 감시하지 않습니다. Windows에 Shift+Space 하나만 등록해 두고, 그 조합이 눌렸다는 알림만 받습니다.
  • LED판은 LED 표시가 켜져 있는 동안 Windows의 Raw Input으로 모든 키의 눌림·뗌 알림을 받습니다. 눌렸는지 떼어졌는지만 보고 아이콘을 바꾸며, 어떤 키인지 기록하거나 저장·전송하지 않습니다. 메뉴에서 끄면 수신을 해제합니다.
  • 자동 실행을 켠 경우 그 Run 값(또는 직접 등록한 바로 가기·예약 작업)만 남으며, 자동 실행 해제로 지울 수 있습니다.

문제 해결

설치

증상원인과 조치
winget install이 패키지를 찾지 못함소스 정보가 오래됨 — winget source update 후 다시 시도
winget 명령이 없음Microsoft Store에서 앱 설치 관리자 설치(Windows 10 1809 미만은 미지원)
choco install이 “package not found”choco search nshiftspace로 확인. 반영 지연이면 잠시 후 다시 시도
choco가 “액세스가 거부되었습니다”관리자 권한 PowerShell에서 실행
업그레이드·제거가 파일 잠김으로 실패트레이 아이콘 → 종료 후 다시 시도(특히 winget)

실행

증상원인과 조치
실행해도 아무 일도 안 일어남정상입니다. 창이 없는 트레이 프로그램입니다. 작업 표시줄의 **∧**를 눌러 아이콘을 확인하세요
두 번 실행했는데 하나만 뜸정상입니다 — 중복 실행을 막습니다
nshiftspace 명령을 못 찾음(winget)새 터미널 창에서 다시 시도. 그래도 안 되면 별칭이 없는 경우 → 1단계 참고
”Shift+Space 단축키 등록에 실패했습니다.” 창이 뜨고 종료됨다른 프로그램이 Shift+Space를 먼저 등록함 → 아래 “어디서도 전혀 안 된다” 참고
백신이 차단함CRT 없이 만든 초소형 exe라 드물게 오탐이 생깁니다. Releases의 파일과 SHA256을 대조한 뒤 예외로 등록하세요

단축키가 안 먹을 때

특정 창에서만 안 된다 → 관리자 권한 문제. 작업 관리자, 관리자 권한 터미널, 일부 설치 프로그램 위에서만 안 된다면 정상 동작입니다(UIPI). nShiftSpace를 관리자 권한으로 실행하거나 방법 C로 자동 실행을 등록하세요.

어디서도 전혀 안 된다 → 단축키 선점. 다른 프로그램이 Shift+Space를 먼저 등록했을 수 있습니다. 먼저 등록한 쪽이 우선합니다. 다른 한/영 전환 유틸리티(원조 jwShiftSpaceKey 포함), 매크로 프로그램, 게임 오버레이, 일부 입력기 도구를 종료한 뒤 nShiftSpace를 다시 실행해 보세요.

한/영은 바뀌는데 입력이 이상하다 → 입력기 설정. 실제 전환은 Windows 입력기가 합니다. 설정 → 시간 및 언어 → 언어 및 지역 → 한국어 → 언어 옵션 → Microsoft 입력기 → 옵션에서 한/영 전환 키 설정을 확인하세요.

트레이 아이콘은 있는데 반응이 없다. 종료했다가 다시 실행해 보고, 그래도 안 되면 재부팅 후 다시 시도하세요.

자동 실행

증상원인과 조치
업그레이드 후 자동 실행이 안 됨Links 별칭 대신 Packages 아래 실제 경로가 기록된 경우 → nshiftspace로 실행한 뒤 메뉴를 껐다 켜거나, 1단계부터 다시
메뉴에 체크돼 있는데 다른 판이 뜸일반판과 LED판이 같은 값을 쓰기 때문 → 지금 쓰는 판에서 체크를 해제했다가 다시 켜기
제거 후 시작 프로그램 탭에 흔적이 남음제거 전에 메뉴를 끄지 않은 경우 → 자동 실행 해제의 방법 B 명령으로 삭제
예약 작업(방법 C)이 실행되지 않음작업 스케줄러에서 nShiftSpace 작업의 마지막 실행 결과 확인. -ExecutionTimeLimit 0을 빠뜨리면 3일 뒤 종료됨
로그인할 때 검은 창이 잠깐 뜸방법 B에서 경로를 큰따옴표로 감싸지 않은 경우 → 다시 등록
작업 관리자 시작 프로그램 목록에 없음시작 프로그램 탭은 방법 A·B만 보여 줍니다. 방법 C는 작업 스케줄러에서 확인

해결되지 않으면 GitHub Issues에 Windows 버전(winver 결과), 설치 방법, nShiftSpace 버전, 증상이 나타나는 상황을 적어 알려 주세요.

버전 변경 이력

버전 흐름 요약

  • v0.3.0 (2026-10-17) — 메모리 표시값 2차 개선(약 70KB) · LED판 별도 패키지.
  • v0.2.0 (2026-10-17) — 키보드 LED 표시판 · 로그인 시 자동 실행 메뉴 · 작업 집합 비우기. 크기는 약 5KB로 늘었습니다.
  • v0.1.0 (2026-07-04) — 첫 공개. 4.5KB짜리 Shift+Space 한/영 전환 프로그램 nShiftSpace. 이후 winget(2026-07-17)·Chocolatey(2026-07-30) 정식 등록과 사용자 위키 발행(2026-08-02)이 이어졌습니다.

v0.3.0 — 2026-10-17

  • 개선
    • 작업 관리자 메모리 약 70KB(x64) · 120KB(x86) — 트레이 메뉴를 열 때 한국어 입력기 DLL이 붙어 수치가 다시 오르던 원인을 찾아, 자기 스레드의 IME를 끕니다. 텍스트 입력을 받지 않으므로 기능 손실은 없습니다.
    • 작업 집합 비우기 시점 변경 — 어떤 메시지든 받은 뒤 2초 동안 조용하면 한 번 비웁니다. 주기 타이머가 아니라 유휴 CPU는 그대로입니다. 커밋 메모리는 약 1.4MB로 변하지 않습니다.
    • 실행 파일 크기는 v0.2.0과 같습니다.
  • 변경
    • LED판 별도 패키지 — Chocolatey nshiftspace-led(2026-10-21 승인) · winget SosomLab.nShiftSpace.LED(심사 중). 기존 nshiftspace / SosomLab.nShiftSpace는 일반판 그대로입니다.

v0.2.0 — 2026-10-17

  • 추가
    • 키보드 LED 표시판(별도 빌드) — 아무 키나 누르는 동안 트레이 아이콘이 초록으로 켜집니다. Raw Input을 쓰며 메뉴에서 끌 수 있습니다. 일반판에는 이 코드가 들어가지 않습니다.
    • 로그인 시 자동 실행 메뉴 — 체크하면 실행 중인 exe 경로를 Run 값에 쓰고, 해제하면 지웁니다.
  • 개선
    • 메모리 표시값 약 300KB(x64) · 160KB(x86) — 초기화 직후와 메뉴를 닫은 뒤 작업 집합을 비웁니다.
  • 변경
    • 실행 파일 크기 4.5KB → 5,120바이트(x64) · 5,632바이트(x86). 자동 실행 메뉴가 들어가면서 늘었습니다.
    • 기본 상태에서는 여전히 레지스트리에 쓰지 않으며, 자동 실행을 켠 경우에만 값 하나를 씁니다.

배포·문서 — 2026-08-02 (버전 변경 아님)

실행 파일은 v0.1.0 그대로입니다.

  • 추가
    • winget 정식 등록(2026-07-17) — winget install SosomLab.nShiftSpace로 설치할 수 있습니다.
    • Chocolatey 정식 승인(2026-07-30) — choco install nshiftspace -y로 설치할 수 있습니다.
    • 사용자 위키 발행(2026-08-02) — 설치하기 · 자동 실행 설정 · 사용법 · 문제 해결 등 8개 페이지를 Wiki에 공개했습니다.
  • 개선
    • 자동 실행 절차를 정리했습니다 — winget 별칭 경로를 써야 하는 이유, 별칭이 없을 때의 대처, 관리자 권한 창에서도 쓰기 위한 작업 스케줄러 등록 방법.

v0.1.0 — 2026-07-04

첫 공개 릴리스입니다.

  • 추가
    • Shift+Space로 한/영 전환 — 누르면 한/영 키 입력을 대신 보냅니다.
    • 4.5KB 단일 실행 파일 — GUI 프레임워크·C 런타임 없이 kernel32·user32·shell32만 사용합니다.
    • 대기 중 CPU 사실상 0 — 키보드 훅 대신 Windows 단축키 등록 기능을 씁니다.
    • 트레이 상주 — 창 없이 트레이 아이콘만 뜨고 메뉴에서 종료합니다. 탐색기가 다시 시작되어도 아이콘이 복구되고, 중복 실행은 막힙니다.
    • ‘가·A’ 픽셀 아트 아이콘(198바이트) 내장.
    • x64 · x86 두 가지 빌드를 zip으로 제공합니다.

참고 — 개발 중 2026-11-05 기준 최신 릴리스는 v0.3.0이며, 공개된 도구는 nShiftSpace(일반판·LED판)뿐입니다. 다음 도구인 키 재매핑 엔진 nexa-mapper와 매핑 내장 exe 내보내기는 로드맵에 있으나 아직 개발을 시작하지 않은 계획 단계입니다.

알려진 제한

  • 관리자 권한 창에서는 동작하지 않습니다(일반 권한으로 실행한 경우). Windows 보안 정책(UIPI) 때문이며, 작업 스케줄러로 높은 권한 실행을 등록하면 해결됩니다(방법 C).
  • 단축키는 Shift+Space 고정입니다. 다른 키로 바꿀 수 없습니다. 키를 자유롭게 바꾸는 기능은 계획 중인 nexa-mapper에서 다룰 예정입니다.
  • 다른 프로그램이 Shift+Space를 먼저 등록하면 nShiftSpace는 오류 창을 띄우고 종료합니다.
  • winget은 업그레이드·제거 때 실행 중인 프로그램을 종료해 주지 않습니다. 먼저 트레이에서 종료하세요.
  • 어느 설치 방법도 자동 실행을 등록하지 않습니다. 트레이 메뉴에서 로그인 시 자동 실행을 한 번 켜야 합니다.
  • 패키지를 제거해도 메뉴로 켠 Run 값은 남습니다. 제거 전에 체크를 해제하세요.
  • LED판 winget 패키지는 아직 등록 전입니다(2026-11-05 확인). 그동안은 Chocolatey나 zip을 쓰세요.
  • LED 표시 상태는 저장되지 않습니다. 실행할 때마다 켜짐으로 시작합니다.
  • 관리자 권한 창이 포커스일 때 LED 표시가 반응하는지는 아직 확인되지 않았습니다.

↑ 맨 위로