노션에서 사용하던 마크다운 형식과 달리 티스토리의 기본 수정모드에서는 리스트 하위에 블럭을 삽입하지 못하는 문제가 발생했다. 이를 해결하기 위해 검색을 열심히 했지만..코드블럭 내에 라인 번호 새기는 방법만 열심히 나오더라..ㅜㅜ
힘겹게 찾은(GPT가 알려준) 수정 방법을 공유한다.
기존에는 아래 이미지와 같이 ~코드~를 1. 내용 아래 넣지 못한다..
이를 수정하기 위해 HTML 선택 > 코드 위치 수정 > 기본 모드 순서를 따르면 된다.
HTML 모드로 들어간다.
코드에 놀라지 않아도 된다..!! 기본적으로 html 의 구조는 계층적인 태그로 구성되어 있다.<시작></끝>형태의 태그들 내부에서 작성이 된다. 예를 들어, <li>내용<li/>은 1. 내용 과 같은 결과를 보여준다. 물론 리스트의 종류(e.g. 번호, 점 등)는 그 상위 태그인 <ol>태그에서 정하는 거고, 그건 기본 모드에서도 설정할 수 있으니 신경 쓰지 않아도 된다. html 코드를 보면, <ol>태그에서 "list-style-type" 을 정하고 있다. 그 안에 <li>가 두 개 보인다. 그게 바로 1.내용 2.내용2 리스트이다. 기본모드에서는 리스트를 빠져나오고 코드가 작성되기 때문에 </ol>로 리스트를 끝내버렸다. 그 밑에 pre로 시작하는 태그 안에 내가 작성한 코드가 있다!! 따라서 이 내용을 원하는 li 태크 안에다 옮겨주자.나는 1. 내용 밑에 코드를 넣었다.
이후 기본 모드로 바꿔서 확인해보면, 아래와 같이 수정된 것을 볼 수 있다.
+참고) 이미지의 경우에는 인라인 형태로 되는 경우도 있어서, 인라인이 아닌 블럭으로 넣고 싶다면, 다음 줄로 넘기는 <br>태그를 추가하면 된다.
요런 이미지를 1.내용 밑에 넣고 싶다면, 앞서 설명한 것과 같이 바꾸되, 이번엔 줄바꿈을 추가해보겠다.
일전에 근무했던 환경에서는 폐쇄망이었고, 일주일에 한 번 인터넷을 열어줬기 때문에 해당일에 모든 패키지를 설치하거나, pypi에서 검색해서 whl 을 업로드해서 수동으로 설치하는 방식으로 패키지를 설치해왔다(해당 방식은 아래 블로그를 첨부한다.) 이런 경우에는 패키지 간 버전 충돌이 발생하기도 하는데, 역시 수동으로 노가다를 뛰었다.....
이런 문제를 해결하고자 나온게 Poetry이다. Poetry는 pyproject.toml 파일을 이용해서 버전 관리를 한다. 굳이 비교하자면 requirement.txt 를 처음부터 작성해나간다...정도로 생각하면 될 듯하다. 일반적으로 패키지 간 dependency 는 버전 3.12 이상~ 과 같은 형태로 요구하기 때문에 이 점을 활용한 것 같다.
나는 이 환경을 window에서도 openai 를 이용한 agent 시스템 구축을 위해 사용해보게 되었다. 처음에는 굳이..?싶었지만 쓰다보니 꽤 편리하다. 개발 환경을 공유하자면, window11에서 ubuntu 24.04.1 LTS 를 설치해서 wsl 환경에서 진행하였다. 이 과정도 역시 인터넷 블로그를 참고하였다(내가 본 블로그 링크를 못 찾겠으나...친철한 블로거들이 많아서 검색하면 금방 따라할 수 있다.)
서론이 길었다. 그럼 이제 설치 방법을 공유한다.
1. 먼저 powershell 을 관리자 권한으로 실행하고 wsl 검색어를 입력한다. 다음과 같이 경로가 바뀌면 wsl 이 잘 설치된 것이다.
2. poetry 설치 역시 해당 wsl 환경에서 진행했다. 나는 agent 시스템을 만들고자 했기 때문에, 폴더명을 _agent_system으로 했지만, 다른 이름으로 설정해도 무방하다.
# 폴더 생성
mkdir _agent_system
# 해당 폴더로 이동
cd _agent_system
# Poetry 설치
curl -sSL https://install.python-poetry.org | python3 -
# path 설정
echo 'export PATH="/home/$USER/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
설치가 완료되면 poetry --version 을 검색해서 올바르게 설치되었는지 확인한다.
3. poetry init : 이제 실제 dependency 를 위한 작업을 진행한다. 각 항목에 대해 답하면 되는데, 괄호 안에 디폴트 세팅으로 진행하고자 하면 그냥 엔터 누르면 된다.
pyproject 설정
위 그림과 같이 설정하였고, 프로젝트 폴더를 들어가보면 해당 내용들이 포함되어 있는 pyproject.toml이 나타나 있을 것이다!
4. 이제 poetry add 명령어를 통해 필요한 패키지를 설치할 수 있다. 나는 일단 아래와 같은 패키지를 설치하고자 했고, 이후에 프로젝트를 진행하면서 추가 패키지 설치도 당연히 가능하다.
아래와 같이 poetry add 명령어로 패키지를 설치할 수 있다. toml 을 이후 직접 수정할 수도 있는데, 그렇게 되면 4-1을 따르면 된다.
4-1. toml 파일을 직접 수정한 경우, poetry lock 이 선행되어야 한다. 즉, 본인이 수정한 정보가 dependency 상 문제가 없어야 한다는 것이다. dependency 상 문제가 없으면 lock 파일이 생기고, 이제 poetry install 을 통해 toml 내 모든 패키지가 설치가 된다.
poetry lock
poetry install
써 놓고 보니 별거 없는 사용기였지만 새로운 도구를 사용하는 것은 항상 어렵기에......새로운 환경에서 또 사용할 일이 있으면 참고하고자 작성해두었다.