Saya sering mengetik kata yang sama di beberapa aplikasi:
- Editor (emacs, vi)
- Browser web
- Kerang
Alangkah baiknya memiliki autocomplete dari kata-kata yang saya ketikkan selama minggu terakhir yang tersedia di semua aplikasi di atas.
Masing-masing dari mereka memiliki cara untuk meningkatkan kecepatan mengetik. Tetapi sesuatu di tingkat desktop akan menjadi yang terbaik.
Contoh: "Integrasi Berkelanjutan". Saya ingin cara cepat mengetik kata ini tanpa mengubah program yang menerima input.
Apakah sudah ada yang seperti ini?
desktop-environments
usability
guettli
sumber
sumber
Jawaban:
Solusi untuk permintaan Anda adalah Metode Input.
Apa yang telah Anda gambarkan adalah sesuatu yang akrab bagi sebagian besar pengguna bahasa CJK. Mari kita tinjau bagaimana metode input bekerja di sistem Linux saat ini.
Sistem Metode Input
Berikut arsitektur sederhana untuk sistem metode input umum:
CATATAN: Saya snapshot gambar ini dari The X Input Method Protocol . Beberapa panah tidak relevan untuk mengikuti diskusi.
Secara historis, XIM (protokol Metode Input X) adalah satu-satunya protokol. Ini terlalu rumit dan tidak memiliki beberapa fitur yang diinginkan. Jadi sebagian besar ditinggalkan, meskipun kompatibilitas masih disediakan oleh toolkit populer seperti GTK, Qt.
Sistem metode input modern berisi beberapa bagian:
Dukungan perpustakaan sisi klien
/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/
)Bagaimana bagian-bagian ini cocok bersama?
Seorang pengguna mengetikkan kunci. Server X menerima acara perangkat keras dari antarmuka evdev, menyusun XEvent dan mengirim ke aplikasi di bawah fokus keyboard. Modul metode input toolkit (GTK, Qt) mencegat acara dan meneruskan info ke server metode input. Server metode input memperkirakan apa yang diinginkan pengguna dan mengirimkan beberapa teks kembali ke modul IM.
Sekarang, mari kita bicara tentang arsitektur server IM.
Server IM biasanya terdiri dari dua bagian:
Secara keseluruhan, apa yang dilakukan IM adalah mengubah apa yang Anda ketik menjadi sesuatu yang berbeda dan secara opsional memberikan prediksi.
Sebuah contoh
Kami menggunakan di
ibus-pinyin
sini untuk mengetik beberapa karakter Cina.Romanisasi 汉语拼音 adalah
han yu pin yin
. Pada awalnya, Anda perlu mengetik semua huruf ini untuk mendapatkan empat karakter bahasa Mandarin. Tetapi setelah beberapa kali, Anda hanya perlu mengetikkan empat karakter awalh y p y
untuk mendapatkan karakter Cina.Dalam hal
ibus-pinyin
ini,han yu pin yin
disingkat menjadih y p y
.Mesin IM yang lebih maju menggunakan teknik pembelajaran statistik untuk memberikan prediksi yang lebih baik. Tidak ada yang dapat menghentikan Anda dari menulis mesin metode input Bahasa Inggris untuk memberikan dorongan pengetikan.
Sebagai bonus, semua toolkit memiliki dukungan metode input kecuali beberapa program X biasa. Jadi ini adalah solusi yang cukup universal.
Terima kasih kepada Anders FU Kiær. Fitur / Pengetik-Pengetik | Proyek Fedora Wiki harus menjadi jawabannya
sumber
Lihatlah skrip saya, TextSuggest .
Beraksi:
Instalasi:
Instal paket-paket berikut:
xdotool
xclip
suckless-tools
(untukdmenu
)Kemudian tetapkan 2 pintasan keyboard:
python3 /path/to/TextSuggest.py
Yang pertama hanya akan memberikan daftar semua kata yang dapat dicari. Gunakan yang kedua ketika Anda memiliki beberapa teks yang dipilih, dan ingin mendapatkan saran / penyelesaian untuk itu.
Saran yang diterima disimpan sebagai riwayat (dan kemudian disarankan terlebih dahulu) dalam file
~/.textsuggest_history.txt
.Anda dapat menetapkan kata dan ekspansi / alias ubahsuaian di
~/.Custom_Words.txt
.sumber
Lihatlah Autokey . Mungkin cocok dengan kebutuhan Anda. C / P dari situs mereka:
sumber