Страница 6 из 7

Добавлено: Пн дек 03, 2018 18:17
user351
Я только заинтересовался автоматизацией рутинных операций. И через поиск нашёл форум. В скриптах и прочих программах ничего не понимаю. Но стараюсь внимательно читать инструкции. Подскажите, пожалуйста, по этой кнопке:

Установил кнопку для скрипта по этой инструкции от Batya. Всё делал по инструкции. Кнопка прекрасно работает. Только не разобрался как правильно вписывать эти параметры:

Код: Выделить всё

' {создаваемый файл} [{минимальное количество цифр номера}]
'==========================================================
{создаваемый файл} - С этим вроде понятно. Я вписал название файла 1.txt. Теперь кнопка создаёт мне файлы с названиями 1_2.txt, 1_3.txt, 1_4.txt и так далее. Если назначаю в параметрах звёздочку *.txt, то кнопка не работает.
[{минимальное количество цифр номера}] - этот параметр я не понял. Писал в скобках разные цифры, то в итоге создавался файл без расширения. Что тут должно быть?

А эти коды нужно ли вписывать куда-нибудь?

Код: Выделить всё

Option Explicit
'====== Изменяемые параметры ==============================
Const IsQuestion = True 'Запрос на создание 

Добавлено: Пн дек 03, 2018 19:22
Flasher
user351
Для начала ознакомьтесь с памяткой и выполните в теме, где выложен скрипт, 1 пункт снизу.

Добавлено: Пн дек 03, 2018 21:18
user351
Flasher, спасибо, с памяткой ознакомился. В обсуждении памятки как раз и говорится, что новичками достаточно будет пары примеров использования скрипта. Параметров, в том числе.

По инструкции в памятке новичку скачал даже плагин просмотра версии интепретатора FileInfo, в случае ошибок в работе скрипта. Правда, не понял о каком интерпретаторе идёт речь. Я очень далёк от этого. Мне как новичку это ничего не говорит. Но дело в том, что у меня скрипт прекрасно работает. Никаких ошибок. Текст из буфера обмена подхватывается и создаётся файл. Только не хватает примеров, о чём я и говорил выше.
Flasher писал(а):выполните в теме, где выложен скрипт, 1 пункт снизу.
Извините, не совсем понял. Я нашёл скрипт на этой страничке:
В целях борьбы со спамом новичкам запрещено постить ссылки.
Если вы не спамер, приносим свои извинения за неудобства
Извините, не могу привести ссылку. Короче, в той теме висит всего лишь одно сообщение. Так и называется Отдельное собщение, Тема: Script Request. Автор сообщения Batya. Добавлено: Ср Май 05, 2010 11:15.

Никакого 1-го пункта снизу там не нашёл. О чём идёт речь?

Я всего лишь хотел уточнить как правильно заполнять параметры этого скрипта.

Добавлено: Пн дек 03, 2018 21:31
Flasher
user351 писал(а):Я очень далёк от этого.
На этот пункт я и не указывал.
user351 писал(а):Текст из буфера обмена подхватывается и создаётся файл.
Сюда советую заглянуть.
user351 писал(а): Тема: Script Request.
Так почему до сих пор не там спрашиваете?
user351 писал(а):Никакого 1-го пункта снизу там не нашёл.
Речь о памятке, а не топике.
Ссылки новичку можно прописать без http://, www. Модератор поправит.
Сверху каждого поста есть ссылка "Отдельно", вот её и надо приводить.

Добавлено: Пн дек 03, 2018 22:41
user351
Flasher писал(а):Сюда советую заглянуть.
Спасибо большое! Кое-что становится понятным :)
Flasher писал(а):Так почему до сих пор не там спрашиваете?
Flasher писал(а):Сверху каждого поста есть ссылка "Отдельно", вот её и надо приводить.
Извините, я не знал, что на форуме сообщения выводятся отдельной страницей. Для меня это выглядело как какая-нибудь отдельная закрытая тема. Вот в этом сообщении нашёл код: http://forum.wincmd.ru/viewpost.php?p=63033
Так бы туда и написал сразу :)
Flasher писал(а):Речь о памятке, а не топике.
О, разобрался теперь! Нашёл версию интепретатора, благодаря плагину FileInfo, если, конечно, я всё правильно понял:
FileVersion : 5.812.10240.16384
Только мне это ни о чём не говорит, к сожалению. Разве только автору скрипта.

Спасибо большое за помощь!

Добавлено: Пн дек 03, 2018 23:08
Flasher
user351 писал(а):Вот в этом сообщении нашёл код:
Понятно.
user351 писал(а):этот параметр я не понял. Писал в скобках разные цифры, то в итоге создавался файл без расширения.
Ну, собственно, в памятке п. 5 объясняется условность этих скобок.
user351 писал(а):Нашёл версию интепретатора
Это при том, что
Flasher писал(а):На этот пункт я и не указывал.
:?:
user351 писал(а):Разве только автору скрипта.
Или хорошо знающим язык.
user351 писал(а):Спасибо большое за помощь!
Пож-та.

Добавлено: Вт дек 04, 2018 10:28
user351
Flasher писал(а):Ну, собственно, в памятке п. 5 объясняется условность этих скобок.
Да, я прочитал об этом. Но тут помимо фигурных скобок, которые я не стал вписывать в код, есть и ещё и квадратные скобки:

Код: Выделить всё

' {создаваемый файл} [{минимальное количество цифр номера}]
'
В строке создаваемый файл я вписал readme.txt. А вот что такое "минимальное количество цифр номера" для этого скрипта я так и не понял. Вписывал туда и разные числа. И 1, и 2, и 3. Со квадратными скобками и без них. Фигурные я пропускал. Но в итоге ничего не понял для чего это "минимальное количество цифр номера". Иногда даже ошибка скрипта выскакивала.

В итоге я просто оставил readme.txt и скрипт всё равно работает. Подскажите, пожалуйста, для чего это "минимальное количество цифр номера"?

Добавлено: Вт дек 04, 2018 11:44
Flasher
user351 писал(а):есть и ещё и квадратные скобки:
Которые в памятке также упоминаются. Условны любые скобки кроме круглых. Под квадратными понимается потенциальное наличие кавычек при наличии пробелов. У фигурных и угловых семантика общая, подразумевающая края (начало/конец) в описании параметра.
user351 писал(а):А вот что такое "минимальное количество цифр номера" для этого скрипта я так и не понял.
При создании второго и далее файла в той же папке к имени добавляется счётчик. Вот в этом счётчике минимальное число цифр может быть разным: 1, 01, 001 и т. д.
user351 писал(а):Иногда даже ошибка скрипта выскакивала.
Если есть желание исправить, то уже после прочтения памятки должно быть понятно, как действовать. Но лучше использовать другие скрипты по приведённой ссылке.

Добавлено: Вт фев 19, 2019 01:42
Hjkma
Пользуюсь Shift-F4. Удобно. Но приходится каждый раз менять в Notepad++ кодировку на UTF-8 BOM. Можно ли как-то в Тотале автоматически создавать файл с кодировкой UTF-8 BOM?

Добавлено: Вт фев 19, 2019 02:12
Flasher
Hjkma
Откуда в файле нулевого размера взяться кодировке? NP++ сам устанавливает ANSI для правки чистого файла, если не стоит флаг "Применять к открытым ANSI файлам" на странице "Новый Документ" настроек, вызываемых из меню "Опции" главного меню.

P.S.: Могу, конечно, скинуть скрипт с записью BOM-сигнатуры, чтобы от опции и редактора не зависеть, но InputBox и диалог создания ТС, мягко говоря, не одно и то же...

Добавлено: Вт фев 19, 2019 19:32
Hjkma
Flasher
Да, пожалуйста, скиньте, если несложно. Спасибо!

Добавлено: Вт фев 19, 2019 19:53
Flasher
Hjkma
А чем опция-то не устроила?

Код: Выделить всё

'============= VBS =============
' Создание файла c BOM для UTF-8
' Параметр: %N
' Условие: Путь запуска — пустой
'===============================
If WSH.Arguments.Count Then Name = WSH.Arguments(0) :_
If InStr(Name, ".") = 0 Then Name = Name & ".txt"
Name = InputBox(String(5, vbCr) & "Введите имя редактируемого файла:", " Создание файла", Name,,_
(CreateObject("htmlfile").parentwindow.self.screen.Height-18240/CreateObject("WScript.Shell")._
RegRead("HKCU\Control Panel\Desktop\WindowMetrics\AppliedDPI"))*7.5)
If Trim(Name) = "" Then WSH.Quit
With New Regexp
  .Pattern = "[\*/?"":|<>]" : If .Test(Name) Then _
  S = Split(": ? * "" \ / | < >") :_
  R = Array(-230,-225,-246,698,-24,-24,-24,706,707) :_
  For i = 0 To 8 : Name = Replace(Name, S(i), ChrW(R(i))) : Next
  .Pattern = "(.+) \((\d+)\)\.\w+$"
  If .Test(Name) Then Set Exec = .Execute(Name)(0) :_
  BN = Exec.SubMatches(0) : c = Exec.SubMatches(1)
End With
With CreateObject("Scripting.FileSystemObject")
  If Len(BN) = 0 Then BN = .GetBaseName(Name) : c = 1
  Ext = .GetExtensionName(Name)
  If Len(Ext) Then Ext = "." & Ext
  While .FileExists(Name) Or .FolderExists(Name)
    c = c + 1 :  Name = BN & " (" & c & ")" & Ext
  Wend
End With
With CreateObject("ADODB.Stream")
  .Charset = "UTF-8" : .Open : .WriteText Empty : .SaveToFile Name, 2 : .Close
End With
With CreateObject("WScript.Shell")
  .Run """%COMMANDER_EXE%"" /A /O /S /L=""" & .CurrentDirectory & "\" & Name & """",, 1
  .SendKeys "{F4}"
End With

Добавлено: Вт фев 19, 2019 19:56
Hjkma
Flasher
Там вроде как нет для UTF8 BOM. Только для UTF. Скрипт работает, спасибо!

Добавлено: Вт фев 19, 2019 19:57
Flasher
Hjkma
Как это нет? Как раз для него и есть.
UTF — нет такой кодировки.

Забыл добавить, что скрипт заменяет запрещённые символы и добавляет счётчик при наличии одноимённого файла, а есть такой же счётчик был, то наращивает его же.

Добавлено: Вт фев 19, 2019 20:07
Hjkma
Flasher
https://i.imgur.com/Z1BbUDD.jpg
Может версия другая или еще что... :(