Согласие на обработку персональных данных.

16.10.2018
Новая статья Типизированные и нетипизированные указатели.

09.10.2018
Новые видео и статья Как изменить цвет текста в HTML.

02.10.2018
Новый выпуск журнала Автоматизация и программирование.

28.09.2018
Новые видео и статья Процедура Close.

26.09.2018
Новые видео и статья Как уменьшить размер программы в Lazarus.



Раздел: Как стать программистом / Секреты программирования /

Как сдвинуть блок кода

Когда вы пишете программу, особенно большую, то экономия времени становится как никогда актуальной. И здесь даже сэкономленные секунды в итоге складываются в часы, а то и дни (в зависимости от того, насколько сложна ваша программа).

Поэтому все профессиональные программисты стараются использовать возможности среды разработки на “всю катушку”.

В этой статье я расскажу об одной из фишек, которая используется довольно часто (во всяком случае мной) и которая на самом деле экономит время и нервы.

Для лучшей наглядности посмотрите видео. А если вы его уже посмотрели, то статью уже можно не читать. Потому что статья написана на всякий случай - для тех, у кого видео почему-то не работает или очень медленный Интернет.

Итак, суть вопроса: довольно часто вы пишите, например, такой код:

for i := 0 to 10 do
  begin
    x := i * 10;
    y := i;
    z := x + y;
    z := z / i;
  end;

Это совершенно бесполезный код с практической точки зрения. Смысл в другом - смысл в том, что после того как код написан и уже красиво отформатирован (выровнен), вы вдруг вспоминаете, что на ноль делить нельзя, а индекс у нас может быть равен нулю. Поэтому надо добавить проверку индекса на ноль, и не выполнять итерацию цикла, если таковая проверка выявит равенство индекса нулю.

В этом случае новичок делает так:

for i := 0 to 10 do
  if i <> 0 then
  begin
    x := i * 10;
    y := i;
    z := x + y;
    z := z / i;
  end;

При этом красота форматирования исчезает, потому что нам теперь надо сдвинуть блок кода вправо. И новичок делает это для каждой строки, на что тратит много времени. А потом ещё и нервов, когда понимает, что он делал это совершенно напрасно - ведь можно было просто сделать цикл не от 0 до 10, а от 1 до 10. Он так и делает, и начинает снова построчно сдвигать код, но уже влево…

И так много много раз, потому что в большой программе таких действий приходится выполнять немало.

Но эти действия можно выполнить намного проще, потому что почти во всех современных средствах разработки есть сочетания клавиш, которые позволяют лёгким движением руки сдвинуть не одну строку, а целый блок кода, как вправо, так и влево.

Для этого просто выделяем в редакторе блок кода, который надо сдвинуть, и нажимаем нужное сочетание клавиш.

Как сдвинуть код вправо

Чтобы сдвинуть блок кода вправо в Lazarus, нажмите сочетание клавиш

CTRL + I

Чтобы сдвинуть блок кода вправо в Delphi, нажмите сочетание клавиш

CTRL + SHIFT + I

Как сдвинуть код влево

Чтобы сдвинуть блок кода влево в Lazarus, нажмите сочетание клавиш

CTRL + U

Чтобы сдвинуть блок кода влево в Delphi, нажмите сочетание клавиш

CTRL + SHIFT + U

Настройки клавиш в Lazarus

В Lazarus можно определить другие сочетания клавиш для выполнения этих действий (сдвига блока текста). Возможно, есть такое и в Delphi. Но утверждать не берусь. Потому что в моей старой версии такого нет, а в новых может и есть, но у меня нет новых версий, чтобы это проверить.

В Lazarus это делается через меню

СЕРВИС - ПАРАМЕТРЫ

В открывшемся окне выбрать

РЕДАКТОР - ТАБУЛЯЦИЯ И ОТСТУП

Как сдвинуть блок кода

На этой вкладке вы можете изменить сочетания клавиш для сдвига кода. Для этого надо:

  1. Щёлкнуть по надписи “изменить клавиши”.
  2. В открывшейся вкладке выбрать нужное действие.
  3. Нажать кнопку ПРАВКА.
  4. Установить нужную комбинацию.

Там же можно проверить, нет ли конфликтов с другими комбинациями (то есть не задействована ли выбранная вами комбинация для других операций).

Я не советую вам без крайней необходимости изменять комбинации клавиш по умолчанию. Единственная причина, по которой это можно сделать - это если вы привыкли к такой комбинации в Delphi и не хотите отвыкать.

Кроме этого, вы можете поставить галочку напротив надписи ТАБ МЕНЯЕТ ОТСТУП БЛОКОВ, и тогда сдвигать блок кода можно просто одной клавишей TAB. Правда, таким образом можно сдвигать код только вправо. Но комбинации клавиш для сдвига кода вправо/влево остаются работать, так что установить эту галочку будет не лишним.

Ну что же, на этом всё. Если понравились статья и видео - не забывайте делиться ссылкой с друзьями, пока они не получили нервный срыв, сдвигая большие блоки кода построчно.


Директивы компилятора Директивы компилятора
Как это ни странно, но даже многие опытные программисты не используют директивы компилятора, считая их чем-то ненужным и бесполезным. А между тем, директивы компилятора - это очень классная штука. Если их умело применять в своих программах, то можно существенно сократить время на разработку и уменьшить количество рутинных операций. Подробнее...
Инфо-МАСТЕР ®
Все права защищены ©
e-mail: mail@info-master.su

Яндекс.Метрика