Снегопат https://snegopat.ru/forum/ |
|
Скрипт Буфер обмена https://snegopat.ru/forum/viewtopic.php?f=3&t=46 |
Страница 1 из 2 |
Автор: | artbear [ 19 окт 2011, 15:11 ] |
Заголовок сообщения: | Скрипт Буфер обмена |
Представляю новый скрипт "Буфер обмена" Описание http://snegopat.ru/scripts/wiki?name=Clipboard.js Скрипт для удобной работы через буфер обмена, перехвата открытия файлов для Снегопата и немедленного открытия файлов, если имя файла есть в буфере обмена Автор : Артур Аюханов aka artbear aartbear@gmail.com Дата создания: 19.10.2011 Описание : аналог моего скрипта для Опенконфа в 1С 7.7 - входит в состав скрипта Навигация 1. Я часто работаю с файлами с помощью FAR-а следующим образом: Нахожу нужный файл в ФАРе, копирую полный путь к файлу в буфер обмена, далее переключаюсь в Конфигуратор, Выполняю действие "Открыть файл", вставляю путь файла из буфера обмена, и нажимаю Открыть для открытия нужного файла в Конфигураторе. Уверен, что по такой схеме работаю не я один. И вот у меня родилась мысль немного автоматизировать этот процесс: разработчик копирует полный путь файла в буфер обмена(тут как обычно), переключается в Конфигуратор, выбирает "Открыть файла", а дальше вступает скрипт: перехватывает открытие файла, проверяет буфер обмена, если в буфере имя существующего файла, проверяет расширение этого файла, если это файл с разрешенным разрешением для 1С, то скрипт немедленно открывает этот файл в Конфигураторе. 2. Аналогичным образом перехватывается и автоматизируется действие "Сравнить, объединить с конфигурацией из файла" для файлов конфигураций Планы: В настройках скрипта можно будет указать: - пользовательская настройка разрешенных расширений открываемых файлов - по умолчанию erf, epf, txt, mxl, html, st, pff - немедленное открытие файла при двойном нажатии на файл в ФАР-е или Проводнике и т.п. Сделано на базе http://www.forum.script-coding.com/viewtopic.php?id=442 Требования: Необходима библиотека dynwrapx.dll, ее нужно зарегистрировать скачать из ветки на форуме (см. последний пост) |
Автор: | palytsh [ 20 окт 2011, 06:20 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Цитата: Нахожу нужный файл в ФАРе, копирую полный путь к файлу в буфер обмена, далее переключаюсь в Конфигуратор, Выполняю действие "Открыть файл", вставляю путь файла из буфера обмена, и нажимаю Открыть для открытия нужного файла в Конфигураторе. Поделюсь опытом: нахожу в Тотал Командере файл и просто драгэндропаю его в окно конфигуратора |
Автор: | artbear [ 20 окт 2011, 08:59 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Да, я иногда также делаю, но привык работать с клавиатуры, драг-дроп не так часто юзаю. |
Автор: | ildary [ 28 фев 2013, 23:23 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Уважаемый Артур, не могли бы Вы подсказать, как правильно реализовать такую вещь: Ваш скрипт прекрасно работает в снегопате, но его реализация в 7.7 при нажатии CTRL+O еще и спрашивала "Открыть файл <имя файла в буфере>?", что позволяло при необходимость загрузить другой файл. Теперь же скрипт сразу грузит файл без вопроса. Попытался добавить этот код самостоятельно, но так как познания в JS у меня нулевые, то не смог - выдает ошибку "object expected" в строке "confirm". Вот кусок кода, мое добавление выделено ******** enabledFileExt = массивРасширений.Найти(file.Расширение) != undefined; if(!enabledFileExt) return; //************* UserAction = confirm("Click OK to continue. Click Cancel to stop.") if (!UserAction) { enableOpen = false return; } //************* Если это добавление заработает покажется полезным всем - было бы классно его вставить для всех. |
Автор: | artbear [ 01 мар 2013, 10:44 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
ИМХО confirm не будет работать в Снегопате. Юзай Вопрос (штатный 1С) или MessageBox. Примеры можно найти в скриптах |
Автор: | ildary [ 01 мар 2013, 12:27 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Прошу прощения за глупый вопрос - разве скрипты (которые судя по их шапке работают на javascript) умеют исполнять восьмерочный код? |
Автор: | orefkov [ 01 мар 2013, 12:37 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Они могут использовать многие объекты 1С и вызывать многие глобальные методы 1С. В шапке форума прикреплена ветка - "что можно создавать в v8new" А по глобальным методам смотри файл "core\std\scripts\0_global_context.js" И в этом великая сила! |
Автор: | artbear [ 01 мар 2013, 17:58 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Да и на вики-страницах snegopat.ru\scripts есть описание |
Автор: | ildary [ 01 мар 2013, 20:46 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Большое спасибо всем ответившим, вот работающий код (добавленный код выделен комментарием): enabledFileExt = массивРасширений.Найти(file.Расширение) != undefined; if(!enabledFileExt) return; //************* if(MessageBox( "Открыть файл " + selectedFileName + "?", mbYesNo | mbDefButton1 | mbIconQuestion, "Снегопат") == mbaYes) { } else { enableOpen = false return; } //************* p.s. Пользуясь снегопатом, чуствуешь себя Писториусом, которому приделали биопротезы - доселе ползавший бежит как заяц. |
Автор: | suvolod [ 24 мар 2013, 12:02 ] |
Заголовок сообщения: | Re: Скрипт Буфер обмена |
Было бы неплохо дополнить данный скрипт таким функционалом: если указан не полный путь, а только каталог, где расположен файл, то чтобы при выполнении стандартной команды Файл > Открыть.. диалог выбора файла позиционировался на папке, путь до которой сохранен в буфер обмена. Обычно путь до каталога получить гораздо легче (имею ввиду, стандарным способом, без ФАР-а и прочих ухищрений), а так... придется копировать путь из адресной строки, открывать notepad, собирать строку, соединяя путь и имя файла, копировать собранную строку... трудозатраты становятся сопоставимыми с обычным открытием обработки через выбор каталога/файла, и весь смысл этого по сути неплохого скрипта пропадает. |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |