2021-11-07-TIL
Today I Learned
깃허브 블로그 댓글 달기
오래 전 부터 댓글기능을 추가하려 했지만, 이런저런 핑계로 미루어왔다. 하지만 나와 같은 템플릿을 사용하는 꽤 많은 사용자들이 깃허브 댓글 기능을 사용하길래 나도 한 번 달아보았다. utterances 라는 오픈소스 위젯을 통해 댓글을 달았다.
메뉴얼 대로 따라하면 되는데, 해당 레포지토리에 utterances 앱을 설치하도록 한다. 그리고 레포지토리 경로를 입력한 다음, 적절한 이슈 매핑 옵션을 선택해주면 맨 아래에 스크립트 코드가 뜬다. 그러면 그 코드를 복사해서 원하는 위치에 붙여넣으면 된다.
1
2
3
4
5
6
7
<script src="https://utteranc.es/client.js"
repo="[ENTER REPO HERE]"
issue-term="pathname"
theme="github-light"
crossorigin="anonymous"
async>
</script>
어느 블로그의 글을 참고하여 _layouts > default.liquid에 코드를 추가해보았는데, footer 보다 아래에 댓글이 등장했다. 그래서 다른 사람들의 블로그를 참고하여 _includes > templates > comments.html 이라는 파일을 별도로 추가하고, _includes > templates > footer.liquid 에 해당 파일을 포함하는 코드를 삽입했다.
…
utterances가 동작하는 방식
utterances는 댓글을 GitHub 이슈에 저장한다. 위젯이 로드되면 GitHub 이슈 검색 API로 현재 페이지에 해당하는 이슈를 찾고, 그 이슈의 코멘트를 댓글로 보여 준다. 해당 이슈가 아직 없으면 첫 댓글이 달릴 때 utterances 봇이 이슈를 만든다. 별도 서버나 DB 없이 정적 사이트에 댓글을 붙일 수 있는 이유다.
페이지와 이슈를 짝짓는 기준이 issue-term 속성이다. 설정 화면에는 다음 선택지가 있다.
pathname: 이슈 제목에 페이지 경로가 들어간 것을 찾는다(위 코드의 설정).url: 페이지 전체 URL로 찾는다.title: 페이지 제목으로 찾는다.og:title: 페이지의og:title메타 값으로 찾는다.- 특정 이슈 번호:
issue-number로 이슈 하나를 직접 지정한다.
pathname 방식은 도메인이 바뀌어도 이슈가 유지되지만, 글의 경로(permalink)를 바꾸면 기존 댓글과 연결이 끊긴다. 설정 화면은 저장소가 공개 저장소여야 독자가 댓글을 볼 수 있고, utterances 앱이 그 저장소에 설치되어 있어야 댓글을 달 수 있다고 안내한다. 댓글을 다는 사람은 GitHub 계정으로 utterances 앱에 권한을 주거나, 이슈에 직접 코멘트를 남기면 된다.
Pros & Cons
오늘은 공부하려고 작정한 날이 아니기 때문에 별로 한게 없다는 변명을 해본다.
Today News
- https://www.infoq.com/news/2021/09/spring-6-spring-boot-3-overhaul/
Spring 팀이 Spring Framework 6와 Spring Boot 3의 기준선을 발표한 소식이다. Spring 블로그에 따르면 두 버전은 Java 17 이상과 Jakarta EE 9 이상을 최소 요구 사항으로 삼고, 2022년 4분기 정식 출시를 목표로 한다. Jakarta EE 9로 가면서 Servlet, JPA, Bean Validation의 패키지가 javax에서 jakarta로 바뀌므로 애플리케이션 코드의 import도 바꿔야 한다. 서블릿 컨테이너도 Tomcat 10이나 Jetty 11 이상이 필요하다. 대신 Spring Framework 5.3.x와 Spring Boot 2.x는 몇 년간 겹쳐서 유지보수된다.
Monthly Goal
- 스프링 MVC 1편 (22강/72강)
- 스프링 MVC 2편 (0강/129강)
- 개인 프로젝트 -> 기획중
Tomorrow I’ll Learn
- 스프링 MVC 1편 섹션 2개 듣기
댓글
아직 댓글이 없습니다