Ping 02/02/2023 .01: xemacs, gemini, gemtext

Posted on Feb 2, 2023

추억이 그리워지는 시대여서 그런거 같기도 하다. 그럼에도 어차피 그렇게 다시 사용하기엔 끔찍할텐데.

1. “제미니 계획”

gemini protocol 을 기반으로 뭔가 새로운 것을 상상하면 즐겁지만,

정말 제한적이어서, 내 마음대로의 확장을 떠올리게 된다.

실은, gemtext와 gemini protocol은 마음에 드는 부분이 바로 그런점이지만: 오히려 제한적이고, 그냥 무시해도 되는 것들을 굳이 지원해줘야 할 것 같은 기분에 져서 우겨넣으면서 complexity만 무한대으로 보낼바엔, 이렇게 무시할 것은 잘 무시하는게 더 좋은거 같아.

gemtext은 아예 어떤 마크업에 대한 고려도 실은 없고, inline links 같은 것도 지원하지 않는다.

그런데, 그런 점들이 오히려 HTML보다 더 나을수도 있겠다 생각했다. 당장 모든 장치마다 폭/폰트 등등 다 다른걸 제대로 렌더링 되도록 하겠다고 얼마나 많은 수고를 하면서도, 제대로 된 웹접근성/가독성은 떨어지는지 싶어서.

그리고 언제까지나 우리가 스크린만으로 글을 읽게 될지도 불확실하다고 생각해서. 금새 음성을 통한 접근이 더 보편화될 가능성이 높을지도 모르지.1 …그렇다고 한다면, 오히려 화면에 글자를 예쁘게, 잘 보이도록 하던 일들은 오히려 무의미하거나, 심지어 과거에 IE/ActiveX 환경이 그랬듯이, 무언가를 더 좋게 한다고 시도를 했지만, 오히려 HTML5/웹표준 환경으로 전환하기 위해 모두 버리고 더 가볍게 다시 만들어야 했었듯이, 거추장스러워서 버리게 될 가능성도 높은거 같아.

한마디로, 지금 시점에서는 엄청나게 중요한거 같아도, 그보다 더 큰흐름에서 큰 변화가 생긴다면, 아무 생각도 할 필요 없이 내다버려야할 쓰레기일뿐일지도 모르지.

그리고 제미니 클라이언트를 설치하고 여기저기 뒤젂거리고 다녀도, 딱히 재밌는 글타래도 보이지 않고, …오히려 여긴 누가 와서 같이 글을 쓰고 글을 읽기 보다는, 아직은 그냥 다른 아무도 없는 곳이 필요해서 대피해온 곳이란 느낌의 공간이었다.

2. just like the good ol’ days

전기세도 걱정되고 하는 시대이고, 조용히 글을 두드리고 싶을 때, 조용하게 팬소음도 없이 (아예 팬이 달려 있지 않아도 굴러는가니까) raspberry pi 3b+ 정도만 켜고 emacs을 켜고 툭툭 두들기기도 하면서 지낸다.

하지만, rpi3이 그렇게 사양이 좋은것도 아니고, 내 공통 emacs config이 그렇게 가벼운 편도 아니고, mini emacs config 만들어 놓은 것도 갱신하기 귀찮았다.

실은 단지 emacs-mini-config 설정만 고쳐서 실행하면 만족스러울 일인데, …그냥 설치하고 예전 감성을 느끼고 싶어서 xemacs 패키지를 설치해서 다시 실행해봤다.

debian stable (bullseye)에 신기하게도 xemacs 21 버젼이 패키지으로 당당히 살아있어서, 그냥 설치.

뭐 이것저것 내가 글쓰는 루틴과 방식에 맞추느라 결국 설정을 조금은 했다: https://github.com/ageldama/configs/blob/master/emacs/xemacs-init.el

…그리고 xfonts 패키지를 더 설치해서 예전 비트맵폰트(bdf/pcf)를 더해서 폰트 설정까지 해주고 마무리.

이렇게까지 조금 세팅을 하고 나니, 뭔가 느낌적으로 글을 쓰는데 더 집중이 되기는 되는 느낌이 들었다. 그리고 심지어 더 빠르게 화면이 움직이는 느낌… 트루타입이 아니라 비트맵방식 폰트이니까 그럴꺼라는 혼자 생각도 하면서.

심지어, org-read-date 같은게 필요해서, calendar을 해킹해서 가능하게 만들고 나서 엄청나게 뿌듯했다.2

확실히 편안하기는 하다. org-mode이니 다 필요 없이, fundamental-mode에서 글을 쓰고 있는 일도 즐거웠다. 예전에 리눅스를 사용할 때에 (1997년대~2004년 정도?)에는, 실은 나는 xemacs을 종종 썼던거 같다. 화면구성과 기본색상이 gnu emacs은 흰색바탕이 기본이었었는데, 그보다 xemacs의 회색을 더 선호했었고, 오랬만에 그 색상을 보니 편안했다.3

…그런데, 종종 요즘에 다른 gnu emacs환경에서 작성한 UTF-8 텍스트를 종종 xemacs에서 깨먹는걸 보면서, …접었다: https://www.emacswiki.org/emacs/MuleUCS …이유는 이런거 같다.

추억여행은 이만 접고, 그냥 원래의 gnu emacs을 열었다. 그냥 적당히 로딩이 느렸지만, 글을 쓰기에는 크게 무겁지 않았다. 그냥 xemacs이 가볍다는 것은 그냥 기분탓이었던거 같아. ..물론 실제로 가벼울 수 밖엔, 내가 gnu/emacs에 설치해놓고 사용하는 수 많은 확장들을 하나도 로딩하지 않고 그대로 사용하는거니까. 그리고 그렇다면, 그냥 “mini emacs config"을 갱신하면 어차피 처음부터 가벼운 환경을 그대로 쓸 수 있었을텐데 괜히 추억여행만 잘 다녀온 것.

어쨌든, 복잡해지고 엄청나게 무거워졌지만, 그래도 내게 필요한 방향으로 유익해져 오기는 했구나 당연한걸 생각.4

xemacs은 원래 시작부터 상용 C++ IDE을 만들려는 시도였었고, maintainer도 없고, Elisp도 너무나 달라지도록 발전해서, 앞으로 아무도 쓸일이 없을거 같기는 하다. 과거에 작성해놓은 Elisp코드 때문에 써야 하는 경우와 편안함을 느껴서 그런 경우가 아니라면.


차라리 돈을 내고 글을 읽겠다…만

공짜라고 딱히 좋은 컨텐츠인지는 잘 모르겠다. 광고이거나 선동(..그리고 선동으로 유인/조종해서 돈벌이를 위한거겠지만 결국)이거나, 그것도 아니면 방문자수 카운트 등으로 데이터장사나 DAU/MAU장사를 하려는게 의도일뿐이니까.

착각할 필요가 없는게, 인터넷/모바일 서비스나 기업들이 어차피 하려는건 그중에 하나이지, 말하는 프로파간다 같은 “더 좋은 세상“을 만들거나, “당신을 위해” 무언가 더 좋은걸 주려는건 절대 아니지.. 혹여 그렇게 말한다고 하더라도, ㅎㅎ그건 어차피 그런 기분을 줘서 결국 누가 이익을 보고 싶어서 그 활동을 하는건지 착각해서는 안된다.

그리고 그런 서비스나 기업을 하려고 착안을 하기 시작하면 결국 할 수 있겠다 싶은 내용은, 어떻게 해야 되겠다는 경로도 결국 사용자를 위해서라기 보다는, 그런 데이터생성기, 광고대상으로 보이게 될 뿐인거 같다. 더군다나 투자를 처음/더 받고 싶거나, (화난) 투자자를 안심시키거나, (매혹된) 투자자를 더 들뜨게 만들고 싶다면 더욱 그럴거 같다.

공짜로 뭔가 얻으려고 해서 얻는 정보들은… 글쎄, 결국 광고이거나 데이터생성의 역할을 해주도록 날 유도하는데 더 열을 올리려는게 당연할거 같아.

구독방식으로 돈을 내고 접근하는 컨텐츠들이 차라리 더 나을지도 모르겠다, 당연히. 그런데, 그것도 또 딱히 안심이 되지 않는것은, 그 컨텐츠가 열려 있지 않으니, 그게 사실인지, 가치가 있는지는 확신이 서지 않는다는 점.

내가 뭘 알겠냐만, 차라리 돈을 내고 뭔가를 사서 읽으면 더 나을까 싶기도 하다. 그렇게까지 해서 읽게 되는 것도 또한 광고와 충실한 정보가 의심스러운 정보라면, 이걸 정말 내가 내돈 내고 읽어야 맞는걸까 싶다면, 정말 그러면 어째야 할까 싶다.

또는, 어떤 인터넷뉴스라고 하는 것들은, 읽어 보면, 통념적인 기분에 맞춰주기 적절할 뿐인 (실상은)헛소리인데, 그걸 지식이나 정보꺼리로 게재하는거 같기도.

여튼, 뭘 딱히 열심히 읽지도 않는 주제에 투덜거리기만 해봤다.


  1. …웹에 대해서만 생각해봐도, 불과 2010년 언저리만 해도, 대한민국의 인터넷환경은 너무나 특별해서, 영원히 Internet Explorer 환경에서 한국은 벗어나지 못할거 같았었지 않나. 그러다가 금새 스마트폰 환경이 PC접근보다 수월하니 HTML5전환이 많이 일어났었고. …지금에는 (여전히 남아는 있지만) 정말 리거시를 제외하고는 많이 ActiveX등이 많이 사라진거 같다. 마찬가지로 웹브라우져이나 스마트폰 터치스크린을 이용하는 방식이 모든 사람에게 편리한 것도 아니고, GUI 메타포어를 모든 세대가 편안하게 여기는 것도 아니니까, 오히려 자연언어를 통해 접근하는 방식, 적당히 대화가 가능한 방식은 이미 일상에 어느 정도 구현되어 있고, 아주 짧은 기간내에 그 인식정확도와 편의성이 폭발적으로 증대될거 같아. 심지어 우리가 말소리를 아주 크게 내지 않더라도, 그걸 인식할 방법은 많을테니까. 대중교통에서 입을 다물고 무선이어폰을 꽂고 스마트폰에 시선을 고정한 것이 아니라, 그냥 시선은 자유롭게 하고 손으로 조작할 필요도 없이, 무선이어폰만을 꽂은채 아무 소리도 내지 않는거처럼 웅얼거리면서 스마트폰을 조작하는게 더 보편화되지 않을까. 기술적으로 구현도 이제 더 수월해질테고, 그게 손과 시선을 고정할 필요도 없어서 더 편리할테니까. ↩︎

  2. calendar elisp function이 있기는 있는데, 그걸로 날짜를 선택한 값을 기본적으로는 얻어낼 수 없어서… calendar-mode-map이란 keymap에 enter키를 바인딩하고 –> 그 선택결과를 다른 숨긴 이맥스버퍼에 복사하거나, 콜백lambda함수를 호출하거나 하도록 하는 방식으로, 원래는 의도하지 못한 방식으로 xemacs의 calendar함수를 원본 코드는 그대로 두고 그 주변에 추가만 하는 방식으로 재밌게 확장했다. ↩︎

  3. 리눅스를 예전 slackware a.out/coff일 때부터 사용해왔었다, 그때에 이맥스를 선호했던 이유는 Mule을 지원해서 한국어 입출력이 가장 편안했던 환경이어서 그랬었다. …솔직히 지금도 내겐 이맥스가 가장 한국어 작성하기에 편안하다. ↩︎

  4. 지금 글을 쓰는 이맥스의 system-configuration-features값은 "ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM XWIDGETS GTK3 ZLIB" …elisp에 이미지포맷, TLS, gsettings/dbus연동 같은것은 물론 멀티스레딩도 가능하고, 심지어 NATIVE_COMP으로 JIT컴파일까지 해주도록 발전해왔구나 싶었다. OpenSUSE Tumbleweed에서 이맥스 사용하니 기본패키지가 그렇게 빌드되어 있더라. ↩︎