- PVSM.RU - https://www.pvsm.ru -
Приветствую. Поговорим о вертикальном выравнивании кода?
Итак, вдохновившись недавней статьей [1] я понял как надо. Полностью автоматическое выравнивание + парсинг синтаксиса вещь конечно удобная, но нет. И у меня родилась идея. Мы просто даем программисту самому в каждом конкретном случае определить, по каким символам и в каких местах выравнивать код.
Работает это в любом редакторе и с любым текстом. Как-то так:

Сразу забрать приложение можно тут: sourceforge.net/projects/tnice/files/ [2]
(выделяем текст, жмем Ctrl+Shift+D, пишем символы выравнивания, жмем Ctrl+Enter)
А подробный мануал и принцип работы под катом.
У меня давно назревала мысль отказаться от поделки под называнием Punto Switcher. Он использует глобальные хуки (а это большая ответственность), я ему не доверяю, т.к. он сам лазеет проверять обновления, хотя галки не стоят. Неоднократно нарывался на ошибки, к которым приводил Punto. Поэтому самую важную функцию: конвертирование раскладки — я вынес в этот софт. Так же в него попала функция конвертирования капса + перевод текста в транслит (на всякий случай :D ). Ну и конечно же киллер-фича — выравнивание кода по вертикали.
В общем софт работает так. Когда случается хоткей софт делает следующее:
1. Бекапит текущий текст в буфере обмена
2. Очищает буфер обмена
3. Эмулирует нажатие Ctrl+C
4. Ждет появления в буфере обмена текста (постоянно проверяя его раз в 10мс, и так в течение одной секунды)
5. Как только текст появился — либо сразу конвертирует, либо запускает редактор
6. В случае успешного редактирования — кладет в буфер обмена новый текст
7. Эмулирует нажатие пользователем Ctrl+V
8. Ждет пол секунды и восстанавливает старый буфер обмена. Если на любом из этапов после второго — что-то пойдет не так, все равно восстанавливает текст в буфере обмена.
После запуска будет иконка в трее. Клик по иконке развернет окно настроек:

В нем слева хоткеи на все функции. На скриншоте первый хоткей — это 'Shift + ' На самом деле там должен быть Pause|Break, но дефолтный виндовый контрол почему-то не оторбражает его. Зеленые галочки означают что хоткей был успешно установлен. Справа опции для окна вертикального выравнивания. В общем интуитивно понятный интерфейс ^_^.
Основной юзкейс — выделяем кусок текста, жмем хоткей. Конвертирование будет происходить сразу, а вот для выравнивания кода будет запущен редактор:

В нем в правой части на каждой строке пишем подстроки, по которым будем выравниваться. Когда все написали — жмем Ctrl+Enter и редактирование будет завершено (либо Esc для отмены редактирования).
Нужно доработать мануалы и описание на sourceforge. Добавить галку автозагрузки. Хотелось бы добавить звук при конвертиорвании текста (как у пунто).
Проект открыт, лицензия будет GNU.
Теперь вы знаете как я провел вчерашнее воскресенье.
Автор: MrShoor
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/delphi/64933
Ссылки в тексте:
[1] недавней статьей: http://habrahabr.ru/post/229465/
[2] sourceforge.net/projects/tnice/files/: https://sourceforge.net/projects/tnice/files/
[3] Soruceforge TNice: https://sourceforge.net/projects/tnice
[4] Источник: http://habrahabr.ru/post/229833/
Нажмите здесь для печати.