Văn bản tuyệt vời không hiển thị trong Nautilus, mở bằng menu


57

Tôi đang chạy Ubuntu 15.10.

Của tôi /usr/share/applications/sublime_text.desktopchứa như sau:

[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text editor for code, markup and prose
Exec=/opt/sublime_text/sublime_text %F
Terminal=false
MimeType=text/plain;
Icon=sublime-text
Categories=TextEditor;Development;
StartupNotify=true
Actions=Window;Document;

[Desktop Action Window]
Name=New Window
Exec=/opt/sublime_text/sublime_text -n
OnlyShowIn=Unity;

[Desktop Action Document]
Name=New File
Exec=/opt/sublime_text/sublime_text --command new_file
OnlyShowIn=Unity;

Khi tôi nhấp chuột phải vào tệp đánh dấu ( xxx.md) trong Tệp Gnome (trước đây là "Nautilus"), tôi không thể xem "Văn bản cao siêu" là một lựa chọn, ngay cả khi tôi chọn "Xem tất cả ứng dụng".

Tôi thậm chí đã thử thêm %Fvào các dòng Exec=/opt/sublime_text/sublime_text -nExec=/opt/sublime_text/sublime_text --command new_filetrong [Desktop Action Window][Desktop Action Document], tương ứng, nhưng nó không thay đổi bất cứ điều gì.

Tôi thậm chí đã chạy sudo update-desktop-database.

Tôi đang làm gì sai?


Phiên bản nào của Sublime bạn đang chạy và bạn đã cài đặt nó như thế nào? Bạn đã thêm nó vào /usr/share/applications/defaults.listvà thay thế tất cả các gedit.desktopmục?
MattDMo

Tôi đang chạy Sublime Text v3 (bản dựng 3103) cho x64 được cài đặt dưới dạng tệp .deb. Tôi đã không chỉnh sửa defaults.listhoặc gedit.desktop. Những tập tin đó nên chứa gì?
Ralph

1
Markdown không có loại MIME text/plain, là loại duy nhất được đăng ký trong tệp máy tính để bàn này.
David Foerster

Câu trả lời:


124

Sao chép nội dung của /usr/share/applications/sublime_text.desktopđể~/.local/share/applications/sublime_text.desktop

Hoặc đơn giản là sử dụng:

cp -it ~/.local/share/applications /usr/share/applications/sublime_text.desktop

Sau đó, trong loại thiết bị đầu cuối: sudo update-desktop-database


6
Giải pháp tuyệt vời. Sẽ thật tốt nếu bạn cũng đưa ra lời giải thích về lý do tại sao điều này hoạt động.
padawanTony

1
@padawanTony Có bộ đệm cho các loại tệp (loại MIME) trong Ubuntu và mỗi loại MIME có các ứng dụng liên quan. Sao chép các bản sao tệp qua sublime_text.desktoptệp chính xác có thể liên quan đến các tệp văn bản (chứa dòng MimeType=text/plain;mà tệp mặc định trong thư mục cục bộ không chứa). Sau đó, thực thi lệnh sudo sẽ cập nhật bộ đệm MIME (đọc trong tệp .desktop được cập nhật) và mối quan hệ sẽ xuất hiện trong menu ngữ cảnh. Tôi không thể không may nói lý do tại sao chúng tôi có tệp .desktop buggy dưới .local ở vị trí đầu tiên.
MF.OX

Đơn giản chỉ cần xóa mục sublime lòng.desktop khỏi thư mục cục bộ sau đó cũng hoạt động? Hệ điều hành thường tạo một bản sao mới của nó?
minitauros

@agustaf, tôi đang sử dụng Ubuntu 16.04 nhưng /.local/thư mục không được định vị, bạn có thể vui lòng giúp đỡ không
SagarPPanchal

@SagarPPanchal Bạn có thể thử tạo nó với mkdir -p ~/.local/share/applicationsvà xem nếu sao chép tệp qua vẫn hoạt động. Nếu điều đó không hiệu quả, bạn có thể muốn gửi một câu hỏi mới.
agustaf

7

Tôi đã thử tất cả các tùy chọn như được đề cập trong các câu trả lời khác. Nhưng, bằng cách nào đó, nó không giúp tôi (tôi đang sử dụng Ubuntu 16.04 và đã cài đặt Sublime-text_build-3126_amd64).

Tôi thấy vấn đề này chỉ xảy ra trong hệ thống của mình khi tôi cài đặt trình soạn thảo Sublime bằng gói (sublime-text_build-3126_amd64.deb) được tải xuống từ trang web. Tuy nhiên, cài đặt Sublime từ thiết bị đầu cuối giải quyết vấn đề này.

Tôi vẫn chưa hiểu được về mặt kỹ thuật tại sao có sự khác biệt trong hành vi ứng dụng giữa 2 chế độ cài đặt của nó. Tuy nhiên, vì nó hoạt động với tôi, tôi đang chia sẻ nó ở đây để nó có thể hữu ích cho những người khác. Thay thế làm việc là:

  1. Gỡ cài đặt gói tuyệt vời hiện có. Sử dụng Synaptic Pkg Mgr và thực hiện loại bỏ hoàn toàn.
  2. Cài đặt cao siêu bằng cách sử dụng các lệnh:

    Đối với Sublime-Text-2:

    sudo add-apt-repository ppa:webupd8team/sublime-text-2
    sudo apt-get update
    sudo apt-get install sublime-text
    

    Đối với Sublime-Text-3:

    sudo add-apt-repository ppa:webupd8team/sublime-text-3
    sudo apt-get update
    sudo apt-get install sublime-text-installer
    

    Nhập subllệnh để bắt đầu ngay lập tức.

  3. Nhấp chuột phải vào tệp bạn muốn mở trong trình chỉnh sửa Sublime. Bây giờ, bạn có thể tìm thấy ứng dụng "Sublime text" được liệt kê trong menu. Ngoài ra, bạn có thể đặt trình chỉnh sửa làm mặc định cho loại tệp bằng cách đặt nó trong thuộc tính của tệp.

Cảm ơn!:)


7

Trong trường hợp một bộ đệm cũ làm điều gì đó sai, chỉ cần xóa nó và để một hệ thống tạo một cái mới cho bạn.

rm ~/.local/share/applications/sublime_text.desktop

Nó làm việc cho tôi.


2

Chỉ làm điều này nếu bạn đã cài đặt văn bản cao siêu bằng cách sử dụng 'Ubuntu Make' (umake) . Ubuntu Make (umake) giúp cài đặt và cập nhật các công cụ dành cho nhà phát triển dễ dàng hơn. Nhập cái này vào terminal.

cat ~/.local/share/applications/sublime-text.desktop

Nội dung của tệp sublime-text.desktop sẽ được hiển thị. Lưu ý dòng sau trong tệp:

Exec=/home/ja9/.local/share/umake/ide/sublime-text/sublime_text

Bạn cần thay đổi dòng đó. Thể loại:

sudo nano ~/.local/share/applications/sublime-text.desktop

Trình chỉnh sửa văn bản nano được mở, chỉnh sửa dòng đó thành

Exec="/home/ja9/.local/share/umake/ide/sublime-text/sublime_text" %F

Hãy chắc chắn rằng bạn đã gõ vốn F , không nhỏ. Nhấn 'Ctrl + O'. Nhấn Enter'. Nhấn 'Ctrl + X'. Thể loại:

sudo update-desktop-database

Vấn đề được giải quyết :), nếu không, khởi động lại hệ thống. Lưu ý: nano rất tốt để chỉnh sửa, hãy dùng thử (thử)


0

Mở /usr/share/applications/defaults.list(một liên kết tượng trưng /etc/gnome/defaults.listtrên hệ thống của tôi) trong Sublime và thay thế tất cả các trường hợp gedit.desktopbằng sublime_text.desktop. Lưu tệp và khởi động lại máy tính của bạn - có thể đủ để đăng xuất và đăng nhập lại, nhưng tôi nghi ngờ bạn sẽ cần thoát hoàn toàn Gnome để cài đặt được tải lại. Khi bạn đã đăng nhập lại, Sublime Text sẽ được liệt kê trong menu chuột phải làm lựa chọn mặc định cho các tệp Markdown và nó cũng sẽ nằm trong menu "Mở bằng" cho tất cả các loại tệp có thể được mở trong một soạn thảo văn bản.

BIÊN TẬP:

Dưới đây là nội dung hiện tại của tôi /usr/share/applications/sublime_text.desktop:

[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text editor for code, markup and prose
Exec=/opt/sublime_text/sublime_text %F
Terminal=false
MimeType=text/plain;
Icon=sublime-text
Categories=TextEditor;Development;
StartupNotify=true
Actions=Window;Document;

[Desktop Action Window]
Name=New Window
Exec=/opt/sublime_text/sublime_text -n
OnlyShowIn=Unity;

[Desktop Action Document]
Name=New File
Exec=/opt/sublime_text/sublime_text --command new_file
OnlyShowIn=Unity;

Vẫn không có niềm vui. Phải có một cái gì đó buồn cười về cài đặt Sublime Text của tôi. Tôi đã so sánh các .desktoptập tin với một Atom, và không có sự khác biệt đáng kể, nhưng Atomxuất hiện trong open withdanh sách.
Ralph

@Ralph rất lạ. Tôi vừa chỉnh sửa câu trả lời của tôi với nội dung hiện tại của tôi sublime_text.desktop, và nó trông giống hệt như câu hỏi trong câu hỏi của bạn. Đề nghị tiếp theo của tôi sẽ là gỡ cài đặt hoàn toàn Sublime (bạn có thể để lại ~/.config/sublime-text-3) và cài đặt lại nó mới. Kiểm tra /usr/share/applications/defaults.listlại một lần nữa để đảm bảo tất cả các mục gedit(và có lẽ atomlà tốt?) Đã được thay thế bằng sublime_text, sau đó khởi động lại và thử lại.
MattDMo
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.