GPG dường như hỗ trợ Unicode, nhưng tôi không thể làm cho nó thực sự hoạt động
% gpg --utf8-strings --display-charset utf-8 --edit-key king@example.com
gpg (GnuPG) 1.4.15; Copyright (C) 2013 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
gpg: key xxxxxxxx: duplicated user ID detected - merged
Secret key is available.
gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
pub 4096R/xxxxxxxx created: 2014-02-20 expires: never usage: SC
trust: ultimate validity: ultimate
sub 4096R/xxxxxxxx created: 2014-02-20 expires: never usage: E
[ultimate] (1). King George \xe2\xa3\x20<king@example.com>
gpg> uid
pub 4096R/xxxxxxxx created: 2014-02-20 expires: never usage: SC
trust: ultimate validity: ultimate
sub 4096R/xxxxxxxx created: 2014-02-20 expires: never usage: E
[ultimate] (1). King George \xe2\xa3\x20<king@example.com>
gpg> adduid
Real name: King George Ⅳ ### I type this.
Email address: king@example.com
Comment:
You are using the `utf-8' character set.
You selected this USER-ID:
"King George � <king@example.com>" ### Terminal notes corruption.
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
You need a passphrase to unlock the secret key for
user: "King George \xe2\xa3\x20<king@example.com>"
4096-bit RSA key, ID xxxxxxxx, created 2014-02-20
pub 4096R/xxxxxxxx created: 2014-02-20 expires: never usage: SC
trust: ultimate validity: ultimate
sub 4096R/xxxxxxxx created: 2014-02-20 expires: never usage: E
[ultimate] (1) King George \xe2\xa3\x20<king@example.com>
[ultimate] (2). King George \xe2\xa3\x20<king@example.com> ### That's not correct UTF-8.
- Thiết bị đầu cuối của tôi được thiết lập để sử dụng UTF-8.
LANG=en_US.UTF-8
Lưu ý phía dưới: Trình tự UTF-8 không chính xác, nhưng nó đã đóng! Các trung octet của chuỗi ba byte nên có mặt ở đó là mất tích. Tôi nghi ngờ có bất cứ điều gì tôi có thể làm để làm cho octet giữa giảm xuống, vậy chuyện gì đang xảy ra ở đây?
Những ký tự unicode nào bạn đang cố gắng thêm? Tôi sẽ kiểm tra một chút ...
—
Ben
@Ben: Đó là trong câu hỏi, trên dòng có
—
Thanatos
### I type this.
: "" - ROMAN SỐ BỐN, U + 2163.
Được rồi, phiên bản nào của tiêu chuẩn Unicode mà hệ thống của bạn hỗ trợ và nó có hỗ trợ đặc điểm kỹ thuật đầy đủ đó trong tất cả các giao diện không? BTW, câu trả lời cho phần thứ hai gần như chắc chắn là không, nhưng tôi không muốn cho rằng.
—
Ben
BTW, tôi đoán là giao diện và / hoặc phông chữ được sử dụng để tương tác với GPG trên dòng lệnh không hỗ trợ ký tự đó, mặc dù các phần khác của hệ thống đã làm (điều tương tự xảy ra khi tôi thử ở đây).
—
Ben
@Ben "Giao diện và / hoặc phông chữ được sử dụng để tương tác với GPG trên dòng lệnh" là thiết bị đầu cuối; Tôi quên rằng đó là iTerm2 trên OS X hay gnome-terminal trong Linux, nhưng cả hai đều có hỗ trợ Unicode tuyệt vời và cả hai đều có phông chữ. Mã hóa của đầu vào được xác định bởi ứng dụng đầu cuối (và theo mặc định là UTF-8 ở mọi nơi); điều này trong giao tiếp với ứng dụng thông qua biến môi trường LANG, cũng được đặt chính xác. Tôi cần phải trả lời điều này, vì điều này hóa ra là một lỗi trong GnuPG. (IIRC, gpg2 hoạt động tốt. Gpg thì không.)
—
Thanatos