Saya menggunakan beberapa mode minor dan biasanya saya tahu mode minor mana yang diaktifkan di setiap mode utama. Jika saya benar-benar ingin melihat daftar lengkapnya, saya bisa lari C-h v minor-mode-list.
Pada saat yang sama, garis mode saya menjadi sangat tersumbat, jadi ketika saya membagi bingkai secara vertikal, kadang-kadang saya tidak bisa membaca akhir dari garis mode.
Pertanyaan aktual: bagaimana cara menonaktifkan tampilan daftar mode minor di baris mode? Misalnya, sekarang mungkin terlihat seperti ini:
-:--- main.c All (7,12) (C/l FlyC SScr Abbrev Fill) [main] 16:19 0.45
Saya ingin terlihat lebih ringkas:
-:--- main.c All (7,12) (C/l) [main] 16:19
mode-line
minor-mode
Mark Karpov
sumber
sumber
Jawaban:
Mode redup (tersedia dalam Melpa) akan melakukan ini.
sumber
(diminish 'projectile-mode "p")
(eval-after-load "filladapt" '(diminish 'filladapt-mode))
(menggunakan contoh dari Wiki Emacs) dan tidak hanya(diminish 'filladapt-mode)
seperti yang disarankan oleh jawabannya. Anda hanya dapat menggunakan versi singkat jika mode dijamin sudah dimuat.Sebagai mbork berkomentar, Anda dapat menggunakan delight.el untuk secara selektif memodifikasi atau menonaktifkan teks mode minor (dan memang utama) di baris mode.
Salah satu kelebihannya adalah bahwa hal itu membutuhkan perawatan
eval-after-load
(yang perlu Anda tulis secara manual dengan diminish.el dalam kebanyakan kasus penggunaan), yang menjadikan konfigurasi lebih bersih. Anda masih memerlukan informasi yang sama - nama mode, dan perpustakaan yang mengimplementasikannya (yang Emacs akan memberi tahu Anda jika Anda bertanya tentang mode) - tetapi Anda dapat membungkus semuanya menjadi satu bentuk:(Atau ikuti tautan di atas untuk beberapa contoh penggunaan nyata.)
Saya akan merekomendasikan mengambil pendekatan ini, karena bahkan jika Anda tidak ingin teks ringan mode paling kecil, ada kemungkinan besar Anda akan menemukan beberapa dari mereka berguna (dan Anda masih dapat memodifikasi yang lebih pendek).
Jika Anda benar-benar ingin menghilangkan semua teks ringan mode minor (dan sekali lagi, saya tidak merekomendasikannya), Anda dapat memodifikasi
mode-line-modes
variabel. Variabel baris mode berubah beberapa waktu lalu, jadi Anda mungkin ingin menggunakanM-x find-variable RET mode-line-modes RET
dan kemudian secara manual menyesuaikan definisi default Anda, mengedit bagian yang terkaitminor-modes-alist
.Tentu saja Anda harus mempertahankannya, yang tidak terlalu cepat, jadi Anda mungkin lebih suka mengganti
minor-mode-alist
simbol di dalam nilai yang ada. Berikut ini agak spesifik implementasi, tetapi tentu saja lebih baik daripada pengaturanmode-line-modes
secara keseluruhan, dan Anda dapat mengaktifkan dan menonaktifkannya.sumber
load-path
danrequire
. Saya dulu 'menginstal' semua paket Emacs dengan cara ini ketika saya mulai menggunakannya setahun yang lalu.delight
ke MELPA.delight
ada di GNU ELPA hari ini, dan tidak di MELPA (disebutkan kalau-kalau ada yang bingung dengan komentar sebelumnya).Gunakan Rich-minoritas dengan konfigurasi:
Saya juga memiliki pemikiran seperti Anda, tetapi saya mempersingkat garis mode lebih paranoid :
Sekarang, saya selalu dapat melihat pemberitahuan mode Twittering dan timer mode-Org: D
sumber
Inilah yang bekerja untuk saya:
Berkat komentar Drew , saya telah meningkatkan realisasi solusi ini. Sekarang menggunakan manfaat daftar asosiasi dan harus sedikit lebih efisien ;-)
sumber
minor-mode-alist
menjadi alist adalah bahwa entri dapat ditambahkan dan dihapus di kepala bayangan dan entri unshadow lebih bawah daftar yang memiliki kunci yang sama. Jika Anda ingin melakukan hal-hal yang Anda lakukan, ubah saja entri pertama (ditemukan menggunakanassoc
, ubah gunakansetcar
dll.) Untuk setiap tombol, sehingga Anda tidak kehilangan fitur bermanfaat yang dimaksudkan ini.Saya akan melemparkan solusi saya untuk ini ke atas ring juga:
modeline-set-lighter
memungkinkan Anda untuk mengatur pemantik dari mode minor ke string apa pun yang Anda suka.modeline-remove-lighter
memungkinkan Anda untuk menghapus pemantik mode minor sepenuhnya.Kemudian, pada akhir file init saya, saya hanya memanggil fungsi-fungsi ini untuk mode minor yang pemantiknya ingin saya ubah:
sumber
Anda juga dapat menghapus semua mode minor, dengan cara berikut:
Ini juga akan bekerja untuk mode minor yang didefinisikan di masa depan, karena hanya benar-benar menghapus penggunaan
minor-mode-alist
darimode-line-format
.sumber
Perlu dicatat bahwa
use-package
dukungan berkurang dan menyenangkan . Jika Anda menggunakannya untuk mengelola paket Anda, Anda dapat menyembunyikan mode minor di baris mode dengan menambahkan kata kunci: diminish atau: delight.sumber
Saya tidak melihat titik menginstal ekstensi bernama mewah untuk sesuatu yang sederhana seperti:
Sebagai contoh:
Anda dapat melakukan segala hal dengan cara ini. Mengganti teks sudah jelas dari atas. Juga, misalnya, untuk menempatkan mode flymake di awal daftar:
sumber