Ответ 1
попробуйте python curses, это графическая операционная библиотека командной строки.
Я познакомился с несколькими языками программирования, и я хотел бы попробовать свои силы в создании текстового редактора командной строки - что-то, что работает в терминале, например vim/emacs/nano, но чистый текст (без guis, пожалуйста). Предпочтительно, я хотел бы сделать это в python. С чего начать? Существуют ли какие-либо (python) библиотеки для приложений командной строки?
попробуйте python curses, это графическая операционная библиотека командной строки.
Взгляните на Программирование прокладок на Python и this.
Дети сегодня! Sheesh! Когда я начинал, проклятия не были широко распространены!
Мои первые текстовые редакторы работали на реальных механических устройствах Teletype с фактической бумагой (а не на философском устройстве TTY с прокруткой экрана!)
Это все еще прекрасно работает как способ редактирования.
Используйте модуль cmd
для реализации множества команд. Используйте страницу "ex" для подсказок о том, что вам нужно. Не читайте о командах vi; не читайте о vim.
Посмотрите на страницы старшего пользователя только для раздела "КОМАНДЫ ЭКСПЛУАТАЦИИ". Например, здесь: http://www.manpagez.com/man/1/ex/.
Внедряйте добавления, добавления, изменения, удаления, глобального, вставки, объединения, списка, перемещения, печати, вывода, замены и записи команд, и вы будете счастливы.
Библиотеки и ресурсы типа Curses будут вводить вас в текстовые пользовательские интерфейсы и предоставлять очень красивые, относительно простые в использовании окна, меню, редакторы и т.д.
Затем вы захотите изучить модули выделения кода для python.
Это забавный процесс, связанный с ограничениями текстовых интерфейсов, и вы можете многому научиться, спустившись по этой дороге. Удачи!
-Adam
Другой вариант, если вы хотите написать TUI (текстовый пользовательский интерфейс) без необходимости спускаться до проклятий, Snack, который поставляется с Newt.
Я бы порекомендовал отличный инструментарий urwid (http://excess.org/article/2009/03/urwid-0984-released) - он гораздо проще в использовании, чем прямые проклятия.
Не очень серьезные предложения: редактор строк может быть реализован без проклятий.
Эти вещи довольно примитивны, конечно, и не очень весело работать. Но они могут быть реализованы с очень маленьким кодом и дают вам возможность обманывать различными схемами для поддержания состояния файла в память довольно быстро.
И они свяжут вас с программистами начала семидесятых (когда у них были телетайпы и первые стеклянные телетайпы, но после того, как перфокарты были немного просты...).
Не совсем ссылка на библиотеку Python, но "Крафт редактирования текста" от Craig A. Finseth может вас заинтересовать.
Хорошо, что вы подразумеваете под графическим интерфейсом? Если вы просто хотите создать что-то, что можно использовать на консоли, загляните в модуль curses
в стандартной библиотеке Python, что позволит вам имитировать примитивный графический интерфейс на консоли.
Другим вариантом без проклятий является Python Slang
[Newt] (http://en.wikipedia.org/wiki/Newt_(programming_library)) написано поверх сленга.