открытие ссылок в TotalCmd из IE, Opera и FireFox
Пока не дописал в начало totalcmd.reg слово
REGEDIT4ничего не получалось

А можно как-нибудь сделать так, чтобы все ссылки file:// открывались в Total Commander?
(По левому клику, а не по пункту в меню)
(По левому клику, а не по пункту в меню)
> А можно как-нибудь сделать так, чтобы все ссылки file:// открывались в Total Commander?
скорее нет, чем да
если делать свой протокол, например, TC:// - то там можно его заменить, а стандартный вроде нет.
скорее нет, чем да
если делать свой протокол, например, TC:// - то там можно его заменить, а стандартный вроде нет.
А можно сделать так, чтобы в TC 6.51+ открывалось в отдельной вкладке?
сейчас нет под рукой версии 6.5, но позже посмотрю
надо добавить /T
var cmd = totalcmd + " /O /T \"/L=%1\"";
спасибо 

for (var i = 0; i < 100; ++i)
text = text.replace(pattern, str);
return text;
ужоснах! Так нельзя писать! Писать льзя вот так, например:
for (var text1 = ""; text1 != text;)
{
text1 = text;
text = text.replace(pattern, str);
}
Однако спасибо.
> ужоснах! Так нельзя писать! Писать льзя вот так, например
не люблю JavaScript - у меня для него нормально редактора с Intellisense-ом нету.
зы
да, и вообще меня убило, что replace заменяет только первое вхождение
не люблю JavaScript - у меня для него нормально редактора с Intellisense-ом нету.
зы
да, и вообще меня убило, что replace заменяет только первое вхождение
под оперу не получается =(
Item, "Open in TC" = Copy link address & Execute program, "d:\prog\sys\file mangers\totalcommander6.53\totalcmd.htm","%c"
спасибо! 

Документация на Opera-у есть?
Что означает каждая запятая в данной строке?
Что означает каждая запятая в данной строке?
На примере добавления в меню пункта "Открыть в IE".
Для этого нужно изменить выбранный в настройках файл меню (Настройки - Панели инструментов - Настройки Меню). Сами файлы находятся в папке: Папка Оперы\profile\menu\.
В секцию [Document Popup Menu] добавить пункт:
Item, "Открыть в IE" = Execute program, "iexplore","%u"
Вместо "iexplore" нужно писать полный путь к программе, если он не прописан в реестре Windows (наверно ключ HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths).
"%u" - параметры командной строки, передающиеся в запускаемую программу (в общем случае не обязательны).
%u = URL отображаемого документа
%t = выбранный текст
%s = источник отображаемого документа
%c = текст буфера обмена.
спасибо.
Дальше все это соединяем вместе.
== Открытие TC из Opera-ы ==
Создаем файл TC_from_Opera.js и сохраняем в надежном месте
где totalcmd - это путь к TC
в файл "\Program Files\Opera\defaults\standard_menu.ini"
в раздел [Link Popup Menu] добавляем строку:
Внимание:
путь в переменной totalCmd - надо указывать с двойными слэшами
путь в файле standart_menu.ini - с одинарными
pps
Опера может быть и хороший браузер, но справка - очень и очень ужасная.
Дальше все это соединяем вместе.
== Открытие TC из Opera-ы ==
Создаем файл TC_from_Opera.js и сохраняем в надежном месте
где totalcmd - это путь к TC
var href = WScript.Arguments(0);
var totalcmd = "\"c:\\Program Files\\totalcmd\\TOTALCMD.EXE\"";
var shell = new ActiveXObject("WScript.Shell");
if (href.indexOf("file://")==0)
{
href = href.replace("file://", "\\\\");
href = replaceAll(href, "/", "\\");
href = replaceAll(href, "%20", " ");
var cmd = totalcmd + " /O \"/L=%1\"";
cmd = cmd.replace("%1", href);
shell.Exec(cmd);
}
function replaceAll(text, pattern, str)
{
for (var text1 = ""; text1 != text;)
{
text1 = text;
text = text.replace(pattern, str);
}
return text;
}
в файл "\Program Files\Opera\defaults\standard_menu.ini"
в раздел [Link Popup Menu] добавляем строку:
Item, "Open in Total Commander" = Execute program, "c:\НадежноеМесто\TC_from_Opera.js","%l"
Внимание:
путь в переменной totalCmd - надо указывать с двойными слэшами
путь в файле standart_menu.ini - с одинарными
pps
Опера может быть и хороший браузер, но справка - очень и очень ужасная.
respect 

=== FireFox & TC ==
Полноценно оформлять лень, поэтому решение вкратце:
добавить файл tc.js в chrome/browser.jar/content/browser
в файл chrome/browser.jar/content/browser/browser.xul рядом с такими же похожими строками
добавить строку
в этот же файл chrome/browser.jar/content/browser/browser.xul после строк вида
добавить строки
Полноценно оформлять лень, поэтому решение вкратце:
добавить файл tc.js в chrome/browser.jar/content/browser
function OpenTotalCommander(link)
{
var href = link;
var targetFile = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
targetFile.initWithPath('C:\\Program Files\\totalcmd\\TOTALCMD.EXE');
var process = Components.classes['@mozilla.org/process/util;1'].getService(Components.interfaces.nsIProcess);
process.init(targetFile);
var arguments= [] ;
href = href.replace("file://", "\\\\");
href = replaceAll(href, "/", "\\");
href = replaceAll(href, "%20", " ");
var cmd = "/L=%1";
cmd = cmd.replace("%1", href);
arguments.push("/O");
arguments.push(cmd);
process.run(false, arguments, arguments.length,{});
return true;
}
function replaceAll(text, pattern, str)
{
for (var text1 = ""; text1 != text;)
{
text1 = text;
text = text.replace(pattern, str);
}
return text;
}
в файл chrome/browser.jar/content/browser/browser.xul рядом с такими же похожими строками
добавить строку
<script type="application/x-javascript" src="chrome://browser/content/tc.js"/>
в этот же файл chrome/browser.jar/content/browser/browser.xul после строк вида
<menuitem id="context-savelink"
...
<menuitem id="context-copylink"
...
добавить строки
<menuitem id="context-openlink-in-tc"
label="Open Link in TC"
oncommand="OpenTotalCommander(gContextMenu.linkURL"/>
не воспринимает папки с пробелами
если в названии папки есть пробел, то открывает надлежащую папку
если в названии папки есть пробел, то открывает надлежащую папку
это какой из вариантов - Ie, Opera или FireFox?
Opera+TC
>href = replaceAll(href, "%20", " ");
хм, по стандарту URI кодируются в utf-8 и все символы не из ASCII кодируются эскейп последовательностями. глять что films.hackers выдаёт на русские имена
хм, по стандарту URI кодируются в utf-8 и все символы не из ASCII кодируются эскейп последовательностями. глять что films.hackers выдаёт на русские имена

> по стандарту URI кодируются в utf-8
у меня в IE и в OPera-е русские символы нормально работают, похоже их сам браузер дешифрует.
у меня в IE и в OPera-е русские символы нормально работают, похоже их сам браузер дешифрует.
Да, оказывается Opera не умеет правильно передавать параметры с пробелами во внешние программы
Соответственно в скрипте TC_from_Opera.js
надо строку var href = WScript.Arguments(0);
заменить на
ps
но если в пути было два пробела подряд, то работать все равно нормально не будет.
Соответственно в скрипте TC_from_Opera.js
надо строку var href = WScript.Arguments(0);
заменить на
var href = "";
for (i = 0; i < WScript.Arguments.length; i++)
{
if (i != 0)
href = href + " ";
href = href + WScript.Arguments(i);
}
ps
но если в пути было два пробела подряд, то работать все равно нормально не будет.
2: хоть я это пока еще и не попробовал, но все равно за труд большой респект 

У меня такая проблема возникла: в IE пункт меню не появился. Ну да хрен с ним. В лисе пункт меню появился, если выбрать этот пункт, то переходится в ТС, он даже открывается, если не запущен, но в ТС'вской вкладке ничего нового не открывается, т.е. это просто как Alt-Tab выглядит.
Я совсем не в курсе что такое *.jar файл, а вот использовать FF в локальной сети вместо IE охота. Так вот, как добавлять файл в энтот *.jar? Какая-нибудь утилита, или в ручную придётся?
Бля, архив это ...
Бля, архив это ...
в TC.js перед строкой href = href.replace("file://", ); добавить строку href = href.replace("file://///", ); ,
т.е. теперь должно быть:
т.е. теперь должно быть:
var arguments= [] ;
href = href.replace("file://///", "\\\\");
href = href.replace("file://", "\\\\");
href = replaceAll(href, "/", "\\");
href = replaceAll(href, "%20", " ");
var cmd = "/L=%1";
cmd = cmd.replace("%1", href);
Большущий респект 'ю, за полезную функцию в FF!
Что-то перестал заходить, что это может быть? Я редактирую с помощью WinRar. У всех последний вариант работает?
Разобрался, тут ещё есть небольшая проблема.
(1) Ищём что-то в лориене
(2) Появляется список
(3) Выбираем элемент списка и делаем Open Link in TC
(4) TC открывается, но не на ссылке
Но он откроется правильно, если сначала кликнуть на этот элемент, а потом открыть на ссылке вверху. Кажется, неправильно обрабатывается последовательность Правильно получается только
Где можно скачать нормальный учебник по JScript?
Ёпт, это не в скрипте проблема, а во мне, вначале у лориена не ссылки, а фигась поймёшь что.
(1) Ищём что-то в лориене
(2) Появляется список
(3) Выбираем элемент списка и делаем Open Link in TC
(4) TC открывается, но не на ссылке
Но он откроется правильно, если сначала кликнуть на этот элемент, а потом открыть на ссылке вверху. Кажется, неправильно обрабатывается последовательность Правильно получается только
Где можно скачать нормальный учебник по JScript?
Ёпт, это не в скрипте проблема, а во мне, вначале у лориена не ссылки, а фигась поймёшь что.
:Добавил все. У меня все так же, как и у 'а (кстати, не знаю, как до добавления было, я так делать раньше не пробовал).
Разобрался, тут ещё есть небольшая проблема.
(1) Ищём что-то в лориене
(2) Появляется список
(3) Выбираем элемент списка и делаем Open Link in TC
(4) TC открывается, но не на ссылке
Но он откроется правильно, если сначала кликнуть на этот элемент, а потом открыть на ссылке вверху. Кажется, неправильно обрабатывается последовательность Правильно получается только
Ну да ладно, зато так, как описано - открывается
Не особо большой труд вместо одного раза кликнуть два.
Как говорится, от добра добра не ищщут, так что DarkGay'у спасибо и большой респект

ае. клевая вещь!
> У меня все так же, как и у 'а
ссылку ты случаем не с русскими буквами пытаешься открывать?
ps
в отличие от IE и Opera-ы - Firefox оказывается русские ссылкы мало того, что сам не раскодирует, так еще их и кодирует не по стандарту.
ссылку ты случаем не с русскими буквами пытаешься открывать?
ps
в отличие от IE и Opera-ы - Firefox оказывается русские ссылкы мало того, что сам не раскодирует, так еще их и кодирует не по стандарту.
А можно так открывать авишки и музыку сразу из оперы например?
можно
:Не. Английскую полностью (в качестве примера - практически любой запрос из лориена).
ссылку ты случаем не с русскими буквами пытаешься открывать?
Осчастливил бы людей, плагинш бы уж написал бы...
(Шутка. А то я тут недавно лису переставлял, вручную опять все проделывал)...> Не. Английскую полностью (в качестве примера - практически любой запрос из лориена).
Английские нормально открываются.
надо только помнить, что в лориене есть и http-ссылки, которые ведут на сам же лориен
есть вот такие ссылки http://lorien.local/showdir.pl?host=479&where=57
а есть такие
Вторые открываются в отличии от первых.
Английские нормально открываются.
надо только помнить, что в лориене есть и http-ссылки, которые ведут на сам же лориен
есть вот такие ссылки http://lorien.local/showdir.pl?host=479&where=57
а есть такие
Вторые открываются в отличии от первых.
не открываются......
firefox 1.5b2
TC 6.53
WinXp
В ТС открыто несколько табов в каждой панели....
firefox 1.5b2
TC 6.53
WinXp
В ТС открыто несколько табов в каждой панели....
Всё прописал?
сейчас все переделал еще раз
ссылки не открываются. просто ничего не происходит.
ссылки не открываются. просто ничего не происходит.
Оставить комментарий
Dasar
Для открытия файловых ссылок из IE в TotalCommander-е - надо сделать следующее:Создать файл totalcmd.htm в надежном месте на диске, указав в переменной totalcmd - свой путь к Total Commander-у.
Будьте внимательны: слэши должны указываться двойные.
создать файл totalcmd.reg, указав ваш путь к файлу totalcmd.htm вместо 'C:\\НадежноеМесто\\'.
Слэши опять же двойные.
Добавить данный файл в реестр (достаточно просто этот файл открыть по enter-у или double click-ом)
Перезапустить IE
По правой кнопке мышки - теперь ссылки можно открывать в TC