Возвышенный текст 3 не работает
Обновлено: 21.11.2024
Sublime Text 3 (ST3) – это легкий кроссплатформенный редактор кода, известный своей скоростью, простотой использования и сильной поддержкой сообщества. Это невероятный редактор прямо из коробки, но настоящая сила заключается в возможности расширить его функциональность с помощью управления пакетами и создания пользовательских настроек.
В этой статье мы рассмотрим, как настроить Sublime Text для полноценной разработки Python (от начала до конца), расширить базовые функции с помощью пользовательских тем и пакетов, а также использовать многие команды, функции и ключевые слова. ярлыки, которые делают ST3 таким мощным.
Примечание. В этом руководстве предполагается, что вы используете Mac и знакомы с терминалом. Если вы используете Windows или Linux, многие команды будут отличаться, но вы должны иметь возможность использовать Google, чтобы быстро найти ответы, учитывая информацию в этом руководстве.
Прежде чем мы начнем, давайте уточним, что именно я имею в виду под «полным стеком».
В современном мире HTML5 и разработки мобильных приложений JavaScript буквально везде. ГДЕ УГОДНО. Python в сочетании с такими фреймворками, как Django или Flask, недостаточно. Чтобы действительно разработать веб-сайт от начала до конца, вы должны быть знакомы с JavaScript (и различными средами JavaScript), REST API, адаптивным дизайном и, конечно же, HTML и CSS и т. д.
Давайте посмотрим правде в глаза: как программист вы ничем не отличается от любого другого ремесленника. Если вы хотите быть лучшим, чем вы можете быть, вам нужно, чтобы ваши инструменты были острыми. Ваша среда разработки должна быть настроена для полной разработки, что мы и собираемся сделать прямо сейчас.
Бесплатный бонус: 5 настроек Sublime Text для повышения производительности Python, бесплатный курс, который покажет вам, как оптимизировать настройку разработки Python.
Возможности
Начнем с некоторых стандартных функций Sublime Text 3:
Раздельные макеты позволяют размещать файлы на различных разделенных экранах. Это полезно, когда вы занимаетесь разработкой через тестирование (код Python на одном экране, тестовые скрипты на другом) или работаете над внешним интерфейсом (HTML на одном экране, CSS и/или JavaScript на другом).
Режим Vintage предоставляет вам команды vi для использования в ST3.
Примечание. Вы также можете создавать собственные фрагменты: Инструменты > Новый фрагмент. Обратитесь за помощью к документации, а также ознакомьтесь с некоторыми из моих фрагментов здесь.
Настройка Sublime Text 3
После загрузки ST3 вы можете настроить его.
Установите инструмент командной строки subl
Точно так же, как в TextMate есть команда mate, в Sublime Text есть инструмент командной строки под названием subl, который позволяет открывать один файл или целый каталог файлов и папок из терминала.
Чтобы включить эту команду, создайте символическую ссылку на двоичный файл subl:
Убедитесь, что ссылка работает, открыв Sublime:
Если это не сработало, возможно, вам нужно добавить /bin к вашему пути:
Повторите первый шаг.
Примечание. Если у вас по-прежнему возникают проблемы, ознакомьтесь с этой статьей. Вы также можете прочитать о создании символических ссылок в Windows и Linux.
Теперь вы можете открыть файл или каталог, используя следующие команды:
Если в пути есть пробелы, вы должны заключить весь путь в двойные кавычки:
Чтобы просмотреть все команды, откройте файл справки:
Установить управление пакетами
Чтобы воспользоваться преимуществами различных пакетов для расширения функциональности Sublime, вам необходимо вручную установить менеджер пакетов под названием Package Control. Установив его, вы можете использовать его для установки, удаления и обновления всех других пакетов ST3.
- Для установки скопируйте код Python для Sublime Text 3, который можно найти здесь. Щелкните Вид > Показать консоль, чтобы открыть консоль ST3. Вставьте код в консоль. Нажмите Ввод . Перезагрузите ST3.
- Теперь вы можете устанавливать пакеты, используя сочетание клавиш Cmd + Shift + P. Начните вводить install, пока не появится Package Control: Install Package. Нажмите Enter и найдите доступные пакеты.
Вот некоторые другие соответствующие команды:
- Список пакетов показывает все установленные вами пакеты.
- Удалить пакет — удаляет определенный пакет.
- Обновление пакета — обновление определенного пакета.
- Обновить/перезаписать все пакеты обновляет все установленные пакеты.
Ознакомьтесь с официальной документацией, чтобы просмотреть дополнительные команды.
Создать файл пользовательских настроек
Вы можете полностью настроить Sublime Text с помощью файлов настроек на основе JSON, поэтому ваши индивидуальные настройки легко перенести или синхронизировать с другой системой. Во-первых, нам нужно создать наши индивидуальные настройки. Лучше всего создать базовый файл для всех сред, а также файлы настроек для конкретного языка.
Чтобы настроить базовый файл, нажмите Sublime Text > «Настройки» > «Настройки» — «Пользователь». Добавьте в файл пустой объект JSON и добавьте свои настройки следующим образом:
- Чтобы настроить параметры для конкретного языка, нажмите Sublime Text > «Настройки» > «Настройки» — «Дополнительно» > «Специфический синтаксис» — «Пользователь». Затем сохраните файл в следующем формате: LANGUAGE.sublime-settings. Для настроек, специфичных для Python, сохраните файл как Python.sublime-settings.
- Очевидно, что вы можете настроить параметры по своему вкусу. Однако я настоятельно рекомендую начать с моих базовых и специфичных для Python настроек, а затем вносить изменения по своему усмотрению.
- Необязательно: вы можете использовать Dropbox для синхронизации всех ваших настроек. Просто загрузите файлы настроек в Dropbox и загрузите их оттуда, чтобы синхронизировать среды Sublime на всех своих компьютерах.
- Хороший справочник по настройкам можно найти в неофициальной документации Sublime Text.
Темы
ST3 также дает вам возможность изменить общую тему, чтобы она больше соответствовала вашему характеру. Создайте свой собственный дизайн. Или, если вы не склонны к творчеству, вы можете загрузить одну из различных пользовательских тем, разработанных сообществом Sublime, через Package Control. Посетите ColorSublime, чтобы предварительно просмотреть темы перед их установкой.
Всегда популярная тема Soda Dark и минималистичная Flatland — две из моих любимых тем.
После установки темы обязательно обновите базовые настройки через Sublime Text > Preferences > Settings — User:
Пакеты
Помимо упакованных тем, я использую следующие пакеты для ускорения рабочего процесса.
Улучшения боковой панели
SideBarEnhancements расширяет количество пунктов меню на боковой панели, ускоряя общий рабочий процесс. Такие параметры, как «Новый файл» и «Дублировать», необходимы и должны быть частью ST3 «из коробки». Одна только опция «Удалить» стоит того, чтобы ее скачать. Эта функция просто отправляет файлы в корзину, что может показаться тривиальным, но если вы удалите файл без нее, то восстановить его будет очень сложно, если только вы не используете систему контроля версий.
Скачать прямо сейчас!
Анаконда
Anaconda — это совершенный пакет Python. Он добавляет ряд функций, подобных IDE, в ST3, включая следующие:
- Автозаполнение работает по умолчанию, но существует ряд параметров конфигурации.
- Линтинг кода использует либо PyLint, либо PyFlakes с PEP 8. Я лично использую другой пакет линтинга, как я объясню в ближайшее время, поэтому я полностью отключаю линтинг в определяемом пользователем файле настроек Anaconda, Anaconda.sublime-settings, через меню файла: Sublime > Настройки > Настройки пакета > Anaconda > Настройки — Пользователь:
- Проверка сложности кода McCabe запускает средство проверки сложности McCabe в определенном файле. Если вы не знаете, что такое сложность, обязательно перейдите по ссылке выше.
- Goto Definitions находит и отображает определение любой переменной, функции или класса во всем проекте.
- Найти использование быстро ищет, где переменная, функция или класс использовались в определенном файле.
- Показать документацию показывает строку документации для функций или классов (если они определены, конечно).
Вы можете просмотреть все функции здесь или в файле README в настройках пакета ST3: Sublime Text > Preferences > Package Settings > Anaconda > README.
Примечание. SublimeCodeIntel — еще один популярный пакет, который во многом похож на Anaconda. Я предлагаю протестировать их обоих.
Джанейро
Djaneiro поддерживает шаблоны Django и выделение ключевых слов, а также предоставляет полезные фрагменты кода (завершения табуляции) для Sublime Text. Система сниппетов невероятно экономит время. Вы можете создавать обычные блоки Django всего несколькими нажатиями клавиш для шаблонов, моделей, форм и представлений. Ознакомьтесь с официальной документацией, чтобы увидеть список фрагментов кода.
Мои личные фавориты для создания шаблонов: var creates > и tag create .
требованияstxt
requirementstxt обеспечивает автодополнение и подсветку синтаксиса, а также удобную систему управления версиями для ваших файлов requirements.txt.
SublimeLinter
SublimeLinter — это платформа для линтеров ST3. Сам пакет не включает никаких реальных линтеров; они должны быть установлены отдельно через Package Control с использованием синтаксиса именования SublimeLinter-[linter_name]. Посмотреть официальные линтеры можно здесь. Существует также ряд сторонних линтеров, которые можно просмотреть в Package Control. Ознакомьтесь с инструкциями по установке здесь.
Примечание. Большинство этих линтеров имеют связанные с ними зависимости, поэтому перед установкой прочтите инструкции по установке.
Вы можете настроить каждый линтер в определяемом пользователем файле SublimeLinter.sublime-settings: Sublime Text > Preferences > Package Settings > SublimeLinter > Settings — User. Например, я игнорирую следующие ошибки и предупреждения PEP 8:
GitGutter
GitGutter показывает маленькие значки в области желоба ST3, которые указывают, была ли строка вставлена, изменена или удалена с момента последней фиксации.
Примечание. Если вам нужна поддержка ряда распределенных систем управления версиями (Git, SVN, Bazaar и Mercurial), попробуйте Modific.
FTP-синхронизация
FTPSync синхронизирует ваш проект с удаленными файлами. Просто откройте файл, чтобы загрузить его (если удаленный файл новее вашего локального файла) и загружайте его на удаленный сервер при каждом сохранении. Это отличный способ синхронизировать локальные и удаленные устройства. Убедитесь, что вы добавили хотя бы одно удаленное соединение, нажав Sublime Text > Preferences > Package Settings > FTPSync > Setup FTPSync.
Я лично установил пароль равным нулю, потому что не хочу, чтобы он был виден в этом файле. FTPSync просто запрашивает мой пароль после каждого сохранения.
Расширенный новый файл
AdvancedNewFile используется для создания новой папки или файла из ST3 только с привязкой клавиш.
Просто вызовите ввод AdvancedNewFile с помощью соответствующей привязки клавиш. Затем введите путь вместе с именем файла в поле ввода. После нажатия Enter файл будет создан. Кроме того, если указанные каталоги еще не существуют, они будут созданы. По умолчанию путь к создаваемому файлу будет отображаться в строке состояния при вводе информации о пути.
Для получения более подробной информации о его использовании ознакомьтесь с документацией на GitHub. Обязательно прочитайте о завершении табуляции, а также о предопределенных псевдонимах.
Я заменил обычную команду Cmd + N для создания нового файла на AdvancedNewFile, добавив следующий код в файл Key Bindings — User: Sublime Text > Preferences > Package Settings > AdvancedNewFile > Key Bindings — User:
Вы также можете настроить каталог по умолчанию для начала: Sublime Text > Preferences > Package Settings > AdvancedNewFile > Settings — User
Теперь, когда я создаю новый файл, строка /Users/michaelherman/Documents/repos автоматически вставляется первой, поскольку в 99 % случаев я храню все свои сценарии в этом каталоге.
Эммет
Emmet, ранее известный как Zen Coding, использует простые сокращения для создания фрагментов кода HTML или CSS.
Например, если вы введете челку, ! , и нажмите Tab в файле HTML, после чего будет сгенерирован тип документа HTML5 и несколько основных тегов:
Дополнительную информацию см. в официальной документации, а также в этой удобной памятке.
Предварительный просмотр уценки
Предварительный просмотр уценки используется для предварительного просмотра и создания файлов уценки.
Для использования откройте диспетчер пакетов и введите Markdown Preview, чтобы отобразить доступные команды:
- Предварительный просмотр Markdown: Python Markdown: Предварительный просмотр в браузере
- Предварительный просмотр Markdown: Python Markdown: экспорт HTML в Sublime Text
- Предварительный просмотр Markdown: Python Markdown: копирование в буфер обмена
- Предварительный просмотр Markdown: Markdown со вкусом GitHub: предварительный просмотр в браузере
- Предварительный просмотр Markdown: Markdown со вкусом GitHub: экспорт HTML в Sublime Text
- Предварительный просмотр Markdown: Markdown со вкусом GitHub: копирование в буфер обмена
- Предварительный просмотр Markdown: открыть памятку по Markdown
После преобразования выходной файл будет обновляться при каждом последующем сохранении.
Сочетания клавиш
- Перейти к чему угодно Cmd + P используется для быстрого поиска и открытия файлов. Просто введите часть пути и имени файла в проекте, и вы сможете легко открыть этот файл. Это отлично подходит для быстрого открытия файлов в больших проектах Django.
- Перейти к номеру строки Ctrl + G позволяет перейти к строке с определенным номером в активном файле.
- Перейти к символу Cmd + R перечисляет все функции и классы в файле, чтобы их было легче найти. Просто начните вводить нужный.
- Перейти к началу строки Cmd + Left и Перейти к концу строки Cmd + Right помогают перемещаться по строкам.
- Удалить текущую строку. Ctrl + Shift + K удаляет текущую строку.
- Множественное редактирование — мой любимый ярлык:
- Выберите слово и нажмите Cmd + D, чтобы выбрать следующее такое же слово. Затем снова нажмите Cmd + D, чтобы снова выбрать следующее слово, и так далее.
- Нажмите Cmd + левая кнопка, чтобы создать курсор для редактирования везде, где вы щелкаете.
Примечание. Другие быстрые клавиши можно найти в этой статье.
Пользовательские команды
С помощью Python легко писать собственные команды и привязки клавиш. В настоящее время я использую этот рабочий процесс:
- Скопируйте путь к текущему файлу в буфер обмена (ссылка).
- Закройте все вкладки, кроме активной (ссылка).
Установите их, добавив файлы Python в каталог /Sublime Text 3/Packages/User через меню файлов (Sublime > Preferences > Browse Packages), а затем открыв каталог User. Чтобы завершить настройку, привяжите их из файла Key Bindings — User (Sublime Text > Preferences > Package Settings > AdvancedNewFile > Key Bindings — User).
Дополнительные ресурсы
Бесплатный бонус: 5 настроек Sublime Text для повышения производительности Python, бесплатный курс электронной почты, который покажет вам, как оптимизировать настройку разработки Python + Sublime для максимальной эффективности.
Заключение
Я надеюсь, что эта статья была вам полезна и что вы смогли интегрировать некоторые из вышеперечисленных пакетов и пользовательских настроек вместе со своими собственными на основе личных предпочтений, чтобы улучшить свой рабочий процесс.
Если у вас есть какие-либо вопросы или предложения, дайте мне знать в комментариях ниже. Наконец, проверьте папку dotfiles в этом репозитории, чтобы просмотреть все ресурсы, которые я создал. Здоровья!
Раз в несколько дней получайте короткие и интересные трюки с Python. Никакого спама никогда. Отписаться в любое время. Куратор: команда Real Python.
Решение. Маловероятно, что ваша проблема связана с ошибками в Sublime Text. Верните Sublime Text в только что установленное состояние и проверьте, сохраняется ли проблема. Если проблемы, которые вы обнаружили, исчезли, причиной могут быть какие-то пакеты или файлы настроек.
Как запустить Sublime Text?
После запуска сборки в Sublime Text ( Ctrl / Cmd B ) появляется панель с выводом. Панель вывода можно скрыть, нажав ESC .
Как запустить Sublime Text 3?
Чтобы ваш код работал в Sublime, вам необходимо:
- Сохраните свой код в файле с расширением . py на нем.
- Выберите в меню «Инструменты» > «Создать» или нажмите соответствующую горячую клавишу (пункт меню сообщит вам, что это такое).
Умер ли Sublime Text в 2020 году?
Sublime вполне жив, и, как было сказано ранее, в настоящее время проводится альфа-тестирование. В любом крупном проекте есть старые ошибки, уходящие далеко в прошлое.
Редактор Sublime умер?
Sublime «умрет», когда люди перестанут его использовать. Это мертво, потому что основная функция прослушивается. Когда люди жалуются на застой в разработке, они обычно имеют в виду не новые роскошные функции, а исправления ошибок основной функциональности. Если вам нужны новые функции, вы можете написать их самостоятельно.
Умер TextMate?
Несмотря на то, что разработка время от времени приостанавливается, TextMate сохраняет приверженность профессиональных пользователей. TextMate на самом деле имеет открытый исходный код и бесплатен для использования, хотя вам следует купить лицензию, если вы хотите использовать его в течение длительного времени.
Умер ли редактор Atom в 2020 году?
Если вам нравится, продолжайте использовать Atom. Атом жив или мертв только в той мере, в какой он имеет долю рынка и участников. Обсуждения на эту тему уже велись в прошлом году, когда Microsoft первоначально приобрела GitHub и, возможно, расширила Atom.
Что означает TextMate?
лучший друг человека
Является ли TextMate бесплатным для Mac?
Обновления. Продается версия TextMate 1.x, но она также будет работать с 2.0 (когда она будет выпущена в окончательном виде). Мы можем взимать плату за обновления после 2.0 (даже 2.1), но когда/если мы выпустим платное обновление, мы сделаем его бесплатным для всех, кто купил его в течение последних 6 месяцев.
Является ли TextMate хорошим текстовым редактором?
Какие функции делают этот текстовый редактор одним из лучших? TextMate поставляется с бесплатной и платной версиями, каждая из которых обладает отличными функциями. Это легкий текстовый редактор с чистым интерфейсом. TextMate предлагает пакеты, позволяющие настроить практически каждый элемент в текстовом редакторе.
Что такое TextMate Mac?
TextMate – это универсальный текстовый редактор с графическим интерфейсом для macOS, созданный Алланом Одгаардом.TextMate предлагает декларативные настройки, вкладки для открытых документов, записываемые макросы, сворачиваемые разделы, фрагменты, интеграцию с оболочкой и расширяемую систему пакетов.
Бесплатен ли Sublime Text?
Sublime Text можно загрузить и оценить бесплатно, однако для дальнейшего использования необходимо приобрести лицензию. В настоящее время нет принудительного ограничения времени для оценки.
Как изменить тему TextMate?
Переключить тему можно в меню «Вид» → «Темы». Для изменения размера шрифта выберите «Вид» → «Шрифт» → «Показать шрифты». Не нашли тему, которая вам нравится? Вы можете найти новый набор тем в разделе «Наборы» в настройках. Нажмите на вкладку «Темы», чтобы ограничить свой просмотр.
Как добавить темы в TextMate?
Щелкните пакет правой кнопкой мыши и выберите "Показать содержимое пакета" .
- Добавьте новую папку под названием Themes и поместите в нее темы.
- TextMate автоматически увидит ваши изменения, и тема будет доступна в разделе «Вид» → «Тема».
Как изменить цвет текста TextMate?
- Откройте настройки ( Command + , )
- Перейдите на вкладку "Шрифты и цвета".
- Создайте новую тему, если можете, ИЛИ.
- Для выбранной темы измените настройки элемента тега разметки.
Как изменить цвет фона в TextMate?
Это легко. На панели инструментов TextMate (вверху экрана) выберите: Вид -> Тема Вот и все.
Как изменить цвет TextMate?
Этот процесс происходит в разделе «Настройки» → «Шрифты и цвета», где можно выбрать тему (аналог таблицы стилей), отредактировать одну из тем или создать новую тему. Изменение темы является глобальным, т. е. в настоящее время невозможно выбрать конкретную тему для каждого файла или типа файла.
Что такое TextMate для Mac?
Как увидеть результаты в возвышенном тексте?
В Sublime 2 для вызова окна результатов сборки можно использовать пункт меню "Инструменты" > "Результаты сборки" > "Показать результаты сборки".
Как запустить возвышенный текст в C++?
выполните следующие действия:
- откройте свой великолепный текстовый редактор.
- перейдите на вкладку инструментов.
- затем перейдите к сборке системы, выберите c++ или c++ single (который доступен)
- перейдите к своей программе, нажмите ctrl+B.
- вы получите опции, выбранные в соответствии с вашими потребностями, и ваша программа на C++ будет скомпилирована.
Подходит ли Sublime Text для C++?
Sublime Text — один из самых популярных редакторов для разработки в целом. Это плавно и быстро по сравнению с другими редакторами (написание на C++ помогает этой скорости). Sublime также имеет множество плагинов, которые вы можете найти через Package Control. Загрузите и установите Sublime Text 3 отсюда.
Могу ли я запустить программу C в Sublime Text 3?
Как запустить программу C в Sublime Editor Text 3 в Linux? Вы можете собрать/скомпилировать в Sublime Editor, но вы не можете запустить его в Sublime Editor. Вы можете запустить его через терминал.
Оглавление
Почему возвышенный текст не работает?
Есть две основные причины, по которым Sublime Text может перестать отвечать на запросы: определенные плагины мешают работе программы или файлы кеша забивают процессы программы. Удаление ваших программ и возврат Sublime Text к только что установленному состоянию должны решить эту проблему для большинства пользователей.
Как заставить возвышенный текст работать?
Редактор Sublime Text — это сложный текстовый редактор, широко используемый разработчиками. Он включает в себя широкие функции, такие как подсветка синтаксиса, автоматический отступ, распознавание типа файла, боковая панель, макросы, подключаемый модуль и пакеты, которые упрощают работу с кодовой базой.
Редактор Sublime Text умер?
Sublime вполне жив, и, как было сказано ранее, в настоящее время проводится альфа-тестирование. В любом крупном проекте есть старые ошибки, уходящие далеко в прошлое.
Поддерживается ли Sublime Text по-прежнему?
Лицензионные ключи Sublime Text больше не привязаны к одной основной версии, теперь они действительны для всех обновлений в течение 3 лет с момента покупки. После этого у вас по-прежнему будет полный доступ ко всем версиям Sublime Text, выпущенным в течение трех лет, но для более новых сборок потребуется обновление лицензии.
Почему мой величественный текст не окрашен?
Если вы просто открываете новые файлы и вставляете в них текст, по умолчанию используется синтаксис «Обычный текст», поэтому выделение не выполняется. Вы можете установить синтаксис в буфере, открыв палитру команд и выполнив поиск «Set Syntax:». Если это не так, попробуйте предоставить дополнительную информацию.
Что делать, если Sublime Text 3 не работает?
Sublime Text 3 не работает
- Сохраните файл с соответствующим расширением (например, .
- Нажмите в строке состояния, где указано Обычный текст. Откроется меню, в котором можно выбрать соответствующий синтаксис для редактируемого файла.
Является ли Sublime хорошим редактором?
Sublime — один из самых популярных редакторов кода, и не зря.Программа молниеносная, стабильная и зрелая. Он также имеет множество действительно полезных функций и множество восхитительных деталей. В дополнение к этому, благодаря модульному подходу и расширяемости, Sublime Text может быть чем угодно для всех.
Будет ли Sublime Text 4?
Наконец-то вышла первая стабильная версия Sublime Text 4! Мы усердно работали над улучшением, не забывая о том, что делает Sublime Text замечательным.
Что делать, если Sublime Text 2 не работает?
Если git config –global core.editor «subl -n -w» не работает, используйте эту команду git config: Примечание: она не содержит экранирующих символов обратной косой черты. С Sublime Text 2 и следующей конфигурацией, если ничего не происходит, когда вы закрываете файл комментариев git commit:
Есть ли редактор с открытым исходным кодом для Sublime Text?
Существует множество бесплатных вариантов с открытым исходным кодом, которые не будут вам мешать. На ум приходят Atom и VSCode. Однако Sublime Text — отличный редактор. Если вы считаете это полезным, зарегистрируйте его. — Ричард, 24 фев.
Как использовать пользовательский ввод в Sublime Text?
Вы получаете полноценную консоль, похожую на IDLE, встроенную прямо в великолепный текст! Запустите python в локальном или удаленном (1) виртуальном окружении. Быстро запустить выбранный скрипт или запустить PDB. Используйте консоль SublimeText2 Python с историей и многострочным вводом. Вы можете установить его из управления пакетами (думаю, у вас уже есть управление пакетами! Если не получить его отсюда).
Как установить Python с помощью стека Sublime Text?
Запустите python в локальной или удаленной (1) виртуальной среде. Быстро запустить выбранный скрипт или запустить PDB. Используйте консоль SublimeText2 Python с историей и многострочным вводом. Вы можете установить его из управления пакетами (думаю, у вас уже есть управление пакетами!
Sublime Text — это быстрый, мощный и легко расширяемый редактор кода. Посмотрите несколько наглядных демонстраций для быстрой демонстрации.
Вы можете загрузить и установить Sublime Text 3 с веб-сайта Sublime Text. Предполагая, что у вас есть доступ к нужным репозиториям, вы также можете установить Sublime через apt-get в Linux. Справка и общая документация доступны в Документах Sublime Text 3.
Sublime можно использовать в Linux, Windows и Mac в качестве IDE для разработки Chromium. Вот что работает:
- Редактирование кода работает хорошо (особенно если вы привыкли к этому и привыкли к ярлыкам).
- Навигация по коду работает хорошо. Это можно сделать несколькими способами (полный список сочетаний клавиш доступен для Windows/Linux и Mac).
- Сборка работает довольно хорошо и неплохо анализирует ошибки, так что вы можете щелкнуть и перейти к проблемному месту.
Содержание
Настройка
Настройка Sublime
Вся глобальная конфигурация Sublime (включая установленные пакеты) хранится в ~/.config/sublime-text-3 (или %APPDATA\Sublime Text 3 в Windows или ~/Library/Application Support/Sublime Text 3 в Mac). ). В оставшейся части этого руководства мы будем ссылаться на папку Linux, но замените ее на свой собственный путь, если используете другую ОС. Если вам когда-нибудь понадобится чистая установка, просто удалите эту папку.
Предупреждение: если вы установили лицензионный ключ для платной версии Sublime Text, удаление этой папки также приведет к удалению лицензионного ключа.
Большинство пакетов, которые вы будете устанавливать, будут помещены в ~/.config/sublime-text-3/Packages/User, где Sublime Text сможет их обнаружить. Вы также можете попасть в эту папку, выбрав Preferences > Browse Packages. (или Sublime Text > «Настройки» > «Просмотр пакетов» на Mac).
Кратко о путях
Некоторые пакеты требуют, чтобы исполняемые файлы находились в вашем PATH , но Sublime получает переменную $PATH из оболочки входа в систему, а не из интерактивного сеанса (т.е. ваш путь должен быть установлен в ~/.bash_profile , ~/.zprofile и т. д., не ~/.bashrc , ~/.zshrc и т. д.). Дополнительные сведения см. в разделе Отладка проблем пути.
Редактирование настроек
Высокая конфигурация (включая файлы проекта, привязки клавиш и т. д.) выполняется с помощью файлов JSON. Все конфигурации имеют конфигурацию по умолчанию (обычно предоставляется вместе с программой или пакетом для документирования доступных команд) и пользовательскую конфигурацию (переопределяет настройку по умолчанию; именно здесь используются ваши переопределения). Например, выберите «Настройки» > «Настройки» — «По умолчанию», чтобы увидеть все доступные настройки для Sublime. Вы можете переопределить любой из них в меню «Настройки» > «Настройки» — «Пользователь».
Вот некоторые настройки, соответствующие руководству по стилю Chromium:
Настройки вступят в силу, как только вы сохраните файл.
- Вид > Боковая панель > Показать открытые файлы добавит список открытых файлов в верхнюю часть боковой панели.
- Ctrl+` отобразит консоль; он показывает ошибки и результаты отладки, и вы можете запускать Python
- Просмотр > Войти в режим без отвлечения внимания переходит в полноэкранный режим и удаляет верхний и нижний колонтитулы Sublime.
- Вид > Макет > .изменяет конфигурацию файлов, которые вы можете открывать рядом
- Ctrl + P (Cmd + P на Mac) быстро открывает окно поиска для поиска файла или определения.
- Alt + O ( Alt + Cmd + Вверх на Mac) позволяет переключаться между исходным файлом и файлом заголовка.
- Alt + PageUp / Alt + PageDown (Alt + Cmd + Left / Alt + Cmd + Right на Mac) позволяет перемещаться между вкладками
- F12 (Alt + Cmd + Down на Mac) переходит к определению символа
- При выделенном тексте сочетание клавиш Ctrl + D будет многократно выделять следующее вхождение (поэтому ввод одного и того же текста будет использоваться во всех случаях), а сочетание клавиш Ctrl + U отменяет выбор.
- Аналогично, после нахождения чего-либо с помощью Ctrl + F , Alt + Enter будут выбраны все вхождения поискового запроса, которые можно редактировать одновременно.
- Ctrl + X, если ничего не выделено, обрезает текущую строку, затем переходит к другой строке, а Ctrl + V вставляет ее ниже текущей строки.
Установка Sublime в качестве редактора терминала по умолчанию
Добавьте export EDITOR="subl -w" в файл ~/.bashrc (или аналогичный), чтобы открывать сообщения git commit, gn args и т. д. с помощью Sublime Text. Поскольку вы можете открывать возвышенное только при использовании сеанса без SSH, вы можете обернуть его следующим образом:
Установка диспетчера пакетов
Диспетчер пакетов Sublime — это способ установки и настройки большинства пакетов Sublime. Вы можете установить менеджер пакетов, следуя инструкциям по установке на их веб-сайте. После установки менеджера пакетов перезапустите Sublime.
Чтобы установить пакет, нажмите Ctrl + Shift + P и выберите Диспетчер пакетов: Установить пакет (соответствие строки довольно мягкое; вы можете просто ввести «instp», и он должен найти его). Затем введите или выберите пакет, который хотите установить.
Исправление путей Mac
На Mac существует известная ошибка, из-за которой Sublime неправильно определяет текущий путь. Если вы используете Mac, установите пакет SublimeFixMacPath, чтобы найти путь из файла ~/.bashrc или аналогичного файла.
Создание нового проекта
После того как вы получите копию Chromium checkout, мы создадим новый проект Sublime с корневым каталогом src.
Для этого создайте новый файл chromium.sublime-project (или любое другое имя) в папке над вашим каталогом src/ со следующим содержимым (необходимы шаблоны исключения - Sublime не может обрабатывать индексирование всех файлов Chrome):
Если вы работаете над Blink или любым другим сторонним подпроектом, вы можете добавить его как отдельную запись в массив папок:
После сохранения файла выберите «Проект» > «Переключить проект» и перейдите к файлу chromium.sublime-project.
Линтинг кода с помощью CPPLint (только для Chromium)
Примечание. CPPLint использует руководство по стилю Google/Chromium и, следовательно, бесполезен в сторонних проектах, использующих другой стиль.
Установите пакет SublimeLinter ( Ctrl + Shift + P > Установить пакет > SublimeLinter ).
cpplint должен быть где-то на вашем пути, чтобы SublimeLinter его нашел. depot_tools включает cpplint.py , но его нужно назвать cpplint , поэтому в Linux и Mac вы должны сделать на него символическую ссылку:
Установите пакет SublimeLinter-cpplint ( Ctrl + Shift + P > Установить пакет > SublimeLinter-cpplint ).
Теперь при сохранении файла C++ рядом со строками, которые делают стиль недействительным, должны появиться красные точки. Вы можете изменить это поведение, выбрав «Выбрать режим ворса» ( Ctrl + Shift + P > «режим ворса» ).
Вы также можете просмотреть все ошибки линтера и перемещаться по ним с помощью Показать все ошибки ( Ctrl + Shift + P > "показать все" ). Вы также можете использовать Next Error/Previous Error (и связанные с ними ярлыки) для навигации по ошибкам. Полоса в нижней части экрана показывает сообщение об ошибке в текущей строке.
Вы также можете изменить стиль точки рядом с линией с помощью Выбрать тему желоба ( Ctrl + Shift + P > "желоб" )
Список всех настроек см. в разделе «Настройки» > «Настройки пакета» > SublimeLinter > «Настройки» — «По умолчанию» (или «Настройки» — «Пользователь», чтобы изменить свои настройки).
Выбор формата с помощью Clang-Format (только для Chromium)
Примечание. Как и CPPLint, Clang-format применяет руководство по стилю Google/Chromium и, следовательно, бесполезен в сторонних проектах, использующих другой стиль.
Внутри src/ запустите:
При этом устанавливается подключаемый модуль, определяющий команду «clang_format». Вы можете добавить команду «clang_format» в «Настройки» > «Привязки клавиш» — «Пользователь», например:
Выделите текст и нажмите Ctrl + Shift + C, чтобы отформатировать его, или не выделяйте текст, чтобы отформатировать весь файл
Интеграция CodeSearch с Chromium X-Refs
Дополнительную информацию о функциях Chromium X-Ref (включая сочетания клавиш и мыши) можно найти на странице Chromium X-Refs.
Завершение кода, выделение ошибок, переход к определению и поиск ссылок с помощью LSP (clangd)
Предоставляет Sublime Text 3 широкие возможности редактирования для языков с поддержкой протокола Language Server. Он ищет в текущей единице компиляции определения и ссылки и обеспечивает сверхбыстрое завершение кода.
В этом случае мы добавим поддержку C/C++.
Обратитесь к clangd.md, чтобы установить clangd и создать базу данных компиляции.
Установите пакет LSP и включите поддержку clangd, перейдя по ссылке и следуя инструкциям для Sublime Text.
Чтобы удалить автодополнение возвышенного текста и отображать только LSP (рекомендуется), установите следующие настройки LSP:
Автозавершение кода с помощью SublimeClang (только для Linux) [устарело, см. LSP выше]
SublimeClang — это мощный подключаемый модуль автодополнения для Sublime, который использует статический анализатор Clang для обеспечения завершения типов и функций и ошибок компиляции в реальном времени при сохранении. Он работает с Chromium со сценарием, который находит и анализирует соответствующие файлы *.ninja, чтобы найти необходимые пути включения для данного файла.
Примечание. В настоящее время работает только установка SublimeClang для Linux. Однако ниже приведены инструкции для Windows/Mac, которые вы можете попробовать. Если вы можете заставить их работать, обновите эти инструкции ^_^
Дополнительную информацию о функциях SublimeClang (включая сочетания клавиш) можно найти на странице SublimeClang GitHub.
Линукс
Обратите внимание, что недавно (по состоянию на август 2017 г.) были внесены изменения в поддержку C++14. А именно, вы должны использовать более новый clang (известно, что работает 3.9) и использовать его каталог ресурсов вместо того, который предоставляется SublimeClang.
Установите последнюю версию libclang-dev, чтобы получить копию libclang.so. 3.4 недостаточно свежа, но 3.9 работает. Если вы используете что-то другое, соответственно измените имена и пути:
Создайте libclang.so и SublimeClang в каталоге пакетов:
Отредактируйте файл проекта Project > Edit Project, чтобы вызвать приведенный выше скрипт (замените /path/to/depot_tools каталогом depot_tools):
Измените настройки SublimeClang и установите для параметра dont_prepend_clang_includes значение true. Таким образом, вы используете установленный нами каталог ресурсов вместо старых, включенных в репозиторий. Без этого у вас не будет поддержки C++14.
(Необязательно) Чтобы удалить ошибки, которые иногда возникают при импорте из третьей стороны, отредактируйте настройки SublimeClang и установите:
Перезапустите Sublime. Теперь, когда вы сохраняете файл, вы должны увидеть сообщение «Повторная обработка…» в нижнем колонтитуле, а ошибки будут отображаться на панели вывода. Кроме того, определения переменных и функций должны автоматически дополняться по мере ввода.
Примечание. Если у вас возникли проблемы, добавление «sublimeclang_debug_options»: true в ваш файл настроек приведет к тому, что на консоль будет выведено больше информации (доступ с помощью Ctrl + ` ), что может быть полезно при отладке.
Отладка: если вам кажется, что что-то не работает, вам поможет консоль Ctrl + `. Вот некоторые основные ошибки, которые можно обойти:
- Неверные аргументы Libclang
- проблема: tu — None. постоянно появляется в консоли:
- решение. ninja_options_script.py генерирует аргументы, которые libclang не может правильно проанализировать. Чтобы исправить это, обязательно экспортируйте CHROMIUM_OUT_DIR="" Это связано с тем, что файл ninja_options_script.py будет использовать самый последний измененный каталог сборки, если не указано иное. Если выбранный каталог сборки имеет необычные аргументы (например, для очистки потока), libclang может завершиться ошибкой.
Mac (не работает)
Установите cmake, если у вас его еще нет
Скопируйте libclang.dylib из XCode в папку SublimeClang/internals:
Остальные инструкции такие же, но при добавлении настроек проекта добавьте следующие дополнительные аргументы в sublimeclang_options :
Windows (не работает)
Вам понадобится cl.exe, который можно установить вместе с Visual C++ Build Tools 2015. cl.exe должен быть указан в вашей переменной $PATH , которую можно получить, запустив C:\Program Files (x86)\Microsoft Visual C++ Build Tools\Visual C++ 2015 x64 Native Build Tools Command Prompt .
Тогда вам понадобится копия libclang.so, которую можно найти на веб-сайте LLVM. Инструкции должны быть такими же, как и для Linux.
Альтернатива: завершение кода с помощью Ctags
Для быстрого поиска символов мы рекомендуем установить подключаемый модуль CTags.
После установки вы получите запись в контекстном меню, когда щелкнете правой кнопкой мыши папку (папки) верхнего уровня в своем проекте, которые позволяют вам создать базу данных Ctags. Однако, если вы работаете над проектом Chrome, не делайте этого на данном этапе, так как он будет индексировать гораздо больше, чем вы на самом деле хотите. Вместо этого выполните одно из следующих действий:
Создайте пакетный файл (например, ctags_builder.bat), который можно запустить вручную или автоматически после синхронизации с gclient:
Это занимает пару минут, но вы можете работать во время индексации.
Отредактируйте файл CTags.sublime-settings для подключаемого модуля ctags, чтобы он запускал ctags с указанными выше параметрами. Примечание: приведенный выше пакетный файл — не стоит просто копировать его дословно и вставлять в файл настроек CTags)
После установки вы можете быстро искать символы с помощью Ctrl+t, Ctrl+t и т. д.Дополнительную информацию о сочетаниях клавиш можно найти на странице CTags GitHub.
Еще один совет: отредактируйте файл .gitignore (в %USERPROFILE% или ~/ ), чтобы git игнорировал файл .tags. Вы не хотите совершить это. :)
Если в каталоге вашего профиля нет файла .gitignore, вы можете сообщить об этом git с помощью следующей команды: Windows: git config --global core.excludesfile %USERPROFILE%\.gitignore Mac, Linux: git config - -global core.excludesfile ~/.gitignore
Создание внутри Sublime
Чтобы построить внутри Sublime Text, нам сначала нужно создать новую систему сборки.
Вы можете добавить систему сборки в файл проекта ( Project > Edit Project ), заменив out/Debug своим выходным каталогом (в Windows замените / на \s в cmd и working_dir ):
Регулярное выражение файла позволит вам щелкнуть по ошибке, чтобы перейти к строке ошибки.
Если вы используете goma, добавьте параметр -j (замените out/Debug своим выходным каталогом):
Объяснение регулярного выражения: направлено на захват этих форматов ошибок при соблюдении соответствия Perl-подобной группы Sublime:
- d:\src\chrome\src\base\threading\sequenced_worker_pool.cc(670): ошибка C2653: "Foo": не является именем класса или пространства имен
- ../../base/threading/sequenced_worker_pool.cc(670,26) ошибка: использование необъявленного идентификатора "Foo"
- ../../base/threading/sequenced_worker_pool.cc:670:26: ошибка: использование необъявленного идентификатора "Foo"
Создание других целей
Вы можете добавить варианты сборки в массив вариантов, чтобы иметь быстрый доступ к другим целям сборки с помощью Ctrl + Shift + B :
Вы также можете добавить вариант для запуска Chrome, то есть вы можете назначить сочетание клавиш для его запуска после сборки:
Более подробная трассировка стека
В трассировках стека Chrome по умолчанию нет полных путей к файлам, поэтому Sublime не может их проанализировать. Вы можете включить более подробную трассировку стека и использовать F4, чтобы перейти прямо к строке кода, где произошел сбой.
Во-первых, добавьте print_unsymbolized_stack_traces = true к вашим аргументам gn и убедитесь, что у вас также включены символы отладки ( symbol_level = 2 ). Затем передайте stderr Chrome через скрипт asan_symbolize.py. Вот подходящий вариант сборки для Linux (с измененным file_regex):
Вы можете проверить это, посетив chrome://crash. Вы должны иметь возможность пройти через каждую строку в полученной трассировке стека с помощью F4. Вы также можете получить трассировку стека без сбоев следующим образом:
Назначение сборок сочетаниям клавиш
Чтобы назначить сборку сочетанию клавиш, выберите «Настройки» > «Привязки клавиш» — «Пользователь» (или «Привязки клавиш — по умолчанию», чтобы просмотреть текущие привязки клавиш). Вы можете добавить приведенные выше варианты сборки с помощью команды «build», например:
Дополнительную информацию о пользовательских привязках клавиш см. в документации по привязкам клавиш Sublime Text.
Другие полезные пакеты
Некоторые другие полезные пакеты, улучшающие возвышенное, можно установить, нажав Ctrl+Shift+P > Установить пакет:
Чтобы получить больше информации о внутренней работе клиента LSP и сервера и иметь возможность диагностировать проблемы, откройте «Настройки: Параметры LSP» в палитре команд и установите следующие параметры:
Опция Описание log_debug: true < td>Показать подробные отладочные сообщения в консоли Sublime Text.log_server: ["panel"] Записывать связь с языковыми серверами и с ними в выводе панель. После включения (перезагрузка не требуется) журнал связи можно просмотреть, запустив LSP: Toggle Log Panel из командной палитры. Возможно, стоит перезапустить Sublime Text и снова воспроизвести проблему, чтобы журналы были чистыми.
Если вы считаете, что проблема связана с этим пакетом, включите выходные данные консоли Sublime в свой отчет о проблеме!
Если сервер дает сбой при запуске, попробуйте запустить LSP: Устранение неполадок сервера из палитры команд и проверьте «Вывод сервера» на наличие возможных ошибок. Рассмотрите возможность публикации результатов этой команды в отчете.
Sublime Text может видеть PATH, отличный от того, который использует ваша среда оболочки, и из-за этого не сможет найти двоичный файл сервера. Вы можете увидеть, что ST думает о вашем PATH, открыв консоль ST, щелкнув View > Show Console и запустив import os; os.environ["PATH"] в этой консоли.
Решение состоит в том, чтобы заставить ST использовать тот же PATH, который считывается вашей оболочкой (или ОС в целом в случае Windows).
Настройка PATH может различаться в зависимости от операционной системы и используемой оболочки по умолчанию. Обратитесь к следующей таблице, где это должно быть скорректировано:
Windows Откройте меню «Пуск», введите «среда» и выберите «Редактировать переменные среды для вашей учетной записи». Измените переменную «Путь», чтобы она включала путь к каталогу для выбранной вами программы. macOS В зависимости от вашей оболочки по умолчанию отредактируйте: ~/.profile (bash), ~/.zprofile (zsh) или ~/.config/fish/config.fish (fish). Linux Редактировать ~/.profile . Для macOS и Linux вы можете расширить путь следующим образом:
Для менеджеров пакетов, таких как nvm (менеджер версий узлов), рекомендуется вставить сценарий инициализации в соответствующее место, указанное выше.
В macOS достаточно перезапустить ST, чтобы изменения вступили в силу. На других платформах вам может потребоваться повторно войти в свою учетную запись пользователя.
- имя сервера
- это каталог, необходимый для правильной работы сервера
При запуске языкового сервера его имя отображается в левой части строки состояния. Если вы ожидаете, что ваш сервер запустится для определенного файла, но это не так:
- Убедитесь, что корневая область (например, source.php ) файла соответствует области, обрабатываемой языковым сервером. Вы можете проверить корневую область файла, запустив Show Scope Name из меню Tools -> Developer. Обратитесь к документации языкового сервера или его собственным настройкам, чтобы узнать ожидаемую область действия.
- Убедитесь, что языковой сервер не отключен глобально ни в его собственных настройках, ни в Preferences: LSP Settings , ни в настройках проекта ( Project: Edit Project from the Command Palette).
Если вы получаете сообщение об ошибке, что двоичный файл сервера не может быть найден, но он запускается при его запуске из терминала, проблема, вероятно, связана с тем, что внутренняя среда Sublime Text не использует ту же переменную среды PATH, что и вы. настроены в вашей оболочке.
См. раздел «Обновление PATH, используемого серверами LSP», чтобы узнать, как сообщить Sublime Text о расположении вашего языкового сервера.
Причина этого может быть той же, что и в проблеме номер 2. Кроме того, у языковых серверов могут быть зависимости, которые также должны быть в вашем PATH в дополнение к самому бинарному файлу сервера.
Например, если вы установили сервер haskell-language-server с помощью ghcup-hs, вы должны указать его конкретную папку установки ~/.ghcup/bin . Если процесс сборки использует стек, он также должен быть указан в вашем PATH .
Если это не решит проблему, попробуйте запустить LSP: Troubleshoot server и предоставьте его вывод при запросе помощи.
Встроенные в Sublime Text правила завершения.tmPreferences для некоторых языков подавляют завершение после определенных ключевых слов. Решение состоит в том, чтобы поместить отредактированную версию Completion Rules.tmPreferences в папку Packages (после этого вам может понадобиться очистить копию в папке Cache). Подробнее об обходном пути и окончательном исправлении для Lua
SublimeLinter — сложный зверь, и, поскольку он пытается связать воедино Sublime Text 3, подключаемый модуль linter и двоичный файл linter, есть много мест, где что-то может пойти не так.
Консольный вывод¶
Если SublimeLinter обнаруживает ошибку во время своей работы, он печатает (надеюсь) полезное сообщение в консоль Sublime Text 3. Чтобы открыть консоль, нажмите Control+` . Сообщения об ошибках будут иметь префикс SublimeLinter: ПРЕДУПРЕЖДЕНИЕ: или SublimeLinter: ОШИБКА: .
Это покрывает большинство ошибок, но если исполняемый файл линтера сам генерирует внутреннюю ошибку, SublimeLinter не может ее обнаружить. Чтобы увидеть сообщения об ошибках, созданные исполняемым файлом, вам необходимо включить режим отладки.
Режим отладки¶
Если у вас возникли проблемы с установкой или настройкой SublimeLinter или кажется, что он не работает, и ни одно из сообщений об ошибках в консоли не указывает причину, вы можете включить режим отладки. В режиме отладки SublimeLinter выводит огромное количество информации о том, что происходит внутри консоли Sublime Text 3.
Чтобы включить режим отладки, выполните следующие действия:
- Нажмите Инструменты > SublimeLinter в строке главного меню.
- В нижней части меню SublimeLinter вы увидите пункт «Режим отладки». Если флажок не установлен, выберите элемент.
- Перезапустите Sublime Text 3.
- Нажмите Control+`, чтобы открыть консоль Sublime Text 3.
- Ищите сообщения, начинающиеся с SublimeLinter: , особенно те, которые начинаются с SublimeLinter: WARNING: или SublimeLinter: ERROR: .
- Перейдите к системе отслеживания проблем SublimeLinter и сообщите о проблеме вместе с выходными данными консоли SublimeLinter:.
Среди информации, выводимой на консоль в режиме отладки:
- Путь, обнаруженный в вашей системе, плюс все, что вы указали в глобальной настройке «пути», используемой для поиска исполняемых файлов.
- Если в вашей системе установлен Python 3, укажите sys.path для этого Python.
- Успешное или неудачное импортирование модуля подключаемыми модулями linter на основе Python.
- Командная строка, используемая для запуска линтера.
- Выходные данные линтера, включая отчеты линтера и внутренние ошибки линтера.
Линтер не работает!¶
Первое, что вы должны сделать, если линтер не работает в SublimeLinter, — это протестировать его из командной строки (терминал в Mac OS X/Linux, командная строка в Windows). Если это не работает из командной строки, это точно не будет работать в SublimeLinter.
Вот наиболее распространенные причины, по которым линтер не работает:
Двоичный файл линтера не установлен. В этом случае плагин linter выведет предупреждение в консоль Sublime Text 3 следующим образом:
Обязательно установите линтер, как описано в файле README подключаемого модуля linter.
Двоичный файл линтера установлен (что подтверждается из командной строки), но путь к нему недоступен для SublimeLinter. В этом случае вы увидите предупреждающее сообщение, подобное приведенному выше, для отсутствующего бинарного файла линтера. Выполните шаги, описанные в разделе Отладка проблем с PATH ниже, чтобы убедиться, что путь к двоичному файлу доступен для SublimeLinter.
Двоичный файл линтера установлен, но не соответствует требованиям к версии плагина. В этом случае SublimeLinter выведет предупреждение на консоль Sublime Text 3 следующим образом:
В большинстве случаев это означает, что у вас установлена старая версия двоичного файла linter. Обновление до последней версии должно устранить проблему.
Двоичный линтер на основе Python установлен, но он не работает с кодом Python 2 или Python 3. В этом случае выполните действия, описанные в разделе Отладка линтеров на основе Python ниже.
Используй группу, Люк¶
Пожалуйста, не открывайте тикет по проблемам Github, пока не убедитесь, что еще нет тикета в трекере SublimeLinter или в устаревшей группе Google SublimeLinter.
Если вы уверены, что проблема решена, вы можете отключить режим отладки, выполнив описанные выше действия, чтобы снять флажок с пункта меню "Режим отладки".
Отладка проблем с PATH¶
Чтобы SublimeLinter мог использовать исполняемые файлы линтера, он должен найти их в вашей системе. Существует два возможных источника информации о пути к исполняемому файлу:
- Переменная среды PATH.
- Глобальная настройка «пути».
При запуске SublimeLinter запрашивает у системы ваш PATH и объединяет его с путями в настройке «пути». В режиме отладки SublimeLinter выводит вычисленный путь к консоли под заголовком SublimeLinter: вычисленный PATH:. Вы можете использовать эту информацию, чтобы определить, почему не удается найти исполняемый файл linter.
Если исполняемый файл линтера не может быть найден при загрузке подключаемого модуля линтера, подключаемый модуль отключен, и в консоли вы увидите следующее сообщение:
С другой стороны, если исполняемый файл подключаемого модуля линтера можно найти во время загрузки, но позже он становится недоступен, при попытке использовать этот линтер вы увидите в консоли следующее сообщение:
Другая возможность заключается в том, что исполняемый файл, вызываемый исполняемым файлом линтера, отсутствует. Например, если jshint доступен, а узел недоступен, в консоли вы увидите что-то вроде этого:
В Windows сообщения об ошибках линтера появляются не всегда. Похоже, это ошибка в Python.
В отличие от других сообщений об ошибках, упомянутых ранее, вы не увидите это сообщение, если не включен режим отладки, потому что это не сообщение об ошибке, обнаруженное SublimeLinter, а вывод, полученный из исполняемого файла jshint. Поэтому, если вы не видите никаких ошибок или предупреждений в консоли и линтер не работает, включите режим отладки, чтобы посмотреть, сможете ли вы найти источник проблемы.
Поиск исполняемого файла линтера¶
Если SublimeLinter говорит, что не может найти исполняемый файл linter, вам следует предпринять несколько шагов, чтобы найти источник проблемы.
Сначала вам нужно проверить, находится ли исполняемый файл linter в вашем PATH . Введите в командной строке следующее, заменив линтер именем исполняемого файла линтера:
Если в результате говорится, что линтер не найден, это означает, что исполняемый файл линтера находится в каталоге, которого нет в вашем PATH , и SublimeLinter не сможет его найти. На этом этапе вам нужно будет узнать, в какой каталог был установлен исполняемый файл, из документации линтера. Как только вы обнаружите это, вам нужно будет увеличить свой PATH, выполнив шаги, описанные в разделе «Увеличение PATH» ниже.
Если в результате отображается путь, это означает, что исполняемый файл находится в вашем PATH , но вы работаете в Mac OS X или Linux, и путь к исполняемому файлу экспортируется в файл запуска оболочки, который SublimeLinter не читает. Это означает, что вы должны добавить родительский каталог исполняемого файла в PATH, выполнив действия, описанные в разделе «Дополнение PATH» ниже.
Увеличение PATH¶
Если путь к родительскому каталогу исполняемого файла недоступен для SublimeLinter, у вас есть два варианта:
- Добавьте путь в глобальную настройку «пути».
- В Mac OS X или Linux настройте файлы запуска оболочки. В Windows добавьте каталог в переменную среды PATH.
Пути в настройке «пути» будут искаться перед системными путями.
Добавление в настройку «пут軶
Этот подход является самым быстрым и, как правило, самым простым, но означает, что вам придется поддерживать пути как в вашей системе, так и в SublimeLinter. Кроме того, не всегда очевидно, какой путь добавить, не ознакомившись с документацией по устанавливаемому программному обеспечению.
Определив путь, который нужно добавить, откройте настройки пользователя и добавьте путь в массив «пути» для вашей платформы. Например, предположим, что вы используете rbenv в Mac OS X, который добавляет путь ~/.rbenv/shims к вашему PATH. Вы можете изменить параметр «пути» следующим образом:
Настройка файлов запуска оболочки¶
Этот подход немного сложнее, но как только вы все сделаете правильно, ваш PATH будет правильным для использования в командной строке и для SublimeLinter.
Все оболочки читают различные файлы при запуске. В зависимости от аргументов командной строки оболочки считывают какой-либо файл «profile/env» и файл «rc» (конфигурация времени выполнения). Например, bash читает .bash_profile и .bashrc (среди прочего), а zsh читает .zshenv и/или .zprofile (в зависимости от платформы) и .zshrc (среди прочего).
Если вы не уверены, какую оболочку используете, введите это в терминале:
Когда SublimeLinter запускается, он запускает вашу оболочку как оболочку входа в систему, чтобы получить PATH . Это заставляет оболочку читать файл «profile/env», но для большинства оболочек файл «rc» не читается. Для этого есть очень веская причина: выполнение инициализации, относящейся только к интерактивным оболочкам, не только расточительно, но и во многих случаях завершится ошибкой, если к процессу не подключен терминал. Точно так же вам следует избегать размещения кода в файле «profile/env», который имеет какие-либо выходные данные (например, motd или Fortune ), поскольку он работает только с интерактивными оболочками, подключенными к терминалу.
Список оболочек, поддерживаемых SublimeLinter, и файл запуска, который должен содержать расширения PATH, показан в этой таблице:
Оболочка Файл < td>bash ~/.bash_profile (или ~/.profile в Ubuntu) zsh (Mac OS X) ~/.zprofile zsh (Linux) ~/.zshenv или ~/.zprofile < td>fish ~/.config/fish/config.fish Если вы используете zsh в Linux, вам необходимо определить, какой файл используется в вашей версии Linux. Для этого выполните следующие действия:
- Откройте .zshenv в редакторе и вставьте в первую строку echo env. Если файл не существует, создайте его.
- Проделайте то же самое для .zprofile , но вставьте эхо-профиль .
- В терминале введите $SHELL -l -c 'echo hello' . Если вы видите и «env», и «profile», используйте .zshenv для дополнений PATH. Если вы видите только один из двух, используйте этот файл для расширений PATH.
- Удалите или закомментируйте добавленные эхо-строки.
Когда вы установили исполняемый файл linter, он мог увеличить ваш PATH в файле «rc». Но чтобы эти расширения пути были видны SublimeLinter, вы должны переместить такие расширения в файл «profile/env». Например, если вы используете bash в качестве оболочки и установили rbenv, вы, вероятно, найдете это в своем файле .bashrc:
Однако, чтобы SublimeLinter «увидел» это, вы должны переместить эту строку из .bashrc в файл, который увидит SublimeLinter, а именно .bash_profile из приведенной выше таблицы.
Если какой или где не удается найти исполняемый файл линтера из командной строки, вам необходимо добавить родительский каталог исполняемого файла в PATH . Предполагая каталог /opt/bin , в Mac OS X или Linux изменения, которые вы должны внести, представлены в следующей таблице:
Оболочка Файл Код bash ~/.bash_profile export PATH=/opt/bin:$PATH zsh (Mac OS X) ~/.zprofile export PATH=/opt/bin:$PATH zsh (Linux) ~/.zshenv или ~/.zprofile export PATH=/opt/bin:$PATH < td>fish ~/.config/fish/config.fish установить PATH /opt/bin $PATH Особые замечания по bash ¶
Если вы используете bash в качестве оболочки, после расширения PATH в .bash_profile необходимо выполнить еще один шаг.
В Mac OS X добавьте этот код в конец .bash_profile :
В Mac OS X bash не загружает .bashrc, если он явно не запущен с аргументом командной строки -i. С другой стороны, .bash_profile загружается в каждом новом сеансе интерактивного терминала и если bash запускается в качестве оболочки входа в систему. Таким образом, вы должны загрузить .bashrc в .bash_profile , но делать это следует только в том случае, если оболочка является интерактивной, что и делает приведенный выше код.
В Linux добавьте этот код в начало .bashrc :
В Linux по умолчанию bash не загружает .bash_profile для интерактивного сеанса, но загружает для оболочки входа в систему.Поэтому, если вы переместите расширения PATH в .bash_profile и создадите их в .bashrc , ваши расширения PATH всегда будут загружены.
Редактирование PATH в Windows¶
В Windows вам нужно напрямую отредактировать переменную среды PATH. Проще всего это сделать с помощью бесплатного приложения Path Editor. После установки и запуска редактора путей выполните следующие действия:
- Нажмите кнопку "Добавить".
- Выберите родительский каталог исполняемого файла linter и нажмите "ОК".
- Нажмите "ОК" в нижней части окна редактора пути.
На любой платформе после изменения PATH вам потребуется перезапустить Sublime Text 3.
Проверка пути¶
Чтобы убедиться, что SublimeLinter сможет увидеть внесенные вами изменения, введите в командной строке следующее, заменив «linter» именем исполняемого файла linter, который не удалось найти:
Если ваши изменения были правильными, он напечатает путь к исполняемому файлу линтера. Если путь к исполняемому файлу не напечатан, сделайте следующее, чтобы увидеть, какой PATH увидит SublimeLinter:
На этом этапе вам следует перепроверить, правильно ли вы следовали приведенным выше инструкциям, и, если вы все еще не можете понять, что происходит не так, опубликуйте сообщение в системе отслеживания проблем SublimeLinter. Обязательно опишите шаги, которые вы предприняли, и включите содержимое файла запуска оболочки.
Отладка линтеров на основе Python¶
При использовании линтеров на основе Python появляется больше возможностей для проблем с конфигурацией:
- Версия Python или скрипт Python, указанные в подключаемом модуле linter, могут быть недоступны.
- Версия Python, указанная вами для исходного кода с помощью метанастройки @python или shebang, может быть недоступна.
- Указанная версия Python может быть доступна, но модуль linter для этой версии может быть не установлен.
Чтобы понять, как это может произойти, важно понять, как SublimeLinter разрешает версии Python. Давайте посмотрим на вывод консоли для каждого случая, чтобы понять, как обнаружить эти проблемы.
Питон Линтера недоступен¶
При загрузке подключаемого модуля линтера на основе Python, который не поддерживает прямое выполнение (атрибут модуля равен None ), если атрибут cmd указывает script@python , где script – это скрипт Python, такой как flake8 , и является основным [ .minor], SublimeLinter пытается найти версию python, которая удовлетворяет требованиям .
Если не удается найти версию python, удовлетворяющую запрошенной версии, подключаемый модуль линтера отключен, и вы увидите следующее сообщение в консоли (где «foo» — имя линтера):
Настройка python недоступна¶
Если подключаемый модуль линтера не указывает версию python в атрибуте cmd (например, flake8@python ), то SublimeLinter предварительно включит линтер при загрузке, даже если не удается найти python по умолчанию, поскольку запрошенная версия python может измениться в зависимости от ваших настроек.
Например, если бы для flake8 не было версии python по умолчанию, вы бы увидели это в консоли при запуске:
Теперь, если вы попытаетесь использовать линтер flake8 с кодом, для которого не установлена конкретная версия Python с параметром @python meta , параметром inline или shebang , вы увидите эту ошибку в консоли:
Модуль не установлен¶
С другой стороны, если python2 доступен и у вас есть метаданные или встроенные настройки @python: 2, но у вас не установлен flake8 для python 2, в консоли вы увидите что-то вроде этого:
Несколько полезных советов¶
- Версии Python, в которых вы кодируете, доступны в вашем PATH .
- Вы устанавливаете модуль linter (используя easy_install или pip) для всех версий Python, с которыми планируете его использовать.
Если вы это сделаете, у вас не должно возникнуть никаких проблем. Но если вы это сделаете, надеюсь, приведенное выше руководство по устранению неполадок поможет вам понять, что не так с конфигурацией вашей системы.
© Copyright 2016, Сообщество SublimeLinter. Редакция 1cecc79c .
Версии последняя стабильная версия v3.10.10 master Загрузки в Read the Docs Project Home Сборки Бесплатный хостинг документов, предоставляемый Read the Docs.
Читайте также: