QiitaAPI |> Marp-cli |> PPTX = 초살로 LT 자료(의 원래)를 만든다

5313 단어 QiitaAPIpptxMarp
이 기사는 fusic 어드벤트 캘린더 10일째 기사입니다.

안녕하세요.
회사의 선배에 의해, 파와하… 거짓말입니다.

이번에는, marp cli라고 하는 javascript의 툴을 사용해, 그 번거로움 극히 없는 슬라이드 작성을 폭속. . 물론, 죽이려고 생각합니다.

전제


  • 노드의 환경이 갖추어져 있습니다
  • 어느 정도의 문장의 체재가 갖추어져 있는 것
  • power point를 사용할 수있는 것 (필수는 아님)

  • marp cli 소개



    원래 marp는 markdown의 기법을 사용하여 슬라이드 자료를 만드는 라이브러리입니다.
    유명 어디라면 reveal.js라든지, remarks.js라든지 있다고 생각합니다만, 뭐, 그 변종이라고 생각해 두면 됩니다.
    라고 말하면 화가 될 것 같아서 신 도구라면 여기에 선언합니다.

    음, 소개이지만,
    $ npm i -g @marp-team/marp-cli
    

    에 넣으면 끝입니다. 간단하네요!

    사용법



    라고 할까, 흠칫, htps : // 기주 b. 코 m / rp - m / rp - ぃ 의 README 보면 일발입니다.
    어쨌든 slide 용 markdown을 만들어 marp slide-deck.md를 실행하면됩니다!
    매우 간단합니다!
    덧붙여서 내용입니다만, 예를 들면 이런 느낌으로 씹으면 됩니다.
    ---
    title: QiitaAPI |> Marp-cli |> PPTX => 秒殺でLT資料をつくる
    theme: uncover
    class: invert
    image: https://marp.app/og-image.jpg
    ---
    
    ## QiitaAPI |> Marp-cli |> power point => 秒殺でLT資料をつくる
    
    ---
    
    

    벌써. 테마라든지, 좋은 느낌으로 해준 시점에서 꽤 좋다고 생각합니다.
    한 번 쓴 내용을 두 번으로 쓰고 싶지 않아요.

    QiitaAPI



    그래서 등장하는 것이 QiitaAPI입니다.
    Qiita에서 한 번 쓴 기사를 Slide로 변환하여 슬라이드 자료까지 단번에 만들어 봅시다.

    기사 얻기



    여기 가 좋은 느낌에 정리하고 있습니다!
    이번에는 "어떤 기사를 슬라이드 자료로 변환"하는 것이 목적이므로 https://qiita.com/api/v2/items/:item_id 에서 취득합시다.
    예를 들어 내 이전 기사를 얻으면 다음과 같이 취할 수 있습니다.
    IDA* 탐색(pattern database)으로 퍼즐 풀기



    이런 느낌으로 취할 수 있으므로, 이 body의 부분을 잡기로 합니다!

    QiitaAPI |> Marp-cli



    취득한 데이터를 일단 파일로 저장할 필요가 있습니다.
    우선, 그 처리를 써 봅시다.
    $ curl -O https://qiita.com/api/v2/items/7cb49607ce0d146c6697
    $ cat 7cb49607ce0d146c6697 | jq -r ".body" >> 7cb49607ce0d146c6697.md
    

    여기에 작성된 markdown 파일을 marp에 먹이도록 합시다.
    $ marp 7cb49607ce0d146c6697.md
    

    이렇게하면 잘 작동합니다. 그런 것은 아닙니다! (웃음)
    # 의 문자가 들어갈 때마다 marp에 있어서의 페이지 나누기 처리를 넣지 않으면 안됩니다.

    markdown 성형



    하지만 # 의 문자가 나올 때마다 개행 처리를 위한 --- 를 끼우기만 하면 됩니다!
    
    sed -i '/^$/d' 7cb49607ce0d146c6697.md
    
    IFS=''
    while read line
    do
      if [ ${line:0:1} = "#" ]; then
        echo "" >> slide.md
        echo "---" >> slide.md
        echo "" >> slide.md
        echo $line >> slide.md
        echo "" >> slide.md
      else
        echo $line >> slide.md
      fi
    done < 7cb49607ce0d146c6697.md
    

    슬라이드 작성에 있어서, 공백행은 필요 없기 때문에, sed로 지워 둡시다.
    여기까지 한 후에 marp slide.md를 실행합시다!

    결과가 여기!





    사진에 대해서는 왠지, 잘 되지 않는 것 같습니다.
    여기는 로컬로 끼워넣는지, 어쨌든 노력해 밖에 없을까요, 아마.

    Marp-cli |> PPTX


    marp slide.md -o pptx 를 실행하거나 marp -s . 로 서버를 세우면 다음과 같이 화면에서 얻을 수 있습니다.





    netlify로 발표 자료 업로드


    package.jsonscript { "build": "./build.sh" } 를 추가하여 스크립트를 준비해 주면 됩니다!
    시도에이 페이지를 업로드하려고했습니다!
    봐주세요.
    htps : // 5에서 에데카 334c7에서 또는 df6d0d4--인후 ぃぃbぇ-의 웃음-3 있어 b48. 네 tぃfy. 코m/

    결론



    뭐, 완벽이라고는 하지 않습니다만, 귀찮은 작업을 조금 줄일 수 있었다고 생각하면 좋을까. . . ?

    리포지토리입니다! > htps : // 기주 b. 코 m / 토마코토 / 마 rp2 ptx

    좋은 웹페이지 즐겨찾기