Emacs Go Right Way, Linux'ta belirlenen bir tuşa kısa arayla iki kez basıldığında GNU Emacs'i başlatan bir araçtır. Wayland ve X11 oturumlarında, Linux giriş aygıtlarına erişim sağlanabildiği sürece çalışır.
- Çift Sağ Ctrl basışında Emacs başlatma.
- Çift Copilot tuşu basışında Emacs başlatma. Copilot tuşu Linux'ta
F23(KEY_F23, kod193) olarak algılanır. - İlk çalıştırmada etkileşimli tuş seçimi.
- Komut satırından doğrudan mod seçimi.
- XDG autostart dosyası oluşturma.
- Harici Go paketi veya Python bağımlılığı olmadan Linux
input_eventkayıtlarını doğrudan okuma. - Yerleşik, donanım girdisi gerektirmeyen self-test.
- Linux.
- Go 1.19 veya daha yeni bir sürüm.
encoding/binary.NativeEndiankullanıldığı için daha eski Go sürümleri desteklenmez. - GNU Emacs'in
PATHiçinde erişilebilir olması. - Çalıştıran kullanıcının
/dev/input/event*aygıtlarını okuyabilmesi. Çoğu dağıtımda kullanıcıyıinputgrubuna eklemek gerekir:
sudo usermod -aG input "$USER"Grup değişikliğinin uygulanması için oturumu kapatıp yeniden açın. Bazı dağıtımlarda grup yerine yerel bir udev kuralı gerekebilir.
Proje dizininde aşağıdaki komutu çalıştırın:
go build -o emacs-go-right-way main.go setup_emacs.go setup_copilot.goBinary parametresiz başlatıldığında tuş modu sorulur:
./emacs-go-right-waySeçimi komut satırından doğrudan da yapabilirsiniz:
./emacs-go-right-way --key right-ctrl
./emacs-go-right-way --key copilotDinleyici çalışırken seçilen tuşa belirtilen süre içinde iki kez basılması Emacs'i başlatır. Sağ Ctrl için süre 400 ms, Copilot/F23 için 500 ms değerindedir. Durdurmak için Ctrl+C kullanın.
Seçilen modu masaüstü oturumunda otomatik başlatmak için:
./emacs-go-right-way --key right-ctrl --install
./emacs-go-right-way --key copilot --installKomut binary'yi ~/.local/bin/emacs-go-right-way yoluna kurar; ardından ~/.config/autostart/emacs-go-right-way.desktop dosyasını bu sabit binary yolunu kullanacak şekilde oluşturur veya günceller. Binary başka bir konuma taşınsa bile autostart girdisi bu nedenle bozulmaz. Değişikliğin devreye girmesi için oturumu kapatıp yeniden açın.
Donanım olaylarını okumadan yapılandırma ve Linux olay kaydı çözümlemesini denetlemek için:
./emacs-go-right-way --self-test
go vet main.go setup_emacs.go setup_copilot.goAraç Linux'a özeldir; /dev/input/event* arayüzünü kullanır. Dağıtımdan bağımsız bir binary üretilebilse de giriş aygıtı yetkileri, masaüstü oturumunun autostart desteği ve Emacs'in kurulu olması dağıtıma ve yerel yapılandırmaya bağlıdır.
setup_copilot_emacs.sh ve setup_emacs_shortcut.sh dosyaları önceki Ubuntu/Python yaklaşımını temsil eder. Güncel kullanım için Go binary'si tercih edilmelidir.
MIT License
Copyright (c) 2026 PSD Authors
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.