Ru-Board.club
← Вернуться в раздел «Программы»

» Directory Opus

Автор: VlVlV
Дата сообщения: 25.12.2014 18:55
команда для создания нескольких разных файлов за раз, с возможностью инлайн-переименования в процессе создания (в моем случае это офисные файлы)

Office Document...




Код:
Option Explicit

Function OnClick(ByRef ClickData)
Dim dlg, ext, i
ext = Array("mdb", "xls", "ppt", "pub", "doc")
Set dlg = ClickData.Func.Dlg
dlg.title = "Create Office Document"
dlg.message = "Check document(s) to create:"
dlg.buttons = "OK|Cancel"
dlg.choices = DOpus.NewVector("Access Document", "Excel Document", "PowerPoint Document", "Publisher Document", "Word Document")
dlg.list = DOpus.NewVector
dlg.Show
If dlg.result = 1 Then
For i = 0 To dlg.choices.size - 1
If dlg.list(i) Then
ClickData.Func.Command.RunCommand("Filetype New=." & ext(i) & " NEWNAME=""New " & dlg.choices(i) & """")
End If
Next
End If
End Function
Автор: aidomars
Дата сообщения: 26.12.2014 08:00
Вот еще, может кому будет интересно:
ListerClock - скрипт показывающий текущее время и версию DO в заголовке сабжа.
Tagger - присвоение тегов, используется совместно с Autohotkey.
Syntax coloured source-code viewer - подсветка синтаксиса в панели просмотра, используется совместно с SmartFTP
Автор: ev30242
Дата сообщения: 27.12.2014 11:22
Всем привет.
Возможно ли сделать в опусе так, чтобы в виде окна список и детали отображались иконки размером не 16х16, 32х32. Или настроить свой размер. Может можно через скрипты.
Автор: VlVlV
Дата сообщения: 27.12.2014 14:50
ev30242

не оно?

Автор: ev30242
Дата сообщения: 27.12.2014 16:47
[q][/q]

Что то типа того, только не понял, как формат настроить. Вероятно, это показа миниатюр, но в целом для папок выглядит как надо.
Как нибудь можно сделать, чтобы для файлов не миниатюры показывало, а обычную иконку расширения, только большую.
Автор: Eternal07
Дата сообщения: 25.01.2015 13:29
http://ipic.su/img/img7/fs/kiss_5kb.1422185288.png
Как изменить фон этой панели? Уже раз 10 настройки облазил. В 10 версии помню как-то убрал этот выпуклоголубой стиль, а после установки 11 найти не могу.
Автор: VlVlV
Дата сообщения: 25.01.2015 15:41
Eternal07
preferences -> miscellaneous -> advanced -> gloss_and_gradients = false
Автор: Starback
Дата сообщения: 28.01.2015 19:54
Создал кнопку для очистки временной папки с командой Delete FILE "C:\Temp\*" NORECYCLE. Работает, как задумывал - содержимое папки Temp удаляется с предупреждением мимо корзины. Одно маленькое неудобство - если в папке находятся файлы, "занятые" системными процессами либо работающими программами, DO выдаёт сообщение о невозможности удаления и предлагает Повторить либо Пропустить. Можно ли изменить кнопку, чтобы DO в таких случаях просто игнорировал эти файлы без всяких сообщений? Настройки программы (отключение предупреждения об удалении) менять не хотелось бы. Помогите, пожалуйста. Спасибо
Автор: VlVlV
Дата сообщения: 28.01.2015 20:28
как-то так:

Код: @confirm Really delete temporary files?|OK|Cancel
Delete FORCE NORECYCLE QUIET C:\Temp\*
Автор: Starback
Дата сообщения: 29.01.2015 20:45

Цитата:
@confirm Really delete temporary files?|OK|Cancel

Вон оно как, значит. А я и не знал, что так можно Ещё и кириллица поддерживается для текста в окне подтверждения и названия кнопок - красота, в общем. Похоже, не за горами времена, когда заброшу Total Commander и окончательно "пересяду" на DO
Кстати, Directory Opus 11 manual online - очень удобная и подробная справка, сам достаточно много оттуда почерпнул, хоть и с помощью переводчика
Автор: dredz
Дата сообщения: 30.01.2015 21:41
Как в сабже отключить переименование файла по второму клику?
Автор: Starback
Дата сообщения: 31.01.2015 07:28

Цитата:
Ext скрипт для пункта меню, переключающего колонку Ext, добавляя ее всегда после колонки с именем. Это удобно использовать при включении режима разделения имен файлов и их расширений.


Код: @toggle:If COLUMNSTOGGLE=extdir

Option Explicit

Function OnClick(ByRef ClickData)
Dim column, columnlist, position
Set columnlist = ClickData.Func.SourceTab.format.columns
position = 0
For Each column In columnlist
position = position + 1
If column = "name" Then
Exit For
End If
Next
ClickData.Func.Command.RunCommand("Set COLUMNSTOGGLE=extdir(" & position & ")")
End Function
Автор: VlVlV
Дата сообщения: 31.01.2015 09:06
[more=примерно так:]

[/more]
Автор: Starback
Дата сообщения: 02.02.2015 21:21
"Подбрил" кнопку для копирования с помощью программы TeraCopy

Код: <?xml version="1.0" encoding="UTF-8"?>
<usercommand backcol="none" textcol="none">
<label>TeraCopy_CopyFile</label>
<tip>Copy files with TeraCopy</tip>
<icon1>C:\Program Files\TeraCopy\TeraCopy.exe,1</icon1>
<function type="normal">
<instruction>&quot;C:\Program Files\TeraCopy\TeraCopy.exe&quot; Copy *{allfilepath|filem} {destpath}</instruction>
</function>
</usercommand>
Автор: VlVlV
Дата сообщения: 03.02.2015 10:08
в этом разделе есть примеры, как это сделать
mk:@MSITStore:C:\Program%20Files\GPSoftware\Directory%20Opus\Help\dopus.chm::/Documents/Scripting/Dialogs_and_Popup_Menus.htm

кроме этого можно использовать модификаторы ctrl, shift, alt

пример: List Of Contents

Код:
@keydown:none
Clipboard COPYNAMES NOFROMFOCUS
@keydown:shift
Clipboard COPYNAMES=nopaths NOFROMFOCUS
@keydown:common
Clipboard PASTE AS={date|yyyy-MM-dd}_{time|HH.mm.ss}.txt
Автор: Starback
Дата сообщения: 04.02.2015 19:25

Цитата:
можно использовать модификаторы ctrl, shift, alt

Я пытаюсь помочь освоить программу человеку, для которого использование сочетаний клавиш... в общем затруднительно. Поэтому такой вариант рассматривать не будем

Цитата:
.../Documents/Scripting/Dialogs_and_Popup_Menus.htm

Спасибо за наводку, я читал это место. Увы, но там описаны только примеры создания диалоговых окон с тремя и более кнопками в различных вариациях. А как "привязать" команду к соответствующей кнопке, не нашёл... VlVlV, я без Вас точно не справлюсь. Если у Вас есть желание и время - помогите, пожалуйста. Надеюсь, это интересно не только мне
Автор: VlVlV
Дата сообщения: 05.02.2015 06:49

Цитата:
Я пытаюсь помочь освоить программу человеку, для которого использование сочетаний клавиш... в общем затруднительно.
простите, что вмешиваюсь, но может быть этому человеку стОит попробовать какой-нибудь более простой файловый менеджер? на этапе освоения ДО, использование функций, требующих, уровень знания сабжа выше базового, мне кажется сомнительным. методом тыка эта программа не осваивается. новичкам, которые хотят воспользоваться хотя бы малым потенциалом программы, без ежедневного обращения к справочной документации, на мой взгляд, не обойтись. также я думаю, что без тщательного изучения разделов Command Reference, DOpusRT Reference, Metadata Keywords, Wildcard Reference, Scripting Reference, данная программа будет представлять в руках пользователя обычный проводник виндоуз.

что касается Вашей кнопки, то проще обойтись вообще без модификаторов и тем более скриптов: сделайте мультикнопку (левая кнопка мыши - одно действие, правая - второе, средняя - третье).
Customize -> New Button -> Three Buttons -> 1-я кнопка Копировать с помощью TeraCopy | 2-я Копировать обычно (с помощью DO) | 3-я в данном случае не нужна, поэтому кнопка будет двойная. внутри кнопок должны быть соответствующие команды. получится что-то вроде этого:

Автор: 1ANP
Дата сообщения: 05.02.2015 15:32
Тож самое подумал, проще двойную кнопку юзать.
Возможности создания кнопок с диалогом тут ранее обсуждались, там можно пример взять.
Однако еще вариант:
Можно создать отдельную плавающую панель, которая будет вызываться в месте расположения курсора мыши (или в центре экрана, в верхней панели, в нижней как у TC, слева справа и др. варианты) кнопкой или горячей клавишей, и скрываться после выполнения команды. На эту панель поместить кнопки копирования, отмены, диалоги с подсказками, кнопку закрытия и что в голову взбредет.
Кнопка типа этой:
Toolbar "-Плавающая1" STATE=float POS=mousel AUTOCLOSE TOGGLE
будет её открывать и после второго нажатия, либо выполнения нужной команды - автоматически закрывать.
На неё же можно горячую клавишу повесить.
Модификаторы в справке есть.
Может пригодится, хотя у меня чет не прижилось.
Автор: aidomars
Дата сообщения: 05.02.2015 16:35

Цитата:
Можно создать отдельную плавающую панель, которая будет вызываться в месте расположения курсора мыши

А еще проще всплывающая панель показывающаяся при достижении курсора верха экрана, которую я использую с незапамятных времен. Одна только маленькая проблема - при переключении вкладок браузера бывает выскакивает случайно.
Автор: 1ANP
Дата сообщения: 05.02.2015 16:43

Цитата:
Одна только маленькая проблема - при переключении вкладок браузера бывает выскакивает случайно.

еще одна: нельзя задать ширину, только местоположение. Таким образом если в этой панели расположить команду отображения содержимого какой-либо папки, то она может занимать и половину экрана при наличии длинных имен файлов (если панель расположена сбоку).
Да и если параллельно используются Dock-программы, то тоже неудобно.
В общем то это дело по мере углубления в Допус, внедрения уже нескольких сотен кнопок с сортировкой по категориям, и заучивания горячих клавиш многое становится не нужным. Программы отлично запускаются через Win+R, меню пуск, Listary и т.п.
Но такой вариант более приближен к заданному вопросу про кнопку с диалогом, всплывающая панель становится этим самым диалогом и создать и модифицировать её может даже тот обучаемый пользователь.
Автор: Gredsaz
Дата сообщения: 05.02.2015 20:46
Иногда пользуюсь родным проводником, ставлю для него дополнение QTTabBar, которое умеет запоминать тоже открытые вкладки, так вот, есть для QTTabBar удобный такой плагин, когда просто наводишь курсор на вкладку, вкладка автоматом открывается, кликать лишний раз на неё не нужно.
Есть ли что-то похожие для DO? В настройках не нашёл, а может и проглядел.)
Автор: Starback
Дата сообщения: 05.02.2015 21:53

Цитата:
новичкам, которые хотят воспользоваться хотя бы малым потенциалом программы, без ежедневного обращения к справочной документации, на мой взгляд, не обойтись

Всё верно, тем более что на сегодняшний день я и сам к ним (новичкам) отношусь

Цитата:
без тщательного изучения разделов Command Reference, DOpusRT Reference, Metadata Keywords, Wildcard Reference, Scripting Reference, данная программа будет представлять в руках пользователя обычный проводник виндоуз

Угу, и ещё без знания языков программирования VBScript и JScript

Цитата:
что касается Вашей кнопки, то проще обойтись вообще без модификаторов и тем более скриптов: сделайте мультикнопку... кнопка будет двойная

Двойная так двойная, с учётом уровня своих знаний я так и поступлю


1ANP, aidomars - ребята, СПАСИБО за участие в обсуждении и желание помочь
Автор: VlVlV
Дата сообщения: 06.02.2015 10:56

Цитата:
без знания языков программирования VBScript и JScript

я их тоже не знаю. просто имею общее представление. все описания функций и примеры их использования ищу в интернете. чаще всего на http://stackoverflow.com/


Цитата:
Двойная так двойная, с учётом уровня своих знаний я так и поступлю

все правильно, начните с простых вещей. потом постепенно по мере знакомства с новыми функциями ДО, будете усовершенствовать рабочее пространство. ДО ведь - это конструктор из которого можно собрать очень многое.

вот смотрите пример выполнения одних и тех же задач двумя способами, причем в первом случае у меня было недостаточно знаний, чтобы сделать как-то по-другому, и плюс к этому в ДО не было скриптов. эти 2 способа разделяют несколько лет.

резервное копирование виртуальных машин

было (1-й способ, старый)

Код:
@set name={dlgchooseS|Choose virtual machine to restore:|Windows 7=Windows 7+Windows 7 x64=Windows 7 x64+Windows Server 2003 R2 Enterprise Edition=Windows Server 2003 R2 Enterprise Edition+Windows Server 2008 x64=Windows Server 2008 x64+Windows XP Professional=Windows XP Professional}
Delete FORCE NORECYCLE QUIET "{alias|appdata}\VMware\Virtual Machines\{$name}"
Copy "D:\Virtual Machines\{$name}" TO "{alias|appdata}\VMware\Virtual Machines"
Автор: VlVlV
Дата сообщения: 06.02.2015 16:32
вот еще скриптовый пример использования выпадающего списка. в моем случае из двух вариантов.

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

второй выбор поальбомно сканирует ReplayGain.


Код:
@disablenosel
@nodeselect
@filesonly

Option Explicit

Function OnClick(ByRef ClickData)
Dim dlg
Set dlg = ClickData.Func.Dlg
dlg.title = "foobar2000"
dlg.message = "Select action:"
dlg.buttons = "OK|Cancel"
dlg.choices = DOpus.NewVector("Add selection to a new playlist", "Scan selection as a single album") 'этот массив может быть изменен и расширен
dlg.selection = 0
dlg.Show
If dlg.result = 1 Then
     If dlg.selection(dlg.choices) = 1 Then 'здесь и далее Вы можете прописать команды, которые хотите, чтобы выполнялись в зависимости от выбора в дроп-боксе
ClickData.Func.Command.RunCommand("""{alias|programfiles2}\foobar2000\foobar2000.exe"" /show /context_command:""ReplayGain/Scan selection as a single album"" {filepath}")
Else
ClickData.Func.Command.RunCommand("""{alias|programfiles2}\foobar2000\foobar2000.exe"" /command:""New playlist""")
ClickData.Func.Command.RunCommand("""{alias|programfiles2}\foobar2000\foobar2000.exe"" /add {filepath}")
End If
End If
End Function
Автор: Starback
Дата сообщения: 06.02.2015 18:18
dredz

Цитата:
Как в сабже отключить переименование файла по второму клику?

Пока настраивал формат папок и прочие моменты, наткнулся на такую настройку (смотрите скриншот). Возможно, это Вы искали




VlVlV, СПАСИБО за примеры, я постараюсь в них разобраться. Хотя делать это придется интуитивно, разбираясь в структурах команд. Практически повторить не смогу - ни виртуальными машинами, ни foobar2000 я, увы, не пользуюсь
Автор: VlVlV
Дата сообщения: 07.02.2015 11:31
примеры обычной и скриптовой кнопок для манипуляций с файлами и папками при помощи мега-утилиты RoboCopy

1) обычная




Код:
@leavedoswindowopen
@set options={dlgchooseS|Select options:|Wait:0 Retry:0=/r:0 /w:0+Wait:3 Retry:5=/r:3 /w:5}
"{alias|programfiles2}\Microsoft\RoboCopy\robocopy.exe" {sourcepath|noterm} {destpath|noterm} /mir {$options}
Автор: VlVlV
Дата сообщения: 07.02.2015 16:06
еще несколько простых кнопок

Range Of Items...




Код:
Select MAKEVISIBLE RANGE {dlgstring|Select a range of items based on their index (their position in the list). The <range> value consists of one or more comma-separated ranges. Each range can be a single number or two numbers separated by a hyphen to indicate all numbers within that range. Example: 3,8-15,22-25,30}
Автор: dredz
Дата сообщения: 08.02.2015 10:00

Цитата:
Пока настраивал формат папок и прочие моменты, наткнулся на такую настройку (смотрите скриншот). Возможно, это Вы искали

Нет, это не то, пробовал уже. Переименование по второму клику как мне кажется действует на уровне системы.
Автор: VlVlV
Дата сообщения: 08.02.2015 10:48
dredz
используйте Power Mode. там можно настроить поведение всех трех кнопок мыши.
Автор: dredz
Дата сообщения: 08.02.2015 11:58

Цитата:
используйте Power Mode. там можно настроить поведение всех трех кнопок мыши.

А где этот режим включить?

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Nero не пишет svcd на DVD


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.