오늘 기록

C 언어 코드 블록, 코드 강조, 인용구, 콜아웃, 표가 블로그에서 어떤 모양으로 렌더링되는지 확인하기 위한 테스트 글입니다.

인라인 코드는 printf("Hello, world!\n")처럼 표시되고, 일반 문장 안의 중요한 표현은 텍스트 하이라이트로 표시할 수 있습니다.

코드 블록

아래 예시는 줄 번호, 파일명, 특정 라인 강조, 특정 문자열 강조를 함께 사용합니다.

code-style-sample.c
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
typedef struct {
    const char *name;
    int repeat;
    int loud;
} GreetingConfig;
 
static void print_message(const GreetingConfig *config) {
    for (int i = 0; i < config->repeat; i++) {
        if (config->loud) {
            printf("HELLO, %s!\n", config->name);
        } else {
            printf("Hello, %s!\n", config->name);
        }
    }
}
 
static int parse_repeat(const char *value, int *out) {
    char *end = NULL;
    errno = 0;
 
    long parsed = strtol(value, &end, 10);
    if (errno != 0 || end == value || *end != '\0') {
        return -1;
    }
 
    if (parsed < 1 || parsed > 5) {
        return -1;
    }
 
    *out = (int)parsed;
    return 0;
}
 
int main(int argc, char **argv) {
    GreetingConfig config = {
        .name = "world",
        .repeat = 1,
        .loud = 0,
    };
 
    if (argc > 1) {
        config.name = argv[1];
    }
 
    if (argc > 2 && parse_repeat(argv[2], &config.repeat) != 0) {
        fprintf(stderr, "repeat must be a number between 1 and 5\n");
        return EXIT_FAILURE;
    }
 
    if (argc > 3 && strcmp(argv[3], "--loud") == 0) {
        config.loud = 1;
    }
 
    print_message(&config);
    return EXIT_SUCCESS;
}

코드 강조 방법

코드 fence 뒤에 메타 정보를 붙이면 강조를 줄 수 있습니다.

```c title="sample.c" showLineNumbers {3-5} "printf"
int main(void) {
    printf("Hello, world!\n");
    return 0;
}
```
  • title="sample.c": 코드 블록 위에 파일명처럼 제목을 표시합니다.
  • showLineNumbers: 줄 번호를 표시합니다.
  • {3-5}: 3번부터 5번 라인을 강조합니다. {2,4-6}처럼 섞어서 쓸 수도 있습니다.
  • "printf": 코드 안의 특정 문자열을 강조합니다.

인용구

코드는 실행되는 문서이고, 문서는 읽히는 코드다.

테스트 글에서는 인용구의 왼쪽 선, 여백, 본문 색감을 확인합니다.

콜아웃 블록

Note

기본적인 메모 블록입니다. 개념 설명이나 짧은 관찰을 넣기에 적합합니다.

Tip

코드에서 특정 부분만 강조하고 싶다면 코드 fence의 {라인}"문자열" 메타를 같이 쓰는 방식이 가장 간단합니다.

Warning

긴 코드 블록은 모바일 화면에서 가로 스크롤이 생길 수 있으므로 실제 글에서는 필요한 부분만 남기는 편이 좋습니다.

Example

콜아웃 안에서도 inline code, 굵은 글씨, 링크, 리스트를 함께 확인할 수 있습니다.

  • 첫 번째 항목
  • 두 번째 항목

표와 체크박스

항목확인할 부분
코드 블록폰트, 배경, 줄 번호, 색상
라인 강조강조 배경과 왼쪽 선
문자 강조코드 내부 특정 문자열의 배경
콜아웃아이콘, 색, 여백
  • C 코드 블록 확인
  • 라인 강조 확인
  • 특정 문자열 강조 확인
  • 실제 글에 적용할 최종 스타일 선택