PyCharm: Как пропустить закрытие скобок/скобок/скобок?
Я не могу заставить авто-отступы работать должным образом, если я не использую автоматическое закрытие фигурных скобок и т.д. (что мне не нравится), и я не вижу опции, позволяющей пропускать/выходить.
Eclipse имеет для этого параметр конфигурации, а Visual Studio по умолчанию не закрывает все по-умолчанию, а форматирует блок кода после ручного ввода закрывающей скобки (что я предпочитаю).
Несомненно, есть что-то помимо прохода к ключу "Конец"?
Ответы
Ответ 1
После долгого долгого времени, проведенного в меню настроек, я пришел к конфигурации, похожей на Eclipse, во многих отношениях, включая способ скобки/скобки/круглые скобки, когда включена опция "Вставить пару"; точную комбинацию было бы невозможно связать.
Я не верю, что в IDE есть точная функция, включающая автоматическое форматирование при вводе закрывающей скобки (похоже на Visual Studio), но с радостью будет отличать другой ответ, чем мой, если кто-то обнаружит способ.
Ответ 2
Нажмите Ctrl-Shift-Enter, чтобы закрыть отсутствующие фигурные скобки в текущей строке (если есть), добавьте отсутствующий двоеточие (если отсутствует) и поместите курсор в позицию с правильно отступом на следующей строке.
Ответ 3
Колледж сказал мне решение:
Сначала вы набираете это:
def test_foo(
PyCharm вставляет self)
, как только вы набираете (
Текущее состояние: ^
указывает позицию курсора:
def test_foo(self^):
Просто введите ):
и нажмите ENTER
, и вы на следующей строке.
Поскольку я печатаю десять пальцев Ctrl-Shift-Enter
, это не решение для меня в таких общих действиях редактирования.
Ответ 4
Почему вам не нравятся автоматические закрывающие скобки? Они никого не беспокоят, смотри:
^ определяет положение курсора
method([a, {b: c^}])
ведет себя так, как будто никаких скобок не было, если вы вставляете новые скобки!
Вставить '}':
method([a, {b: c}^])
теперь вставьте ']':
method([a, {b: c}]^)
теперь вставьте ')':
method([a, {b: c}])^
et voila! С точки зрения пользователей, если вы печатаете вслепую, вы не можете сказать, что вы видите сейчас, если были вставлены автозакрывающиеся скобки или нет.
Или просто: держите закрывающиеся скобки включенными. IntelliJ проделал большую работу над множеством мелких вещей, которые мы хотим интуитивно.
Ответ 5
Shift + Enter перепрыгнет через завершения и опустит вас на следующую строку.
Ctrl +] перейдет в конец текущего элемента.
Похоже, это работает в большинстве случаев, чтобы пропустить автозаполнения. Я считаю, что это самый универсальный из вариантов.
Ctrl + [ переместит вас в начало любого блока кода, в котором вы находитесь.
Как упоминалось ранее, Ctrl + Shift + Enter добавит любые дополнительные автозаполнения, которые вам могут понадобиться, и перейдет на новую строку.