Xakep #305. Многошаговые SQL-инъекции
Началась работа над Lime Text — мощным и элегантным редактором кода, бэкенд которого написан на языке программирования Go. Разработчики запустили этот проект, чтобы сделать достойного наследника редактору кода Sublime Text, который пользуется заслуженным признанием у многих программистов. В отличие от предшественника, Lime Text будет на 100% свободной программой с открытым исходным кодом.
Sublime Text — быстрый кроссплатформенный редактор исходных текстов программ. Поддерживает плагины на языке программирования Python. Первая версия вышла в январе 2008 года под Windows и сразу стала популярной среди профессиональных разработчиков благодаря многочисленным удобным функциям, таким как контрастный интерфейс, визуальные темы, автосохранение, поиск по мере набора, автодополнение, проверка синтаксиса, автоматизация с помощью макросов, большой набор команд редактирования, выделение столбцов, встроенный менеджер пакетов, перемещение между файлами и внутри их с помощью нечёткого поиска и т.д.
Sublime Text поддерживает большое количество языков программирования и имеет возможность подсветки синтаксиса для C, C++, C#, CSS, D, Dylan, Erlang, HTML, Groovy, Haskell, Java, JavaScript, LaTeX, Lisp, Lua, Markdown, MATLAB, OCaml, Perl, PHP, Python, R, Ruby, SQL, TCL и XML. В дополнение к тем языкам программирования, которые включены в первоначальный пакет, пользователи имеют возможность загружать дополнения для поддержки дополнительных языков.
Lime Text получит несколько фронтендов: Qt (QML), HTML/JavaScript и командная строка. Но этим не ограничатся: сейчас в стадии обсуждения ещё несколько интерфейсов, в том числе Dart и Skia. То есть каждый разработчик сможет выбрать такой интерфейс, который наилучшим образом подходит именно ему.
Lime Text должен быть совместим с визуальными темами оформления Textmate, определениями синтаксиса и сниппетами, которые использует Sublime Text. Совместимость реализуют и на других уровнях, например, используют тот же API для питоновских расширений. Многое из этого уже реализовано на данный момент.
Бэкенд написан на Go, и всех желающих приглашают поучаствовать в исправлении выявленных недостатков. За отдельные патчи в Lime Text выплачивают вознаграждения.