pinglet-cli 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.ja.md CHANGED
@@ -54,7 +54,7 @@ pinglet post "メッセージ"
54
54
  🟢 いま41個のターミナルと一緒にコーディング中
55
55
  ```
56
56
 
57
- statusline の言語は位置(システムのタイムゾーン)に応じて自動選択されます — 韓国では韓国語、日本では日本語、それ以外は英語。
57
+ statusline の言語はシステム言語に応じて自動選択されます(韓国語/日本語、それ以外は英語)。言語で判定できない場合はタイムゾーン(ソウル/東京)で推定します。
58
58
 
59
59
  ## コマンド
60
60
 
package/README.ko.md CHANGED
@@ -54,7 +54,7 @@ pinglet post "메시지"
54
54
  🟢 지금 41개 터미널과 함께 코딩 중
55
55
  ```
56
56
 
57
- statusline 언어는 위치(시스템 타임존)에 따라 자동 선택됩니다 — 한국은 한국어, 일본은 일본어, 그 외는 영어.
57
+ statusline 언어는 시스템 언어에 따라 자동 선택됩니다(한국어/일본어, 그 외는 영어). 시스템 언어로 판정이 안 되면 타임존(서울/도쿄)으로 추정합니다.
58
58
 
59
59
  ## 명령어
60
60
 
package/README.md CHANGED
@@ -54,7 +54,7 @@ The statusline shows how many terminals are coding alongside you right now:
54
54
  🟢 coding along with 41 terminals right now
55
55
  ```
56
56
 
57
- The statusline picks its language from your location (system timezone) — Korean in Korea, Japanese in Japan, English everywhere else.
57
+ The statusline picks its language from your system language (Korean/Japanese, English otherwise), falling back to your timezone (Seoul/Tokyo) when the language doesn't decide it.
58
58
 
59
59
  ## Commands
60
60
 
package/dist/render.js CHANGED
@@ -6,31 +6,31 @@ exports.sanitizeForTerminal = sanitizeForTerminal;
6
6
  exports.formatPing = formatPing;
7
7
  exports.formatOnlineNow = formatOnlineNow;
8
8
  /**
9
- * statusline 표시 언어: 사용자 "위치" 기준 — 한국이면 한국어, 일본이면 일본어,
10
- * 그 외 영어. 네트워크 없이 판정해야 하므로(오프라인 동작 원칙) 시스템
11
- * 타임존을 위치의 근사로 쓰고, 타임존을 못 읽으면 시스템 언어로 추정한다.
9
+ * statusline 표시 언어. 시스템 언어를 먼저 보고(사용자가 실제로 읽는
10
+ * 언어라 가장 강한 신호), 언어로 판정이 안 되면 타임존을 위치의 근사로
11
+ * 쓴다. 한국·일본은 둘 다 UTC+9라 타임존만으로는 오판하는 기기가 있다
12
+ * (예: 한국에서 Asia/Tokyo 타임존을 쓰는 기기 — 시계가 맞아서 티가 안 남).
13
+ * 네트워크 없이 판정한다 (오프라인 동작 원칙).
12
14
  */
13
15
  function detectLocale() {
16
+ const lang = (process.env.LC_ALL ||
17
+ process.env.LC_MESSAGES ||
18
+ process.env.LANG ||
19
+ "").toLowerCase();
20
+ if (lang.startsWith("ko"))
21
+ return "ko";
22
+ if (lang.startsWith("ja"))
23
+ return "ja";
14
24
  try {
15
25
  const tz = Intl.DateTimeFormat().resolvedOptions().timeZone ?? "";
16
26
  if (tz === "Asia/Seoul")
17
27
  return "ko";
18
28
  if (tz === "Asia/Tokyo")
19
29
  return "ja";
20
- if (tz)
21
- return "en";
22
30
  }
23
31
  catch {
24
- // Intl이 없는 환경 — 아래 언어 폴백으로.
32
+ // Intl이 없는 환경 — 영어로.
25
33
  }
26
- const lang = (process.env.LC_ALL ||
27
- process.env.LC_MESSAGES ||
28
- process.env.LANG ||
29
- "").toLowerCase();
30
- if (lang.startsWith("ko"))
31
- return "ko";
32
- if (lang.startsWith("ja"))
33
- return "ja";
34
34
  return "en";
35
35
  }
36
36
  /** 터미널 독립 원칙: unicode가 불확실하면 plain ASCII로 fallback (아키텍처 §5). */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pinglet-cli",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Short messages from other developers shown in your Claude Code spinner while the AI thinks — zero tokens, never reads your code. Claude Code / Codex integration",
5
5
  "license": "MIT",
6
6
  "repository": {