Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Autorun
Goto page Previous  1, 2, 3 ... 55, 56, 57 ... 191, 192, 193  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Sun Feb 03, 2013 23:13    Post subject: Reply with quote

Да, верхний нужен не всем, как и нижний. Но какой смысл делать избыточную операцию, когда она может быть сделана только теми, кому она нужна?
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message  
ICQ Number
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Feb 03, 2013 23:17    Post subject: Reply with quote

В компилированном виде это займёт ещё меньше, чем в текстовом файле и отработает быстрее.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message  
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Mon Feb 04, 2013 00:27    Post subject: Reply with quote

Flasher wrote:
Так, хорошо, а если пробелы между переменными и текстом есть?

Добавляй, что мешает-то?
Flasher wrote:
Этого я не писал. Тем более про функции.

http://forum.wincmd.ru/viewpost.php?p=98902
Не про функции, про команды. Сути-то не меняет.
Flasher wrote:
В этом никто не сомневался. Речь только может идти про новый.

Угу, т.е. я сейчас начну переписывать с нуля парсер, только чтобы сделать красиво строчные функции? Здорово придумано Very Happy

Нет, мне сейчас как-то больше хочется наконец релиз выпустить.


ЗЫ К слову, плагины к Autorun сейчас написаны на С++. Было интересно вспомнить, да и API надо было портировать. И что, кроме размера, заметил кто какие преимущества? Wink
Back to top
View user's profile Send private message  
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Feb 04, 2013 00:41    Post subject: Reply with quote

Loopback wrote:
Добавляй, что мешает-то?
Пробел выполняет фунцию сепаратора в синтаксисе. Им отделяются ключи, имена переменных, имена секций и т..д. Синтаксис глаголит последовательность расположения данных. Плагин разве не споткнётся на любом подобном пробеле? Или там кавычки решают?
Loopback wrote:
Не про функции, про команды. Сути-то не меняет
Меняет. Я написал про некоторые новые команды, а ты про неизвестно какие переменные.
Loopback wrote:
Угу, т.е. я сейчас начну переписывать с нуля парсер
Под новым понимался дополнительный, а не изменённый существующий.
Loopback wrote:
И что, кроме размера, заметил кто какие преимущества?
Чего перед чем?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message  
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Mon Feb 04, 2013 10:23    Post subject: Reply with quote

Flasher wrote:
Или там кавычки решают?

Решают. Можно ведь и попробовать, не?

Flasher wrote:
а ты про неизвестно какие переменные.

Flasher wrote:
поэтому само создание отдельных переменных практически не востребовано.


Flasher wrote:
Под новым понимался дополнительный, а не изменённый существующий.

Т.е. под каждый вид функционала свой парсер. Нет, это не вариант. Всё должно обрабатываться единообразно.
Back to top
View user's profile Send private message  
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Mon Feb 04, 2013 11:41    Post subject: Reply with quote

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

На худой конец, вызов функций можно организовать как макрозамену: перед тем как вызывать процедуру, выполняешь предобработку строки параметров, подставляя макросы и раскрывая переменные окружения, например, StrUpper(бла-бла) заменяешь на БЛА-БЛА. А уже потом передаёшь результат основной процедуре:
Code:
Исходная строка:
SetEnv /EV COMMANDER_OSLANG StrUpper(%SYSINFO_USERLANG%)
После предобработки:
SetEnv /EV COMMANDER_OSLANG RUS

При этом парсер можно оставить как есть, просто добавить препроцессор. Кстати, его можно даже в виде плагина сделать, вызывать определенную функцию плагина и передавать ей строку, а она пусть возвращает обработанную строку, которую затем плагин будет парсить как обычно. От плагина всего требуется две экспортируемые функции: функция предобработки и функция освобождения памяти.
Code:
const char* __stdcall AutorunPreprocess(const char* InputLine);
void __stdcall AutorunFree(void* Pointer);

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

Loopback wrote:
ЗЫ К слову, плагины к Autorun сейчас написаны на С++. Было интересно вспомнить, да и API надо было портировать. И что, кроме размера, заметил кто какие преимущества? Wink

Обновлял сейчас плаг, начал ругаться на MoveOptionsButton, заметил, что Autorun_MoveButton.dll конкретно похудел - круто. Cool
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message  
ICQ Number
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Mon Feb 04, 2013 14:23    Post subject: Reply with quote

MVV wrote:
Что ж там за парсер, что сложно добавить поддержку параметров функций. Я у себя проблему решал достаточно просто: если вижу скобку, ищу конец выражения в скобках с учетом типа и уровней вложенности, затем просто передаю всю подстроку во вложенный вызов как параметр, а дальше уже функция сама парсит его.

Я же не говорю, что это принципиально невозможно. Но в любом случае муторно. Ну если только ограничить использованием в качестве параметра функции только переменных, т.е. так можно StrUpper(%VAR%), а так нет: StrUpper("blabla%VAR%").

В любом случае, до релиза - никакого изменения синтаксиса делать не буду. Иначе плагин так и останется в вечной бете.
Back to top
View user's profile Send private message  
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Feb 04, 2013 16:12    Post subject: Reply with quote

Loopback wrote:
Можно ведь и попробовать, не?
Можно, попробую. В Ридми будет?

Loopback wrote:
В любом случае, до релиза - никакого изменения синтаксиса делать не буду.
Никто не настаивает. Wink Релизь что есть. А позже добавишь функции.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message  
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Mon Feb 04, 2013 16:59    Post subject: Reply with quote

Действительно. Должна же будет версия 2.0 чем-то отличаться от 1.0. Very Happy
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message  
ICQ Number
KopBuH



Joined: 02 Jul 2010
Posts: 127
Location: Tashkent, Uzbekistan

Post (Separately) Posted: Sat Feb 09, 2013 12:06    Post subject: Reply with quote

насчет %SYSINFO_USERLANG%
насколько я понял, английская Windows 7 домашняя, руссифицированая принудительно русским MUI отображается как "ENU"?.
то есть даже если язык и интерфейс пользователя русский, то все равно получаем язык оригинальной системы, так?. (я понимаю, что значение берется из ключа sLanguage, но это получается уже не USERLANG, а скорее OSLANG...)
код из конфига:
Code:
# Проверка языка системы
StrUpper OSLANG %SYSINFO_USERLANG%
If %OSLANG% = ENU Then
  SetEnv /EV COMMANDER_OSLANG Eng
Else
  SetEnv /EV COMMANDER_OSLANG %OSLANG%
EndIf
Back to top
View user's profile Send private message  
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Sat Feb 09, 2013 15:00    Post subject: Reply with quote

KopBuH, эта штука какой язык пишет? Для русского должно быть $419, для английского - $409.
По идее, в твоём случае числа будут $419 (локаль), $419 (интерфейс юзера) и $409 (интерфейс системы).
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message  
ICQ Number
KopBuH



Joined: 02 Jul 2010
Posts: 127
Location: Tashkent, Uzbekistan

Post (Separately) Posted: Sat Feb 09, 2013 15:20    Post subject: Reply with quote

жаль, но я уже отдал нотебук ) (он был клиентский).
а на моей, старой доброй XP SP3 - все 419.
но я отпишусь, если будет еще такая система (W7 Home Basic EN).
там я в систему MUI установил принудительно, через Vistalizator.
да, я заметил что в кусте реестра той системы (HKEY_CURRENT_USER\Control Panel\International) sLanguage был ENU.
а вот какой был "Locale" - не глянул Embarassed

Добавлено спустя 1 час 2 минуты:

сейчас встретился с еще одной системой:
здесь все наоборот:
Win7 Home Basic, язык интерфейса - чисто английский.
но плагин детектит как Rus.

настройки системы:
http://savepic.org/2756825.jpg
http://savepic.org/2817240.jpg
текущее расположение - Россия.
Язык для не юникодных программ - русский.
Locale: 0419
"Эта штука" выдала это:
http://savepic.org/2773209.jpg
Back to top
View user's profile Send private message  
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Sat Feb 09, 2013 17:16    Post subject: Reply with quote

Quote:
"Эта штука" выдала это:

Всё верно, локаль русская, интерфейсы английские. По идее, если вызвать GetUserDefaultUILanguage и преобразовать результат с помощью GetLocaleInfo, должны получить язык в виде строки.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message  
ICQ Number
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Sun Feb 10, 2013 12:57    Post subject: Reply with quote

Еще одна бета, четырнадцатая.

Скачать

Из изменений - только новый формат справки.
Back to top
View user's profile Send private message  
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Feb 13, 2013 00:12    Post subject: Reply with quote

Loopback
Файл wdx отличается от предыдущего.
Я думал, что справка будет пообширней в плане разъяснений. Ну, да ладно.

Добавь, пож-та, данные по процессору (производитель, ширина шины данных и т.д.).
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message  
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 55, 56, 57 ... 191, 192, 193  Next
Page 56 of 193

 
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


Powered by phpBB © 2001, 2005 phpBB Group