Расширение при сохранении файла
- Author
- Message
-
Offline
- Posts: 14
- Joined: Thu Aug 16, 2012 6:52 pm
Расширение при сохранении файла
Проблема:
Было замечено, что при сохранении созданного файла на компьютер в качестве расширения к названию файла не всегда подставляется установленное по умолчанию. Например, если задано расширение по умолчанию txt и сохраняется файл с названием Семенов С.М. , то расширение к этому названию добавлено не будет. Я так понимаю, что программа посчитала, что раз есть в названии точка, то все, что идет за ней уже есть расширение и другого подставлять не нужно. Как с этим быть? Я привык вставлять точки в названия файлов и такое поведение редактора мне сильно мешает.
Предложение:
Если это не решается простыми средствами и нужно менять алгоритм и вносить изменения в код программы, то может вообще пойти другим путем? Например, в настройках редактора "Параметры\Дополнительно" вместо поля "расширение по умолчанию при сохранении" сделать поле "расширения при сохранении". В этом поле через пробел задавать неограниченное количество используемых пользователем расширений. Параметр запомнить в файле AkelPad.ini При сохранении файла в окне "Сохранить как" в поле "Тип файла" в выпадающем меню должны появиться все заданные в настройках расширения для сохранения файла. В нем один раз выбирается расширение для сохранения текущего файла и после сохранения оно запоминается в AkelPad.ini как параметр DefaultSaveExt= . Теперь, каждый раз при сохранении файлов в этом поле будет стоять это расширение, как выбранное по умолчанию и подставляться ко всем сохраняемым файлам. Если нужно другое расширение, то его следует заново выбрать из выпадающего меню и сохранить с ним файл. Тогда уже оно запомнится как расширение по умолчанию.
При этих операциях алгоритм автоматического определения наличия расширения должен быть отключен. Включать этот алгоритм можно установкой галочки в чекбоксе в окне "Сохранить как", либо в настройках "Параметры\Дополнительно" . Уж не знаю как лучше и нужен ли этот алгоритм вообще, т.к. всегда можно в окне "Сохранить как" в поле "Тип файла" выбрать "Все файлы (*.*)" . В этом случае расширение файла не подставляется вообще, а значит файл останется со старым расширением.
Я не программист и как все это сделать программно не знаю, так что излагаю только логическую конструкцию.
Было замечено, что при сохранении созданного файла на компьютер в качестве расширения к названию файла не всегда подставляется установленное по умолчанию. Например, если задано расширение по умолчанию txt и сохраняется файл с названием Семенов С.М. , то расширение к этому названию добавлено не будет. Я так понимаю, что программа посчитала, что раз есть в названии точка, то все, что идет за ней уже есть расширение и другого подставлять не нужно. Как с этим быть? Я привык вставлять точки в названия файлов и такое поведение редактора мне сильно мешает.
Предложение:
Если это не решается простыми средствами и нужно менять алгоритм и вносить изменения в код программы, то может вообще пойти другим путем? Например, в настройках редактора "Параметры\Дополнительно" вместо поля "расширение по умолчанию при сохранении" сделать поле "расширения при сохранении". В этом поле через пробел задавать неограниченное количество используемых пользователем расширений. Параметр запомнить в файле AkelPad.ini При сохранении файла в окне "Сохранить как" в поле "Тип файла" в выпадающем меню должны появиться все заданные в настройках расширения для сохранения файла. В нем один раз выбирается расширение для сохранения текущего файла и после сохранения оно запоминается в AkelPad.ini как параметр DefaultSaveExt= . Теперь, каждый раз при сохранении файлов в этом поле будет стоять это расширение, как выбранное по умолчанию и подставляться ко всем сохраняемым файлам. Если нужно другое расширение, то его следует заново выбрать из выпадающего меню и сохранить с ним файл. Тогда уже оно запомнится как расширение по умолчанию.
При этих операциях алгоритм автоматического определения наличия расширения должен быть отключен. Включать этот алгоритм можно установкой галочки в чекбоксе в окне "Сохранить как", либо в настройках "Параметры\Дополнительно" . Уж не знаю как лучше и нужен ли этот алгоритм вообще, т.к. всегда можно в окне "Сохранить как" в поле "Тип файла" выбрать "Все файлы (*.*)" . В этом случае расширение файла не подставляется вообще, а значит файл останется со старым расширением.
Я не программист и как все это сделать программно не знаю, так что излагаю только логическую конструкцию.
-
Offline
- Posts: 14
- Joined: Thu Aug 16, 2012 6:52 pm
1. Я знаю, что все, что идет после последней точки Винда считает расширением. Но Редактор подставляет расширение, если его нет и не подставляет, если оно есть - значит есть автомат в программе, которые отслеживает наличие расширения у файла. Этот автомат нужно отключить. Тогда ничего в Винде и менять не надо, т.к. ВСЕГДА будет подставляться расширение, заданное пользователем!FeyFre wrote:1. Расширением в ОС Windows считается текст от последней точки в имени файла до конца имени файла. Изменить это невозможно впринципе. Баста.
2. А как Ваше предложение решает Вашу проблему?
2. Если ВСЕГДА подставляется расширение заданное мной, то и проблема моя сразу решится. Глупая автоматика не будет вмешиваться в мои действия и заданное мной в настройках расширение обязательно подставится к имени файла сколько бы точек в нем ни стояло!
-
Offline
- Posts: 14
- Joined: Thu Aug 16, 2012 6:52 pm
Во-первых в настройках должен быть чекбокс, где возможно включение и отключение этого автомата. Если он так нужен - включите!DV wrote:vadim
file.cpp.txt,
file.asm.txt,
file.xml.txt,
file.txt.txt,
...
клёво!
Во-вторых все вышеизложенное применяется только для вновь создаваемых в редакторе файлов, а не для редактируемых. Если вы редактируете старый файл, то у него уже есть или нет расширение и он сохраняется с тем же названием с каким был загружен в редактор. Т.е ваш файл file.cpp так и сохранится как file.cpp а файл с именем file сохранится с именем file
Если вы при сохранении вновь созданного файла помимо основного названия прописали и расширение file.txt, то при отключенном автомате определения наличия расширения файл пропишется как file.txt.txt . Если вы часто допускаете такие ошибки, то автомат лучше включить.
-
Offline
- Posts: 294
- Joined: Tue Jul 27, 2010 11:18 pm
ИМХО, такая функция, если уж она так нужна, должна быть реализована чем-то внешним: плагин, скрипт. Не дай Бог, проглядеть такой включенный чекбокс на работе (командные и конфигурационные файлы разного телекоммуникационного оборудования - около 20 типов текстовых (внутри) файлов). Можно до утра себе рабочий день продлить.
-
Offline
- Posts: 3217
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
-
Offline
- Posts: 1250
- Joined: Thu Nov 16, 2006 11:53 am
- Location: Kyiv, Ukraine
По теме, предложенный функционал мне представляется удобным лишь при такой реализации:
- диалог сохранения файла будет включать два новых элемента: галочку "[ ] Всегда подставлять расширение" и парное к галочке окно ввода, в котором это расширение будет фигурировать - например, "txt". Введенное расширение будет сохраняться в настройках программы и восстанавливаться при каждом запуске. Добавляться к имени файла это расширение будет только в том случае, если галочка установлена.
Если же один или оба этих элемента будут не в диалоге сохранения, где они всё время на виду, то их наличие будет приводить больше к путанице и проблемам.
- диалог сохранения файла будет включать два новых элемента: галочку "[ ] Всегда подставлять расширение" и парное к галочке окно ввода, в котором это расширение будет фигурировать - например, "txt". Введенное расширение будет сохраняться в настройках программы и восстанавливаться при каждом запуске. Добавляться к имени файла это расширение будет только в том случае, если галочка установлена.
Если же один или оба этих элемента будут не в диалоге сохранения, где они всё время на виду, то их наличие будет приводить больше к путанице и проблемам.
-
Offline
- Posts: 3217
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact: