
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comfort Software :: Форумы :: Обсуждение возможностей | |||
|
|||
как изменить имя команды в контекстном меню |
| Автор | Добавил |
| leopoldus |
| ||
![]() Зарегистрирован: Sun Aug 31 2008, 06:31AM Сообщений: 56 | После инсталляции Comfort Keys в Windows XP или Windows 7 в контекстном меню ко всем файлам и папкам появляется новый пункт: "Назначить клавишу быстрого вызова..." (причем прикольно, что пункт на русском языке даже в том случае, если ось английская). А может ли пользователь как-то изменить название этого пункта контекстного меню на другое, допустим, на английское? А в идеале приделать еще и горячую клавишу (букву-ускоритель) для быстрого выбора этой команды с клавиатуры? Хотел это сделать, вручную поправив ключ в системном реестре, в разделе HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers, но там вместо человеческого текста оказалась непонятная двоичная сигнатура {6B54FAD7-7ACD-4156-888D-118547A98218}, с этим я сам не справлюсь, тут надо быть программером... | ||
| Наверх |
| Comfort |
| ||
![]() ![]() ![]() Зарегистрирован: Wed Sep 19 2007, 03:42PM Сообщений: 617 | А может ли пользователь как-то изменить название этого пункта контекстного меню на другое, допустим, на английское? Установите в программе язык - английский. Have a nice day | ||
| Наверх |
| leopoldus |
| ||
![]() Зарегистрирован: Sun Aug 31 2008, 06:31AM Сообщений: 56 | Comfort написал(а) ... А может ли пользователь как-то изменить название этого пункта контекстного меню на другое, допустим, на английское? Установите в программе язык - английский. Спасибо, это хороший совет но в моем случае он не работает. В контекстном меню уже есть команда, точнее, подменю P&ath с жестко заданным акселератором в виде буквы A, при нажатии на клавишу A после открытия контекстного меню фокус сразу прыгает на эту строку и даже если жать на клавишу A еще раз, фокус все равно оттуда не уходит.И в любом случае это был бы workaround: вместо решения проблемы как таковой -трюк для ее нестандартного обхода. IMHO смену языка интерфейса всей программы ради изменения имени команды в контекстном меню нельзя считать точным решением. Хотелось бы иметь интерфейс программы на родном языке, а клавиатурные шоткаты - на английском. Причем в идеале с возможностью вручную изменить имя команды в контекстном меню и акселератора к ней, как это позволяет большинство программ. Неужели это никак не решается? [ Редактирование Fri Nov 12 2010, 04:49AM ] | ||
| Наверх |
| Comfort |
| ||
![]() ![]() ![]() Зарегистрирован: Wed Sep 19 2007, 03:42PM Сообщений: 617 | Какой же это "workaround" и "трюк"? Программа общается с вами на том языке, который вы выбрали. Причем в идеале с возможностью вручную изменить имя команды в контекстном меню и акселератора к ней, как это позволяет большинство программ. Мы говорим о контекстном меню, встроенном в Windows? Интересно было бы посмотреть на это большинство. Я не знаю ни одной. Ладно. Вот настоящий "workaround": Вы можете поменять любой текст, включая акселераторы, если создадите свой файл языка. Файлы переводов лежат в подкаталоге Lang. Более подробно об этом написано здесь: http://ru.comfort-software.com/localization.html Have a nice day | ||
| Наверх |
| Comfort |
| ||
![]() ![]() ![]() Зарегистрирован: Wed Sep 19 2007, 03:42PM Сообщений: 617 | А, не. Извиняюсь. Этот фокус не пройдет. Поменять текст в контекстном меню Windows не получится. Have a nice day | ||
| Наверх |
| leopoldus |
| ||
![]() Зарегистрирован: Sun Aug 31 2008, 06:31AM Сообщений: 56 | Comfort написал(а) ... Причем в идеале с возможностью вручную изменить имя команды в контекстном меню и акселератора к ней, как это позволяет большинство программ. Мы говорим о контекстном меню, встроенном в Windows? Интересно было бы посмотреть на это большинство. Я не знаю ни одной. Возможно, что насчет "большинство программ" я погорячился, но что многие позволяют изменить имя команды (или при том же имени изменить букву-акселератор) - это точно. Обычно это делается не через GUI самой программы (впрочем, такие мне тоже попадались, но с ходу не могу припомнить), а через настройки контекстного меню Windows: Control Panel -> Folder Options -> File Types -> Advanced -> Edit File Type -> Edit Action (см картинку внизу). То же самое можно сделать напрямую ручным редактированием системного реестра: ветка HKEY_CLASSES_ROOT\*\Shell для команд контекстного меню ко всем типам файлов ветка соответствующего типа файлов для команд, специфических именно для данного типа файлов, например, HKEY_CLASSES_ROOT\MyExt\shell Правда Comfort Keys, как и некоторые другие программы, прописывает свою команду в другой ветке системного реестра: [HKEY_CLASSES_ROOT\*\shellex]. Извиняюсь, если глупость написал, я все ж таки обыкновенный юзер. ![]() [ Редактирование Fri Nov 12 2010, 11:02AM ] | ||
| Наверх |
| Comfort |
| ||
![]() ![]() ![]() Зарегистрирован: Wed Sep 19 2007, 03:42PM Сообщений: 617 | Понятно. То, что вы описали, это назначение программы на определенное расширение файла. В случае с CK обработка идет по другому. От расширения файла не зависит. Поэтому и настроить там текст не так просто. Специального раздела в реестре для этого нет. Have a nice day | ||
| Наверх |
| leopoldus |
| ||
![]() Зарегистрирован: Sun Aug 31 2008, 06:31AM Сообщений: 56 | Comfort написал(а) ... Понятно. То, что вы описали, это назначение программы на определенное расширение файла. В случае с CK обработка идет по другому. От расширения файла не зависит. Не совсем. В начале моего предыдущего сообщения дана ссылка на ветку системного реестра [HKEY_CLASSES_ROOT\*\Shell] - там хранятся универсальные команды контекстного меню, относящиеся ко всем типам файлов. А пример с Folder Options на картинке - это, конечно, для одного определенного типа. | ||
| Наверх |
| Comfort |
| ||
![]() ![]() ![]() Зарегистрирован: Wed Sep 19 2007, 03:42PM Сообщений: 617 | Ну хорошо. Ко всем типам файлов. А к каталогам? Have a nice day | ||
| Наверх |
| leopoldus |
| ||
![]() Зарегистрирован: Sun Aug 31 2008, 06:31AM Сообщений: 56 | А к каталогам, если я не ошибаюсь, здесь: [HKEY_CLASSES_ROOT\Directory] или здесь [HKEY_CLASSES_ROOT\Folder] по тому же самому принципу можно изменить имя команды, назначить акселератор и т.д. [ Редактирование Fri Nov 12 2010, 10:56AM ] | ||
| Наверх |
| Comfort |
| ||
![]() ![]() ![]() Зарегистрирован: Wed Sep 19 2007, 03:42PM Сообщений: 617 | Мы, конечно, могли бы продолжить "серию вопросов и ответов". Просто поверьте мне как разработчику, такой метод реализации контекстного меню был выбран неспроста. Вы можете, как я описал выше, создать свой собственный файл перевода с меткой нерусского языка и программа будет разговаривать с вами на русском, не считая его за русский язык. Тогда контекстное меню будет на английском, только без акселератора. Неужели вы так часто пользуетесь этим пунктом в контекстном меню? Я могу прикинуть, что раза два в день. Неужели намного больше? Для чего? Утолите мое любопытство. Have a nice day | ||
| Наверх |
| leopoldus |
| ||
![]() Зарегистрирован: Sun Aug 31 2008, 06:31AM Сообщений: 56 | Comfort написал(а) ... Мы, конечно, могли бы продолжить "серию вопросов и ответов". Просто поверьте мне как разработчику, такой метод реализации контекстного меню был выбран неспроста. Да я верю. Но Вы же сами задавали вопросы! Вот я и пытался на них, по мере своих слабых юзерских знаний, ответить. Вы можете, как я описал выше, создать свой собственный файл перевода с меткой нерусского языка и программа будет разговаривать с вами на русском, не считая его за русский язык. Тогда контекстное меню будет на английском, только без акселератора. Секундочку, что-то я здесь запутался. Да, сначала Вы предложили это решение, но потом в сообщении Nov 12 2010, 03:11PM сами же и написали, что А, не. Извиняюсь. Этот фокус не пройдет. Поменять текст в контекстном меню Windows не получится. .Чего я не понимаю? Неужели вы так часто пользуетесь этим пунктом в контекстном меню? Я могу прикинуть, что раза два в день. Неужели намного больше? Для чего? Утолите мое любопытство. Нет, пользуюсь не так часто. Но есть другие причины, менее очевидные. Во-первых, в Windows XP ширина контекстного меню динамически подстраивается под ширину самой длинной строки в меню. Как нетрудно догадаться, это строка "Назначить клавишу быстрого вызова...". Все остальные команды намного короче, поэтому из-за команды Comfort Keys мое контекстное меню становится примерно вдвое шире. Вы можете спросить, а как мне мешает жить ширина контекстного меню? Но это долго объяснять, и так мы совсем уйдем в сторону от темы. Так что в данном случае уже я прошу поверить мне как юзеру на слово что это не простой каприз "чтоб было красиво".Есть и еще одна причина. В меню есть другие команды, начинающиеся на "Н", поэтому удобнее присвоить каждой из них уникальный акселератор или, по крайней мере, сделать так, чтобы их имена начинались с разных букв. | ||
| Наверх |
| Comfort |
| ||
![]() ![]() ![]() Зарегистрирован: Wed Sep 19 2007, 03:42PM Сообщений: 617 | Понятно. Поменять текст в контекстном меню Windows не получится. Но сделать так, чтобы вся программа была на русском, а контекстное меню на английском можно. Только это слишком запутанно. Have a nice day | ||
| Наверх |
| Модераторы: Comfort |