Я использую emacs 23 (python.el) чуть больше месяца, и я недоволен настройками автоматической отступов по умолчанию.
В настоящее время мои файлы Python автоматически отступаются следующим образом:
x = a_function_with_dict_parameter({
'test' : 'Here is a value',
'second' : 'Another value',
})
a_function_with_multiline_parameters(on='First', line='Line',
now_on='Second', next_line='Line',
next='Third', finally='Line')
Я бы предпочел, чтобы установить параметры автоматического отступа, чтобы тот же код можно было легко отформатировать:
x = a_function_with_dict_parameter({
'test' : 'Here is a value',
'second' : 'Another value',
})
a_function_with_multiline_parameters(on='First', line='Line',
now_on='Second', next_line='Line', next='Third', finally='Line')
Кажется, что логика для того, как мне хотелось бы выполнить автоматическое отступы, будет:
Если последний символ (не-комментарий/пробел) предыдущей строки равен:, увеличьте уровень отступа на 1. Иначе, используйте тот же уровень отступов.
Но используя эту логику, TAB
нужно будет фактически увеличить уровень отступа текущей строки. (В настоящее время TAB
перемещает линию только на уровень автоматического отступа)
Кто-нибудь знает, как я могу изменить автоиндексацию emacs для достижения желаемого стиля?