Page 1 of 1
Выравнивание текста
Posted: Thu Feb 18, 2016 6:30 am
by shraybikus
Подскажите, пожалуйста, как выравнивать текст по-ширине, желательно с расстановкой пробелов и переносов? Читал, что для этого был плагин Justify, но в новых версиях он не поддерживается, и на странице его закачки плагин отсутствует.
Posted: Thu Feb 18, 2016 11:56 am
by Skif_off
shraybikus
Посмотрите скрипт
AlignJustify.js, кажется, что-то ещё было, посмотрите описания
в первых двух постах.
FAQ
Posted: Thu Feb 18, 2016 1:39 pm
by yozhic
Posted: Thu Feb 18, 2016 1:44 pm
by shraybikus
Как-то всё сложно и непотребно. Такая простая операция, а делается через пень-колоду.

Posted: Thu Feb 18, 2016 3:30 pm
by yozhic
shraybikus
непотребно
Не понятно, какой смысл вкладываете. Скрипты поставленную задачу выполняют – значит они потребные.
сложно
Назначьте горячие клавиши скриптам при помощи плагина Hotkeys. Станет проще.
Posted: Thu Nov 26, 2020 2:38 pm
by Eskander88
посмотрел рекомендованные скрипты. Более практический пример:
Code: Select all
// ВХОДНЫЕ ДАННЫЕ
let arr = [
abcd = 1,
abc = 2,
ab = 3,
a = 456,
];
Есть ли скрипт, который выровняет хотя бы по одному символу в виде вертикальной колонки:
Code: Select all
// РЕЗУЛЬТАТ (выравнивание по запятой)
let arr = [
abcd = 1 ,
abc = 2 ,
ab = 3 ,
a = 456 ,
];
или более продвинутое:
Code: Select all
// РЕЗУЛЬТАТ
// (несколько символов для выравнивания)
let arr = [
abcd = 1 ,
abc = 2 ,
ab = 3 ,
a = 456 ,
];
Есть скрипты, которые для выравнивания колонок подобным образом?
Posted: Thu Nov 26, 2020 4:07 pm
by opk44
Eskander88
1. Как правило, от такой "красоты" стараются всеми силами избавляться. В любой организации вас, уж поверьте, заставят придерживаться либо корпоративного либо общепринятого стандарта (типа PEP8 для Python).
2. Но, если вам по каким-то своим причинам надо сделать нечто подобное, то попробуйте воспользоваться "пакетными заменами" в сочетании с регулярными выражениями.
\s*= (или) \s+= (заменять на) \t=
для запятых (если не только концевых, а всех подряд) аналогично
\s*, (заменять на) \t,
Posted: Thu Nov 26, 2020 5:02 pm
by Infocatcher
Eskander88 wrote:Есть ли скрипт, который выровняет хотя бы по одному символу в виде вертикальной колонки:
Можно попробовать
alignWithSpaces.js
Posted: Fri Nov 27, 2020 8:20 am
by AZJIO
Eskander88
Я могу алгоритмически подсказать, но писать не себе и не универсальное средство лень. Рег.выр`ом обсчитать в массив, определить максимальную ширину элементов столбца, дополнить пробелами каждый элемент столбца до максимальной ширины. Выполнить поиск и замену правого элемента массива на левый обработанный элемент массива.
Рег.выр. можно сделать не только для конкретной формы, можно сделать их для разных форм кода.
Так как выравнивание лучше делать на участке близлежащих строк, потому что переменные могут быть длинные и выравнивать лучше по самой длинной на участке, а не вообще, то можно сделать типа массив массивов, который будет захватывать только близлежащие строки и вычислять для них индивидуально.
Как вариант, можно сделать это для выделенного текста, т.е. не заморачиваться анализом участков.
Posted: Sat Nov 28, 2020 2:51 pm
by Eskander88
Infocatcher,
Благодарю! Скрипт
alignWithSpaces.js - как раз то, что надо.
opk44 wrote:1. Как правило, от такой "красоты" стараются всеми силами избавляться. В любой организации вас, уж поверьте, заставят придерживаться либо корпоративного либо общепринятого стандарта (типа PEP8 для Python).
opk44,
Это вопрос дискуссионный. В зависимости от данных, существуют свои критерии удобства и читабельности, тем более не всегда речь идёт о python, или вообще программном коде.