Phím compose (đôi khi còn gọi là phím multi), xuất hiện trên một số loại bàn phím máy tính, là một phím bổ trợ biểu thị sự kết hợp hai (hoặc nhiều hơn) các lần ấn phím ký tự tiếp sau nó để thành lập một ký tự khác (thường là một ký tự hợp) không có sẵn trên bàn phím.[1]
Các phím compose phổ biến nhất trên nền tảng Linux và một số hệ khác sử dụng hệ thống X Window, nhưng cũng có phần mềm để triển khai phím này trên Windows và MacOS.
Lịch sử
Các phím compose được ra mắt lần đầu trên các bàn phím gia đình mẫu LK201 của Tổng công ty Thiết bị kỹ thuật số(Digital Equipment Corporation - DEC) và có sẵn trong những phiên bản kế thừa của nó.[2][3] Bàn phím cũng có đèn LED trên phím compose để biểu thị rằng dãy nhập phím compose đang được thực hiện.[4] Compose cũng có thể được tìm thấy trên bàn phím từ hãng Sun Microsystems. Tuy nhiên, bất kỳ phím nào trên bàn phím có thể được cấu hình để phục vụ như là một phím compose, miễn là chức năng ấy được hỗ trợ bởi phần mềm được sử dụng.
ISO/IEC 9995-7 đã thiết kế một ký hiệu đồ họa cho phím này, trong chuẩn ISO/IEC 9995-7 là ký hiệu số 15 "Composite Character" và trong chuẩn ISO 7000 "Bộ ký hiệu đồ họa để sử dụng trên thiết bị" nó là mã ISO-7000-2021. Ký hiệu này được mã hóa trong Unicode là U+2384⎄COMPOSITION SYMBOL.
Microsoft Windows và MacOS không hỗ trợ phím compose làm mặc định, thế nên chức năng của phím này được thực hiện nhờ sử dụng một số lệnh hoặc phím khác, như phím Windows phải, phím AltGr, hoặc một trong hai phím Ctrl.[5][6]
Phím compose (ở hàng phím dưới cùng, phía bên trái) trên mẫu bàn phím DEC.
Phím compose và LED compose trên các mẫu bàn phím Sun Type 5 và 5c là phím thứ hai bên phải ở hàng dưới cùng.
Ký hiệu bàn phím ISO cho phím "Compose Character"
Cách sử dụng
Phím compose phân biệt với một phím bổ trợ điển hình (chẳng hạn như phím AltGr hoặc ⌥ Option) ở chỗ, thay vì nó được nhấn và giữ trong khi ấn phím khác để tổ hợp, nó được nhấn và thả ra trước khi tiếp tục ấn các phím sẽ được bổ trợ. Thông thường, sau compose, hệ thống nhập văn bản không hiển thị bất kỳ phím nào được nhấn cho đến khi ký tự đã kết hợp xuất hiện sau phím cuối cùng của một trình tự nhấn phím đã định trước. Do đó, phím compose đôi khi cũng có thể được mô tả chung như là một loại phím chết. Điều làm cho phím compose khác biệt với một phím chết là trong khi mỗi phím chết chỉ có thể được sử dụng để chèn một dấu phụ cụ thể lên một số ký tự cơ sở, phím compose có thể được sử dụng để cho ra bất kỳ loại ký tự nào được hỗ trợ bởi bộ mã hóa ký tự và phông chữ đang được sử dụng. Bằng cách này, một loạt rộng hơn các ký tự đặc biệt có thể được thực hiện trên một bàn phím với số lượng các phím giới hạn. Nhập ký tự gồm nhiều dấu phụ cũng được hỗ trợ, nhấn tuần tự Compose^'a sẽ được ấ.
Nói một cách dễ hiểu, ký tự được sinh ra bằng một trình tự nhấn kèm phím compose có thể được coi như là một ký tự hỗn hợp, nhưng nó không cần phải là ký tự có thể phân tách ra được theo nghĩa đen, hoặc có hình dạng tương tự như các ký tự bình thường được gõ bằng các phím tương tự (nghĩa là gõ mà không cần nhấn compose trước tiên). Tuy nhiên, thường có một số liên hệ giúp làm cho dãy nhấn phím dễ nhớ hơn. Ví dụ, gõ Compose, tiếp theo T rồi sau đó, H có thể nhận được ký tự þ trong tiếng Iceland (cũng như trong tiếng Bắc Âu cũ và tiếng Anh cổ), mà tương đương về mặt ngữ âm với chữ ghép hiện đại th.
Nhược điểm chính của nhập bằng compose là các trình tự soạn thảo luôn yêu cầu ít nhất một lần nhấn phím. Vị trí trên bàn phím của compose không tiện cũng có thể dẫn tới gõ chậm.
Compose trong các hệ thống máy tính khác nhau
Phím compose được biết đến như một "Multi_key" trong hệ thống X Windows System, và phải được giải thích bởi một chương trình khách (thường là Xlib), mà không phải là server. Các server XFree86 và X.Org, một số kiểu bố trí bàn phím có một biến thể ánh xạ Multi_key, thường tới (trên bàn phím máy tính) một trong các phím Windows, hay tổ hợp ⇧ Shift+AltGr hoặc đôi khi là ⇧ Shift+Right-Ctrl. Nó cũng có thể được quy định tại XkbOptions (ví dụ, "compose:rwin") hoặc được kích hoạt thủ công bằng lệnh "setxkbmap -option compose:rwin". Ở các hệ phân phối kiểu Debian, nó cũng có thể được kích hoạt qua Debconf ("dpkg-reconfigure keyboard-configuration").
Microsoft Windows không sử dụng một phím compose như vậy, thế nên nó không có trên hầu hết bàn phím hiện đại của hãng, nhưng một vài chương trình như PuTTY vẫn hỗ trợ compose.[7] Ngoài ra còn có một số mã nguồn mở tiện ích (như AllChars) và bố trí bàn phím cài đặt có sẵn, có thể thực hiện chức năng của compose bằng cách sử dụng các tổ hợp với các phím Ctrl hoặc AltGr.
Hệ nhập văn bản Cocoa của macOS cho phép nhiều ký tự thay thế và có dấu một cách tự nhiên, nhưng lại không hỗ trợ chức năng giống như compose.[6] Ít nhất nó đã được triển khai nhờ sử dụng tiện ích Karabiner,[8] và có hiệu lực trên mọi ứng dụng, cũng như việc sử dụng các driver bàn phím nơi compose được triển khai nhờ tính năng chuỗi phím chết.[6]
Mặc dù Chrome OS được cung cấp một số lượng ký tự lớn hơn so với hầu hết các đối thủ cạnh tranh, các tổ hợp cần thiết để có chúng không phải lúc nào cũng rõ ràng như khái niệm mà Compose cung cấp. Google đã cung cấp một tiện ích bổ sung (ComposeKey) để cạnh tranh trong thị trường này.[9][10]
Một số tổ hợp thông dụng với compose
Bảng dưới cho thấy một số tổ hợp phím cho server X.Org. Đối với các hệ hiện đại hỗ trợ Unicode, thì bảng dưới chưa trình bày được hết.[11]