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 

Помогите написать скрипт на JavaScript

 
Post new topic   Reply to topic    AkelPad Forum Index -> Discussion (Russian)
View previous topic :: View next topic  
Author Message
Oleg



Joined: 26 Dec 2017
Posts: 8

PostPosted: Tue Dec 26, 2017 5:43 pm    Post subject: Помогите написать скрипт на JavaScript Reply with quote

Как написать скрипт, который превращал бы каждую строку (от начала строки до символа перевода строки) в отдельный абзац. Короче заменял бы перевод строки (именно строки, а не абзаца) в абзац.
Просмотрел все скрипты для AkelPada, но нужного не нашёл. Помогите, плиз.
Back to top
View user's profile Send private message Send e-mail
opk44



Joined: 16 Jan 2010
Posts: 615

PostPosted: Tue Dec 26, 2017 8:41 pm    Post subject: Re: Помогите написать скрипт на JavaScript Reply with quote

Oleg wrote:
Как написать скрипт, который превращал бы каждую строку (от начала строки до символа перевода строки) в отдельный абзац. Короче заменял бы перевод строки (именно строки, а не абзаца) в абзац.
Просмотрел все скрипты для AkelPada, но нужного не нашёл. Помогите, плиз.

1. Пояснили бы лучше "на пальцах", чем у вас отличаются символы перевода строки от символов перевода абзаца. В AkelPad есть режим "перенос по словам" [Ctrl+U], но там никаких символов в действительности нет, одна "видимость". Хотя эту "кажимость" можно зафиксировать при помощи скриптов LinesWrap.js/LinesUnwrap.js.

2. Надо понимать, что AkelPad это не шестнадцатеричный редактор, а текстовый. Формат новой строки в нём определяется внутренними командами:
Code:
4184 Формат новой строки Windows (0Dh, 0Ah)
4185 Формат новой строки Unix (0Ah)
4186 Формат новой строки Mac (0Dh)
(см. также Меню ["Правка"]-->["Формат новой строки"]-->[...] и крайне полезно внимательно изучить информацию на строке статуса, где формат новой строки также отображен).

Отсюда следует, что при сохранении файла, даже если у вас и были какие-то различия в этих "переводах", они все будут потеряны и приведены к единому выбранному стандарту. Поэтому, с практической точки зрения, не вижу смысла даже пытаться делать какие-то замены по тексту во время сеанса работы типа '\x0d' ---> '\x0a' и т. п., а уж тем более, "городить" на эту тему скрипт.
Back to top
View user's profile Send private message
Oleg



Joined: 26 Dec 2017
Posts: 8

PostPosted: Wed Dec 27, 2017 6:07 am    Post subject: Reply with quote

Конец строки - это то ,где находится курсор после нажатия клавиши "END". Туда нужно вставить знак абзаца если его там нет.
Back to top
View user's profile Send private message Send e-mail
Oleg



Joined: 26 Dec 2017
Posts: 8

PostPosted: Wed Dec 27, 2017 6:37 am    Post subject: Reply with quote

P.S. Зачем мне это нужно. Если вставить текст из AkelPada в обычный блокнот windows, то каждый абзац растянется на одну строку. Естественно читать так неудобно. Поэтому и надо длину абзаца подогнать под окно блокнота.
Back to top
View user's profile Send private message Send e-mail
YuS



Joined: 15 Sep 2013
Posts: 439

PostPosted: Wed Dec 27, 2017 9:10 am    Post subject: Reply with quote

Oleg wrote:
Конец строки - это то ,где находится курсор после нажатия клавиши "END". Туда нужно вставить знак абзаца если его там нет.

opk44 wrote:

1. Пояснили бы лучше "на пальцах", чем у вас отличаются символы перевода строки от символов перевода абзаца.

?
А вообще, не понимаю абсолютно - зачем из AP в блокнот вставлять текст и там его читать?! AP - одна из лучших, если не лучшая, замена штатному блокноту...
Но если очень хочется, то необходимо отключить штатное сворачивание строки и воспользоваться скриптом, например LinesWrap.js, который умеет сворачивать строки по заданному формату...
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 615

PostPosted: Wed Dec 27, 2017 9:25 am    Post subject: Reply with quote

Oleg wrote:
...Если вставить текст из AkelPada в обычный блокнот windows, то каждый абзац растянется на одну строку. Естественно читать так неудобно. Поэтому и надо длину абзаца подогнать под окно блокнота.
Даже у "блокнота" есть опция меню [Формат]-->[Перенос по словам].
Но если, как говорится "русский витязь простых путей не ищет", то скрипт LinesWrap.js из первого пункта вам подойдёт.
Back to top
View user's profile Send private message
Evgenyatam



Joined: 17 Apr 2009
Posts: 31
Location: Гдето под Питером

PostPosted: Fri Jan 05, 2018 7:24 pm    Post subject: Reply with quote

символа абзац в акелпаде нет. абзац в чистом тексте это несколько пробелов/табуляций в начале строки. а зафиксировать концы строк можно плагином линес.
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 615

PostPosted: Fri Jan 05, 2018 9:32 pm    Post subject: Reply with quote

Evgenyatam wrote:
символа абзац в акелпаде нет. абзац в чистом тексте это несколько пробелов/табуляций в начале строки. а зафиксировать концы строк можно плагином линес.
Вы, когда шутите, хоть смайлики ставьте. А то, не ровён час, кто-нибудь ещё и поверит.
Back to top
View user's profile Send private message
YuS



Joined: 15 Sep 2013
Posts: 439

PostPosted: Sat Jan 06, 2018 5:46 am    Post subject: Reply with quote

opk44 wrote:
Вы, когда шутите, хоть смайлики ставьте.

Smile Ну, почему шутит? В принципе, хоть и сильно условно, но если очень хочется, то можно принять за начало абзаца:
Code:
(?>^\t|^ {2,})\K

и соответственно, концом абзаца можно считать:
Code:
$(?=(?>\n(?>^\t| {2,})|\Z))
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
Page 1 of 1

 
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