Không thể sử dụng mã Alt để chèn ký tự Unicode nữa


10

Tôi đã sử dụng mã Alt cho dấu chấm lửng, 8230, trong một thời gian, trong một số ứng dụng. Một vài ngày trước, nó đã ngừng hoạt động và &được hiển thị thay vì khi nhấn Alt+ 8+ 2+ 3+ 0(trên numpad). Điều này xảy ra cả trên máy tính để bàn và trên máy tính xách tay của tôi (nơi tôi sử dụng nó Fn). Cả hai đều chạy trên 64bit-Win-7 với mã trang 850 và cả hai có thể đã cập nhật Windows và Opera 12 gần đây.

Điều gì có thể là lý do phương thức nhập liệu này bị vô hiệu hóalàm cách nào để chuyển đổi lại ?

Nhân tiện, tôi mới phát hiện ra rằng Alt+ 0+ 1+ 3+ 3không hoạt động. Ngoài ra, tôi phát hiện ra rằng Alt+ 8+ 2+ 3+ 0vẫn hoạt động trong DirectXad hoặc MsWord10, nhưng không phải trong Opera hay Notepad ++ - ở đó mã ký tự được dịch mô-đun 256 trước khi chèn.


Tôi khuyên bạn nên dùng thử WinCompose vì nó cho phép bạn nhập dấu chấm lửng với sự kết hợp đơn giản và trực quan [Alt] [.] [.].
sam hocevar


@ LưuViênPhúc Không, đó là một câu hỏi khá khác nhau. Lưu ý rằng 8230 là mã ký tự thập phân của dấu chấm lửng, không phải mã hex.
Bergi

Câu trả lời:


6

Theo như tôi biết, phương pháp Alt nnnn (nnnn binary> 255) là một tính năng RichEdit và do đó chỉ hoạt động trên các chương trình được chọn, chẳng hạn như Wordman và MS Word. Trong các chương trình khác, số đã nhập, nnnn, được giảm modulo 256 để mang lại một số trong phạm vi 0 ... 255, được giải thích theo trang mã đang sử dụng.

Cf. để chèn ký tự Unicode qua bàn phím? trong đó mô tả một số phương pháp thay thế. Thật không may, phương thức Alt + xxxx (xxxx hexadecimal; ví dụ: Alt + 2026 cho phiên bản Rõ ràng bị tắt theo mặc định và bạn cần sửa đổi sổ đăng ký Windows để cho phép nó. Ngoài tiện ích UnicodeInput, còn có Đầu vào Unicode theo Tên , nhưng các phương thức này không hoàn toàn thuận tiện cho việc nhập nhanh như các phương thức Alt.


Cảm ơn, đó dường như là hướng đi đúng đắn. Rõ ràng Opera 12 đã bỏ tính năng RichEdit này. Tôi có thể kích hoạt lại bằng tay bằng cách nào đó hoặc tôi sẽ cần phải viết báo cáo lỗi?
Bergi

1
+1 Nhận xét của bạn rằng trong các chương trình khác, giá trị ký tự là mod 256 chính xác là hành vi tôi quan sát được trong Notepad.
Nicole Hamilton

4

Mã thay thế và ký tự unicode chỉ liên quan một cách mơ hồ và (đối với hầu hết các phần) tùy thuộc vào từng ứng dụng để xác định cách xử lý chúng, do đó, có thể khác nhau giữa các ứng dụng, phiên bản ứng dụng và như vậy.

Về cơ bản, đó là về mã hóa ký tự và Trang mã , thay vì phông chữ hoặc đầu vào của người dùng.

Mã thay thế cho ASCII chỉ là 0-255 (trang mã 8 bit). Nhiều chương trình (và hệ điều hành) đối phó với số lượng lớn hơn được người dùng nhập vào bằng cách gói ở mức 256.

256 = 0, 257 = 1, v.v.

Vì vậy, nhập ALT + 8230, thực sự tương đương với việc gõ ALT + 38 (8230/256 = 32.1484375. 256 * 32 = 8192. 8230 - 8192 = 38), đó là ký tự ASCII "&" - trừ khi chương trình chặn nó và thay thế nó bằng mã Unicode 'phù hợp' hoặc bằng cách sử dụng một trang mã khác (ví dụ: Unicode), như MS Word, và các phiên bản Wordman mới hơn, chẳng hạn.

Windows sử dụng phiên bản mở rộng của CodD 8 bit MSDOS (850) được gọi là trang mã " Windows-1252 " (dù sao đối với các ngôn ngữ tiếng Anh). Nhưng nó chỉ sử dụng điều này cho các phần kế thừa của HĐH không hỗ trợ đầy đủ các trang mã Unicode.

Đây là những lý do tại sao bạn có thể dễ dàng thấy các kết quả khác nhau trong các ứng dụng và hệ điều hành khác nhau, cũng như trong các phần khác nhau của chính Windows.

Đó là một vấn đề khó hiểu để nói rằng ít nhất. :)

Tôi khá chắc chắn Alt-0133 là mã ALT mở rộng "chính thức" của Windows cho dấu chấm lửng (trong trang mã Windows), vì vậy bạn có thể sẽ gặp may mắn hơn khi sử dụng nó.

Dưới đây là một số thông tin liên quan .


Cảm ơn các liên kết thông tin. Tôi đã thấy có những khác biệt khó hiểu khi tìm kiếm vấn đề :-)
Bergi

1

U + 8230 không phải là dấu chấm lửng, đó là tàu chiến Nhân vật Han : . Tôi không biết tại sao bạn lại nhận được dấu chấm lửng với mã đó, nhưng 133 thực sự là điểm chính xác cho mã đó.

Chính xác nơi bạn nhìn thấy dấu chấm lửng cho 8230? Có lẽ đó là một lỗi trong Opera đã được sửa chữa kể từ lần cập nhật trước. Nếu đó là trong một số ứng dụng, thì có lẽ bạn đã gặp lỗi trong phông chữ hoặc bố cục bàn phím / cài đặt khu vực hoặc một cái gì đó (không có gì rõ ràng hoặc hợp lý xuất hiện, vì vậy nó phải là một lỗi trái ngược với cài đặt hợp pháp).

Nếu (vì một số lý do) bạn thực sự muốn / cần sử dụng một điểm mã không chính xác cho nó thay vì sử dụng đúng, bạn có thể sử dụng một cái gì đó như Authotkey để tạo một tập lệnh chấp nhận hợp âm hoặc chuỗi và xuất ra những gì bạn muốn .

Bạn có chắc chắn rằng bạn đã có thể nhập Alt+ Numpad-8+ Numpad-0+ Numpad-2+ Numpad-3? Mặc dù một số chương trình có thể hỗ trợ độc lập, Windows không chấp nhận các điểm mã Unicode cao như thế theo mặc định. Bạn có thể sử dụng hex-entry mặc dù: Alt+ Numpad-++ 2+ 0+ 2+ 6.


8230 là số thập phân cho hex 2026 thực sự là dấu chấm lửng. fileformat.info/info/unicode/char/2026/index.htm Alt + 8230 hoạt động trong một số ứng dụng (ví dụ: tin nhắn mới của Outlook) nhưng không phải cho tôi trên Win7 x64.
Nicole Hamilton

8230là mã ký tự thập phân của U + 2026 ( Ellipsis ). Tôi không bao giờ sử dụng tiền tố +hoặc 0tiền tố, tôi chỉ giữ Altvà nhập một mã số thập phân bốn chữ số. Như đã nói trong câu hỏi, điều này vẫn hoạt động tốt trong Word.
Bergi

Vâng, tôi chắc chắn rằng nó làm việc, nhưng tôi đoán nó đã làm chỉ trong các ứng dụng yêu thích của tôi: - / Hex nhập hiện chưa được kích hoạt và sản lượng , vì vậy tôi sẽ dính vào 0133...
Bergi

> Mục nhập hex hiện không được bật Có thể không, nhưng bạn có thể kích hoạt nó để thuận tiện vì như tôi đã nói, Windows không chấp nhận hơn 8000 điểm mã (theo số thập phân) theo mặc định. Sử dụng hex-entry là một cài đặt Windows, do đó, nó hoạt động trong tất cả các ứng dụng (ít nhất là tất cả các hộp hỗ trợ chỉnh sửa Unicode).
Synetech

0

Có thể phông chữ hiện tại không hỗ trợ các ký tự Unicode phía trên như vậy, thay đổi phông chữ thành 'Arial' và thử lại.

Khi tôi kiểm tra điều này trong Wordman, ALT + 8 + 2 + 3 + 0 hoạt động cho Arial, nhưng không phải cho một số phông chữ khác.


1
Không, các phông chữ hỗ trợ hiển thị chúng. Ngoài ra tôi không nghĩ rằng một phông chữ được phép ảnh hưởng đến phương thức nhập liệu.
Bergi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.