projects:rules
Это старая версия документа!
Правила оформления скриптов
Павила сделаны для моего личного удобства. Если посчитаете полезным для себя - против не буду.
Заголовок
# ----------------------------------------
# 🌐 Установка локали (глобально для скрипта)
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
# ----------------------------------------
# ==AUTOEXEC==
# === Название программы ===
# Краткое описание (первая строка обязательно без #)
# Подробное описание скрипта:
# - Строки между `===` и первой пустой строкой читаются как help
# - Используется в лаунчере для отображения описания
# - Желательно указывать, что делает скрипт, какие зависимости, риски и режимы
#
# 🧭 Рекомендованная структура скрипта:
# - Блок установки переменных и окружения
# - Обработка аргументов командной строки (если есть)
# - Основная логика
# - Завершение и вывод
# - (опционально) Функции в конце
# 🧩 Комментарии в коде:
# Перед **каждой функцией или важным блоком** обязательно размещать поясняющий комментарий:
# - Что делает эта функция / блок
# - Какие переменные использует и изменяет
# - Есть ли побочные эффекты (удаления, запись, перезапуск служб и т.д.)
# 💡 Пример:
# Функция для сжатия образа с выбором метода
compress_image() {
# Аргумент 1: путь к образу
# Использует переменную $compression для выбора метода
...
}
# 🧼 Форматирование:
# - Использовать отступы в 2 пробела (или единый стиль по проекту)
# - Переменные: UPPER_CASE для глобальных, lower_case для локальных
# - Придерживаться стиля имён: short_flag, main_loop, backup_dir и т.д.
# 📎 Дополнительно:
# - Скрипты можно снабжать флагами: `--help`, `--version`, `--dry-run`
# - Для menu-скриптов рекомендуется оформлять пункты как: `1 - Название`, `0 - Выход`
# - Все временные файлы сохранять в `$temp_dir`, задаваемом в начале
# 🛑 Важно:
# Скрипт не обязан быть универсальным — главное, чтобы он был читаем, понятен тебе и не опасен в запуске.
# При публикации лучше добавить лицензию, пример вызова и ссылку на репозиторий (если есть).
# 🚫 Исключение из лаунчера:
# Для принудительного исключения скрипта из списка автозапуска/лаунчера
# используйте маркер:
# # ==DIS/AUTOEXEC==
# Это отличается от отсутствия `# ==AUTOEXEC==` —
# такой скрипт будет проигнорирован намеренно, а не случайно.
# ---------------------------------------- # 🌐 Установка локали (глобально для скрипта) export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8 # ---------------------------------------- # ==AUTOEXEC== # === Название программы === # Краткое описание (первая строка обязательно без #) # Подробное описание скрипта: # - Строки между `===` и первой пустой строкой читаются как help # - Используется в лаунчере для отображения описания # - Желательно указывать, что делает скрипт, какие зависимости, риски и режимы # # 🧭 Рекомендованная структура скрипта: # - Блок установки переменных и окружения # - Обработка аргументов командной строки (если есть) # - Основная логика # - Завершение и вывод # - (опционально) Функции в конце # 🧩 Комментарии в коде: # Перед **каждой функцией или важным блоком** обязательно размещать поясняющий комментарий: # - Что делает эта функция / блок # - Какие переменные использует и изменяет # - Есть ли побочные эффекты (удаления, запись, перезапуск служб и т.д.) # 💡 Пример: # Функция для сжатия образа с выбором метода compress_image() { # Аргумент 1: путь к образу # Использует переменную $compression для выбора метода ... } # 🧼 Форматирование: # - Использовать отступы в 2 пробела (или единый стиль по проекту) # - Переменные: UPPER_CASE для глобальных, lower_case для локальных # - Придерживаться стиля имён: short_flag, main_loop, backup_dir и т.д. # 📎 Дополнительно: # - Скрипты можно снабжать флагами: `--help`, `--version`, `--dry-run` # - Для menu-скриптов рекомендуется оформлять пункты как: `1 - Название`, `0 - Выход` # - Все временные файлы сохранять в `$temp_dir`, задаваемом в начале # 🛑 Важно: # Скрипт не обязан быть универсальным — главное, чтобы он был читаем, понятен тебе и не опасен в запуске. # При публикации лучше добавить лицензию, пример вызова и ссылку на репозиторий (если есть). # 🚫 Исключение из лаунчера: # Для принудительного исключения скрипта из списка автозапуска/лаунчера # используйте маркер: # # ==DIS/AUTOEXEC== # Это отличается от отсутствия `# ==AUTOEXEC==` — # такой скрипт будет проигнорирован намеренно, а не случайно.
projects/rules.1743284578.txt.gz · Последнее изменение: —
