Страница 1 из 1
Как скрыть расширение файла при переименовании?
Добавлено: Пт мар 18, 2011 11:50
segreich
Вроде примитивный вопрос, но ни в настройках и ни по форуму ответа не нашел.
Есть задача переименовывать файлы. У всех расширение одинаковое и т.к. файлов много, то по запарке можно дважды нажать на F2 и переименовать файл вместе с расширением.
Галка о выделение только имени файла без расширения стоит. Но вопрос имено в случайном двойном нажатии F2, когда выделяется все.
Как бы убрать отображение расширения файла, чтобы его вообще не было возможности трогать при переименовании? Или анриал?
Добавлено: Пт мар 18, 2011 12:21
Avada
segreich
Боюсь, что никак. Такой фичи в TC нет в принципе.
Добавлено: Пт мар 18, 2011 13:52
Flasher
Не лишним было бы напомнить, что F2 по умолчанию обновляет панель. Правильно было бы указать на две внутренние команды TC.
Добавлено: Пт мар 18, 2011 14:29
sa
Можно создать пользовательскую команду с вызовом внутренней команды cm_RenameSingleFile. И на F2 повесить уже вызов этой пользовательской команды.
Двойного срабатывания клавиши в этом случае не будет.
Добавлено: Пт мар 18, 2011 14:59
Flasher
Нет, обе команды сработают аналогично с выделением всего имени при повторном нажатии, если предварительно не выделять файлы, я поэтому и написал о двух, включая
cm_RenameOnly.
sa писал(а):пользовательской команды
... только внутренней. Пользовательские - это em_.
Добавлено: Пт мар 18, 2011 18:03
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
Добавлено: Пт мар 18, 2011 18:16
Flasher
Tol!k
Единственный минус - это окошко, а так - тоже вариант, хоть и не по нашу душу. )
Добавлено: Пт мар 18, 2011 19:31
sa
segreich
Вариант с назначением на F2 пользовательской команды вместо внутренней не подошёл?
Добавлено: Пт мар 18, 2011 19:48
Flasher
sa
Я сперва неправильно понял трактовку решения. Стоило пояснить, что в usercmd.ini нужно создать em_ команду, и в диалоге в поле "Команда" вписать внутреннюю, потом уже переназначать.
А то мне не совсем было ясно из первого поста.
Подтверждаю, что при такой постановке решения дополнительные нажатия горячей клавиши исключают выделение всего имени. Хотя это и не решение прямого вопроса, но, ИМХО, вполне его заменяет.
Добавлено: Пн мар 21, 2011 10:45
segreich
sa писал(а):segreich
Вариант с назначением на F2 пользовательской команды вместо внутренней не подошёл?
Еле вкурил что вы тут понаписали.

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

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