QCalc

생산성과 접근성을 위한 다목적 계산기 — 표준 · 단위 · 통화 · 진법 · 수식
키보드 우선, 스크린리더 친화, 10개 언어. 데스크톱(Linux · Windows)과 Android.

License: MIT version 0.13.6 10 languages contributions welcome

Get it from the Snap Store

English

--- ![Screenshot](https://github.com/from104/qcalc/raw/main/assets/screenshot_v0.12.0-ko.png) ## QCalc을 선택하는 이유 QCalc은 **5가지 전문 계산기(표준, 단위, 통화, 진법, 수식)**와 **10개 언어(한국어, English, 日本語, 中文, हिन्दी, Deutsch, Español, Français, Português, Русский)** 지원을 하나의 깔끔하고 키보드 친화적인 앱에 담았습니다. 일상적인 계산, 단위 변환, 환율 확인, 16진수/2진수 작업, 수학 수식 계산까지 — 탭 하나로 전환할 수 있습니다. - **기술 스택** — Vue 3 + Quasar + TypeScript + Tauri 2(데스크톱) + Capacitor(Android) — 기존 Electron 타겟은 전환기 동안 유지 - **지원 플랫폼** — Windows (NSIS 설치파일), Linux (deb / rpm / AppImage / Snap / Flatpak), Android --- ## 주요 기능 ### 5가지 계산기 모드 | 모드 | 설명 | 접근 | | ------------- | --------------------------------------------------------------------- | -------- | | **표준** | 사칙연산, 백분율, 삼각함수, 거듭제곱, 제곱근, 팩토리얼 | `Ctrl+1` | | **단위 변환** | 15개 이상 카테고리 — 길이, 무게, 면적, 부피, 각도 등 | `Ctrl+2` | | **통화 변환** | 340개 통화(법정, 암호화폐, 귀금속) — API 키 불필요 | `Ctrl+3` | | **진법 변환** | 2/8/10/16진수 변환, AND, OR, XOR, NOT, 시프트 연산 | `Ctrl+4` | | **수식** | [mathjs](https://mathjs.org/) 문법으로 수학 수식을 직접 입력하여 계산 | `Ctrl+5` | ### 수식 계산기 주요 기능 - `sqrt(2) * pi`, `sin(45 deg)`, `log(1000)` 같은 수식 입력 - `@`로 현재 계산값, `$`로 메모리 값 참조 - 인라인 편집기(Space 또는 빈 수식에서 Enter)로 자유로운 수식 편집 - **히스토리 탐색** — 편집 모드에서 ↑/↓ 화살표 키로 이전 수식 탐색 및 재사용 - **수식 불러오기** — 계산 기록에서 수식 우클릭 → "수식 필드에 불러오기" - 사용 가능한 함수, 상수, mathjs 문서 링크가 포함된 내장 도움말 - 전체 수식이 결과 필드에 표시되고 기록에 저장 ### 생산성 도구 - **계산 기록** — 검색, 메모 추가, CSV로 내보내기/불러오기 - **메모리 연산** — MC, MR, MS, M+, M−, M×, M÷ - **설정 동기화** — 모든 설정을 JSON으로 내보내기/불러오기 - **계산기별 숫자 형식** — 모드별 독립적인 묶음 표시, 소수점 자릿수 - **64자리 정밀도** — mathjs BigNumber 기반 ### 사용자 경험 - **테마** — 다크/라이트를 넘어 다양한 색상 테마 - **적응형 레이아웃** — 넓은 화면에서 기록 패널 자동 표시 - **접근성** — ARIA 레이블, 계산 결과 스크린리더 낭독(Linux는 AT-SPI announcement, 그 외는 aria-live), WCAG AA 대비, 키보드 포커스 표시, 모션 감소 지원 - **키보드 우선** — 모든 기능에 단축키 지원 - **모바일** — 스와이프로 모드 전환, 햅틱 피드백 - **항상 위** — 다른 창 위에 계산기 고정 (네이티브 Linux Wayland 세션에서는 미동작, `QCALC_FORCE_XWAYLAND=1`로 옵트인) - **10개 언어** — 한국어, 영어, 일본어, 중국어, 힌디어, 독일어, 스페인어, 프랑스어, 포르투갈어, 러시아어 - **자동 업데이트** — Windows 설치파일, Linux AppImage 자동 업데이트 (deb/rpm은 수동, Snap/Flatpak은 스토어 업데이트) > 한국어를 제외한 번역은 AI로 생성되었습니다. 오류나 더 나은 표현이 있다면 [Issues](https://github.com/from104/qcalc/issues)로 알려주세요. --- ## 키보드 단축키 > **범례**: `C` = Ctrl, `S` = Shift, `A` = Alt ### 공통 | 키 | 기능 | | ----------- | ----------- | | `0-9` `.` | 숫자 입력 | | `+ - * /` | 사칙연산 | | `Enter` `=` | 계산 | | `Backspace` | 마지막 삭제 | | `Delete` | 전체 초기화 | | `u` `i` | x² / √x | | `j` | 부호 변경 ± | | `k` `%` | 퍼센트 | | `l` | 역수 1/x | | `'` | 시프트 모드 | ### 시프트 모드 (표준) | 키 | 기능 | | ----------- | ---------------- | | `r` `t` | xⁿ / ⁿ√x | | `f` | 10ⁿ | | `g` | 나머지 | | `h` | 팩토리얼 x! | | `q` `w` `e` | sin / cos / tan | | `z` `x` `c` | π / φ / e | | `a` `s` `d` | π/2 / ln10 / ln2 | | `v` `b` | 정수부 / 소수부 | ### 메모리 | 키 | 기능 | | ------------- | ----------- | | `C-Enter` | 저장 (MS) | | `C-Backspace` | 호출 (MR) | | `C-Delete` | 초기화 (MC) | | `C-+` `C--` | M+ / M− | | `C-*` `C-/` | M× / M÷ | ### 단위 / 통화 (시프트 모드) | 키 | 기능 | | ----------- | ------------------------- | | `a` `s` `d` | ×10 / ×100 / ×1000 | | `z` `x` `c` | ÷10 / ÷100 / ÷1000 | | `f` `g` `h` | ×2/×3/×5 또는 +5/+10/+100 | | `q` `w` `e` | ÷2/÷3/÷5 또는 −5/−10/−100 | | `\` | 원본 ↔ 대상 교환 | | `A-\` | 기호 표시 토글 | ### 프로그래머 (진법) | 키 | 기능 | | ----------------------- | ------------------ | | `z` `x` `c` `a` `s` `d` | 16진수 A–F | | `j` `k` `l` | AND / OR / XOR | | `h` | NOT | | `r` `t` | ±1비트 시프트 | | `f` `g` | ±4비트 시프트 | | `u` `i` | ±N비트 시프트 | | `q` `w` `e` | NAND / NOR / XNOR | | `\` | 원본 ↔ 대상 교환 | | `A-\` | 진법 표시 토글 | | `A-C-\` | 접두사/접미사 전환 | ### 수식 (편집 모드) | 키 | 기능 | | -------- | ------------------------------------- | | `Space` | 편집 모드 진입 | | `Enter` | 수식 평가 (비어있으면 편집 모드 진입) | | `Escape` | 수식 지우고 편집 모드 종료 | | `↑` `↓` | 이전 수식 히스토리 탐색 | | `=` | 수식 평가 | ### 내비게이션 & UI | 키 | 기능 | | ------------- | -------------------------------- | | `F1`–`F5` | 도움말 / 정보 / 설정 / 기록 / 팁 | | `C-Tab` `→` | 다음 탭 | | `C-S-Tab` `←` | 이전 탭 | | `C-1`–`C-5` | 탭 이동 | | `Escape` | 패널 닫기 | | `A-t` | 항상 위 | | `A-d` | 다크 모드 | | `A-n` | 계산기별 숫자 형식 | | `A-p` | 햅틱 피드백 | | `,` | 묶음 표시 토글 | | `A-,` | 묶음 단위 (3/4) | | `[` `]` | 소수점 자릿수 (∞–16) | | `;` | 추가 기능 토글 | ### 클립보드 | 키 | 기능 | | ------- | --------------- | | `C-c` | 메인 패널 복사 | | `S-C-c` | 보조 패널 복사 | | `C-v` | 메인에 붙여넣기 | | `S-C-v` | 보조에 붙여넣기 | ### 기록 패널 | 키 | 기능 | | ------------- | --------------- | | `↑` `↓` | 스크롤 | | `PgUp` `PgDn` | 빠른 스크롤 | | `Home` `End` | 맨 위 / 맨 아래 | | `C-f` | 검색 | | `C-[` `C-]` | 폰트 크기 −/+ | --- ## 설치 | 플랫폼 | 방법 | | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Windows** | [Releases](https://github.com/from104/qcalc/releases)에서 NSIS 설치 파일 다운로드 (자동 업데이트 지원) | | **Linux** | [Releases](https://github.com/from104/qcalc/releases)에서 `.deb` / `.rpm` / AppImage 다운로드 (AppImage는 자동 업데이트), Snap (`snap install qcalc`), 또는 자체 저장소의 Flatpak: `flatpak install --user https://from104.github.io/qcalc/flatpak/qcalc.flatpakref` (자동 업데이트) | | **Android** | [Releases](https://github.com/from104/qcalc/releases)에서 APK 다운로드 | > **Linux 패키지 호환성**: `.deb`는 Ubuntu 22.04 이상 / Debian 12 이상(Mint 21+, Pop!\_OS 22.04+ 등 파생판 포함), `.rpm`은 Fedora 37 이상과 openSUSE Leap 15.6+/Tumbleweed를 지원합니다. RHEL/Alma/Rocky 9 계열과 구형 Debian/Ubuntu는 glibc/WebKitGTK가 낡아 이 패키지들로는 지원되지 않습니다 — 런타임을 내장한 AppImage(glibc 2.35 이상 배포판), Flatpak, Snap을 사용하세요. > **Linux에서 스크린리더를 사용하신다면** `.deb`·`.rpm`·AppImage를 사용하세요. Flatpak 샌드박스 안에서는 WebKit UI가 보조기술에 노출되지 않는 문제가 있습니다(업스트림 한계, [#113](https://github.com/from104/qcalc/issues/113)). > macOS / iOS 빌드는 현재 제공되지 않습니다. > **0.12.x 이하(Electron)에서 올라오는 경우** Windows와 AppImage는 구버전 앱의 업데이트 확인으로 0.13.1을 받아 설치할 수 있고, Windows에서는 그 과정에서 예전 설치가 함께 제거됩니다. 나머지 패키지(`.deb`·`.rpm`·Snap·Flatpak)는 직접 내려받아 설치해야 합니다. 어느 쪽이든 구버전에서 기록(CSV)과 설정(JSON)을 내보내고 새 앱의 첫 실행 화면(또는 설정)에서 가져오세요. > > 0.13.0 자체는 구버전 업데이터가 읽는 파일 없이 배포됐습니다. 따라서 아직 0.12.x를 쓰고 계시다면 0.13.1부터 안내를 받게 됩니다. --- ## 기여하기 번역 및 기여 가이드는 [CONTRIBUTING-ko.md](CONTRIBUTING-ko.md)를 참조하세요. ## 개발 빌드 및 개발 환경 설정은 [DEVELOP-ko.md](DEVELOP-ko.md)를 참조하세요.