File links

Материал из DIM STUDIO
Перейти к навигации Перейти к поиску

Оглавление / Макросы в тексте объявлений

#file_links

#file_links[имя_файла,количество_строк,метод_формирования] - замена на несколько случайным образом выбранных строк из указанного файла. Метод формирования - ключ, задающий способ формирования результирующего списка:

S - в одну строку через пробел;
N - в одну строку без пробелов;
L - построчно;


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

Макрос рекомендуется использовать в поле "Текст объявления". В случае использования в однострочных полях проекта, обязательно используйте ключ S (если количество_строк более 1) либо N (если количество_строк = 1)

Примеры:

#file_links[C:\myfile.txt,10,S]
#file_links[subfolder\testing.txt,200,L] 
#file_links[D:\Temp\Trash.txt,3] 
#file_links[http://mysite.com/textfile.txt,3] 

Возможно дополнительно указать параметр P в конце, который будет заставлять делать макрос не случайную выборку из файла, а последовательную (построчную).

Пример:

#file_links[C:\logins.txt,1,NP]

Есть возможность рандомизации выводимого количества строк.

Пример:

#file_links["lines.txt",10..20,S]

Есть возможность использования макросов и вариаций внутри имени файла, но для этого имя файла должно быть заключено в кавычки.

Пример:

#file_links["C:\Files\MyFile{1|2|3}.txt",1,N]

Также возможна рандомизация количества строк на выходе, задаётся диапазоном "минимальное_число_строк..максимальное_число_строк".

Пример:

#file_links[C:\Files\MyFile.txt,1..70,N]

Существует опция отключения кэширования макроса. Файл xuser.ini, секция AdvOptions, параметры URLLOAD_CASHTIME для ссылок и LOCALFILE_CASHTIME для локальных файлов, задаются в секундах, по умолчанию равны 120 сек.

URLLOAD_CASHTIME=120
LOCALFILE_CASHTIME=120

Реализован механизм ко-варьирования для макроса #file_links, по аналогии с ко-вариациями: с одинаковыми идентификаторами (#file_links_**идентификатор**[...]) выбираются одинаковые строки - это может быть полезно для того, чтобы заголовки топиков соответствовали их содержимому.

Пример:

#file_links_A[C:\Temp\File1.txt,1,N] и #file_links_A[C:\Temp\File2.txt,1,N]

Какие номера строк выберутся из файла File1.txt, такие же выберутся и из File2.txt в рамках одного и того же потока. Прописывать их можно в любом поле проекта. Не забывайте перед сохранением проекта нажимать на кнопку "Тест" для того, чтобы убедиться, что макросы срабатывают корректно.

ВАЖНО: При применении в макросе ко-варьирования количество строк в сведённых файлах должно быть одинаково. Т.е. исходя из примера, в файлах File1.txt и File2.txt должно быть равное количество строк.

Лайфхак: Если Ваш русский текст поститься кракозябрами, переименуйте файл в макросе на русский язык(любоеимя.txt) - постинг нормализуется.


|См. также: • Система вариацийИспользование BB-кодаМаскировка ссылок#category#hostname#random#file#gennick#err#nomacros ... #endnomacros#title#quote#grabbed#index#trans...#notrans[DAY_TOMORROW][MONTH_TOMORROW]Макросы, используемые только в SocPlugin-е#rnd_topic#rnd_user