Làm cách nào để biến Geany thành trình chỉnh sửa mặc định của tôi trên Ubuntu?


23

Tôi thực sự muốn thay đổi trình soạn thảo văn bản mặc định trên Ubuntu 12.04 của tôi từ nano sang Geany. Khi tôi sử dụng mã này:

update-alternatives --config editor

.. Tôi không thấy Geany trong danh sách.

Vì vậy, để thêm Geany, điều này được cho là hoạt động phải không?

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

Ngoài ra, ở một ghi chú bên cạnh, bạn có thể cho tôi biết nếu bạn muốn đề nghị tôi thay đổi trình chỉnh sửa mặc định từ nano sang Geany không, và tại sao?


@izx Hoàn toàn :) Tôi vẫn muốn biết cách thực hiện dòng lệnh là gì. Bất kể, tôi sẽ đánh dấu câu trả lời của bạn là được chấp nhận :)
Lập trình Noob

Câu trả lời:


16

Cách dòng lệnh là:

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

và sau đó sử dụng sudo update-alternatives --config editorđể chọn Geany nếu cần thiết.

Là một thay thế đồ họa cho phương pháp dòng lệnh, hãy xem xét sử dụng Gnome Altern Altern ( sudo apt-get install galternatives). Chạy GAlternigin , chọn trình soạn thảo ở cột bên trái, sau đó thêm / chọn Geany ở bên phải.


5
Tôi đã làm điều đó và Geany được chọn * 3 /usr/bin/geany 10 manual modenhưng khi tôi cố gắng mở tệp văn bản bằng cách nhấp đúp vào tệp đó trong Nautilus, nó vẫn mở bằng gedit.
Làm

@ToDo tôi cũng vậy. Tự hỏi làm thế nào để tôi có thể hoàn tác các lệnh đó.

14

Thay vào đó, điều này cũng làm việc cho tôi:

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

Dòng này tìm nạp tất cả gedit MimeTypes đã được đăng ký, thực hiện một số dọn dẹp (các sedlệnh) và cuối cùng đặt geany làm ứng dụng mặc định cho chúng.

Tôi tìm thấy nó ở đây cùng với một loạt các thông tin hữu ích về bảng màu.


1
Điều này làm việc như một nét duyên dáng.
Faisal đã nói

1
Tuyệt vời! Không giống như câu trả lời được chấp nhận, giải pháp của bạn thực sự hiệu quả với tôi. Cảm ơn! # 12.04
king_julien

Bất cứ ý tưởng làm thế nào tôi có thể hoàn tác điều này?
king_julien

Không có ý tưởng, nhưng hãy nhìn vào câu trả lời dưới đây bởi vì (người kia) Steve đã làm rất tốt khi giải thích điều này thực sự làm gì - bạn sẽ có thể đảo ngược các hiệu ứng từ đó. Tại sao bạn hoàn tác nó? Đó là một giải pháp tuyệt vời cho tôi và đã làm việc hoàn hảo với tôi trong hơn 6 tháng ...
Steve

11

Điều này hơi muộn nhưng tôi nghĩ nó có thể giúp được ai đó.

Vấn đề của tôi là tôi không muốn sao chép và dán những thứ tôi không hiểu, vì vậy đây là lời giải thích cho câu trả lời cho đến nay.

Đầu tiên và quan trọng nhất, có hai vấn đề ở đây và cả hai câu trả lời đều đúng, đúng:

  1. trình soạn thảo dòng lệnh mặc định - được giải quyết bằng 'izx'
  2. liên kết loại tệp (loại mime) trong phiên máy tính để bàn cho các ứng dụng GUI - được giải quyết bằng 'Steve'.

Ở đây chi tiết hơn một chút:

  1. giải pháp dòng lệnh - từ 'izx'

    • thêm geany (một ứng dụng GUI) vào danh sách soạn thảo thay thế và đặt nó làm mặc định.
    • Tôi luôn nghĩ rằng trình soạn thảo thường được dành riêng cho các biên tập viên dựa trên văn bản như vi, vim, nano, v.v., nhưng tôi vừa kiểm tra và điều này dường như cũng hoạt động tốt.
    • kết quả có nghĩa là bạn có thể mặc định đã chọn sẽ được sử dụng để mở tệp khi ví dụ:
  2. giải pháp kiểu mime - từ 'Steve'

Ở cấp độ tập tin, có hai danh sách quan trọng:

/usr/share/applications/defaults.list - danh sách mặc định hệ thống.

~/.local/share/applications/mimeapps.list - danh sách mặc định phiên máy tính cá nhân của người dùng

Lệnh làm gì?

Từ trang người đàn ông xdg-mime (người đàn ông xdg-mime)

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

Các xdg-mime default...lệnh bổ sung thêm các mục vào danh sách người dùng cá nhân.

Hãy phá vỡ lệnh.

Chỉ huy:

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

Lệnh có thể được đọc là:

đặt geany.desktop làm ứng dụng mặc định cho loại mime được xuất ra bởi $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Nhìn

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
  • lấy tất cả các loại mime từ tệp geany.desktop
  • xóa "MimeType ="
  • thay thế ";" với " "
  • cho chúng tôi:
    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

Nhìn vào tệp cá nhân của người dùng sau khi chạy lệnh, chúng ta có thể thấy tất cả các liên kết tệp được đặt cho ứng dụng 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

Biết điều này, đây là vấn đề cụ thể của tôi và cách tôi giải quyết nó.

Vấn đề:

Tôi muốn thay đổi ứng dụng "mở tệp" mặc định trong Nautilus từ "gedit" -> "văn bản cao siêu".

Dung dịch:

Tìm mặc định hệ thống cho gedit với:

$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

Thay thế "gedit" bằng "sublime lòng" và thêm các mục vào phần "Ứng dụng mặc định" trong danh sách mặc định cá nhân của tôi.

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

Điều này rất hữu ích nhưng bạn cũng có thể xem xét chỉnh sửa và cải thiện các câu trả lời hiện có. Nó thường làm việc ít hơn nhiều.
Tom Brossman

2
Tom tốt, cảm ơn. Tôi luôn e ngại một chút về việc chỉnh sửa câu trả lời của mọi người. Tôi sẽ thêm một bình luận cho câu trả lời được chấp nhận.
Steve-B

Đừng lo lắng về việc chỉnh sửa bài đăng của người khác ở đây, nó được mong đợi. Chỉnh sửa được đánh giá ngang hàng cho đến khi bạn đạt 2000 rep, sau đó chúng đi thẳng qua. Giữ tất cả các thông tin tốt trong một câu trả lời giúp bạn dễ dàng tìm thấy sau này.
Tom Brossman

1

Bởi vì có những bình luận chỉ ra rằng câu trả lời được chấp nhận là không chính xác, tôi cảm thấy tôi nên chỉ ra câu hỏi này không thể có một câu trả lời. Nếu câu hỏi đã được thay đổi để chỉ định CLI và các truy vấn cho GUI được chuyển sang một luồng mới, điều này sẽ xóa tan sự nhầm lẫn. Quá muộn cho điều đó tôi đoán.

Dù sao cho nautilus (còn gọi là tệp) trên gnome trong Ubuntu 14.04. Và đưa ra câu trả lời được chấp nhận, bạn có thể (như tôi đã làm) mong đợi tương đương sẽ là:
donotdothisssudo update-alternatives --install /etc/alternatives/gnome-text-editor gnome-text-editor /usr/bin/geany 10

Đó là những gì tôi nghĩ và nó đã phá vỡ các liên kết, vì vậy đừng làm điều đó! Nếu bạn đã làm, đây là những gì họ đã cho tôi:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit

Trong khi sửa lỗi này, tôi đã tạo lại các liên kết này như sau:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany

Như tất cả những gì tôi đã làm là thay thế simlink thứ cấp và tôi đã có phản hồi mong muốn trong hệ thống của mình, tôi đoán rằng nhiệm vụ chỉ đơn giản là thế này:
sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor

Tuy nhiên, việc chạy lệnh CLI để thay đổi một cái gì đó cụ thể về GUI, phải sai. Nơi tay tôi đưa tôi khi tìm kiếm tùy chọn thay đổi này là hệ thống menu nautilus, bên cạnh cài đặt loại tệp riêng lẻ. Tuy nhiên lý do duy nhất mà tôi đến đó là vì đó là một phần của giải pháp. Theo quan điểm của tôi, nếu bạn đã tuân theo logic của DPKG (các lựa chọn thay thế cập nhật) và đưa nó vào bản phân phối thì bạn không muốn một ứng dụng không gian người dùng như Nautilus can thiệp vào ứng dụng trình quản lý cài đặt của bạn. Đề nghị khiêm tốn của tôi để khắc phục điều này sẽ là thêm điều khiển cài đặt trình chỉnh sửa mới vào cài đặt >> chi tiết >> ứng dụng mặc định, cần phải là một trang mới theo quan điểm của người dùng. Nhóm Nautilus sau đó sẽ cần thay đổi menu để người dùng được chuyển hướng đến trang mới đó. Điều này sẽ thỏa hiệp khi tay tôi đưa tôi đi tìm cài đặt, nơi tay tôi 'nên' đưa tôi thay thế và quản lý một quy trình nhập điểm duy nhất vào cài đặt hệ thống. Có vẻ như sự thay đổi này sẽ cần phải nằm trong cảng của các thiên hà của debian, mặc dù tôi chỉ đoán. Tất nhiên, sẽ không có điểm nào được tính trước với loại điều đó nếu không có nhóm Nautilus trên tàu với ý tưởng, họ cũng sẽ cần chỉ định API hoặc cơ chế tương đương.

Trang cài đặt trong chế độ xem của tôi sẽ cần bao gồm cả lựa chọn trình chỉnh sửa gnome mặc định và ứng dụng được sử dụng để mở từng tệp riêng lẻ (để thay thế chức năng hiện tại do Nautilus cung cấp).

Tôi đăng bài này như một ý nghĩ thoáng qua, cứ thoải mái lái nó về phía trước nếu nó hấp dẫn bạn. Đáng buồn là tôi không biết thủ tục và giao thức cần thiết để làm như vậy bản thân mình.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.