Как скрыть расширение файла при переименовании?

Обсуждение Total Commander. Установка, использование, настройка, решение проблем, скрытые функции. Обсуждение новых версий.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Ответить
segreich
Сообщения: 2
Зарегистрирован: Пт мар 18, 2011 11:45

Как скрыть расширение файла при переименовании?

Сообщение segreich »

Вроде примитивный вопрос, но ни в настройках и ни по форуму ответа не нашел.
Есть задача переименовывать файлы. У всех расширение одинаковое и т.к. файлов много, то по запарке можно дважды нажать на F2 и переименовать файл вместе с расширением.
Галка о выделение только имени файла без расширения стоит. Но вопрос имено в случайном двойном нажатии F2, когда выделяется все.
Как бы убрать отображение расширения файла, чтобы его вообще не было возможности трогать при переименовании? Или анриал?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

segreich
Боюсь, что никак. Такой фичи в TC нет в принципе.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Не лишним было бы напомнить, что F2 по умолчанию обновляет панель. Правильно было бы указать на две внутренние команды TC.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Можно создать пользовательскую команду с вызовом внутренней команды cm_RenameSingleFile. И на F2 повесить уже вызов этой пользовательской команды.
Двойного срабатывания клавиши в этом случае не будет.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Нет, обе команды сработают аналогично с выделением всего имени при повторном нажатии, если предварительно не выделять файлы, я поэтому и написал о двух, включая cm_RenameOnly.
sa писал(а):пользовательской команды
... только внутренней. Пользовательские - это em_.
Аватара пользователя
Tol!k
Сообщения: 1727
Зарегистрирован: Вт апр 01, 2008 20:02
Откуда: Арзамас

Сообщение Tol!k »

А если скриптом?

Код: Выделить всё

' параметры: %N
Set Args = WScript.Arguments
If Args.Count < 1 Then
  MsgBox "Нужен файл...", vbInformation, "Переименование файла"
  WScript.Quit
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
fName = FSO.GetBaseName(Args(0))
fExt  = FSO.GetExtensionName(Args(0))
newname = InputBox(vbNewLine & vbNewLine & "Новое имя без расширения :", "Переименование файла " & Args(0), fName)
If newname <> "" Then
  newname = newname & "." & fExt
  FSO.MoveFile Args(0), newname
End If
Последний раз редактировалось Tol!k Пт мар 18, 2011 18:19, всего редактировалось 1 раз.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Tol!k
Единственный минус - это окошко, а так - тоже вариант, хоть и не по нашу душу. )
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

segreich
Вариант с назначением на F2 пользовательской команды вместо внутренней не подошёл?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

sa
Я сперва неправильно понял трактовку решения. Стоило пояснить, что в usercmd.ini нужно создать em_ команду, и в диалоге в поле "Команда" вписать внутреннюю, потом уже переназначать.
А то мне не совсем было ясно из первого поста.

Подтверждаю, что при такой постановке решения дополнительные нажатия горячей клавиши исключают выделение всего имени. Хотя это и не решение прямого вопроса, но, ИМХО, вполне его заменяет.
segreich
Сообщения: 2
Зарегистрирован: Пт мар 18, 2011 11:45

Сообщение segreich »

sa писал(а):segreich
Вариант с назначением на F2 пользовательской команды вместо внутренней не подошёл?
Еле вкурил что вы тут понаписали. :)
Сделал, все отлично работает. Самое главное расширение не переименовывается при двойном нажатии. Само отображение расширения файла не принципиально, т.к. на ошибки с переименованием не влияет.
Спасибо!

Делал так: Конфигурация - Настройка - Разное
Выбираем клавишу на которую назначаем команду, нажимаем "лупу", в левом окне выбираем usercmd.ini. Нажимаем "Новая", задаем имя, ОК, нажимаем "лупу", выбираем cm_RenameSingleFile, нажимаем ОК до окна "Настройка", в настройках рядом с значком "лупы" нажимаем значок "Галка" и закрываем меню настроек нажатием ОК. Усё. :)
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

segreich писал(а):Само отображение расширения файла не принципиально, т.к. на ошибки с переименованием не влияет.
Ну, и на всякий случай сохраняется возможность отредактировать и расширение.
segreich писал(а):Делал так:
Похоже, что это оптимальный вариант.
Ответить