Mengapa versi emacs terbaru tidak mendukung taskbar Windows 7?


23

Saya telah mengunduh emacs terbaru untuk Windows di sini , tetapi memulainya pada Windows 7 menunjukkan ikon bilah tugas yang mengabaikan klik kanan sehingga tidak dapat disematkan. Saya telah mencari di Google dan menemukan banyak laporan bug untuk emacs yang tidak mendukung bilah tugas Windows 7 dan bahwa itu adalah bug yang diperbaiki pada versi 23.1+. Versi saat ini adalah 23.3., Tapi saya masih tidak dapat menyematkan emacs ke taskbar Windows 7. Apa yang saya lakukan salah?

Jawaban:


15

Diskusi Emacs bug # 8268 menyarankan:

Setelah Anda menyematkan emacs.exe, edit properti (Anda dapat menggunakan shift-klik kanan) dan ubah jalur yang dapat dieksekusi untuk mengarahkan ke C: /this/is/your/path/to/runemacs.exe alih-alih C: /ini/is/Anda/path/ke/emacs.exe


4
Ini tidak akan berfungsi. Jika Anda melakukan seperti yang disarankan dan mengklik ikon yang disematkan, ikon kedua akan muncul yang akan berarti emacs.exe. Windows 7 taskbar memetakan aplikasi ke ikon di taskbar dengan membandingkan nama aplikasi yang dapat dieksekusi dengan "jalur yang dapat dieksekusi" ikon. Jadi menyematkan emacs.exe dan mengubah jalur yang dapat dieksekusi ke "runemacs.exe" sama dengan menyematkan "runemacs.exe" :(
grigoryvp

@harrymc maaf, lupa notifikasi saat masuk :)
grigoryvp

1
Pemberitahuan tersirat untuk jawaban sendiri.
harrymc

Juga, saya telah memeriksa diskusi bug # 8268. Di mana hanya ada satu orang di sini yang berpura-pura bahwa menyematkan runemacs.exe memungkinkan untuk memulai emacs dari taskbar tanpa tambahan jendela konsol atau ikon taskbar. Bagi orang lain ini tidak berfungsi. Saya dapat menyarankan orang tersebut menggunakan versi windows 7 non-standar (beta / diperiksa build / modifikasi kernel) atau memiliki modifikasi OS non-standar.
grigoryvp

1
Ini tidak berfungsi dengan baik pada Windows 10, tanpa tambahan jendela konsol atau ikon bilah tugas.
Svein Fidjestøl

33

Saya pikir saya telah menemukan cara meskipun saya tidak tahu mengapa itu bekerja ...

Alih-alih menyeret ikon emacs dari folder ke bilah tugas (yang akan menduplikasi ikon), buka 'runemacs.exe' tanpa ikon yang sudah ada di bilah tugas. Sekarang klik kanan pada ikon yang sudah berjalan di taskbar, dan sematkan itu ke taskbar. Untuk beberapa alasan pada PC saya, itu menghentikan duplikasi ikon. Sekarang lakukan pergeseran hal klik kanan dan ubah target dari emacs.exe ke runemacs.exe. Sekarang (setidaknya untuk saya) ikon Emacs berfungsi seperti yang diharapkan.

Jika ini tidak berhasil, coba tingkatkan Emacs. Misalnya, ini tidak bekerja untuk 22,3 tetapi untuk 24,3.


Petunjuk langkah demi langkah:

  1. Jalankan runemacs.exetanpa ikon yang sudah ada di bilah tugas.
  2. Klik kanan pada ikon Emacs yang sedang berjalan di taskbar, dan klik "sematkan program ini ke taskbar."
  3. Tutup Emacs
  4. Alih klik kanan pada ikon Emacs yang disematkan di bilah tugas, klik Properti, dan ubah target dari emacs.exemenjadi runemacs.exe.

4
Ini harus ditandai sebagai jawabannya!
Olegs Jeremejevs

Ini juga berfungsi untuk saya, 3ks.
Eastsun

Ini bekerja. Seharusnya jawabannya!
isakkarlsson

Ini persis sama dengan jawaban yang diterima.
harrymc

3
Bukan itu. Jawaban yang diterima mengasumsikan pengguna telah menyematkan emacs dari instance terbuka. Cara lain menyematkan emacs adalah dengan menyeret exe keluar dari folder dan 'set' ke taskbar. Metode pinning ini tidak akan berfungsi. Jawaban yang diterima hanya menentukan pengguna pin itu, bukan bagaimana pin itu.
falcojr

3

EmacsWiki menjelaskan masalah ini:

Saat Anda memulai program menggunakan pintasan yang disematkan ke bilah tugas, pintasan ditampilkan secara berbeda saat program sedang berjalan, tetapi tidak ada tombol bilah tugas baru yang ditampilkan. Jika Anda memulai program yang tidak disematkan ke bilah tugas, tombol bilah tugas baru dibuat. Ini berbeda dari versi Windows sebelumnya yang selalu membuat tombol bilah tugas untuk setiap jendela yang terbuka.

Ini tidak bekerja dengan emacs. Untuk menghilangkan jendela konsol, itu harus dimulai dengan runemacs. Ini berarti kita harus menyematkan runemacs.exe ke bilah tugas untuk memulai emacs. Namun ketika dijalankan, ia hanya menjalankan emacs.exe dan keluar. Windows akan mengenali bahwa ini adalah dua program yang berbeda dan tidak akan menyorot ikon yang disematkan dan akan membuat tombol baru untuk emacs.exe.

Solusi diajukan di sini :

Solusi saya adalah pin emacs.exe ke taskbar dan runemacs.exe ke menu mulai. Ketika saya ingin memulai Emacs saya harus menggunakan cara pintas di menu mulai saya, tetapi setelah itu berjalan saya hanya bisa menggunakan ikon taskbar seperti biasa. Ini berfungsi cukup baik bagi saya karena saya biasanya memulai Emacs sekali per sesi desktop dan kemudian biarkan berjalan ...


Sayangnya, ini tidak akan berfungsi untuk windows 7 dan emacs terbaru (23.3.1.). Saya baru saja menyematkan emacs.exe ke taskbar dan runemacs.exe untuk memulai menu dan memulai emacs melalui pintasan menu start - di mana ada dua ikon emacs pada taksbar saya :(. Satu disematkan dan mulai dari mulai menu. Dan di mana tidak ada cara untuk menyematkan yang benar-benar dimulai - mengabaikan klik kanan :(
grigoryvp

Coba mungkin menggunakan EmacsClient . Lihat tip ini .
harrymc

Bagaimana EmacsClient dapat membantu saya berinteraksi dengan taskbar? O_O Tentu saja saya dapat membuka dokumen melalui itu menggunakan emacs yang berjalan dalam mode server - tetapi masalah ikon taskbar tetap ada di taskbar :(.
grigoryvp

Sepertinya Win7 sama sekali tidak mendukung pemisahan Emacs menjadi 2 program. Sudahkah Anda melihat garpu alternatif, seperti XEmacs ?
harrymc

1
Seseorang perlu menggabungkan runemacs.exe dan emacs.exe menjadi satu yang dapat dieksekusi (yang merupakan niat yang diumumkan ntemacs ketika memulai proyeknya).
harrymc

0

Ini lebih merupakan solusi, tetapi tidak ada jawaban lain yang cocok untuk saya.

Klik kanan runemacs.exedan sematkan ke menu Mulai daripada bilah tugas.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.