Для того, чтобы легко изменить в вертикальном выделении огромное количество ячеек в таблице в одном выделении с вертикальной вставкой. (вставка в каждой строке из списка, который имеет разное значение в каждой строке).
Я хотел бы сделать это внутри Notepad++ только без необходимости что-либо программировать.
То, что у меня есть с самого начала, - это обычное содержимое таблицы <Tbody>, подобное этому:
<tbody>
<tr>
<td>
MachineType
</td>
<td>
Yt_GP_MachineType
</td>
<td/>
<td>
MyMachine.MachineType
</td>
</tr>
<tr>
<td>
Variant
</td>
<td>
Yt_GP_Variant
</td>
<td>
</td>
<td>
MyMachine.Variant
</td>
</tr>
<tr>
<td>
Emulation
</td>
<td>
Yt_GP_Emulation
</td>
<td>
</td>
<td>
MyMachine.Emulation
</td>
</tr>
И я хотел бы иметь макрос, который линеаризует и выравнивает все узлы <tr> и ниже в одной строке, например:
<tbody>
<tr><td> MachineType </td><td> Yt_GP_MachineType </td><td></td><td> MyMachine.MachineType </td></tr>
<tr><td> Variant </td><td> Yt_GP_Variant </td><td></td><td> MyMachine.Variant </td></tr>
<tr><td> Emulation </td><td> Yt_GP_Emulation </td><td></td><td> MyMachine.Emulation </td></tr>
Примечание: автоматическое выравнивание каждого узла <td> и </td> важно, и плагин «Выравнивание кода» Notepad++ не работает, если я упомянул выравнивание по... (CTRL+SHIFT+=) «<» для моя часть. В настоящее время я делаю это вручную...
Примечание 2. Подключаемый модуль Linearize или Pretty print из XML Tool не решает мою проблему.
@Toto Готово, спасибо за заметку. Если у вас есть какие-либо предложения по решению моей проблемы, я был бы рад услышать об этом :)
Краткая история - ИМХО, вы должны написать сценарий на своем любимом языке сценариев.
Кстати, пробелы внутри <tr>...</tr>
только упрощают ручное редактирование и должны быть заменены использованием CSS, например. <tbody style = "vertical-align:center;text-align:center"><tr style = "height:100px">
Но если вы действительно хотите сделать специальную линеаризацию с помощью Notepad++, вот мужской способ для Windows. Для других операционных систем вы должны адаптировать это.
<td/>
. Найдите что: <td/>
, Замените на: <td></td>
<tr>
, заменить на: \r\n<tr>
tr
на td
): найти что: <td>
, заменить на: \r\n<td>
</td>
(Возможно, вам потребуется установить плагин.)<td>
, Замените на: <td>
. Обратите внимание на два пробела здесь!<tr>
, заменить на: \r\n<tr>
Все это приводит к:
Большое спасибо, всего одна точность: «Линеаризация» преобразует всю пустую строку из <td></td> в <td/>. Затем это нужно повторять каждый раз, когда используется линеаризация. А что касается шага 11. Чтобы вернуться в одну строку, мне пришлось сделать \r\n наоборот, но я понял логику, и это нормально!
Пожалуйста. Если ответ помог вам решить вашу проблему, не стесняйтесь пометить ответ как принятый. Вам также следует подумать о голосовании.