andreyefgs

Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Abs62 Цитата: Во-первых, далеко не факт, что имя группы всегда содержит нужную информацию. | Гарантировать, то что внешняя программа получит нужную инфу можно двумя способами: 1)Для названий групп брать либо языковые коды, либо полные названия языков. (Я так и сделал, создал группы "English", "French"... и разбросал по ним словари.) В группы которые, которые имеют невалидные названия не надо помещать программу, которая берёт информацию о source language из названия группы. Этот вариант мне теперь кажется не самым лучшим, ибо он ограничивает свободу в выборе названий. 2)Второй, более совершенный вариант: Код: if (process.argv.length === 4) { let GroupLng = { "All":"ru", "Duden_Dics":"de", "Oxford_and_Longmans":"en", "Russian1":"ru" } let word = process.argv[2]; let group = process.argv[3]; if (GroupLng[group]!== undefined) { let lng = GroupLng[group]; console.log("All ok"); } } | Если используется скрипт, то пользователь должен открыть его в редакторе и отредактировать в нем специальный ассоциативный массив. Если ему конечно нужна эта программа. А изначально скрипт будет содержать просто как бы шаблон: let GroupLng = { "Group_name1":"source_language", "Group_name2":"source_language", "Group_name3":"source_language", "Group_name4":"source_language" } Если второй аргумент не будет содержать подходящий ключ, то ничего страшного не случится - программа проверит и закончит работу. Для бинарных, т.е. скомпилированных программ можно использовать ini-файлы и т. п. вещи, но принцип тот же. Цитата: И зачем вам клоны программ? | Клоны пожалуй и не нужны. Я проверил можно оказывется и так делать: node /home/path/to/translate.js "en" %GDWORD% node /home/path/to/translate.js "de" %GDWORD% ... ... Программу клонировать не надо, но тем не менее остаётся такой минус: Если я добавлю отдельную строчку для каждого своего языка (я владею в разной степени 12-ю), то будет замусорена полка группы All. А если такого рода универсальных прог будет несколько, то будет совсем плохо, несколько десятков иконок. ЗЫ Ладно, я свои аргументы исчерпал наверное. В общем, на ваше усмотрение А я пока попробую придумать как передавать инфу о группе каким-нибудь другим способом, без изменений в GD |