10 настроек CodeBlocks, которые надо сделать сразу после установки

Сразу после установки CodeBlocks настройте его под себя. Среда CodeBlocks была сделана программистами для программистов. Она имеет множество настроек. Рассмотрим самые важные.

1. Установите ассоциации с файлом проектов

Выполните «Меню — Настройки — Среда»

Нажмите кнопку «Управление».

Нажмите сначала «Удалить все», чтобы не было лишних ассоциаций, а потом установите те из них, которые вам нужны. Если вы новичок, то рекомендую поставить галочку только в первой строчке «.cbp (project file). В этом случае вы будет уверены, что если зашли в проект, то всё будет работать.

Затем нажмите «Применить».

2. Увеличьте шрифт редактора

Шрифт редактора по умолчанию мелковат.

Нажмите на клавишу Ctrl и, не отпуская, покрутите колесо мыши. Так можно быстро выбрать комфортный шрифт.

 

3. Увеличьте шрифт выводимых сообщений

С помощью предыдущего приёма вы можете установить размер шрифта в окне «Журнал сборки»:

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

Поэтому войдите в меню «Настройки — Среда — Вид»

И поставьте нужный размер шрифта логов сообщений.

4. Выберите стиль отступов

Так как язык Си — это язык свободной формы, то программист волен располагать текст программы как угодно. Компилятор всё равно ориентируется на точки с запятой в конце команды. Это породило целый ряд возможных стилей отступа. И CodeBlocks позволяет выбрать любой из самых популярных стилей.

Для этого войдите в меню «Настройки — Редактор — Средства форматирования»

Я рекомендую использовать Allman (ANSI), который наиболее удобен по целому ряду причин:

  • Хорошо видно структуру программы.
  • Легко искать парную фигурную скобку.
  • Легко комментировать и убирать комментарии

Но, конечно же, если вы привыкли к другому стилю, то выбирайте его.

5. Создайте свой шаблон проекта

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

Потом войдите в меню «Файл — Сохранить проект как шаблон…»

Введите имя шаблона и нажмите Ok.

Для создания нового проекта по этому шаблону войдите в меню «Файл — Создать — Проект — Пользовательские шаблоны»

 

6. Установите код текста программы по умолчанию

Войдите в меню: «Настройки — Редактор — Код по умолчанию» и добавьте код, с которого вы обычно начинаете ваш файл. Обычно это комментарий к программе.

Вы можете задать свой текст для каждого вида файла. При создании нового файла этого типа в начале уже будет размещён этот код.

7. Настройте стиль подсветки синтаксиса

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

Для этого войдите в меню: «Настройки — Редактор — Подсветка синтаксиса»

Здесь вы можете настроить подсветку любых элементов текста.

8. Настройте сочетания клавиш

В среде CodeBlocks множество пунктов меню. Вы можете настроить сочетания клавиш для быстрого доступа к нужным пунктам.

Для этого войдите в меню: «Настройки — Редактор — Сочетания клавиш»

Здесь вы можете создать несколько профилей, и в каждом профиле определить свои клавиатурные сокращения для вызова пунктов меню.

9. Настройте сокращения для быстрого ввода кода

Кроме автодополнения кода в CodeBlocks есть дополнительно так называемые сокращения.

Автодополнение кода — это подсказка редактора, когда вы набираете часть слова, а редактор предлагает возможные варианты:

Сокращения — это наборы букв, которые нужно написать и нажать Ctrl+J. После этого в текст будут вставлены полный текст.

Для настройки сокращений войдите в меню: «Настройки — Редактор — Сокращения»

Вы здесь видите, что если набрать «ife» и нажать Ctrl+J, то в текст будет вставлена структура «if — else». Это позволяет ускорить ввод кода.

10. Добавьте сниппеты

Сниппеты — это фрагменты кода, которые можно вставлять в текст простым перетаскиванием мышкой.

Для включения окна сниппетов поставьте галочку в пункте меню «Вид — Фрагменты программы»

После этого щёлкните правой кнопкой мыши на строке «codesnippets»

Нажмите «Добавить фрагмент программы» и введите текст кода и заголовок.

Нажмите Ok.

Теперь если мышкой перетащить заголовок сниппета в текст программы, то будет вставлен фрагмент текста. Это позволяет быстро добавлять повторяющиеся тексты в программе и избегать ошибок при вводе.

Как видите, среда CodeBlocks может быть настроена для удобной и эффективной работы.

 

Комментарии 26

  • Спасибо!

  • Спасибо за ценную информацию, Константин. Я — новичок в программировании на С, поэтому она мне очень кстати.

  • отличная информация и очень ценная!!! спасибо огромное, ВАМ!

  • с наступающим 2018 годом!
    здоровья, удачи, любви и тепла в Вашем доме.
    Спасибо.
    С уважением,
    Юрий Бородицкий

  • Здравствуйте! Это по поводу урока в вашем курсе Азбука программирования. У меня некорректно срабатывает программа. Когда делаю точку останова и нажимаю F8 устанавливается курсор на точку, как положено, но потом сразу открывается консоль, как при нажатии F9(при этом я F9 не нажимал). В консоли все выполняется правильно, как в вашем уроке. Но при нажатии любой клавиши консоль не закрывается, ее можно закрыть только, если полностью закрываешь программу codeBlock. Пожалуйста, помогите!

    • Скорее всего, у Вас не создан проект. Попробуйте создать проект по шаблону и выполнить отладку после этого.

  • Здравствуйте! В курсе азбука программирования не работает видео 4.2 Руссификация GTK. Так же и аудиофайл не скачивается. Исправьте, пожалуйста!

  • Здравствуйте! Подскажите, пожалуйста, что значит эта ошибка undefined reference to `gdk_color_parse’?

    • Это значит, что компилятор не может найти библиотеку. Её нужно указать явно.

  • не пойму, где у меня ошибка в коде

    // 5.5 Текстовый редактор
    #include

    #define _LOCALE_TO_UTF8(str) g_locale_to_utf8((const char *)(str), -1, NULL, NULL, NULL)
    #define _UTF8_TO_LOCALE(str) g_locale_from_utf8((const char *)(str), -1, NULL, NULL, NULL)
    #define _UTF8(str) _LOCALE_TO_UTF8((str))
    #define _LOCALE(str) _UTF8_TO_LOCALE((str))
    #define _U(str) _UTF8((str))
    #define _L(str) _LOCALE((str)) )

    GtkWidget *textview1;
    GtkTextBuffer *buffer1;

    int ShowError()
    {
    GtkWidget *dialog;

    dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL,
    GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
    _U(» Не найден файл\n main.glade»));

    gtk_dialog_run(GTK_DIALOG(dialog));
    gtk_widget_destroy(dialog);

    return 0;
    }

    // Меню «Создать»
    G_MODULE_EXPORT void on_imagemenuitem1_activate (GtkButton *button, gpointer label)
    {
    gtk_text_buffer_set_text(buffer1, «», 0);
    }

    int ShowMainWindow()
    {
    GtkWidget *window1, *statusbar1;
    GtkBuilder *builder;

    builder = gtk_builder_new ();
    if (gtk_builder_add_from_file (builder, «main.glade», NULL))
    {
    window1 = GTK_WIDGET(gtk_builder_get_object(builder, «window1»));
    statusbar1 = GTK_WIDGET(gtk_builder_get_object(builder, «statusbar1»));
    textview1 = GTK_WIDGET(gtk_builder_get_object(builder, «textview1»));

    gtk_window_set_default_size (GTK_WINDOW (window1), 500, 300);
    gtk_window_set_position(GTK_WINDOW(window1), GTK_WIN_POS_CENTER);

    gtk_builder_connect_signals (builder, NULL);
    g_signal_connect(G_OBJECT(window1), «destroy», G_CALLBACK(gtk_main_quit), NULL);

    gtk_statusbar_push( GTK_STATUSBAR(statusbar1), 0, _U(«Строка состояния»));

    buffer1 = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview1));
    gtk_text_buffer_set_text (buffer1, _U («Пример текста.»), -1);

    // Поменяли цвет текста
    GdkColor color;
    gdk_color_parse («green», &color);
    gtk_widget_modify_text(textview1, GTK_STATE_NORMAL, &color);

    gtk_widget_show (window1);

    return TRUE;
    }
    else
    {
    return FALSE;
    }
    }

    int main (int argc, char *argv[])
    {
    gtk_init (&argc, &argv);
    if (ShowMainWindow ())
    {
    gtk_main ();
    return 0;
    }
    else
    {
    ShowError();
    return 1;
    }
    }

  • этот файл посмотрите, первый не точно скопировал
    // 5.5 Текстовый редактор
    #include #include

    #define _LOCALE_TO_UTF8(str) g_locale_to_utf8((const char *)(str), -1, NULL, NULL, NULL)
    #define _UTF8_TO_LOCALE(str) g_locale_from_utf8((const char *)(str), -1, NULL, NULL, NULL)
    #define _UTF8(str) _LOCALE_TO_UTF8((str))
    #define _LOCALE(str) _UTF8_TO_LOCALE((str))
    #define _U(str) _UTF8((str))
    #define _L(str) _LOCALE((str)) )

    GtkWidget *textview1;
    GtkTextBuffer *buffer1;

    int ShowError()
    {
    GtkWidget *dialog;

    dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL,
    GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
    _U(” Не найден файл\n main.glade”));

    gtk_dialog_run(GTK_DIALOG(dialog));
    gtk_widget_destroy(dialog);

    return 0;
    }

    // Меню “Создать”
    G_MODULE_EXPORT void on_imagemenuitem1_activate (GtkButton *button, gpointer label)
    {
    gtk_text_buffer_set_text(buffer1, “”, 0);
    }

    int ShowMainWindow()
    {
    GtkWidget *window1, *statusbar1;
    GtkBuilder *builder;

    builder = gtk_builder_new ();
    if (gtk_builder_add_from_file (builder, “main.glade”, NULL))
    {
    window1 = GTK_WIDGET(gtk_builder_get_object(builder, “window1”));
    statusbar1 = GTK_WIDGET(gtk_builder_get_object(builder, “statusbar1”));
    textview1 = GTK_WIDGET(gtk_builder_get_object(builder, “textview1”));

    gtk_window_set_default_size (GTK_WINDOW (window1), 500, 300);
    gtk_window_set_position(GTK_WINDOW(window1), GTK_WIN_POS_CENTER);

    gtk_builder_connect_signals (builder, NULL);
    g_signal_connect(G_OBJECT(window1), “destroy”, G_CALLBACK(gtk_main_quit), NULL);

    gtk_statusbar_push( GTK_STATUSBAR(statusbar1), 0, _U(“Строка состояния”));

    buffer1 = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview1));
    gtk_text_buffer_set_text (buffer1, _U (“Пример текста.”), -1);

    // Поменяли цвет текста
    GdkColor color;
    gdk_color_parse (“green”, &color);
    gtk_widget_modify_text(textview1, GTK_STATE_NORMAL, &color);

    gtk_widget_show (window1);

    return TRUE;
    }
    else
    {
    return FALSE;
    }
    }

    int main (int argc, char *argv[])
    {
    gtk_init (&argc, &argv);
    if (ShowMainWindow ())
    {
    gtk_main ();
    return 0;
    }
    else
    {
    ShowError();
    return 1;
    }
    }

    • У меня тоже не работает этот вариант — компилятор ругается на gdk_color_parse
      В Sources.zip\Sources\Sources\Урок 5.5\main.c по другому реализовано изменение цвета текста:
      // Поменяли цвет фрагмента текста
      tag = gtk_text_buffer_create_tag (buffer1, «blue_foreground»,
      «foreground», «blue», NULL);
      gtk_text_buffer_get_iter_at_offset (buffer1, &start, 7);
      gtk_text_buffer_get_iter_at_offset (buffer1, &end, 13);
      gtk_text_buffer_apply_tag (buffer1, tag, &start, &end);
      И это работает

      • Если компилятор выдает ошибку, на некоторую функцию, то это значит, что он не может найти библиотеку. Укажите явно библиотеку, в которой эта функция реализована.

    • В таком варианте:

      программа у меня заработала (цвет текста изменился на зелёный), когда добавил библиотеку компоновщика gdk-win32-2.0.lib в Параметры сборки проекта / Настройки компоновщика.
      А это рассматривается в уроке 6.1 Графическая библиотека Cairo.

  • что-то не копируется эта строчка #include

  • Здравствуйте! Во вкладке Resoursec перестал раскрываться список файлов, входящих в проект, хотя файлы есть. Как это можно исправить? Переустановка CodeBlocks не помогла. Спасибо за ответ.

  • Урок 6.3:
    При увеличении x от 0 до 1 растёт непрозрачность (а прозрачность наоборот уменьшается):
    G_MODULE_EXPORT void on_button1_clicked (GtkButton *button, gpointer label)
    {
    char str[1000];

    x += 0.2;
    sprintf(str,»Прозрачность=%g»,x);
    gtk_button_set_label (button1, _U(str));
    }

    Может правильней будет написать так:
    sprintf(str,»Непрозрачность=%g»,x);
    или так:
    sprintf(str,»Прозрачность=%g»,1-x);

  • Очень идеальное приложение но у меня английская версия и тяжеловато

  • Как сохранить настройки?
    После перезапуска все слетает. Ставил encoding setting — UTF8, перезапустил стало windows-1251.

    • Настройки сохраняются автоматически. Можете проверить файл default.conf в папке CodeBlocks и посмотреть установленные значения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.