Add repository docs and editor encoding settings
This commit is contained in:
53
.editorconfig
Normal file
53
.editorconfig
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
# EditorConfig is awesome: https://EditorConfig.org
|
||||||
|
|
||||||
|
# top-most EditorConfig file
|
||||||
|
root = true
|
||||||
|
|
||||||
|
# Unix-style newlines with a newline ending every file
|
||||||
|
[*]
|
||||||
|
end_of_line = lf
|
||||||
|
insert_final_newline = true
|
||||||
|
charset = utf-8
|
||||||
|
|
||||||
|
# KOI8-R encoded files (legacy 1998 archive)
|
||||||
|
# Set charset explicitly for IDE/editor to avoid auto-conversion
|
||||||
|
[*.htm]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[*.html]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[*.conf]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[html/_b/**]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[html/_co/**]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[html/_ex/**]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[html/_fr/**]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[html/_pb/**]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[html/_pr/**]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
[html/_sh/**]
|
||||||
|
charset = koi8-r
|
||||||
|
|
||||||
|
# Git and config files (UTF-8)
|
||||||
|
[.git*]
|
||||||
|
charset = utf-8
|
||||||
|
|
||||||
|
[.editorconfig]
|
||||||
|
charset = utf-8
|
||||||
|
|
||||||
|
[README*]
|
||||||
|
charset = utf-8
|
||||||
|
|
||||||
131
README.md
Normal file
131
README.md
Normal file
@@ -0,0 +1,131 @@
|
|||||||
|
# Архив сайта cad.ru (1998 год)
|
||||||
|
|
||||||
|
## ВСЕ о САПР (CAD/CAM/CAE Archive)
|
||||||
|
|
||||||
|
Архивная версия исторического русскоязычного сайта о системах автоматизированного проектирования (САПР), созданного в 1998–1999 годах. Развернуто, для обозрения по адресу: [1998.cadpoint.ru/](https://1998.cadpoint.ru/).
|
||||||
|
|
||||||
|
**Осторожно:**
|
||||||
|
- фреймы (frameset) и meta-refresh;
|
||||||
|
- оптимизировано под разрешение 480х680;
|
||||||
|
- кодировка KOI8-R (не UTF-8);
|
||||||
|
- куча "битых ссылок" на внешние ресурсы.
|
||||||
|
|
||||||
|
### ⚠️ Важно: Кодировка KOI8-R
|
||||||
|
|
||||||
|
Этот архив хранится в кодировке **KOI8-R** (устаревший стандарт для русского текста в интернете конца 90-х).
|
||||||
|
|
||||||
|
#### Отображение в Gitea (веб-интерфейс)
|
||||||
|
|
||||||
|
Если в веб-интерфейсе Gitea видишь "кракозябры" или иероглифы вместо русского текста — **это не ошибка, файлы хранятся корректно**. Веб-интерфейс Git/Gitea обычно ожидает UTF-8 и не умеет надёжно показывать KOI8-R как есть. Содержимое в репозитории не повреждено.
|
||||||
|
|
||||||
|
#### Правильное отображение и работа
|
||||||
|
|
||||||
|
##### 1. Локально (клонирование + IDE)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://git.cube2.ru/erjemin/1998-cad-cadpoint.git
|
||||||
|
cd 1998-cad-cadpoint
|
||||||
|
```
|
||||||
|
|
||||||
|
Откройте файлы в IDE **с явным указанием кодировки KOI8-R**:
|
||||||
|
- **VS Code**: нижняя панель → `UTF-8` → выберите `KOI8-R`
|
||||||
|
- **JetBrains IDE** (PhpStorm, IntelliJ и т.д.): правый клик → `File Encoding` → `KOI8-R`
|
||||||
|
- **nano/vim**: `:set encoding=koi8-r` (vim)
|
||||||
|
|
||||||
|
`.editorconfig` в репозитории подскажет IDE открыть KOI8-R файлы с правильной кодировкой автоматически.
|
||||||
|
|
||||||
|
##### 2. Через nginx (контейнер/веб-сервер)
|
||||||
|
|
||||||
|
Сайт отдаётся через nginx с заголовком:
|
||||||
|
```
|
||||||
|
Content-Type: text/html; charset=koi8-r
|
||||||
|
```
|
||||||
|
|
||||||
|
Браузер автоматически декодирует текст корректно. Содержимое отображается правильно для конечного пользователя.
|
||||||
|
|
||||||
|
### Структура
|
||||||
|
|
||||||
|
```
|
||||||
|
.
|
||||||
|
├── html/ # Статические файлы сайта
|
||||||
|
│ ├── index.htm # Промежуточная страница с meta-refresh
|
||||||
|
│ ├── index1.htm # Главная (frameset)
|
||||||
|
│ ├── header.htm # Шапка фреймовой структуры
|
||||||
|
│ ├── nav.htm # Навигация (левая панель)
|
||||||
|
│ ├── main.htm # Основной контент
|
||||||
|
│ ├── _b/ # Графические элементы (GIF)
|
||||||
|
│ ├── _co/ # Раздел "Компании"
|
||||||
|
│ ├── _pr/ # Раздел "Программные продукты"
|
||||||
|
│ ├── _ex/ # Раздел "События и новости"
|
||||||
|
│ ├── _pb/ # Раздел "Публикации"
|
||||||
|
│ ├── _fr/ # Раздел "Ссылки"
|
||||||
|
│ ├── _sh/ # Раздел "Поиск"
|
||||||
|
│ ├── images/ # Баннеры и логотипы
|
||||||
|
│ ├── robots.txt # Инструкции для поисковых роботов
|
||||||
|
│ └── favicon.* # Иконки браузера
|
||||||
|
├── configs/ # Конфигурация nginx
|
||||||
|
│ ├── cadpoin-ru_1998.conf
|
||||||
|
│ └── cadpoin-ru_1998_w_ssl.conf
|
||||||
|
├── .gitignore # Исключение из репозитория
|
||||||
|
├── .gitattributes # Правила кодировки и обработки файлов
|
||||||
|
├── .editorconfig # Рекомендации для редакторов
|
||||||
|
└── README.md # Этот файл
|
||||||
|
```
|
||||||
|
|
||||||
|
### Важные замечания
|
||||||
|
|
||||||
|
#### ❌ НЕ делай
|
||||||
|
|
||||||
|
- ❌ Не переводи файлы в UTF-8 без планомерного миграционного процесса
|
||||||
|
- ❌ Не пересохраняй файлы в редакторе без явного указания `Keep KOI8-R`
|
||||||
|
- ❌ Не игнорируй предупреждения IDE о кодировке
|
||||||
|
|
||||||
|
#### ✅ Делай
|
||||||
|
|
||||||
|
- ✅ Явно указывай кодировку KOI8-R при открытии файлов
|
||||||
|
- ✅ Используй `.editorconfig` (IDE будут читать автоматически)
|
||||||
|
- ✅ Проверяй git diff перед коммитом, чтобы убедиться, что файлы не перекодированы
|
||||||
|
- ✅ При внесении изменений убеждайся, что IDE сохраняет KOI8-R
|
||||||
|
|
||||||
|
### Технический контекст
|
||||||
|
|
||||||
|
#### Фреймовая структура (HTML frameset)
|
||||||
|
|
||||||
|
Сайт использует устаревший элемент `<frameset>` для разделения layout:
|
||||||
|
- Левая колонка: `nav.htm` (навигация)
|
||||||
|
- Верхний блок: `header.htm` (логотип и заголовок)
|
||||||
|
- Основная область: `main.htm` (контент)
|
||||||
|
|
||||||
|
Это типично для веб-дизайна конца 90-х, но не поддерживается современными стандартами. При миграции на современный сайт потребуется переделка HTML-структуры. Тем не менее, браузеры показывают сайт корректно.
|
||||||
|
|
||||||
|
#### Meta-refresh редирект
|
||||||
|
|
||||||
|
Главная страница (`index.htm`) использует `meta http-equiv="refresh"` для редиректа на `index1.htm`. Это также устаревший подход.
|
||||||
|
|
||||||
|
#### Внешние ресурсы
|
||||||
|
|
||||||
|
В коде есть ссылки на старые внешние сервисы (счётчики, баннеры):
|
||||||
|
- `counter.rambler.ru` (архивная служба рейтингов)
|
||||||
|
- `mail.ru` (счётчик Mail.ru)
|
||||||
|
- `ir.ru` (InterReklama, старая рекламная сеть)
|
||||||
|
|
||||||
|
Эти сервисы могут быть недоступны или нестабильны. Они не влияют на функциональность сайта при корректной обработке ошибок.
|
||||||
|
|
||||||
|
### Дальнейшее развитие
|
||||||
|
|
||||||
|
Проект может быть расширен в отдельных ветках:
|
||||||
|
|
||||||
|
- **`legacy-1998`** — архивная версия в оригинальном виде (текущая ветка)
|
||||||
|
- **`main`** — версия с миграцией:
|
||||||
|
- Развертывание в Docker
|
||||||
|
- Возможно что-то еще (пока не знаю)
|
||||||
|
|
||||||
|
## Контакты и лицензия
|
||||||
|
|
||||||
|
Автор: *Sergei Erjemin* (это я)
|
||||||
|
Контакт: `erjemin@gmail.com`
|
||||||
|
|
||||||
|
Архив сохранён и перенесён в современную инфраструктуру в 2026 году.
|
||||||
|
|
||||||
|
---
|
||||||
|
**Последнее обновление:** March 27, 2026
|
||||||
Reference in New Issue
Block a user