Sublime Text: Файл остается на вкладке даже после удаления

Когда я удалю файл, который мне больше не нужен, но затем мне нужно закрыть вкладку вручную. Это раздражает.

Каждый раз я должен удалить файл, а затем закрыть вкладку, подтвердив изменения сбрасывания.

Есть ли способ удалить файл одним выстрелом.

Обратите внимание: это происходит на моем ноутбуке MacBook.

Ответ 1

Я не на 100% не разбираюсь в деталях вашего вопроса. Извините, если этот ответ не соответствует тому, что вы пытаетесь спросить.

Предполагая, что вы не уже открыли файл, это поведение является побочным эффектом выбора для предварительного просмотра файла при нажатии.

Если это вариант использования, о котором вы спрашиваете, тогда есть ответ.

Если вы посмотрите Preferences -> Settings - Default и выполните поиск preview, вы должны найти это:

// Preview file contents when clicking on a file in the side bar. Double
// clicking or editing the preview will open the file and assign it a tab.
"preview_on_click": true,

Это означает, что нажатие на файл для удаления приведет к его открытию для предварительного просмотра и после удаления файла вам также потребуется закрыть вкладку предварительного просмотра.

Если вы хотите изменить это поведение, откройте этот файл Preferences -> Settings - User и добавьте эту строку:

"preview_on_click": false,

Тогда вы не должны открывать предварительный просмотр и, следовательно, его не нужно будет закрывать после удаления файла.

Если у вас уже есть файл, который вы удаляете для редактирования, это будет не привести к поведению, которое вы ищете.

Ответ 2

Если вы используете плагин Side Bar Enhancements, для этого есть опция:

{
    "close_affected_buffers_when_deleting_even_if_dirty": true
}

Обязательно добавьте это в правильный файл настроек:

Настройки > Настройки Пакета → Боковая панель

Ответ 3

Есть проблема, поэтому, чтобы не делать ответ только для ссылок, я просто вставляю здесь основную информацию:

Вопрос Sublime Forum: закрыть вкладку после удаления файла?

Sublime Forum: https://www.sublimetext.com/forum/viewtopic.php?f=2&t=11686

Ответ на Sublime Forum:

Вы можете сделать это с помощью плагина. Я не очень много испытал это, поэтому вы возможно, сначала захочется протестировать на некритичном материале. Он просто закрывает так что худший случай заключается в том, что вы теряете какую-то существующую работу. Это сказал, я уверен, что все в порядке.

import sublime_plugin
import os
class MyEvents(sublime_plugin.EventListener):
    def on_activated(self, view):
        if view.file_name():
            if not os.path.exists(view.file_name()):
                view.set_scratch(True)
                view.window().run_command("close")

Ответ 5

Меня это так раздражало, я создал для него плагин

https://gist.github.com/michaelkonecny/bb5a0d1cf43698c0ebe8673f92324ea3

Просто скачайте файл close_deleted_files.py и сохраните его. %AppData%\Roaming\Sublime Text 3\Packages\User (или аналогичный путь на Mac).

Вот как работает плагин: всякий раз, когда представление сфокусировано, оно проходит через имена файлов всех вкладок в этом окне и закрывает те, чьи файлы не существуют.