Skip to main content

🇷🇺 RusMenu - Русское контекстное меню для Python

RusMenu - это библиотека для Python, которая добавляет русскоязычное контекстное меню (правой кнопкой мыши) для текстовых полей ввода в различных GUI-фреймворках.

Python Version License

✨ Особенности

  • 🇷🇺 Полностью на русском языке - все пункты меню переведены
  • 🎨 Кастомизация - настройка шрифтов, цветов, стилей
  • ⌨️ Горячие клавиши - поддержка Ctrl+C, Ctrl+X, Ctrl+V и других
  • 🎯 Универсальность - работает с 4 популярными фреймворками
  • 🔧 Гибкость - возможность добавлять свои пункты меню
  • Легкость - минимальное влияние на производительность

🚀 Поддерживаемые фреймворки

Фреймворк Статус Установка
Tkinter ✅ Полная поддержка Встроен в Python
PyQt5 / PySide6 ✅ Полная поддержка pip install PyQt5
wxPython ✅ Полная поддержка pip install wxPython
Dear PyGui ✅ Полная поддержка pip install dearpygui

📦 Установка

pip install rusmenu

Или установка из исходников:

bash
git clone https://github.com/serskvortsov386/rusmenu.git
cd rusmenu
pip install -e .


Быстрый старт:

1) Tkinter
python

import tkinter as tk
from rusmenu import RusContextMenu

root = tk.Tk()
entry = tk.Entry(root)
entry.pack()
entry.insert(0, "Кликни правой кнопкой")

# Добавляем русское меню
RusContextMenu(entry)

root.mainloop()


2) PyQt5
python

from PyQt5 import QtWidgets
from rusmenu import RusContextMenu

app = QtWidgets.QApplication([])
window = QtWidgets.QMainWindow()
text_edit = QtWidgets.QTextEdit(window)

# Добавляем русское меню
RusContextMenu(text_edit)

window.show()
app.exec()

3) wxPython
python

import wx
from rusmenu import RusContextMenu

app = wx.App()
frame = wx.Frame(None, title="RusMenu")
text = wx.TextCtrl(frame, style=wx.TE_MULTILINE)

# Добавляем русское меню
RusContextMenu(text)

frame.Show()
app.MainLoop()


4) Dear PyGui
python

import dearpygui.dearpygui as dpg
from rusmenu import RusContextMenu

dpg.create_context()

with dpg.window(label="RusMenu"):
    input_text = dpg.add_input_text(default_value="Кликни правой кнопкой")
    RusContextMenu(input_text)  # Передаем ID виджета

dpg.create_viewport()
dpg.setup_dearpygui()
dpg.show_viewport()
dpg.start_dearpygui()
dpg.destroy_context()


5) Кастомизация
python

from rusmenu import RusContextMenu, RusMenuConfig

# Настраиваем внешний вид
config = RusMenuConfig()
config.font_family = "Segoe UI"
config.font_size = 12
config.bg_color = "#2d2d2d"  # Темная тема
config.fg_color = "#ffffff"
config.hover_bg = "#3a6ea5"

# Создаем меню с кастомной конфигурацией
menu = RusContextMenu(widget, config=config)

# Добавляем свои пункты
def custom_action():
    print("Сработал кастомный пункт!")

menu.add_command("🔍 Поиск", custom_action, shortcut="Ctrl+Shift+F")

📜 Лицензия
Эта библиотека распространяется по двойной лицензии:

Бесплатно для некоммерческого использования, образовательных целей и открытых проектов

Коммерческое использование требует покупки лицензии

Подробнее: LICENSE

🤝 Как поддержать проект
⭐ Поставьте звезду на GitHub

🐛 Сообщайте об ошибках в Issues

💡 Предлагайте новые идеи

📝 Пишите документацию и примеры

📧 Контакты
Автор: Скворцов Сергей Александрович

Email: ser.skvortsov.386@gmail.com

Город: Чебоксары

🙏 Благодарности
Всем пользователям, которые помогают тестировать библиотеку

Сообществу Python за вдохновение. 

Release files for rusmenu 4.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rusmenu 4.0.0
File Size Uploaded
rusmenu-4.0.0.tar.gz 16.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rusmenu 4.0.0
File Interpreter ABI Platform
rusmenu-4.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 35.3 kB

Release files / rusmenu-4.0.0.tar.gz

Download URL rusmenu-4.0.0.tar.gz
Size 16.9 kB
Tags Source
SHA-256 checksum
How to use checksums
cc2609270b33781921a41222399c8945e1ffa904dace8f8683935839926c2bbe
BLAKE2b-256 checksum
How to use checksums
de14aea21dc67d8f005befa67681b5ed83eeacb3c159b3907b51bf07a68c1875
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.8.0

Release files / rusmenu-4.0.0-py3-none-any.whl

Download URL rusmenu-4.0.0-py3-none-any.whl
Size 18.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a67b7a820f75375d4f84c7e595f5bc2d6fd1d0efca68b36b12315b03777030d8
BLAKE2b-256 checksum
How to use checksums
e80f15409c91908e1c1f49ac9e7ebe374ee7948fd0e99193e6c934d49c41d60f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.8.0

Release history Release notifications | RSS feed

4.0.1

2 release files

This release

4.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page