자신을 솔직히 대면할 것. 허세가득한 삶이라면 최소한 많은 짐이 덜어질것이다.
만약 덜어낼 수 없는 마지막 허세라면 그 허세가 현실이 될 수 있도록 안간힘을 쥐어짜내 성공할 수 있도록 한다
2020. 5. 21. 오후 1:40
자신을 솔직히 대면할 것. 허세가득한 삶이라면 최소한 많은 짐이 덜어질것이다.
만약 덜어낼 수 없는 마지막 허세라면 그 허세가 현실이 될 수 있도록 안간힘을 쥐어짜내 성공할 수 있도록 한다
2020. 5. 21. 오후 1:40
Outlook 기능 중, Import/Export 즉 가져오기/내보내기 기능이 있다. 이 기능은 외부의 파일들을 Outlook 내에 적용시킬 때 사용하는데, 가장 많은 활용도는 역시 연락처다. 보통 외부 시스템의 연락처 같은 경우 CSV 즉 Comma를 활용한 Excel용 텍스트 파일을 많이 사용하는데, 이 데이터 형식으로 주고 받게 된다.
그런데, 어느날 예전에 사용했던 연락처 CSV 파일을 Import 하려고 보는데, 가져오기/내보내기가 비활성화 되어 있어 입력을 못하는 문제가 발생했다.
처음에는 내가 무언가를 잘못 설치했나 했는데, 그 문제가 아니였다.
일반적인 사용자들의 경우에서는 거의 발생하지 않지만, 필자의 경우 영문 윈도우를 자주 사용한다. 여기서 한글 오피스를 설치하는 경우 발생한다.
즉 윈도우와 한글 오피스 간의 언어차이가 발생하면 이 문제가 발생한다.
사실 성의없이 해결점을 제시한다면, 그냥 윈도우도 한글, 오피스도 한글로 설치하라는 것이지만, 그건 좀 그렇고…
윈도우에서 설정을 바꿔주면 된다.
Windows 키 + R을 눌러 Command Line 입력창을 띄운다.
Control 을 입력한다.
Clock and Region을 선택한 뒤 Regione을 선택한다.(모든 설정 항목을 나열이 된 경우 Region을 선택하면 된다.)
Region을 띄운 뒤, Administrative에 들어가면, Language for non-Unicode programs 항목에 보면 English로 되어 있는데, 이를 Korean으로 바꿔준다.
이 기능은 Unicode를 사욯하지 않는 프로그램의 경우 기본 언어를 무엇으로 잡는지에 대한 설정인데, 일부 한글 전용 Application을 설치하거나 실행하면 막 글자가 깨질 때 이 설정을 해줘야 한다.(요즘은 대부분이 Unicode라서 필요는 없음)
<단, 이 작업을 하는 경우 반드시 컴퓨터를 재시작해야 한다.>
일단 이렇게 하니, 오피스의 가져오기/내보내기가 정상적으로 동작했다.
비활성화 된 부분이 활성화 되었다.
오랜 역사를 통해 많은 부분이 개선은 되었지만, 이 가져오기/내보내기 로직은 아직 옛날 코드를 그대로 사용하여 제작된 구조를 그대로 유지한 것 같다. 최소한 UTF-8 과 같은 세련된 구조로 되어 있다면 이런 문제가 없었을텐데…
많이 아쉽다.
2020. 5. 28. 오전 11:26
주의 ! : 이미, Docker가 설치된 경우, Docker 설정이 Linux container 형태로 동작할 수 있어야 한다. 만일 설치시 Windows container 기반인 경우 Linux container로 전환해야 하며, 안된다면 이 작업은 수행할 수 없다.
확인하는 방법은 Tray Icon 중 Docker 아이콘에 대한 메뉴를 띄운 뒤, 반드시 “Switch to Windows Containers…” 라고 나와 있어야 한다.
1. Docker 설치.
Windows 용 Docker는 https://hub.docker.com/editions/community/docker-ce-desktop-windows/ 의 페이지에서 다운로드 받으면 된다.
이 Docker가 동작하려면, 먼저 PC 자체가 Virtualization 기능(VT-d) 같은 설정이 될 수 있어야 한다. 보통은 바이오스 안에 있다. 그리고 Windows 운영체제는 반드시 Windows 10 이상이여야 하며, Hyper-V 를 지원해야 한다.
(만일 지원되지 않는다면, Linux에 Docker를 설치하는 방법 밖에는 없다.)
일단, Windows 10 Pro 이상에 Hyper-V까지 모두 설정했다면, 위에서 다운 받은 Docker 설치 프로그램을 설치하면 된다. 설치 할 때, 체크 하는 내용 중, Windows container로 사용하겠다는 체크는 절대 하지 않는다.(기본 값은 체크 안된 상태임)
정상적으로 docker가 설치되었다면, Powershell 상에서 docker 라는 명령을 넣으면 다음과 같이 표시 된다.
2. Docker 이미지 위치 설정.
현재 상태로 Docker 내 가상이미지를 설치하게 되면, 설정 파일은 C:\ProgramData\Microsoft\Windows\Hyper-V 에 담기고 가상 하드 디스크는 C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks 에 저장된다.
설정 파일은 사이즈가 커봐야 1M도 안하지만, 문제는 가상 하드 디스크는 Docker 이미지에 따라 사이즈가 좀 된다. 만일 그대로 쓴다면 C: 드라이브의 사이즈가 많이 줄어들게 되므로, 가급적 Hyper-V 관리자를 띄워 저장소 위치를 변경해주도록 한다.
( 왼편 트리에서 Hyper-V Manager > PC이름 아이콘 위에서 Context 메뉴를 띄워 Hyper-V Settings에 들어간 뒤, Virtual Hard Disks 부분에 설정된 경로를 적당히 변경한다. 필자는 D: 드라이브에 구성했다.)
3. Bitwarden 데이터를 위한 폴더 구성.
Bitwarden는 기본적으로 Docker 이미지를 기반으로 동작한다. 이 때 실제 실행되어 나오게 되는 데이터들은 Docker 이미지 내에 저장하지 않고 외부 폴더에 빠지게 구성된다. 이 외부 폴더가 위치할 폴더를 생성한다.
필자의 경우 D:\Dockers\Bitwarden 이라는 폴더를 만들었다.
4. Powershell 띄우기.
Windows에서 Bitwarden을 설치할 때는 Powershell을 이용한다. Powershell 스크립트(ps1)을 실행하는데, 기본적으로 Powershell 에서는 ps1 실행을 막고 있다.
관리자 권한으로 Powershell을 띄운 뒤, “Set-ExecutionPolicy”를 입력한다.
그리고 다음 입력에서는 Bypass라고 입력한다. 최종적으로 정말 실행할지 여부를 묻는데 여기서 “Y”를 입력하면 된다.
5. Bitwarden 설치 스크립트 받기
앞서 만든 폴더로 이동한다(cd D:\Dockers\Bitwarden)
그리고 다음 명령을 입력한다. (주의! 아래 내용은 한 줄 짜리임)
Invoke-RestMethod -OutFile bitwarden.ps1 -Uri https://go.btwrdn.co/bw-ps
그리고 다음 명령을 입력한다. (주의! 아래 내용은 한 줄 짜리임)
Invoke-RestMethod -OutFile run.ps1 -Uri "https://raw.githubusercontent.com/bitwarden/server/master/scripts/run.ps1"
그러면 폴더 안에 bitwarden.ps1 과 run.ps1 이 생긴다.
먼저 bitwarden.ps1 파일을 연다.
약 39번째번 줄에 있는 문장을 주석 처리한다. 문장 맨 앞에 # 표시하면 된다.
#Invoke-RestMethod -OutFile $scriptsDir\run.ps1 -Uri "${githubBaseUrl}/scripts/run.ps1"
그리고 그 줄 바로 위에 다음 문장을 추가한다.
Copy-Item .\run.ps1 $scriptsDir\run.ps1
다음은 run.ps1 파일을 연다.
63번째 줄 즈음에 보면, $certbotExp 내용 중, certonly{0} 이라는 부분이 있는데, {0}을 없애도록 한다.
137번째 줄 즈음에 보면, 마찬가지로 $certbotExp 내용 중, renew{0} 이라는 부분이 있는데, {0}을 없애도록 한다.
위의 작업을 하지 않으면, certbot 이 제대로 동작하지 않아, SSL 기반의 인증서가 생성되지 않는다. 그렇게 되면 nginx가 제대로 실행되지 않게 된다. (물론 http로만 설정하거나, 개별 인증서를 보유하고 있다면 상관 없지만, 여기서는 certbot을 이용하여 lets encrypt를 이용하기 때문에 반드시 필요하다)
6. Windows 방화벽 설정.
Windows 방화벽에서 80 포트와 443 포트를 열어두도록 한다.
7. 80포트 노출 처리.
만일 외부 공개 IP 면 상관 없지만, 만일 공유기나 방화벽이 있다면, 80포트에 대해서 이 서버와 연결되도록 해야 한다. Let's Encrypt 에서는 URL 확인 작업을 위해 80 포트로 연결을 시도한다. 최종적으로 Bitwarden 설치가 완료되면 다시 80포트를 닫아도 무방하지만, 최초 설치는 반드시 열어두도록 한다.
8. 설치
Powershell 에서 "bitwarden.ps1 -install" 을 실행한다.
첫번째 질문에서는 이 서비스에 접속하기 위한 URL을 입력한다. 반드시 URL이 필요하다! IP 주소로는 해본적이 없어서;;;;
두번째 질문에서는 Let's Encrypt를 사용할 것인지를 묻는데, Y를 입력한다.
세번째 질문에서는 추후 변경 사항을 전달받기 위한 이메일 주소를 요구하는데 자신의 이메일 주소를 입력한다.
그러면 자동으로 무언가 동작하며 설치가 완료된다.
9. 시작.
모든게 완료되었다면, "bitwarden.ps1 -start" 을 실행한다.
실행했으면, Docker의 Dashboard를 띄운 뒤, 다음과 같이 모두 정상적으로 실행되었는지만 확인한다.
10. 최종적으로 자신이 정한 URL로 접속을 한 뒤, 계정 등록을 해서 이용한다.
2020. 6. 12. 오후 5:41
잠시 권력을 향유하고 이제 자꾸 잃어가는 권력에 향수를 느끼는 사람들.
온갖 악행들을 저질러도 자기 들에게만 좋으면 무조건 용서하고, 당연히 해도 되는 일이라고 감싸고..
아니 혹시 자신에게 손해가되더라도, 나라를 위해, 국민을 위해 라며 나랏일 하시는 거라며 납득하면서 받아주면서 질질 끌려다니고 온갖 갑질, 비굴, 땡깡들은 저지르고 다니다가
다수의 조용히 하루 하루를 사는 사람들을 위해 일하는 사람들에게는 온갖 이념과 자기 주장, 그리고 음해들을 저지르를 그런 사람들.
오늘 뉴스를 보니, 박원순 시장의 서울시장 장례를 반대하는 사람이 50만이 넘었다고 하는데, 이거 뉴스 개수가..
이걸 국민 청원한 사람이나, 그거에 동의한 사람이나. 또 이 내용을 자칭 언론이라는 작당들이 50만이 넘었다는 숫자 알리기만 하고, 분석은 저 멀리는 작자들.
뭐하는 짓인지.
또 촛불들어야 하는지 원.
저 50만 중에 서울시민은 얼마나 되는지, 정말 무슨 자기 생각을 담고 클릭 한건지도 궁금하네.
나쁜생각이지만, 진짜 소수 의견이 되버렸으면 좋겠다. 콘크리트 30% 라고 하는 수꼴들. 당신들은 우국이라고 생각하지만 내 기준으로는 매국이나 저지르는 것들.
역사적으로 나라 혼란할때 지들 것 챙겨가려고 악행을 저지르는 꼴을 보는 기분이다. 훗날 역사가 평가해 주겠지만, 정말 부끄러운 것들이다. 이들이 한국인을 부끄럽게 만든다. 정말이다.
난 어쨌던 3번씩이나 임기를 하면서 서울시를 힘없는 사람들을 위해 열심히 뛰신 분을 조금이라도 더 존중하고 가시는 길 편히 보냈으면 한다.
오히려 걱정이다. 이런 분, 반이라도 따라가는 사람이 시장 후보로 나올 수나 있을런지……. 또 지 돈 빼먹고, 지들만 챙겨먹고, 과시욕에 차서 헛소리와 엉뚱한 일들이나 저지르는 놈이 나오는 건 아닌지…
2020. 7. 12. 오후 2:24
갸우뚱하지 않나? 저 세가지 유형을 아예 뚝 끊어 평균을 내봐도 7.3억인데..
왜 10억 주택이 많다고 했지?
평균이라서 그런가?
그래서 혹시나 해서 편차를 봤다.
과연 저 평균을 기반으로 어느 쪽으로 기울어졌을까였다.
일단 저 형태를 보더라도 평균 1:2 비율로 차이가 있다.
그러니까, 1의 위치에 있는데, 그것도 10억이 넘는 주택을 가지고 있다고 하면서 광분하고 있다. 진짜일까??????
자기가 보유한 주택이 "호가" 말고 실 거래가가 얼마인지 한번 보고 분노했으면 좋겠다.
마치 자신이 강남의 고가 아파트, 주택에 살고 있다고 착각하고
선동하는 뉴스 제목만 보고 흥분하고 있지 않은가?
정말이지.... 뉴스 만드는 자들은 정체가 뭘까?
펜대를 굴리는 인텔리인줄 알았는데, 이거 정말 바보 아닌가?
비전공도 대충 사이트 휙휙 돌려서 저 정보를 유추했는데, 기자들은 대체 뭐 하는걸까?
2020. 8. 14. 오후 1:16
사실 N40L을 5~6년전에 구입했고, XPEnology를 알게되어 설치해서, NAS라는 것으로 구축해서 사용해왔다. 당시에는 개념을 잘 몰라 웹사이트를 뒤적이다가 대충 설치해서 구축했다. 잘 운영하고 있다 보니, 업그레이드 같은 것은 생각을 하지 못했다.
그러다가, DSM 5.X 대로만 쓰는데 불편을 느끼고 있어, 이번에 DSM 6.X로 업그레이드하기 위해 이번에 업그레이드를 몇가지 진행했다. 그 중 업그레이드 한 내용들을 정리해서 포스팅 해본다.
XPEnology를 하기 위해서는 부팅을 위한 USB가 필요하다. 기존에도 이 USB를 만들어 구성했다. 이 부분이 부팅을 위한 Firmware의 역할을 수행하게 된다. 이 파일을 만들어야 한다.
이 작업을 하려면 다음 경로에서 다운로드 해야 한다.
https://xpenology.club/downloads/
문제는 여기서 부터 시작한다.
보면 최신 버전이 Jun’s Loadeer DSM 6.2 이긴 한데, 내가 가진 N40L의 경우에는 지원되지 않는다. 아마도 이 버전이 지원되려면 최소한 UEFI 정도 지원되야 하지 않을까 싶다. (실제로 이 펌웨어 만들어 보면, 파티션이 특이하게 만들어지긴 한다.) 그러므로 최소한 옛날 PC라고 한다면 가급적이면 다음 버전을 받는 것을 추천한다.
Jun’s loader v1.02b DS3615xs with MBR partition
지금 최신 버전의 서버가 HP Microserver Gen8 인데, 안타깝지만 이 서버 역시 UEFI를 지원하지 않아, 최신버전으로 테스트해보지는 못했다.
어쨌던 저 버전의 파일을 다운로드 받으면 다음과 같은 파일이름으로 된 파일을 받을 수 있다.
DS3615xs 6.1 Jun's Mod V1.02b (MBR_Genesys).img
펌웨어와는 별개로 운영체제 역할을 하는 파일을 다운 받아야 한다. 확장자는 PAT 이다.
현재 펌웨어를 기준으로 DSM_DS3615xs_15266.pat 을 다운로드 받는다.
다운로드 페이지 링크는 아래와 같다.
https://archive.synology.com/download/Os/DSM/6.1.6-15266
이 단계가 매우 어려워서 못만드는 사람이 있긴 한데, 차근 차근 하나씩 따라하면 가능하다.
USB 메모리를 준비한다. 다만, Windows와 같이 한번 설치한 뒤, 없애는 USB가 아니라, 계속 꽂혀 있어야 한다!. 그러므로 가급적이면 안쓰는, 그렇다고 해서 너무 많이 사용해 수명이 오락가락하지 않는, 용량은 1G 정도의 작은 사이즈가 좋다.
준비되었으면 이제 USB로 기록해주는 프로그램을 다운 받는다.
위의 경로에서 다운받으면 된다. 굳이 설치용 프로그램은 필요 없고, 포터블 버전 정도로만 받아도 된다.
자, 이제 USB 메모리를 PC에 연결하고, 이 프로그램을 실행하도록 한다.
버전마다 UI가 좀 다르겠지만, 아래의 이미지와 같이 설정한다. 3.12 버전 기준으로 장치와 부트 선택을 통해 설정해주도록 한다.
“시작” 버튼을 클릭하면 USB를 자동으로 만들어 준다.
일단, USB 메모리를 구성하면 다음 단계로 넘어간다.
이제 먼저 정보를 두가지 획득하도록 해야 하는데, 그 정보는 USB의 VID와 PID 두가지 값이 필요하다. 이 값을 획득하는 방법은 장치 관리자의 USB 메모리의 속성 값에서 획득한다. 먼저 장치 관리자를 연 뒤, 디스크 드라이브에서 USB 메모리의 속성을 열도록 한다.
속성 창에서 “자세히” 탭에서 속성 종류 중 “마지막으로 알려진 부모”라는 항목에서 값을 가져온다. 그 중 VID와 PID 값을 가져오면 된다.
일단 VID와 PID에 해당하는 값을 확보한다.
VID 는 “0781” 이고 PID는 “5567” 이다.
USB가 정상적으로 만들어지고 정보도 확보했으면, 이제 설정을 해야 한다.
해당 USB 메모리 내의 grub 폴 안에 있는 grub.cfg 파일을 수정해야 한다. 텍스트로 되어 있기 때문에, 메모장(notepad.exe)나 Notepad++ 같은 프로그램으로 열어주도록 한다.
일단 수정해야 될 내용들을 하나씩 설명하도록 하겠다.
22번째 줄 부터 있는 항목들인데, 수정이 필요한 내용을 붉은색으로 표시했다.
(1) – 앞서 수집한 VID 항목에 대한 4글자 값을 넣도록 한다.
(2) – 앞서 수집한 PID 항목에 대한 4즐자 값을 넣도록 한다.
(3) – 뒷부분 4글자에 적당한 숫자를 아무렇게 넣도록 한다. 0000 ~ 9999 사이로 넣으면 된다.
(4) 0~9 혹은 A-F 사이의 글자로 적당히 넣도록 한다. 만일 PC의 네트워크 카드의 MAC 주소를 안다면 그 값을 위의 형식으로 만들어주면 된다. 일단 저 값을 바꿔만 주면 되니까, 1글자만 바꿔줘도 무방하다.
(5) 사용할 PC의 SATA 연결 가능 갯수를 넣어주면 된다. 현재 N40L의 경우 5개가 되어 5를 넣었는데, 만일 2개 밖에 없으면 2를 넣어주면 되고, 8개가 되면 8을 넣어주면 된다.
위와 같이 설정하고 저장해주면 된다.
먼저 40L의 경우 바이오스 설정 중 C1E 항목을 Diable 해주어야 한다. N36L 이나 N54L 도 동일한데, 이 C1E 항목은 반드시 Disable 해주어야 된다. 그리고 부팅은 USB로 부팅되도록 만들어주도록 한다.
정상적으로 부팅되면 다음과 같은 화면이 된다.
이런 화면이 되었다면, 웹브라우저를 열고 http://find.synology.com/ 를 열도록 한다. 그러면, 다음과 같은 화면이 나오는데, 수동 설치를 통해 진행하도록 한다. 수동설치를 하면, 앞서 다운 받은 DSM_DS3615xs_15266.pat 파일을 넣어주면 된다.
N40L의 경우 USB 2.0 까지 지원되는데, Backup을 하기 위한 USB가 너무 느리다. 이것을 향상시키기 위해서 USB 카드를 별도로 설치했다.
NEC 계열의 칩셋을 사용하는 제품, 그리고 LP를 지원해야 한다.3.
다른 제품도 있겠지만, Nexi의 USB 3.0 카드를 구매해서 연결했다. 참고로 해당 제품의 링크는 다음과 같다.
http://itempage3.auction.co.kr/DetailView.aspx?ItemNo=B720041452&frm3=V2
해당 카드를 연결하려면, 포트 중 하나에 연결하고, 전원도 연결하면 된다.
사실 설치 관련된 참고 자료를 찾기 위해 검색을 했는데, 아래의 링크를 찾았다. 나 같은 경우 최신 버전의 펌웨어가 안된다고 했는데, 아래의 링크의 블로그에서는 가능한 것 같다. 내가 쓴 내용보다 더 잘 되어 있는듯.
2020. 12. 23. 오전 2:58
원래는 Tistory 내에는 플러그인 형태로 이 기능을 제공한다고 한다.
문제는, 이 플러그인을 설정해도 제대로 동작하지 않는다.
플러그인을 끈 상태에서는 다음과 같이 표시된다.
이번에는 켜보았다.
그냥 이 하일라이트 기능의 테마만 적용된 정도의 구성이라고 생각한다. 코드 Block의 유형을 SQL로 설정했고, 그 설정 내용이 적용되었음을 Source를 보면 알 수 있다.
<pre>
<code class="sql hljs">Data Source=DBServer;Initial Catalog=DBName;User ID=userid;Password=Password;Connect Timeout=30</code>
</pre>
class 파트를 보면 sql 이 있기 때문에, Highlight가 제대로 적용되었다면, SQL 형식에 맞추어 제대로 표시되야 하는데, 그렇지 못한 것을 확인할 수 있다.(코드 전체가 무채색).
의도하는 바로는 아래와 같은 모양이 나와줘야 한다.
이 처리 방법을 위해 다음 사이트 내용을 참고했다. (코드를 하나도 복사할 수 없어, 일일히 찾아서 처리하느라..)
[Tistory] 소스코드에 하이라이터 플러그인 적용하기(highlight.js)
[Tistory] 소스코드에 하이라이터 플러그인 적용하기(highlight.js 이용) 보통 티스토리 블로그에서 소스코드 플러그인으로 SyntaxHighlighter을 많이 이용한다고 한다. 나는 코딩할 때 코드 색깔이 컬러
rachelsdotcom.tistory.com
먼저 Hightlight.js 파일 부터 구해야 했다. 원본은 GitHub에서 확인할 수 있다.
github.com/highlightjs/highlight.js/
highlightjs/highlight.js
Javascript syntax highlighter. Contribute to highlightjs/highlight.js development by creating an account on GitHub.
github.com
문제는 위의 사이트에서는 설치용 파일만 구할 수 있다. 즉 자신이 사이트를 운영하고 있으며, 자유롭게 Javascript 파일이나 Style(CSS), Image 등을 올릴 수 있으면 문제가 없는데, Tistory의 경우 자신이 원하는 파일을 자유롭게 업로드가 불가능하다. 오로지 Image 폴더 내에 이미지 정도 추가할 수 있다.
결론적으로는 이 js, css 파일은 외부에서 직접 가져올 수 있어야 한다.
다행히 이 파일들을 외부에서 직접 끌어와 쓸 수 있도록 하는 사이트가 있고 해당 사이트가 아래와 같다.
cdnjs.com/libraries/highlight.js/10.5.0
highlight.js - Libraries - cdnjs - The #1 free and open source CDN built to make life easier for developers
Syntax highlighting with language autodetection. - Simple. Fast. Reliable. Content delivery at its finest. cdnjs is a free and open-source CDN service trusted by over 11% of all websites, powered by Cloudflare. We make it faster and easier to load library
cdnjs.com
이 사이트에서 Version 과 Asset Type을 선택해서 highlight.min.js 의 전체 태그 내용을 가져온다. 버전은 원하는 버전을 선택하거나 최신 버전을 선택하면 되고, Asset Type은 Javascript를 선택하면 된다.
그러면 HTML용 태그가 아래와 같은 내용을 클립보드에 복사된다.
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/highlight.min.js" integrity="sha512-9GIHU4rPKUMvNOHFOer5Zm2zHnZOjayOO3lZpokhhCtgt8FNlNiW/bb7kl0R5ZXfCDVPcQ8S4oBdNs92p5Nm2w==" crossorigin="anonymous"></script>
다시 Asset Type을 Styling으로 변경한 뒤, 자신이 원하는 형식에 따라 받는다. 일종의 테마 스크립트인데, 꼭 필요한지 모르겠다. 일단, 있어야 될 것 같아 vs.min.css 를 선택해서 위와 같은 방식으로 태그 내용을 복사했다.
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/styles/vs.min.css" integrity="sha512-aWjgJTbdG4imzxTxistV5TVNffcYGtIQQm2NBNahV6LmX14Xq9WwZTL1wPjaSglUuVzYgwrq+0EuI4+vKvQHHw==" crossorigin="anonymous" />
이 내용을 기반으로 Tistory 관리모드로 들어가 스킨 편집에 들어간다. 그리고 Html 편집을 클릭해서 스킨의 HTML 편집을 실행한다.
Head 태그 끝(</head>) 바로 위 즈음에 코드를 복사해 넣는다.
위에서 각기 얻은 태그들과, 스크립트를 실행하기 위한 코드를 추가하면 된다.
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/styles/vs2015.min.css" integrity="sha512-w8aclkBlN3Ha08SMwFKXFJqhSUx2qlvTBFLLelF8sm4xQnlg64qmGB/A6pBIKy0W8Bo51yDMDtQiPLNRq1WMcQ==" crossorigin="anonymous" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/highlight.min.js" integrity="sha512-9GIHU4rPKUMvNOHFOer5Zm2zHnZOjayOO3lZpokhhCtgt8FNlNiW/bb7kl0R5ZXfCDVPcQ8S4oBdNs92p5Nm2w==" crossorigin="anonymous"></script>
<script>
hljs.initHighlightingOnLoad();
</script>
CSS Link와 Script 파일 연결, 마지막으로 자동으로 초기화를 위한 명령을 자동으로 실행할 수 있도록 해주면 된다.
이 내용을 적용하려면, 포스팅 할 때(글 쓸때) 아래와 같은 단계를 밟아 처리하면 코드 블록이 제대로 보이게 된다.
처음에는 어색하지만, 이거 몇번 써보면 정말 편함을 느낄 수 있다.
사실 여기까지만 해도 사용하는뎀는 큰 문제가 없다.
다만, Highlight 플러그 인 중 Line-Number 라는게 있는데, 이게 또 하나의 걸작이라 같이 작성한다.
소스 코드를 표시할 때, 앞 쪽에 줄 수도 표시해주는 기능이다. 이 기능을 적용하면, 여러 줄의 Source의 경우 다음과 같이 표시해준다. 이 부분은 굳이 적용할 필요는 없지만, 개인적으로는 참 유용한 기능이라 추가했다. 소스 코드 보기를 하면 기본적으로 소스코드의 색이나 형태를 변경해서 가독성을 높여 주는 정도다. 그런데, 맨 앞쪽에 소스 코드의 줄수를 나타내면, 훨씬 더 소스 코드 내용 접근이 쉽다. 각 줄수를 표현하는 방법이다. (기본적으로는 그냥 소스만 표시된다.)
이를 위해서는 앞에서 cdn을 통해 highlight.js를 가져온 것 처럼, line-number 라는 highlight 용 플러그인을 가져와야 한다. 해당 CDN 서버스의 URL은 아래와 같다.
cdnjs.com/libraries/highlightjs-line-numbers.js/2.8.0
highlightjs-line-numbers.js - Libraries - cdnjs - The #1 free and open source CDN built to make life easier for developers
Highlight.js line numbers plugin. - Simple. Fast. Reliable. Content delivery at its finest. cdnjs is a free and open-source CDN service trusted by over 11% of all websites, powered by Cloudflare. We make it faster and easier to load library files on your w
cdnjs.com
Highlight 처럼 적당한 버전을 선택하여 태그를 가져온다.
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlightjs-line-numbers.js/2.8.0/highlightjs-line-numbers.min.js" integrity="sha512-axd5V66bnXpNVQzm1c7u1M614TVRXXtouyWCE+eMYl8ALK8ePJEs96Xtx7VVrPBc0UraCn63U1+ARFI3ofW+aA==" crossorigin="anonymous"></script>
사실 이 기능을 활성화 하기 위한 설명은 이 소스의 GitHub에서 볼 수 있는데, 다른 부분이 아니라, CSS 내용을 추가해달라는 내용이다.
github.com/wcoder/highlightjs-line-numbers.js/
wcoder/highlightjs-line-numbers.js
Line numbering plugin for Highlight.js . Contribute to wcoder/highlightjs-line-numbers.js development by creating an account on GitHub.
github.com
추가할 내용은 다음과 같다.
<style>
pre > code {
font-family: "Sans Mono", "Consolas", "Courier", monospace;
font-size: 15px;
}
/* for block of numbers */
.hljs-ln-numbers {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
text-align: center;
color: #ccc;
border-right: 1px solid #CCC;
vertical-align: top;
padding-right: 5px;
/* your custom style here */
}
/* for block of code */
.hljs-ln-code {
padding-left: 10px;
}
}
</style>
그리고 초기화 하기 위한 함수 호출까지 다음과 같다.
hljs.initLineNumbersOnLoad();
위의 내용을 믹스해서 Highlight와 Line Number for Highlight 를 적용하기 위한 전체 코드는 다음과 같다.
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/styles/vs2015.min.css" integrity="sha512-w8aclkBlN3Ha08SMwFKXFJqhSUx2qlvTBFLLelF8sm4xQnlg64qmGB/A6pBIKy0W8Bo51yDMDtQiPLNRq1WMcQ==" crossorigin="anonymous" />
<style>
pre > code {
font-family: "Sans Mono", "Consolas", "Courier", monospace;
font-size: 15px;
}
/* for block of numbers */
.hljs-ln-numbers {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
text-align: center;
color: #ccc;
border-right: 1px solid #CCC;
vertical-align: top;
padding-right: 5px;
/* your custom style here */
}
/* for block of code */
.hljs-ln-code {
padding-left: 10px;
}
}
</style>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/highlight.min.js" integrity="sha512-9GIHU4rPKUMvNOHFOer5Zm2zHnZOjayOO3lZpokhhCtgt8FNlNiW/bb7kl0R5ZXfCDVPcQ8S4oBdNs92p5Nm2w==" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlightjs-line-numbers.js/2.8.0/highlightjs-line-numbers.min.js" integrity="sha512-axd5V66bnXpNVQzm1c7u1M614TVRXXtouyWCE+eMYl8ALK8ePJEs96Xtx7VVrPBc0UraCn63U1+ARFI3ofW+aA==" crossorigin="anonymous"></script>
<script>
hljs.initHighlightingOnLoad();
hljs.initLineNumbersOnLoad();
</script>
내용 수집이 어려워서 그렇지 사실 별 내용은 없는 것 같다.
특별히 버전 문제가 없다면, 위의 코드를 그대로 스킨 소스에 추가만 해도 동작한다.
생각보다 많이 빡셨다
일단 내 생활권자체가 서울 서부에 주로 있어서 동부 끝에 있는 하남쪽 방문은 어렵고 대신 김포로 갔다
차량으로 간다면 주소를 다음을 치면된다
경기 김포시 고촌읍 아라육로57번길 108
만일 필자처럼 뚜벅이라면 일단 9호선 일반타고 개화역(9호선 끝역)에 간뒤 16-1 번 차고 KOCOM 보이는 곳에 내린뒤 주유소와 세븐일레븐을 가로 질러 트럭 드나드는 게이트 쪽으로 가야된다
그리고 건물을 마주하는 상태에서 오른쪽 엘리베이터를 타야된다. 그리고 3층에서 내린다
만일 3층에 내렸는데 보이는게 MQ 네트워크나 관계자외 출입금지와 함께 K뭐시기 표시된곳이면 다른쪽에 있는 엘리베이터 쪽을 찾아야 한다
사실 더 큰 문제는 이 라임베이스라는 어떠한 간판도 스티커도 없다
문 닫혀 있으면 정말 알 수가 없는데 그 놈의 문짝도 화장실 옆쪽의 어둑한 구석에 있다(문짝 하나짜리)
2시부터 4시까지 한데서 2시에 왔는데 문은 잠겨 있고 초인종은 안눌러지고 문을 두드려도 대답이 없다
그래서 5층도 갔다 반대편 엘리베이터에도 갔다 생쑈를 했다. 뭐 물어보고 싶어도 전화번호도 없으니 원...
카카오톡 오픈채팅방에 문의했는데 거기서 건진게 스티커 간판 없다는 내용만 알 수 있었다
뱅글뱅글 헤메다 2시 40분 즈음에 문이 열려 있더라.
어쨌던 우여곡절 속에서 간신히 찾았다
게다가 이제 처음해보려하는데 수익을 볼 수 있냐고 묻길래 피시괬다. 아마도 처음 하는 사람에게 2A 짜리 무료로 나눠 주기 위해서 그런거 같다
어쨌던 수령은 했고 이제 라임 충전해주면서 용돈 벌이나 해봐야겠다
천상 귀찮아해서 잘 못할거 같긴한데 뭐....
Copyright © 2015-2025 Socialdev. All Rights Reserved.