Bagaimana cara menjadikan Geany editor default saya di Ubuntu?

23

Saya sebenarnya ingin mengubah editor teks default pada Ubuntu 12.04 saya dari nano ke Geany. Ketika saya menggunakan kode ini:

update-alternatives --config editor

.. Saya tidak melihat Geany dalam daftar.

Jadi untuk menambahkan Geany, ini seharusnya berfungsi dengan benar?

update-alternatives --install /usr/bin/geany geany /usr/bin/geany 10

Juga, di samping catatan, dapatkah Anda memberi tahu saya jika Anda secara pribadi menyarankan saya untuk mengubah editor default dari nano ke Geany, dan mengapa?

Pemrograman Noob
sumber
@izx Tentu Saja :) Saya masih ingin tahu apa yang merupakan cara command-line melakukannya. Bagaimanapun, saya akan menandai jawaban Anda sebagai diterima :)
Pemrograman Noob

Jawaban:

16

Cara baris perintah adalah:

sudo update-alternatives --install /usr/bin/editor editor /usr/bin/geany 10

dan kemudian gunakan sudo update-alternatives --config editoruntuk memilih Geany jika perlu.

Sebagai alternatif grafis untuk metode baris perintah, pertimbangkan untuk menggunakan Alternatif Gnome ( sudo apt-get install galternatives). Jalankan GAlternatives , pilih editor di kolom kiri, dan kemudian tambahkan / pilih Geany di sebelah kanan.

ish
sumber
5
Saya melakukan itu dan Geany dipilih * 3 /usr/bin/geany 10 manual modetetapi ketika saya mencoba untuk membuka file teks dengan mengklik dua kali di Nautilus, itu masih terbuka dengan gedit.
Untuk Dilakukan
@ToDo Me juga. Bertanya-tanya bagaimana saya bisa membatalkan perintah itu.
14

Sebagai alternatif, ini juga berhasil bagi saya:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Baris ini mengambil semua mimeTypes gedit terdaftar untuk, melakukan pembersihan ( sedperintah) dan akhirnya menetapkan geany sebagai aplikasi default untuk mereka.

Saya menemukannya di sini bersama dengan banyak info berguna tentang skema warna.

Steve
sumber
1
Ini bekerja seperti pesona.
Faisal Sayed
1
Luar biasa! Tidak seperti jawaban yang diterima, solusi Anda sebenarnya bekerja untuk saya. Terima kasih! # 12.04
king_julien
Adakah ide bagaimana saya bisa membatalkan ini?
king_julien
Tidak tahu, tetapi lihat jawaban di bawah karena (yang lain) Steve telah melakukan pekerjaan yang luar biasa untuk menjelaskan apa yang sebenarnya dilakukan - Anda harus dapat merekayasa balik efek dari sana. Mengapa Anda membatalkannya? Ini merupakan solusi hebat bagi saya dan telah bekerja dengan sempurna bagi saya selama lebih dari 6 bulan ...
Steve
11

Ini agak terlambat, tapi saya pikir itu bisa membantu seseorang.

Masalah saya adalah saya tidak suka menyalin dan menempel hal-hal yang tidak saya mengerti, jadi inilah penjelasan dari jawaban sejauh ini.

Pertama dan terpenting, ada dua masalah di sini dan kedua jawabannya adalah, benar, benar:

  1. editor baris perintah default - diselesaikan oleh 'izx'
  2. asosiasi tipe file (tipe mime) di sesi desktop untuk aplikasi GUI - diselesaikan oleh 'Steve'.

Di sini, sedikit lebih detail:

  1. solusi baris perintah -dari 'izx'

    • menambahkan geany (aplikasi GUI) ke daftar editor alternatif dan menetapkannya sebagai default.
    • Saya selalu berpikir bahwa editor biasanya disediakan untuk editor berbasis teks seperti vi, vim, nano, dll, tetapi saya baru saja memeriksa dan ini sepertinya berfungsi juga.
    • hasilnya berarti Anda dapat memilih default Anda akan digunakan untuk membuka file ketika misalnya:
  2. solusi tipe-pantomim - dari 'Steve'

Pada level file, ada dua daftar penting:

/usr/share/applications/defaults.list - daftar standar sistem.

~/.local/share/applications/mimeapps.list - Daftar default sesi desktop pribadi pengguna

Apa yang dilakukan perintah?

Dari halaman manual xdg-mime (man xdg-mime)

xdg-mime - command line tool for querying information about file type handling and adding descriptions for new file type

The xdg-mime default...perintah menambahkan entri ke pengguna daftar pribadi.

Mari kita hancurkan perintahnya.

Perintah:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Perintah dapat dibaca sebagai:

atur geany.desktop sebagai aplikasi default untuk tipe mime yang dihasilkan oleh $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Melihat ke

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
  • mengambil semua tipe mime dari file geany.desktop
  • menghapus "MimeType ="
  • menggantikan ";" dengan ""
  • memberi kami:
    text/plain text/x-chdr text/x-csrc text/x-c++hdr text/x-c++src text/x-java text/x-dsrc text/x-pascal text/x-perl text/x-python application/x-php application/x-httpd-php3 application/x-httpd-php4 application/x-httpd-php5 application/xml text/html text/css text/x-sql text/x-diff

Melihat file pribadi pengguna setelah menjalankan perintah, kita dapat melihat semua asosiasi file yang ditetapkan untuk aplikasi geany.desktop:

[Default Applications]
x-scheme-handler/mailto=userapp-Thunderbird-ZP00XW.desktop
message/rfc822=userapp-Thunderbird-ZP00XW.desktop
application/x-extension-eml=userapp-Thunderbird-ZP00XW.desktop
application/x-perl=sublime_text.desktop
text/plain=geany.desktop
text/x-chdr=geany.desktop
text/x-csrc=geany.desktop
text/x-dtd=sublime_text.desktop
text/x-java=geany.desktop
text/mathml=sublime_text.desktop
text/x-python=geany.desktop
text/x-sql=geany.desktop
text/x-c++hdr=geany.desktop
text/x-c++src=geany.desktop
text/x-dsrc=geany.desktop
text/x-pascal=geany.desktop
text/x-perl=geany.desktop
application/x-php=geany.desktop
application/x-httpd-php3=geany.desktop
application/x-httpd-php4=geany.desktop
application/x-httpd-php5=geany.desktop
application/xml=geany.desktop
text/html=geany.desktop
text/css=geany.desktop
text/x-diff=geany.desktop

Mengetahui hal ini, inilah masalah khusus saya dan bagaimana saya menyelesaikannya.

Masalah:

Saya ingin mengubah aplikasi "pembukaan file" default di Nautilus dari "gedit" -> "teks sublim".

Larutan:

Temukan default sistem untuk gedit dengan:

$less /usr/share/applications/defaults.list | grep gedit
application/x-perl=gedit.desktop
text/plain=gedit.desktop
text/x-chdr=gedit.desktop
text/x-csrc=gedit.desktop
text/x-dtd=gedit.desktop
text/x-java=gedit.desktop
text/mathml=gedit.desktop
text/x-python=gedit.desktop
text/x-sql=gedit.desktop

Ganti "gedit" dengan "sublime_text" dan tambahkan entri ke bagian "Aplikasi Default" dari default pribadi saya. Daftar

application/x-perl=sublime_text.desktop
text/plain=sublime_text.desktop
text/x-chdr=sublime_text.desktop
text/x-csrc=sublime_text.desktop
text/x-dtd=sublime_text.desktop
text/x-java=sublime_text.desktop
text/mathml=sublime_text.desktop
text/x-python=sublime_text.desktop
text/x-sql=sublime_text.desktop
Steve-B
sumber
Ini sangat membantu tetapi Anda juga dapat mempertimbangkan untuk mengedit dan meningkatkan jawaban yang ada juga. Seringkali ini jauh lebih sedikit pekerjaan.
Tom Brossman
2
Poin bagus Tom, terima kasih. Saya selalu sedikit khawatir tentang mengedit jawaban orang. Saya akan menambahkan komentar ke jawaban yang diterima.
Steve-B
Jangan khawatir tentang mengedit posting orang lain di sini, itu diharapkan. Pengeditan akan ditinjau oleh rekan kerja sampai Anda mencapai 2000 rep, lalu mereka langsung melanjutkan. Menyimpan semua informasi yang baik dalam satu jawaban membuatnya mudah ditemukan nanti.
Tom Brossman
1

Karena ada komentar yang menunjukkan bahwa jawaban yang diterima itu tidak benar saya merasa saya harus menunjukkan pertanyaan ini tidak dapat memiliki jawaban tunggal. Jika pertanyaan diubah untuk menentukan CLI dan pertanyaan untuk GUI pindah ke utas baru, ini akan menghapus kebingungan. Terlambat untuk itu kurasa.

Pokoknya untuk nautilus (file alias) di gnome di bawah Ubuntu 14.04. Dan mengingat jawaban yang diterima, Anda mungkin (seperti yang saya lakukan) mengharapkan yang setara adalah:
donotdothisssudo update-alternatives --install /etc/alternatives/gnome-text-editor gnome-text-editor /usr/bin/geany 10

Itulah yang saya pikirkan dan itu merusak tautan, jadi jangan lakukan itu! Jika Anda melakukannya, ini adalah untuk saya:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit

Saat memperbaiki kesalahan ini, saya membuat ulang tautan ini sebagai berikut:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany

Karena semua yang telah saya lakukan adalah mengganti simlink sekunder, dan saya menginginkan respons di sistem saya, dugaan saya adalah bahwa tugasnya hanyalah ini:
sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor

Namun menjalankan perintah CLI untuk mengubah sesuatu yang spesifik GUI, pasti salah. Tempat di mana tangan saya membawa saya saat mencari opsi perubahan ini adalah sistem menu nautilus, di sebelah pengaturan jenis file individual. Namun satu-satunya alasan saya pergi ke sana adalah karena di situlah bagian dari solusinya. Dalam pandangan saya jika Anda telah mengikuti logika DPKG (pembaruan-alternatif), dan memasukkannya ke dalam distribusi Anda, maka Anda tidak ingin aplikasi ruang pengguna seperti Nautilus mengganggu aplikasi manajer pengaturan Anda. Saran sederhana saya untuk memperbaikinya adalah dengan menambahkan kontrol pengaturan editor baru ke pengaturan >> perincian >> aplikasi default, yang harus berupa halaman baru dari sudut pandang pengguna. Tim Nautilus kemudian perlu mengubah menunya sehingga pengguna diarahkan ke halaman baru itu. Ini akan kompromi di mana tangan saya telah mengambil saya untuk mencari pengaturan, di mana tangan saya 'seharusnya' mengambil saya sebagai gantinya dan mengelola proses entri titik tunggal ke dalam pengaturan sistem. Sepertinya perubahan ini perlu berada di dalam portternative debian, meskipun saya hanya menebak-nebak. Tentu saja tidak akan ada gunanya maju ke depan dengan hal semacam itu tanpa tim Nautilus setuju dengan gagasan itu, mereka juga perlu menentukan API atau mekanisme yang setara.

Halaman pengaturan dalam pandangan saya akan perlu mencakup pilihan editor gnome default dan aplikasi yang digunakan untuk membuka setiap file individu (yaitu untuk menggantikan fungsi saat ini yang disediakan oleh Nautilus).

Saya memposting ini sebagai pemikiran yang lewat, jangan ragu untuk mengarahkannya ke depan jika itu menarik bagi Anda. Sayangnya saya tidak tahu prosedur dan protokol yang diperlukan untuk melakukannya sendiri.

jim wotherspoon
sumber