Pull to refresh

Comments 9

Сколько пользуюсь — проблем с автозакрытием скобок/кавычек не возникало, всегда устраивало как они работают.
Хотя может кому то и будет полезен данный плагин.
P.S. Да и вообще в принципе никогда не понимал людей которым не удобно использовать автозакрытие кавычек/скобок. А потом сидят и втыкают где пропустили закрывающую кавычку/скобку.
Это комментарий про vim, который ты, читающий эти строки, хотел написать.
> В итоге пришлось плюнуть и соорудить мегакостыль обработки событий, минуя Scintilla API и используя чистый GLib

А пытались ли Вы связаться с авторами Scuntilla и обсудить этот вопрос (или выслать им патч выполняющий подобный функционал)?
Нет, не пытался даже. Я планировал отслеживать нажатия определённых клавиш, включая Shift и Backspace, а в API предусмотрена лишь передача кодов введенных символов, т.е. ни Shift, ни Backspace тут уже не вписываются, так как это клавиши, а не символы. Там предусмотрено событие DELETE, то есть удаление символа, но оно опять же не позволяет узнать какое это удаление — то ли Delete, то ли Backspace что в случае этого плагина было важно. То есть требования очень специфические, но ради небольшого плагина переделывать API движка, который используется в десятках редакторов — я думаю это перебор:)
Я поэтому и спросил. Т.к Scintilla это все же центральный компонент для немалого количества редакторов для программистов, полагаю, большинство авторов данных редакторов сталкивались с подобной проблемой. Быть может и какое-либо решение для этого уже предлагалось. ИМХО, обращение, в любом случае, было бы не лишним.

P.S По поводу пожеланий. Лично мне в Geany сильно не нравится то, что горизонтальный скроллинг не учитывает реальное состояние страницы и включен всегда, даже когда это не нужно. Авторы утверждают, что это особенность Scuntilla и отказываются это исправлять до тех пор, пока это не появится в самом Scintilla.
Возможно и не сталкивались — большинство редакторов на Scintilla (тот же Notepad++, о котором я могу более-менее судить) не претендуют на функциональность IDE и автодополнения символов а-ля Eclipse там нет. Единственный блокнот, где есть нормальное автодополнение — Sublime, но там похоже всё самописное. Учитывая примитивную реализацию вряд ли разработчики столкнулись с проблемами (считал введеный символ, записал парный — такой плагин в строк 15 уместится). Я могу гарантировать что патч, затрагивающий код Scintilla, не примут, а пропихивание сразу двух патчей в два не связанных друг с другом проекта в мои временные лимиты просто не укладывается. В Geany и так слишком консервативная разработка и даже багфиксы ждут своего часа годами.

> сильно не нравится то, что горизонтальный скроллинг не учитывает реальное состояние
Как там сказано, это for performance reasons. Я обычно всегда использую перенос строк и этот скроллбар не так уж и мешает. Но я не разработчик Scintilla и даже не контрибьютор, разбираться с компонентом редактирования желания не было — как раз производительность Scintilla даёт изюминку Geany:) В Geany ML были поползновения в сторону другого компонента редактирования — GtkSourceview, но на мой взгляд его производительность значительно отстаёт, хотя он и более OpenSource-вейный.

Отказываются исправлять опять же не просто так: Geany зависит от кодовой базы Scintilla и использует её непосредственно внутри себя. Т.е. если разработчики начнут ковырять движок Scintilla, им придётся потом заниматься его поддержкой. Учитывая что автор Geany перестал им заниматься, у текущей команды из двух с половиной человек нет просто на это ресурсов.
Учитывая что автор Geany перестал им заниматься, у текущей команды из двух с половиной человек нет просто на это ресурсов


Понятно, спасибо. Если мне не изменяет память, все три основных разработчика (Энрико, Френк и Ник) еще два года назад решили отказаться от разработки «Geany» из-за потери интереса к проекту. Да и у Коломбана (нового лидера) не было больших планов по развитию. Что-то изменилось с того времени? Каковы планы текущей группы разработчиков?

Текущая команда пока не планирует особо сильно менять Geany, потихоньку исправляют ошибки, не более того. Единственное, что возможно действительно серьёзное появится — это интеграция с clang, но вот устранять архитектурные проблемы никто не будет. Основные изменения в настоящий момент вносятся внешними разработчиками.
Sign up to leave a comment.

Articles