Найти - Пользователи
Полная версия: Чем сдвинуть пробелы в коде?
Начало » Python для новичков » Чем сдвинуть пробелы в коде?
1 2 3
ZZZ
alekzp: tab и shift + tab. Ничего не менял, всё по дефолту. :-)
leonid_10
JOHN_16
никто такой ерундой не занимается. Нормальные програмисты используют IDE потмоу что не хотят тратить времяна такие мелочи,а больше времени на написание грамотного кода и его сопровождении.
Разборки с eclipse сказали мне про то же: я ненормальный программист. Когда я начал искать, как сдвинуть код, то понял, что я, просто, не знаю своего любимого редактора Geany. :( Я разобрался кое в чём с Питоном, а посмотреть, что же может, на самом деле Geany мне было некогда. Всё там двигается Ctrl-I, Ctrl-U, меняются регистры, табы на пробелы и так далее.
Но, в действительности, иногда легче использовать циклы, чем изучать неизвестный редактор.
Например, мне нужно было из онлайн документации создать EnumProperty(combobox) c 80 элементами. Это очень нудный процесс. Не уверен, что есть такой крутой редактор, который это сделает используя несколько манипуляций мышью, зато проанализировав страницу циклами, я получил очень ровненький код.
Сменив Geany на другой редактор мало того, что придётся изучить интерфейс, может оказаться, что из этого редактора я не смогу запустить код Povray, что мне приходится делать намного чаще, чем писать Питон-код .
Поэтому я задаю вопросы здесь. Поверьте, что у причин моих вопросов есть своя логика.
Кроме того, неплохо знать, в принципе, как работать с пробелами, ибо мне как раз приходится создавать функции, создающие текстовые файлы, в которых должен быть свой порядок.
В связи с этим ещё хочу поинтересоваться этой цитатой:
py.user.next
sed -i~ ‘200,300 s/ \{20\}//’ file.py
Расшифруйте, если не трудно…что здесь есть что? Я вижу только файл и 20 пробелов. Мне ничего не известно про sed
alekzp
ZZZ
alekzp: tab и shift + tab. Ничего не менял, всё по дефолту. :-)
аналогично, всё по дефолту. Видимо, думают разработчики о староверах
Singularity
Я бы написал python скрипт для этого
bismigalis
в emacs
1. выделить блок (Ctrl+Space, перевести курсор)
2. Ctrl+u - 2 0 Tab

P.S. хотя сам я Geany пользуюсь
py.user.next
leonid_10
Мне ничего не известно про sed
это древняя программа (ещё первый сетевой червь Морриса был написан с его использованием)

sed -i~ '201,300 s/^ \{20\}//' file.py
поменял построже

-i - менять файл на месте
-i~ - менять файл на месте, сохраняя прежнюю версию под именем file.py~
201,300 - c 201-ой по 300-ую строку включительно выполнять следующую команду
s/что/на_что/ - замена
s/^ \{20\}// - заменить в начале строки двадцать пробелов на пустоту
leonid_10
bismigalis
P.S. хотя сам я Geany пользуюсь
А подскажите, как правильно настроить отступы. У меня очень часто, если Geany самостоятельно создаёт отступы, выскакивает “IndentationError:” после чего мне вручную табы приходится менять на пробелы. В настройках \редактор\отступы\тип я установил “Пробелы”, но это не помогло.
Вообще, этим больны многие редакторы питон-кода. Никогда у меня с этим не было проблем, когда я использовал drPython и нет с этим никаких проблем, когда пишешь код в текстовом редакторе блендера

py.user.next
-i - менять файл на месте
-i~ - менять файл на месте, сохраняя прежнюю версию под именем file.py~
201,300 - c 201-ой по 300-ую строку включительно выполнять следующую команду
s/что/на_что/ - замена
s/^ \{20\}// - заменить в начале строки двадцать пробелов на пустоту
Спасибо.

bismigalis
leonid_10
А подскажите, как правильно настроить отступы.
у меня так настроено
doza_and
leonid_10
Не уверен, что есть такой крутой редактор, который это сделает
Есть еще вариант схожий с sed Текстовые редакторы поддерживают замену с использованием регулярных выражений. Этим можно сделать практически все что надо.
leonid_10
мне нужно было из онлайн документации создать EnumProperty(combobox) c 80 элементами
Это задачи фильтрации и генерации текста. Хороший вариант использование perl. Для генерации текста подойдут шаблонизаторы, jinja mako.

leonid_10
Всем спасибо!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB