Far 3.0 & Guids

Место, где разработчики плагинов могут поделиться своим опытом.
User avatar
Alexey Samlyukov
Posts: 1757
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 2 times
Contact:

Re: Far 3.0 & Guids

Post by Alexey Samlyukov » Mon 07 Jul, 2014 02:13

Latest post of the previous page:

гуиды по определению должны быть разные.

User avatar
John Doe
Бюрократ
Posts: 11074
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 11 times
Been thanked: 64 times

Re: Far 3.0 & Guids

Post by John Doe » Mon 07 Jul, 2014 10:54

Alexey Samlyukov wrote:гуиды по определению должны быть разные.
Но они в разных меню.
В писании: Все GUID'ы добавленных строк должны быть уникальны для одного плагина в пределах одного меню.

Т.е. не запрещено. Вплоть до того, что можно использовать гуид плагина (хотя не видел такого)

User avatar
zg
zero-gravity
Posts: 5231
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 42 times
Contact:

Re: Far 3.0 & Guids

Post by zg » Mon 07 Jul, 2014 14:43

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

User avatar
John Doe
Бюрократ
Posts: 11074
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 11 times
Been thanked: 64 times

Re: Far 3.0 & Guids

Post by John Doe » Mon 07 Jul, 2014 15:00

Проблем-то не будет, но уже пару раз обсуждалось, и вроде бы официальная позиция такова, что лучше и для разных сущностей разные гуиды.
Одно обсуждение нашёл: http://forum.farmanager.com/viewtopic.p ... 564#p77564 (на следующей странице есть продолжение).

User avatar
DrKnS
Posts: 4533
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 113 times
Contact:

Re: Far 3.0 & Guids

Post by DrKnS » Mon 07 Jul, 2014 15:05

The number of possible UUIDs is 340,282,366,920,938,463,463,374,607,431,768,211,456 (16^32 or 2^128), or about 3.4 × 10^38.
Господа, этого хватит и вам и вашим внукам, не мелочитесь.

User avatar
John Doe
Бюрократ
Posts: 11074
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 11 times
Been thanked: 64 times

Re: Far 3.0 & Guids

Post by John Doe » Mon 07 Jul, 2014 15:09

Это не мелочность, а лень.
Зачем заводить 5 гуидов, если можно обойтись единственным.
Плагин простой, пункт меню один, но в разных меню.

User avatar
techie
Posts: 732
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 23 times
Been thanked: 2 times

Far 3.0 & Guids

Post by techie » Sat 06 May, 2017 08:39

Прошло три года. Решил опять написать плагин, опять клинит с гуидами.

1. Что будет, если плагиновый и менюшный GUID таки не указать? (плаг на питоне таки без них работает)
2. Почему Far не чекает плагины на дублицирующиеся GUIDы, и не предупреждает/вываливается, если для него это так важно?

User avatar
techie
Posts: 732
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 23 times
Been thanked: 2 times

Far 3.0 & Guids

Post by techie » Sat 06 May, 2017 08:44

3. Может ли GUID писать без минусиков, просто строкой длинной 32, или она должна быть 36 обязательно?
4. Можно ли в GUID строке использовать больше букв, чем A-F?

UPDATE: поправил вопросов нумерацию
Last edited by techie on Thu 11 May, 2017 15:59, edited 1 time in total.

User avatar
DrKnS
Posts: 4533
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 113 times
Contact:

Far 3.0 & Guids

Post by DrKnS » Sat 06 May, 2017 17:28

techie wrote: 3. Может ли GUID писать без минусиков, просто строкой длинной 32, или она должна быть 36 обязательно?
3. Можно ли в GUID строке использовать больше букв, чем A-F?
Можно всё, it's a free country.

Будет ли оно работать - другой вопрос.

User avatar
techie
Posts: 732
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 23 times
Been thanked: 2 times

Far 3.0 & Guids

Post by techie » Thu 11 May, 2017 05:18

Ok. Будет ли оно работать? И как проверять, что оно работает?

User avatar
HaRT
Moderator
Posts: 7979
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 66 times
Been thanked: 97 times

Far 3.0 & Guids

Post by HaRT » Thu 11 May, 2017 11:18

techie wrote: 3. Может ли GUID писать без минусиков, просто строкой длинной 32, или она должна быть 36 обязательно?
3. Можно ли в GUID строке использовать больше букв, чем A-F?
Но зачем?
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
techie
Posts: 732
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 23 times
Been thanked: 2 times

Far 3.0 & Guids

Post by techie » Thu 11 May, 2017 11:34

Я ещё не настолько сектант, чтобы лазить на специальный сайт для того, чтобы сгенерить случайное число, уникальное в пределах всей экосистемы фара с вероятностью > 99.99999%

User avatar
HaRT
Moderator
Posts: 7979
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 66 times
Been thanked: 97 times

Far 3.0 & Guids

Post by HaRT » Thu 11 May, 2017 11:41

techie wrote: лазить на специальный сайт для того, чтобы сгенерить случайное число
О чём Вы говорите?!
В составе Visual Studio/ Windows SDK есть программка для генерации GUIDов: uuidgen (CLI), guidgen(GUI).
GUID легко сгенерировать на PowerShell: [guid]::NewGuid() (см. http://stackoverflow.com/a/40590925 — там в других ответах есть и обсуждение других средств).
Для Питона есть генерация GUIDов: https://docs.python.org/3.1/library/uui ... uuid.uuid1 и последующие ф-ии.
Last edited by HaRT on Thu 11 May, 2017 11:50, edited 2 times in total.
Reason: Добавлены варианты помимо Питона
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
techie
Posts: 732
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 23 times
Been thanked: 2 times

Far 3.0 & Guids

Post by techie » Thu 11 May, 2017 15:58

Ну и зачем мне это всё знать? На вопросы ответье лучше кто-нибудь. Вместо "ты должен плясать с такими вот бубнами" сказать, зачем эти танцы нужны. Пока эти GUID'ы выглядят, как повод для геноцида тех, кто отказывается плясать "как положено", а почему положено и кем положено, никто не объясняяет, а хотелось бы. GUID не гарантирует, что люди, которым влом заморачиваться с генерацией, не будут писать GUID ручками, а человек. которые понимает, что нужен уникальный ID плагина, уж как-то постарается решить эту проблему. На крайняк возьмёт этот GUID счастливый. Вот форматирование айдишника под специфический формат должно быть технически оправдано. Пусть даже эстетически. Но вот страхи распространять, что "без бубна сертифицированного проклятие накликаешь", ну ё-маё..

User avatar
HaRT
Moderator
Posts: 7979
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 66 times
Been thanked: 97 times

Far 3.0 & Guids

Post by HaRT » Thu 11 May, 2017 20:12

techie wrote: Ну и зачем мне это всё знать?
Чтобы из-за кривых гуидов не возникло конфликтов впоследствии.
Если выполнение одной простой команды для генерации гуида Вы называете танцем с бубном, то как же Вас вообще занесло в разработку плагинов для Фара?!
Last edited by HaRT on Thu 11 May, 2017 20:15, edited 1 time in total.
Reason: Исправлены опечатки
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
HaRT
Moderator
Posts: 7979
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 66 times
Been thanked: 97 times

Far 3.0 & Guids

Post by HaRT » Thu 11 May, 2017 20:17

techie wrote: повод для геноцида тех, кто отказывается плясать "как положено"
„«А это мысль!» — подумали дети.“ :ha:
Фар есть инструмент, а не нянька. © 2009 DrKnS

Smitis
Posts: 1440
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 12 times
Been thanked: 22 times
Contact:

Far 3.0 & Guids

Post by Smitis » Thu 11 May, 2017 21:26

techie wrote:Я ещё не настолько сектант, чтобы лазить на специальный сайт для того, чтобы сгенерить случайное число, уникальное в пределах всей экосистемы фара с вероятностью > 99.99999%
ФАР уже сто лет в обед умеет сам генерировать гуиды. И в этой теме это уже было.
  1. Macro {
  2.  
  3.     description="UUID";
  4.  
  5.     area="Shell Editor";
  6.  
  7.     key="CtrlAltShiftU";
  8.  
  9.     action=function()
  10.  
  11.         print(win.Uuid(win.Uuid()):upper())
  12.  
  13.     end;
  14.  
  15. }
Разум когда-нибудь победит.

Post Reply

Return to “Разработка плагинов”

Who is online

Users browsing this forum: No registered users and 2 guests