Как установить Sublime Text для работы с C/C++
Время чтения: 10 минут
Sublime Text — текстовый редактор с большим набором дополнительных возможностей. Поддерживает различные языки программирования и умеет подсвечивать синтаксис кода. Имеет множество дополнительных расширений, с помощью которых можно добиться максимально комфортной и удобной работы и на время забыть, что используешь обычный текстовый редактор, а не интегрированную среду разработки вроде Visual Studio или Eclipse.
Помимо этого в редактор встроены самые разнообразные функции для работы с текстом, которых обычно не встретишь в простеньких редакторах вроде стандартного блокнота. Среди наиболее интересных функций — смена регистра, перестановка и сортировка строк, использование регулярных выражений, а также использование нескольких курсоров одновременно. В этой статье мы расскажем, как установить Sublime text на компьютер и настроить его для комфортной работы с языками C и C++.
Скачиваем установщик
Чтобы установить Sublime text на компьютер для начала необходимо скачать установочный файл. Для этого заходим на официальный сайт редактора и выбираем подходящую версию: www.sublimetext.com/3. Мы будем использовать версию для операционной ситсемы Windows 64 битной разрядности.
Выбираем нужный установщик
Запускаем установку
После того, как установочный файл загрузится, запускаем его. Появится окно с выбором пути установки приложения. Мы оставили его по умолчанию, но при большом желании можете изменить этот путь. После этого нажимаем кнопку next и ставим галочку в поле «Add to explorer context menu», если хотим, чтобы Sublime text можно было быстро найти в меню пуск:
1. Начинаем установку
2. Добавляем в меню пуск
После этого остаётся лишь нажать кнопку «Install» и немного подождать, пока установщик скопирует нужные файлы и поставит текстовый редактор на компьютер. По завершении установки остаётся лишь нажать кнопку «Finish» и можно приступать к написанию кода:
3. Устанавливаем
4. Установка завершена
Устанавливаем package control
Package control — это менеджер различных дополнений для расширения возможностей текстового редактора прямо из него. С его помощью можно добавлять другие языки программирования, пакеты для автоматического дополнения кода, форматирования текста и многое другое. Чтобы его установить, запускаем Sublime, если ещё не сделали это раньше, щёлкаем в верхнем меню «Tools» и выбираем внизу пункт «Install package control». Текстовый редактор может на время подвиснуть, но уже скоро вы увидете сообщение об успешной установке:
Устранавливаем package control
Package control успешно установлен
Ставим пакеты для удобной работы с C и C++
Для удобной работы как с языками C и C++, так и любым другим текстом, мы рекомендуем поставить следующие пакеты:
- All autocomplete — это пакет, добавляющий возможность автозаполнения. При наборе текста этот пакет показывает всплывающее окно с доступными для заполнения вариантами, что очень удобно, когда требуется набирать длинные слова, ведь для этого достаточно буквально нескольких нажатий. Главной особенностью этого пакета является, пожалуй, просмотр всех открытых в данный момент вкладок, благодаря чему имеется возможность использовать слова, которые написаны в других файлах.
- C++ completions — это пакет, во многои схожий с all autocomplete, однако делающий особый упор именно на языке C++. Он позволяет в пару нажатий добавлять подключение библиотек, создание стандартных объектов, использование пространсва имён и многое другое.
Чтобы добавить новый пакет в Sublime Text нужно запустить package control и выбрать install package:
Запуск package control
Добавление нового пакета
All autocomplete
После выполнения команды install package пишем несколько символов названия пакеты, выбираем нужный из списка и просто щёлкаем по нему, что мгновенно запустит его установку. Процесс установки можно видеть в левой нижней части экрана. После её завершения можно сразу же переходить к установке следующего пакета.
Установка пакета All autocomplete
C++ completions
Как и с предыдущим пакетом, открываем package control, выбираем команду install package, вписываем название пакета и устанавливаем его. В отличие от all autocomplete, это расширение по завершении установки откроет файл, в котором находится информация о пакете и о том, как его использовать:
Установка пакета C++ completions
Успешная установка пакета
C++ snippets
С этим пакетом всё полностью аналогично, и он также в конце покажет файл с иннормацией о себе.
Установка пакета C++ snippets
Успешная установка пакета
В завершение
Теперь, когда sublime text установлен и настроен для работы с C/C++, можно приступать к написанию программ. Для этого создайте новый текстовый файл и измените его расширение с .txt на .c или .cpp, после чего откройте его в Sublime text. Поскольку саблайм является лишь текстовым редактором, а не IDE, то для сорбки приложения необходимо использовать компилятор, например, gcc. О том, как установить его в windows мы писали в статье как установить компилятор gcc / g++ для Windows.
Кудинова Светлана
Программист, соосновательница programforyou.ru, рукодельница, всегда готова придти на помощь и помочь во всём разобраться
Языки программирования: Python, C, C++, Pascal
Выпускница МГТУ им. Н.Э. Баумана
Sublime Text 2 для C/C++ разработчика или SublimeClang / Хабр
На хабре много статей посвященных редактору Sublime Text 2. Обычно они рождают за собой множество комментариев, где сторонники ST2 и всевозможных других редакторов (а также полноценных IDE) предаются веселому процессу «достоинствометрии».
Однако, среди комментариев мне лично ни разу не встречалось упоминаний о плагине SublimeClang, который кардинально меняет работу C++ программиста в этом редакторе.
Не знаю, чем вызвано такое игнорирование. Хорошие вещи не обсуждаются? ST2 не используют C и С++ разработчики? Своей статьей я хочу исправить ситуацию. Я расскажу о некоторых, возможно не очевидных, особенностях установки и настройки, а также поделюсь парой собственных приемов и скриптов.
О плагине
Итак, плагин обеспечивает автодополнение кода и проверку ошибок прямо по ходу написания программы. Для файлов C/C++/ObjC/ObjC++ плагин заменяет стандартное автодополнение редактора на свое собственное. Для этого, плагин в фоне прогоняет исходник через компилятор clang, который формирует AST. Полученную информацию плагин использует для интеллектуальных подсказок автодополнения.
Использование информации из первых рук — от компилятора — позволяет плагину правильно узнавать, какие переменные, функции, типы и т. п. доступны в данной конкретной точки программы. Так же, в какой-то мере работают
Go to definition (alt + d, alt + d)
и Go to implementation (alt + d, alt + i)
. Список остальных горячих клавиш доступен на странице проекта.Установка
Пользователям Windows и Mac OS X повезло — устанавливается плагин элементарно, через Sublime Package Manager.
Пользователям Linux — повезло меньше. Для Linux необходимые библиотеки не поставляются в собранном виде, так что устанавливать плагин надо из git-репозитория и провести сборку вручную. (Вообще, поставить-то можно и через Package Manager, вот только он удаляет все собранные вручную библиотеки каждый раз, когда решает проверить обновления). Инструкция по сборке есть на странице плагина, пункт «Additional Prerequisites (Linux Only)».
Пример установки на моей системе Archlinux x64
- Установить clang
- Установить python26
- Для того, чтобы победить ошибку «ctypes can’t be imported» сделать symlink:
ln -s /usr/lib/python2. 6/ /opt/sublime_text/lib/python2.6
- Установить SublimeClang
git clone --recursive git://github.com/quarnster/SublimeClang.git
- Так как в archlinux libclang.so находится в /usr/lib/llvm/, т.е. не там, где ее ожидает увидеть SublimeClang, делаю symlink внутрь папки плагина.
- Собираю недостающие плагину библиотеки по инструкции со страницы проекта.
cd src mkdir build cd build cmake .. make
Настройка
Настраивается плагин стандартным для ST2 способом.
Есть файл SublimeClang/SublimeClang.sublime-settings
. Файл хорошо документирован, все возможные настройки перечислены там и в комментариях есть примеры использования.
Есть User/SublimeClang.sublime-settings
, куда следует перенести собственные настройки.
Так же, возможно указать специфичные для проекта параметры. Они указываются в файле проекта (Project - Edit project
) в секции "Settings"
. К имени каждой опции плагина добавляется префикс "sublimeclang"
. Таким образом, например, настройки проекта, использующего C++11 могут выглядеть так
"settings": { // Настройки самого редактора "trim_trailing_white_space_on_save": true, // Настройки плагниа // В основном файле настроек плагина эта опция называется "additional_language_options". Здесь же добавляем префикс. "sublimeclang_additional_language_options": { "c++" :["-std=c++11", "-stdlib=libc++" ] } }
Стандартные общие настройки весьма адекватны. Единственное — что я меняю и вношу в User-настройки — это "debug_options": true
. Эта опция включает вывод списка параметров, которые передаются компилятору. После включения, параметры компилятора будут выводиться в консоли редактора (View - Show console
).
Интеграция с билд-скриптами
Основная проблема, с которой я столкнулся — плагин (а значит и компилятор) не знает где искать заголовочные файлы нестандартных библиотек.
Основной способ решения проблемы — использование опций плагина
"options"
и "additional_language_options"
, которые позволяют передать компилятору пути и необходимые дефайны. Естественно, можно указать общие и специфичные для проекта настройки. Например"sublimeclang_options": [ "-I~/libs/boost_1_52_0", "-I~/code/sdl2/root/include" ]
Метод универсальный и простой как валенок, но содержит существенный недостаток — настройки, фактически, повторяют ту информацию, которая и так известна build-системе, которая собирает код проекта.
Плагин предоставляет опцию «options_script», в которой можно указать команду, которая будет вызываться для каждого файла. Эта команда должна вернуть список опций компилятора для данного конкретного файла. Таким образом можно писать собственные скрипты, которые спросят настройки компилятора у build-системы и сообщат их плагину.
Разработчик плагина в комментариях к опции даёт ссылку на скрипт https://gist. github.com/3944250, который берет настройки компиляции из CMake.
Для своего текущего проекта я немного подредактировал скрипт. Теперь
- скрипт подбирает настройки к заголовочным файлам;
- не жестко задается папка, в которой CMake проводит сборку. Вместо этого скрипт ищет папку build, проходя рекурсивно на верх по дереву папок. У меня в одном проекте ST2 много разных маленьких проектов CMake.
Моя версия скрипта https://gist.github.com/4641812
Аналогично я проводил интеграцию с утилитой ino, которая используется для сборки проектов arduino. Ссылка на скрипт https://gist.github.com/4641886. В шапке скрипта приведены настройки, которые необходимо добавить в файл проекта ST2. Также следует указать ST2 считать файлы
файлами C++. Для этого в правом нижнем углу нажать на выбор схемы подсветки кода и выбрать С++ в подменю "Open all with current extension as..."
.
Теоретически, можно создать скрипт, который вытащит команды компиляции из Makefile-скриптов. GNU make позволяет сделать дамп всех переменных и правил (make -np
), которые затем можно распарсить и вытащить команды компиляции. И я даже начинал писать скрипт, но забросил это дело.
Недостатки
Ну а куда же без них.
- В некоторых замороченных случаях (дополнение параметров шаблона какого-нибудь замороченного шаблонного класса) плагин таки падает и роняет за собой ST2. Бывает редко, я видел такое всего пару раз во время моих экспериментов с новыми фичами C++11. Неприятно, конечно, но спасает то, что ST2 очень часто делает автосохранения. Я терял всего пару последних изменений кода.
- Иногда плагин не видит вариантов для дополнения. Особенно, если в файле есть ошибки. Что, конечно, логично, на исходник с ошибками полагаться нельзя, но тем не менее, не приятно.
- Плагин иногда не подсказывает имя метода класса, когда пишешь его вызов в теле другого метода того же класса. this->method_name — подсказывает. Просто начинаешь писать method_name — не подсказывает. Повторяется не всегда, я не могу конкретнее сказать, когда такое происходит — просто не исследовал.
- Недостаток, скорее не самого плагина, а моего скрипта выделения параметров компилятора из базы cmake. Допустим мы переходим к определению функции (или класса, чего угодно) в заголовочный файл сторонней библиотеки. Настройки компилятора для этого заголовочного файла плагину уже не известны и он теряется, выдает кучу ошибок на неизвестные типы и т.п.
Заключение
В данной статье я попытался описать тонкости настройки, которые, на мой взгляд, не достаточно хорошо описаны в документации. Я надеюсь, статья поможет тем разработчикам, которые, как и я, хотели бы иметь инструмент для быстрой проверки своих идей или для ведения небольших проектов, для которых расчехлять полноценную IDE не годится. ST2, с его богатыми возможностями по редактированию и навигации в тексте, вместе с плагином SublimeClang, становится отличным инструментом для разработчика.
Как запустить программу C и C++ в Sublime Text
В этом руководстве вы узнаете, как запускать программу C и C++ в Sublime Text в Windows.
Это очень популярный и широко используемый программистами и разработчиками текстовый редактор. Просто выполните следующие шаги, чтобы настроить возвышенный текст для компиляции и запуска программ C и C++. Я проверил шаги в возвышенном тексте 3, но я уверен, что он будет работать и для любой другой версии.
Читайте также: Настройка Notepad++ для запуска программ C, C++ и Java
Здесь я считаю, что в вашей системе установлен компилятор GCC.
Часть 1. Добавление пути в переменные среды1. Скопируйте путь к папке bin компилятора GCC. В моем случае путь выглядит так, как показано ниже, в вашем случае он может быть другим.
C:\Program Files (x86)\CodeBlocks\MinGW\bin
2. Теперь щелкните правой кнопкой мыши Компьютер и выберите Свойства . Затем нажмите на Предварительные настройки системы и после этого нажмите Переменные среды .
3. В следующем окне в разделе Системные переменные найдите переменную с именем Путь . Выберите его и нажмите кнопку Edit .
4. В текстовом поле Variable value перейдите в конец, затем введите точку с запятой, а затем вставьте путь к папке bin, которую вы скопировали. См. скриншот ниже.
5. Наконец, нажмите все кнопки OK , чтобы сохранить настройки.
Часть 2: Настройка Sublime TextОткройте возвышенный текст и перейдите в Tools > Build System > New Build System , а затем вставьте в него следующие строки.
Для C:
{ «shell_cmd»: «gcc $file_name -o ${file_base_name}», «рабочий_каталог»: «$file_path», «варианты»: [ { «имя»: «Беги», «shell_cmd»: «gcc $file_name -o ${file_base_name} && ${file_path}/${file_base_name}» } ] }
1 2 3 4 5 6 7 8 10 110003 12 | { «Shell_ Shell_ Shell_ Shell_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ well_ wetrabm. -o ${file_base_name}», «working_dir» : «$file_path»,
«варианты»: [ { «имя»: «Выполнить», » gcc $file_name -o ${file_base_name} && ${file_path}/${file_base_name}» 9:]*):([0-9]+):?([0-9]+)?:? (.*)$», «working_dir»: «${file_path}», «селектор»: «исходник.c, исходник.c++», «варианты»: [ { «имя»: «Беги», «shell_cmd»: «g++ \»${file}\» -o \»${file_path}/${file_base_name}\» && \»${file_path}/${file_base_name}\»» } ] }
Нажмите ctrl+s и сохраните его с именем файла СРР_РУН. Для запуска программы перейдите в Tools > Build With и затем выберите C_RUN — Run или CPP_RUN — Run в зависимости от используемого языка. ВидеоурокЕсли у вас есть какие-либо вопросы, задайте их в разделе комментариев, я постараюсь решить их. Как запустить C/C++ в Sublime Text? | Хабиб Рахман | Компьютерная культураНаучитесь запускать C или CPP в Sublime Text, Lifesaver of Contest Programming Christopher Gower — UnsplashC и C++ — самые мощные языки программирования в мире. Большинство сверхбыстрых и сложных библиотек и алгоритмов написаны на C или C++. Большинство мощных программ ядра также написаны на C. Так что пропустить его невозможно. Большинство программистов предпочитают писать код на C или C++ на соревнованиях по программированию. Tourist считается лучшим в мире участником соревнований по программированию среди всех возрастов, которые пишут код на C++. Во время соревнований по программированию программисты предпочитают использовать облегченный редактор, чтобы сосредоточиться на кодировании и разработке алгоритмов. Vim, Sublime Text и Notepad++ являются наиболее распространенными редакторами. Помимо конкуренции, многие разработчики программного обеспечения и профессионалы любят использовать Sublime Text из-за его гибкости. Геннадий Короткевич (он же Турист) — белорусский спортивный программист — фото из Википедии В этом посте я рассказал о шагах, которые необходимо выполнить перед запуском кода C/C++ в Sublime Text. Мы возьмем входные данные из входного файла и выведем выходные данные в выходной файл без использования связанных с файлами функций
— Установить ключ GPG: wget -qO — https://download. sublimetext.com/sublimehq-pub.gpg | sudo apt-key add - — Теперь мы выбираем стабильный канал для использования: echo "deb https://download.sublimetext.com/apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list — Обновите и установите Sublime Text: sudo apt-get update
Наша основная задача — автоматически запускать наши коды, получая входные данные из файла без ручного ввода входных данных каждый раз, когда мы запускаем наш код. Итак, мы должны добавить новую систему сборки. Нам нужно перейти Наконец, теперь мы можем собрать наш код, нажав |