Расширение при сохранении файла

Russian main discussion
Post Reply
  • Author
  • Message
Offline
Posts: 14
Joined: Thu Aug 16, 2012 6:52 pm

Расширение при сохранении файла

Post by vadim »

Проблема:
Было замечено, что при сохранении созданного файла на компьютер в качестве расширения к названию файла не всегда подставляется установленное по умолчанию. Например, если задано расширение по умолчанию txt и сохраняется файл с названием Семенов С.М. , то расширение к этому названию добавлено не будет. Я так понимаю, что программа посчитала, что раз есть в названии точка, то все, что идет за ней уже есть расширение и другого подставлять не нужно. Как с этим быть? Я привык вставлять точки в названия файлов и такое поведение редактора мне сильно мешает.

Предложение:
Если это не решается простыми средствами и нужно менять алгоритм и вносить изменения в код программы, то может вообще пойти другим путем? Например, в настройках редактора "Параметры\Дополнительно" вместо поля "расширение по умолчанию при сохранении" сделать поле "расширения при сохранении". В этом поле через пробел задавать неограниченное количество используемых пользователем расширений. Параметр запомнить в файле AkelPad.ini При сохранении файла в окне "Сохранить как" в поле "Тип файла" в выпадающем меню должны появиться все заданные в настройках расширения для сохранения файла. В нем один раз выбирается расширение для сохранения текущего файла и после сохранения оно запоминается в AkelPad.ini как параметр DefaultSaveExt= . Теперь, каждый раз при сохранении файлов в этом поле будет стоять это расширение, как выбранное по умолчанию и подставляться ко всем сохраняемым файлам. Если нужно другое расширение, то его следует заново выбрать из выпадающего меню и сохранить с ним файл. Тогда уже оно запомнится как расширение по умолчанию.
При этих операциях алгоритм автоматического определения наличия расширения должен быть отключен. Включать этот алгоритм можно установкой галочки в чекбоксе в окне "Сохранить как", либо в настройках "Параметры\Дополнительно" . Уж не знаю как лучше и нужен ли этот алгоритм вообще, т.к. всегда можно в окне "Сохранить как" в поле "Тип файла" выбрать "Все файлы (*.*)" . В этом случае расширение файла не подставляется вообще, а значит файл останется со старым расширением.

Я не программист и как все это сделать программно не знаю, так что излагаю только логическую конструкцию.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

1. Расширением в ОС Windows считается текст от последней точки в имени файла до конца имени файла. Изменить это невозможно впринципе. Баста.
2. А как Ваше предложение решает Вашу проблему?

Offline
Posts: 366
Joined: Mon Jan 10, 2011 5:28 pm
Contact:

Post by Lenchik »

SaveAs.js от VladSh

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

Можно добавить опцию в Акел - "всегда подставлять расширение". Либо действительно сторонними средствами.

Offline
Posts: 14
Joined: Thu Aug 16, 2012 6:52 pm

Post by vadim »

FeyFre wrote:1. Расширением в ОС Windows считается текст от последней точки в имени файла до конца имени файла. Изменить это невозможно впринципе. Баста.
2. А как Ваше предложение решает Вашу проблему?
1. Я знаю, что все, что идет после последней точки Винда считает расширением. Но Редактор подставляет расширение, если его нет и не подставляет, если оно есть - значит есть автомат в программе, которые отслеживает наличие расширения у файла. Этот автомат нужно отключить. Тогда ничего в Винде и менять не надо, т.к. ВСЕГДА будет подставляться расширение, заданное пользователем!

2. Если ВСЕГДА подставляется расширение заданное мной, то и проблема моя сразу решится. Глупая автоматика не будет вмешиваться в мои действия и заданное мной в настройках расширение обязательно подставится к имени файла сколько бы точек в нем ни стояло!

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

vadim
file.cpp.txt,
file.asm.txt,
file.xml.txt,
file.txt.txt,
...
клёво!

Offline
Posts: 14
Joined: Thu Aug 16, 2012 6:52 pm

Post by vadim »

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

Post by Serge Yolkin »

ИМХО, такая функция, если уж она так нужна, должна быть реализована чем-то внешним: плагин, скрипт. Не дай Бог, проглядеть такой включенный чекбокс на работе (командные и конфигурационные файлы разного телекоммуникационного оборудования - около 20 типов текстовых (внутри) файлов). Можно до утра себе рабочий день продлить.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

vadim
Чем не подходит вышеуказанный SaveAs.js?

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Serge Yolkin
> командные и конфигурационные файлы разного телекоммуникационного оборудования
Не дай Бог лобые тектсовые-конфигурационные файлы так сохранять...

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

(командные и конфигурационные файлы разного телекоммуникационного оборудования
Едва ли они создаются именно средствами Акеля

Offline
Posts: 294
Joined: Tue Jul 27, 2010 11:18 pm

Post by Serge Yolkin »

Fr0sT
И создаются тоже, хотя чаще редактируются. Для особо экзотических даже подсветки сделал (в основном, для подсказок)

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

По теме, предложенный функционал мне представляется удобным лишь при такой реализации:
- диалог сохранения файла будет включать два новых элемента: галочку "[ ] Всегда подставлять расширение" и парное к галочке окно ввода, в котором это расширение будет фигурировать - например, "txt". Введенное расширение будет сохраняться в настройках программы и восстанавливаться при каждом запуске. Добавляться к имени файла это расширение будет только в том случае, если галочка установлена.
Если же один или оба этих элемента будут не в диалоге сохранения, где они всё время на виду, то их наличие будет приводить больше к путанице и проблемам.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Т.к. настраивать только нужные типы файлов в проге скорее всего будет невозможно, то я не вижу смысла в каких-либо вообще переделках. Всё устраивает и так; есть гораздо более важные вещи, которые бы реализовать в первую очередь.
Post Reply