AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Редактирование html кода
Goto page 1, 2  Next
 
Post new topic   Reply to topic    AkelPad Forum Index -> Discussion (Russian)
View previous topic :: View next topic  
Author Message
Nizaury



Joined: 06 Dec 2011
Posts: 30

PostPosted: Wed Oct 01, 2014 8:54 am    Post subject: Редактирование html кода Reply with quote

Подскажите, какие-либо скрипты(плагины) для быстрой вставки HTML тэгов до и после выделенного текста.
Back to top
View user's profile Send private message
Cuprum



Joined: 28 Sep 2011
Posts: 254

PostPosted: Wed Oct 01, 2014 9:13 am    Post subject: Reply with quote

Nizaury

insertTag.js
Back to top
View user's profile Send private message
Nizaury



Joined: 06 Dec 2011
Posts: 30

PostPosted: Wed Oct 01, 2014 10:46 am    Post subject: Reply with quote

С одной стороны конечно удобно, что тэги открытия приходится вводить вручную, но больше интересует подобие плагина BBCode, где уже присутствует базвый набор тэгов+возможность добавить их самому как в контекстное меню, так и на панель инструментов.

При работе скрипта insertTag.js наблюдаются существенная ошибка - Неправильное распознавание последовательности из 2 тегов.

Например:

1) Если ввести в качестве открытия <p><b>, то в качестве закрытия он предложит </p><b>
2) Если ввести в качестве открытия <input type='button' class="splLink" value='Show'><div class="splCont"> , то вместо </div> он предложит </input>
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 481

PostPosted: Wed Oct 01, 2014 11:31 am    Post subject: Reply with quote

Nizaury
Можно ещё посмотреть Insert в ContextMenu plugin.
Back to top
View user's profile Send private message
Lenchik



Joined: 10 Jan 2011
Posts: 291

PostPosted: Wed Oct 01, 2014 2:22 pm    Post subject: Reply with quote

Я назабивал в хоткеи через соответствующий плагин требующиеся комбинации, например
Code:
Insert("<mark class=\[0022]filename\[0022]>\s</mark>", 1)

А так-то с автором InsertTag наверняка можно списаться и предложить доработать.
Back to top
View user's profile Send private message Visit poster's website
Skif_off



Joined: 20 Oct 2013
Posts: 481

PostPosted: Wed Oct 01, 2014 2:48 pm    Post subject: Reply with quote

Lenchik
\[0022] - это аналог позиции каретки $[] в coder-файлах?
Back to top
View user's profile Send private message
Infocatcher



Joined: 06 Aug 2007
Posts: 1648

PostPosted: Wed Oct 01, 2014 3:07 pm    Post subject: Reply with quote

Nizaury wrote:
insertTag.js
...
1) Если ввести в качестве открытия <p><b>, то в качестве закрытия он предложит </p><b>
2) Если ввести в качестве открытия <input type='button' class="splLink" value='Show'><div class="splCont"> , то вместо </div> он предложит </input>
На данный момент поддерживается ввод только одного тэга за раз.
По п. 2) с <input> и ему подобными надо иметь список тэгов, которые не надо закрывать, да еще и распознать тип документа, чтобы в случае необходимости вставить <input/>. Это все нетривиально и усложнит логику.
Закрытие всего, что было открыто, можно попробовать сделать, но, опять же, без проверок на вложение уже закрытых тэгов.
Back to top
View user's profile Send private message Visit poster's website
Lenchik



Joined: 10 Jan 2011
Posts: 291

PostPosted: Wed Oct 01, 2014 5:50 pm    Post subject: Reply with quote

Skif_off
Это код символа
Code:
"
Back to top
View user's profile Send private message Visit poster's website
Skif_off



Joined: 20 Oct 2013
Posts: 481

PostPosted: Wed Oct 01, 2014 11:14 pm    Post subject: Reply with quote

Lenchik
С телефона сложно Smile
Back to top
View user's profile Send private message
Nizaury



Joined: 06 Dec 2011
Posts: 30

PostPosted: Thu Oct 02, 2014 5:53 am    Post subject: Reply with quote

Infocatcher wrote:
На данный момент поддерживается ввод только одного тэга за раз.
По п. 2) с <input> и ему подобными надо иметь список тэгов, которые не надо закрывать, да еще и распознать тип документа, чтобы в случае необходимости вставить <input/>. Это все нетривиально и усложнит логику.
Закрытие всего, что было открыто, можно попробовать сделать, но, опять же, без проверок на вложение уже закрытых тэгов.

Если уж и вводить вручную вместо выбора из списка тегов, то главным плюсом сглаживающим необходимость ручного ввода, имхо должна быть правильно распознанная мультитэговость. Ну пока можно добавить закрытие всего открытого, затем список исключений, а после уже и глубину проверки открытых тэгов.
___________________________________________________________
Предположу идеальный скрипт(плагин) для работы с HTML тэгами:

1) Пункт в контекстном меню наподобие BBCode, где можно из списка выбрать необходимый тэг.
2) Возможность добавления новых тэгов в список
3) Возможность создания списка исключения тэгов, которые не должны добавляться после каретки.
4) Подпункт в меню при нажатии которого можно ввести открывающие тэги самостоятельно, как вариант - доработанный insertTag.js с грамотным распознаванием вложенных тегов, и работающий со списком исключений, указанном в пункте 3.
Back to top
View user's profile Send private message
Infocatcher



Joined: 06 Aug 2007
Posts: 1648

PostPosted: Thu Oct 02, 2014 6:29 am    Post subject: Reply with quote

Nizaury
Любые пункты меню можно сделать через плагин ContextMenu.
Back to top
View user's profile Send private message Visit poster's website
Lenchik



Joined: 10 Jan 2011
Posts: 291

PostPosted: Thu Oct 02, 2014 3:07 pm    Post subject: Reply with quote

Nizaury
А вы не пробовали Autocomplete фичу плагина Coder? Доработали бы имеющиеся дополнения нужными вам комбинациями и вызывали бы их набором записанных символов. Может быть потом вошло бы в основной обновляемый html.coder.
Back to top
View user's profile Send private message Visit poster's website
Nizaury



Joined: 06 Dec 2011
Posts: 30

PostPosted: Fri Oct 03, 2014 5:09 am    Post subject: Reply with quote

Меню с пунктами часто используемых тэгов и вызовом скрипта insertTag.js создал - это не проблема. Осталось дождаться доработки указанного скрипта - для полноценного его использования. Надо будет еще добавить кнопки на панель инструментов. Однако каждый раз после переустановки программы / Windows заново создавать с нуля все иконки и пункты меню... Mad

Lenchik wrote:
Nizaury
А вы не пробовали Autocomplete фичу плагина Coder? Доработали бы имеющиеся дополнения нужными вам комбинациями и вызывали бы их набором записанных символов. Может быть потом вошло бы в основной обновляемый html.coder.


Так у Autocomplete в Coder примерно тот же принцип действий, что и у insertTag.js, только проще говоря моменты предугадывания вставляемого текста разные.
insertTag.js - требует начальный тэг и подбирает сам конечный.
Autocomplete - требует начать ввод тэга и сам его дописывает, плюс вроде бы не работает с позицией текста относительно каретки.
Имхо, insertTag.js немного удобней хоть и не доработан.
Back to top
View user's profile Send private message
Infocatcher



Joined: 06 Aug 2007
Posts: 1648

PostPosted: Fri Oct 03, 2014 7:28 am    Post subject: Reply with quote

Nizaury
Немного доработал: https://github.com/Infocatcher/AkelPad_scripts/compare/abbebedf5a...c2981891ac
Теперь должно закрывать все открытые тэги типа
Code:
<div><pre><em><ins><strong>
=> <div><pre><em><ins><strong></strong></ins></em></pre></div>

или
Code:
<div id="d"><pre class="p"><em><ins class="i"><a rel="x">
=> <div id="d"><pre class="p"><em><ins class="i"><a rel="x"></a></ins></em></pre></div>
Back to top
View user's profile Send private message Visit poster's website
opk44



Joined: 16 Jan 2010
Posts: 366

PostPosted: Fri Oct 03, 2014 9:39 am    Post subject: Reply with quote

Nizaury wrote:
... Однако каждый раз после переустановки программы / Windows заново создавать с нуля все иконки и пункты меню... :x
Зачем с нуля? Я бы обратил внимание на "первоисточники":
http://akelpad.sourceforge.net/files/plugs/ContextMenu/Main-Rus.txt
http://akelpad.sourceforge.net/files/plugs/ContextMenu/Main-Eng.txt
Ничего не мешает руководствоваться теми же принципами "на месте". Сохраните свои настроенные меню и пусть лежат в сторонке.
Кстати и с тулбаром аналогично.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Discussion (Russian) All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group