Skip to content

amogus-gggy/LumoPy-IDE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

LumoPy-IDE

Современная среда разработки для Python с красивым интерфейсом, построенная на tkinter и customtkinter.

🚀 Возможности

✨ Основные функции

  • Современный интерфейс с поддержкой темной, светлой и сепия темы
  • Редактор кода с подсветкой синтаксиса Python
  • Умное автодополнение с поддержкой встроенных функций Python и пользовательских переменных
  • Файловый менеджер с древовидной структурой и контекстным меню
  • Система вкладок для работы с несколькими файлами одновременно
  • Встроенный терминал с поддержкой PowerShell
  • Автоотступы и автопарные скобки
  • Поиск и замена текста в файлах
  • Настройки с сохранением пользовательских предпочтений
  • Мультиязычность (русский/английский)
  • Конфигурации запуска для каждого проекта

🎨 Поддерживаемые языки программирования

  • Python (.py, .pyw) - полная поддержка
  • JavaScript (.js, .javascript)
  • HTML (.html, .htm)
  • CSS (.css)
  • JSON (.json)
  • XML (.xml)
  • SQL (.sql)
  • Markdown (.md, .markdown)
  • Текстовые файлы (.txt, .text)

⌨️ Горячие клавиши

  • Ctrl+Space - Автодополнение
  • Ctrl+O - Открыть файл
  • Ctrl+S - Сохранить файл
  • Ctrl+N - Новая вкладка
  • Ctrl+W - Закрыть вкладку
  • F5 / Ctrl+R - Запустить проект
  • Ctrl+F - Поиск
  • Ctrl+Z - Отменить
  • Ctrl+Y - Повторить
  • Ctrl+C - Копировать
  • Ctrl+V - Вставить
  • Ctrl+X - Вырезать

📦 Установка

Требования

  • Python 3.7+
  • Windows (тестировалось на Windows 10/11)

Установка зависимостей

pip install -r requirements.txt

Запуск

python main.py

🏗️ Архитектура

Структура проекта

LumoPy-IDE/
├── main.py                 # Точка входа
├── config.py              # Конфигурация приложения
├── settings.json          # Пользовательские настройки
├── requirements.txt       # Зависимости
├── ui/
│   ├── ide.py            # Основной класс IDE
│   ├── code_editor.py    # Редактор кода с подсветкой
│   ├── console.py        # Встроенный терминал
│   ├── theme.py          # Система тем
│   ├── localization.py   # Мультиязычность
│   └── simple_autocomplete.py  # Автодополнение
└── .lumocfg/             # Конфигурации проектов
    └── run.json          # Конфигурация запуска

Основные компоненты

IDE (ui/ide.py)

  • Главное окно приложения
  • Управление вкладками и файлами
  • Файловый менеджер
  • Система настроек
  • Конфигурации запуска проектов

CodeEditor (ui/code_editor.py)

  • Редактор кода с подсветкой синтаксиса Python
  • Автоотступы и автопарные скобки
  • Поддержка тем оформления
  • Интеграция с автодополнением

Terminal (ui/console.py)

  • Встроенный терминал PowerShell
  • Выполнение команд проекта
  • Интеграция с конфигурациями запуска

Autocomplete (ui/simple_autocomplete.py)

  • Умное автодополнение для Python
  • Встроенные функции и ключевые слова
  • Автоматическое определение переменных
  • Контекстные предложения

⚙️ Конфигурации запуска

Автоматическое создание

При первом входе в папку проекта автоматически создается:

  • Папка .lumocfg/
  • Файл run.json с конфигурацией запуска

Структура конфигурации

{
  "command": "python",
  "args": "main.py",
  "working_dir": "",
  "description": "Python проект"
}

Типы конфигураций

  • Python (main.py) - запуск основного файла
  • Python модуль - запуск модуля через -m
  • Python скрипт - запуск произвольного скрипта

Настройка конфигурации

  1. Откройте меню "Файл" → "Настройки запуска"
  2. Укажите команду и аргументы
  3. Используйте кнопки быстрых настроек
  4. Протестируйте конфигурацию
  5. Сохраните настройки

🎯 Использование

Создание нового проекта

  1. Запустите IDE
  2. Выберите папку проекта через "Файл" → "Открыть папку"
  3. Создайте файлы Python
  4. Настройте конфигурацию запуска
  5. Запустите проект через F5 или Ctrl+R

Работа с файлами

  • Открытие: Ctrl+O или двойной клик в файловом менеджере
  • Сохранение: Ctrl+S
  • Новая вкладка: Ctrl+N
  • Закрытие вкладки: Ctrl+W

Автодополнение

  • Начните вводить код
  • Автодополнение появится автоматически
  • Используйте стрелки для навигации
  • Enter или Tab для выбора

🔧 Настройки

Темы

  • Перейдите в "Настройки" → "Тема"
  • Выберите из доступных тем
  • Изменения применяются мгновенно

Шрифты

  • Настройте шрифт и размер в настройках
  • Поддерживаются моноширинные шрифты
  • Рекомендуется Consolas или Fira Code

Язык интерфейса

  • Выберите русский или английский
  • Изменения применяются после перезапуска

🤝 Вклад в проект

Добавление новых функций

  1. Создайте ветку для новой функции
  2. Реализуйте функциональность
  3. Добавьте тесты
  4. Обновите документацию
  5. Создайте Pull Request

Сообщение об ошибках

  • Опишите проблему подробно
  • Укажите версию Python и ОС
  • Приложите логи ошибок
  • Предложите возможное решение

📋 Планы развития

Ближайшие версии

  • Отладчик Python
  • Интеграция с Git
  • Плагины и расширения
  • Поддержка виртуальных окружений
  • Интеграция с pip

Долгосрочные планы

  • Полное переписывание на flet и в теории портирование под android.

📄 Лицензия

Проект распространяется под лицензией MIT. См. файл LICENSE для подробностей.

🙏 Благодарности

  • CustomTkinter - современный UI фреймворк
  • Pygments - библиотека подсветки синтаксиса
  • tkinter - стандартная GUI библиотека Python

LumoPy-IDE - легковесная и быстрая среда разработки для Python разработчиков! 🐍✨

About

Simple and lightweight python IDE written on python using tkinter and customtkinter

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages