Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 22, 2012 22:29:17

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

PyDev

Когда я в PyDev делаю переименование по alt+shift+r, он переименовывает и в строках и еще и в других модулях, а также переименовывает и названия хеш-аргументов. Т.е. было.

print "server"
f(server=server)

Переименовываем server в s, получаем

print "s"
f(s=s)
Распидорасило весь код, иногда приходится из бекапа восстанавливаться.
Как отключить хотя бы переименование в строках и ключей хеш-аргументов?

Офлайн

#2 Окт. 24, 2012 02:11:26

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

PyDev

Ну что, никто не знает?

Офлайн

#3 Окт. 24, 2012 15:38:01

cpu
От:
Зарегистрирован: 2011-12-29
Сообщения: 58
Репутация: +  1  -
Профиль   Отправить e-mail  

PyDev

Переименовываем server в s, получаем
Распидорасило весь код, иногда приходится из бекапа восстанавливаться.
А чего ты ожидал? Замена идет тупо по подстроке. Если же хочешь менять текст вместе с контекстом его применения, то нужно юзать регулярное выражение в время замены.



Офлайн

#4 Окт. 24, 2012 16:41:53

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

PyDev

cpu
речь идёт о функции рефакторинга как бы, а не банальной замене
http://pydev.org/manual_adv_refactoring.html

Офлайн

#5 Окт. 25, 2012 05:04:30

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

PyDev

Ну так что с этим можно сделать?

Офлайн

#6 Окт. 25, 2012 11:49:35

adray
Зарегистрирован: 2012-09-15
Сообщения: 123
Репутация: +  18  -
Профиль   Отправить e-mail  

PyDev

rope к pyDev нельзя прикрутить? Он рефакторит как надо, а не тупым реплейсом строк

Офлайн

#7 Окт. 25, 2012 12:28:22

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

PyDev

Самое интересное, что замена в строках может быть нужна, т.к. можно написать var, а можно и locals(). Но лучше уж я такие варианты ручками допилю.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version