Я на самом деле нашел дополнительный метод , который сделает то, что я хочу приятно
public static IEnumerable ForEach(
this IEnumerable source,
Action act)
{
foreach (T element in source) act(element);
return source;
}
поместите эту строку в свой .vimrc файл:
:map <F2> :w\|!python %<CR>
теперь нажатие
сохранит и запустит ваш скрипт python
Используя emacs с режимом python, вы можете выполнить сценарий с помощью Cc Cc
вы можете попробовать ipython . используя команду редактирования, он откроет ваш редактор (nano / vim / etc), вы напишете свой скрипт, а затем при выходе вы вернетесь к приглашению ipython, и скрипт будет автоматически выполнен.
При работе с Vim на консоли я обнаружил, что использование вкладок в Vim вместо приостановки нескольких экземпляров Vim в фоновом режиме, делает работу с несколькими файлами в Vim более эффективной. К этому нужно немного привыкнуть, но это действительно хорошо работает.
Вы можете запустить XVNC через ssh, который на самом деле достаточно быстро реагирует на подобные действия и предоставляет графический интерфейс с окнами. Я проделал это довольно эффективно с действительно астматическими службами Jetstart DSL в Новой Зеландии (128K вверх / 128K вниз = 8 ^ P), и он определенно достаточно отзывчив для окон gvim и xterm. Другой вариант - экран , , который позволяет открывать несколько текстовых сеансов и переключаться между ними.
Что ж, помимо использования одного из наиболее эффективных консольных редакторов (на ум приходит Emacs или vi), зачем вам редактировать его на самом веб-сервере? Просто отредактируйте его удаленно, если постоянная передача по FTP / WebDAV кажется утомительной.
Emacs имеет Tramp Mode , gedit в Linux и bbedit на Mac также поддерживают удаленное редактирование. Наверное, довольно большое количество других редакторов. В этом случае вы просто отредактируете его на более мощном рабочем столе и перезапустите сценарий из окна оболочки.
На самом деле есть два вопроса. Первый - это опрос консольной IDE для python, а второй - лучший рабочий процесс разработки / тестирования / развертывания.
Хотя существует множество способов написания кода Python в консоли, я считаю, что комбинация screen, vim и python / ipython является лучшей, поскольку они обычно доступны на большинстве серверов. Если вы проводите длительные сеансы, я считаю, что emacs + python-mode обычно требует меньше ввода текста.
Для улучшения рабочего процесса я бы предложил настроить среду разработки. В наши дни вы можете легко настроить виртуальную машину Linux на свой настольный компьютер / ноутбук - нет оправдания, даже если это для хобби-проектов. Это открывает гораздо больший выбор доступных вам IDE, таких как:
Я бы также установил SCM для отслеживания изменений, чтобы вы могли лучше выполнять контроль качества и использовать его для развертывания проверенных изменений на сервере.
Например, я использую Mercurial для своих домашних проектов, и я просто помечаю свое репо, когда оно будет готово, и обновляю производственный сервер с помощью этого тега при развертывании. В devbox я делаю:
Затем я перехожу на сервер и делаю следующее при развертывании: