...++
=

페르시아에서는 왕이 미치면 카프카스로 전쟁을 하러 간다더니 저는 요즘 웹진 만들면서 꾸역꾸역 삽질하며 본의 아니게 키운 기초체력을 활용하여 오도방정 뛰어다니는 중입니다. 음… 이번 학기 성적은 과연 어떨까…


저번에 올린 Noto Sans 테스트 페이지는 건너뛰고, 그 이후 추가로 작업한 것들을 부끄러우나마 올려 봅니다 *-_-* 참고로 위에 있을수록 최신작(?)입니다.



is.gd / waa.ai URL shortener

완전히 개인적인 이유로 작업함. 뒤에 ?from=주소 형식으로 넣으면 prompt를 띄워서 축약주소를 가져갈 수 있게 해놓았다. 에러 핸들링까지는 했는데, isset()은 다룰 줄 모르겠어서 일단 못 함. (그리고 그걸 각 쇼트너 api들이 알아서 해주고있다... ㅋ... ㅋㅋㅋ... 역시 개인의 무능이 체제의 공교함으로 커버되는 21세기로군 ㅋㅋㅋㅋㅋㅋㅋㅋ) 기왕이면 프롬프트 종료 후 history.back()까지 먹여주면 좋았겠지만, 그건 아직은 내 능력 밖이라고 생각된다.

북마크릿으로 쓰시려면 적당한 즐겨찾기를 만드시고 주소를 아래와 같이 수정하세요.

is.gd

javascript:void(location.href='http://eojin.esy.es/isgd.php?from='+encodeURI(location.href))


waa.ai

javascript:void(location.href='http://eojin.esy.es/waaai.php?from='+encodeURI(location.href))

핵심: PHP JSON 파싱 // 다차원 배열 참조 // 에러 핸들링 // sgwlan에서 waa.ai가 멀웨어로 캡쳐되는 문제에 대하여 -_-;



Y'over There!

태어나 처음으로 작성해 본 php 웹앱(?). Yo 사용자에게 메시지 내용이 파라미터로 담긴 PHP url을 GET방식으로(;;;) 전송한다. 수신자는 * from YOVERTHERE라는 노티를 받고, 눌러 보면 송신자가 보낸 메시지가 나온다. 그냥 Yo라는 초단순 앱을 가지고 API 실습을 해 보는 데 의의가 있었음.

핵심: API 사용하기



adblock bookmarklets

픽시브 광고 안보이게 없애기(for touch.pixiv.net):

javascript:(function(e,a,g,h,f,c,b,d){if(!(f=e.jQuery)||g>f.fn.jquery||h(f)){c=a.createElement("script");c.type="text/javascript";c.src="http://ajax.googleapis.com/ajax/libs/jquery/"+g+"/jquery.min.js";c.onload=c.onreadystatechange=function(){if(!b&&(!(d=this.readyState)||d=="loaded"||d=="complete")){h((f=e.jQuery).noConflict(1),b=1);f(c).remove()}};a.documentElement.childNodes[0].appendChild(c)}})(window,document,"1.3.2",function($,L){$("span[css*='premium_info_bar'], span[class*='premium_info_bar'], .comic-banner, a[href*='premium'], .ad-banner, #add-to-home-screen, .premium-page, .info, .ad-container, .ad-body, div[id*='nend'], div[class*='ads-']").css("display","none");});


경향신문 모바일 광고 숨기기(for m.khan.co.kr):

javascript:(function(e,a,g,h,f,c,b,d){if(!(f=e.jQuery)||g>f.fn.jquery||h(f)){c=a.createElement("script");c.type="text/javascript";c.src="http://ajax.googleapis.com/ajax/libs/jquery/"+g+"/jquery.min.js";c.onload=c.onreadystatechange=function(){if(!b&&(!(d=this.readyState)||d=="loaded"||d=="complete")){h((f=e.jQuery).noConflict(1),b=1);f(c).remove()}};a.documentElement.childNodes[0].appendChild(c)}})(window,document,"1.3.2",function($,L){$("#nbpmobilead_div, #mz_wrap, #div_photolink, iframe, .m_btm_ad, span[class*='_2beon'], div[class*='_2beon']").css("display","none");});

다른 php로 넘어갈 때마다 새로 눌러줘야 하는 매우 불편한 애드온. 쉽게 말해서 실제로는 쓸모가 없다. 그냥 jQuery로 작성한 스크립트로 북마클릿을 만들 수 있다는 데 의의를 두기로. 그놈의 동일출처 정책이 뭔지...

(혹시나 써보고 싶으시다면 다음과 같이 합니다. ①아무 페이지나 북마크(즐겨찾기)에 추가하세요. ②위의 코드를 쫙 복사하세요. ③방금 북마크한 페이지를 수정(편집)합니다. 이름은 적당히 "픽시브 광고 ㄲㅈ" 같은 걸로 바꾸시고, 기존 주소(URL)를 지우고, 방금 복사한 위의 코드를 붙여넣고, 저장 또는 적용하세요. ④해당 사이트를 돌아다니다가 광고가 짜증날 때마다 북마크를 누릅니다. 끗)

핵심: benalman.com/code/test/jquery-run-code-bookmarklet (...;;;)



초간단 선택지 카드

웹진에 사용할 일이 있을 것 같아 꼬박 3시간 걸려 만든 j쿼리 장난입니다. 각 카드에는 고유번호 id가 붙어 있고, 버튼을 누르면 버튼에 부여돼 있던 번호를 고유번호로 가지는 카드가 나타나는 식이죠. 실행취소 버튼은 만들 수가 없다는 게 함정 ㅋ

핵심: replace(/\D/,'') // $(".phase[id=p"+to+"]").show();



초간단 폰 배경화면 생성기

제가 혼자 쓰려고 만든 것인데 사용법은 간단합니다. 두 개의 빈칸에서 색을 선택하고 SET을 누르면 그라데이션이 만들어지는데 이거 그냥 SAVE IT 눌러서 저장해 쓰면 되는겁니다. 색은 hex와 name을 지원하고, 잘 모르겠으면 그냥 옆의 RANDOM 누르면 알아서 채워줍니다. 모바일에서 SAVE가 잘 안 되시는 분들은 기본 브라우저에서 직접 열어봐 주세요.

핵심: Math.random 함수로 0부터 ffffff까지 사이에서 랜덤 돌려 16진수로 반환받기 // 문서 전체 내용에서 특정 클래스 찾아 셀렉트하기 // toDataURL 메소드로 base64인코딩해서 href로 돌리기



초간단 더보기 버튼

웹진 워드프레스에 삽입할 자체 제작 숏코드용으로 목업했던 것입니다. 실제 shortcode 함수에서는 [more text="버튼에 들어가는 말" colorback="버튼 색과 말풍선 테두리 색" colortext="버튼에 들어가는 말의 색"]말풍선에 들어갈 말[/more] 구조로 사용 가능합니다.

핵심: .next() // calc(50% - 14px); // border-left-color, border-left-style 등으로 잘게 쪼개어 지정해주고 jQuery에서 꼼꼼하게 셀렉트하기



위키백과 링크 자동 전환기

역시 웹진 개발 과정에서 쾌적한 독자 경험을 위해 혼자서 뚝딱뚝딱 짜본 코드입니다. 문서 내의 wikipedia를 포함하는 모든 링크에 대하여, 사용자가 모바일로 접속했을 경우 링크를 모바일 전용 링크로 덮어씁니다. 위키백과가 아직은 자체적으로 리디렉션을 하지 않는 게 이상하다 싶어서, 그리고 제가 폰으로 보는 PC뷰의 잔글씨를 참을 수 없어서 만들었습니다.

핵심: if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) { (…함수…) } // position:absolute; top:50%; left:50%; transform:translatex(-50%) translatey(-50%);



비상용 명함 제조기


페이지가 시키는 대로 버튼을 누르거나 입력하다 보면 명함이 완성됩니다. 우클릭해서 다른 이름으로 저장해 쓰면 되는 것이지요. (그렇습니다 이때는 아직 toDataURL같은 건 꿈에도 몰랐습니다.) canvas를 배우느라 여념이 없어서 많은 뒷이야기가 있었지만 그냥 이제는 다 잊기로 한 참 서글픈 코드였습니다. 처음 만들었을 땐 너무 웃겨서 낄낄거리면서 했다고 합니다.

핵심: 문서 로딩 시점에서 하얗게 색칠된 명함 크기 캔버스 작성 // 이미지를 file로 받아와서(이 원리는 아직도 모름…) 또는 기존 URL로부터 삽입 // 버튼 클릭하면 그 버튼 근처 input에서 val 얻어다가 캔버스에 뿌리기



친척용 컨디션 카드


잘 읽고 자기가 해당이 있는 조건들을 클릭해 선택하고 출력해서 목에 걸고 다니면 되는 카드입니다. 여기 올라온 코드들 중 제일 구현이 막막했던 녀석인데 j쿼리 없이 checkbox "마법"으로 해결하는 레퍼런스가 있어서 그걸로 해결봄. “어진이 아이디어는 어진이가 디자인까지 해야 100%가 나오는 것 같아”라는, 마냥 기분 좋아할 수만은 없는 피드백이 있었습니다.

핵심: checkbox 자체는 숨기고 그 옆에 label for로 연결을 시켜 여기에 각 노드를 넣음 // .checkbox-class:checked ~ .class // @media print로 not:checked display none



flickOut bookmarklets

javascript:(function(){var a=document.getElementById('allsizes-photo').getElementsByTagName('img')[0].src;prompt('Ctrl+C to use it :-)',a)})()

flickr.com에서 저작권이 'All Rights Reserved'로 설정돼 있어서 다운로드를 못 하는 사진들이 있을 수 있죠. 하지만 이런 사진들도 '모든 크기 보기' 페이지는 지원하는데요, 거기서 사용하시면 됩니다. 이 북마클릿을 설치해 두셨다가 "https://www.flickr.com/photos/(영숫자)/(숫자)/sizes/(알파벳)"처럼 생긴 주소의 모든 크기 페이지에서 북마클렛을 실행해 주세요. 이미지 주소를 복사할 수 있는 경고창을 띄웁니다.

핵심: getElementById, getElementByTagName.src (네 그렇습니다 왕초보 코드입니다.)



앞으로도 추가가 될… 까나?

혹시나 소스를 보시거나 포크하시려거든 코드펜 현관에서 엽토군을 찾아주세요.

Posted by 엽토군
:
무한도전?



'1 내 > ㄷ 그림' 카테고리의 다른 글

공중파 가시내 62  (0) 2015.04.25
지상파 가시내 61  (0) 2015.03.24
쓸모없는 5호선 노선도  (0) 2014.10.18
방송국 가시내 59  (3) 2014.10.13
공중파 가시내 58  (0) 2014.10.07
Posted by 엽토군
:

실제로 쓸모가 있는 지하철 5호선 노선도가 필요하신 분들은 차라리 네이버 지도다음 지도로 가세요! 여기 올린 노선도는 쓸모가 없는 노선도입니다!


실로 그림 카테고리에 뭐 올리기는 오랜만인데... ㅈㅅ합니다.
업데이트: 네이버 검색에서 괜히 들어와봤다가 실망하시는 분들이 있는 듯해 RSS 갱신차 최신으로 올립니다.


흔히 볼 수 있는 5호선 노선도는 이런 식입니다. 5호선이 T자형으로 뻗어 있고 나머지 노선들은 환승 정보 외에는 아무것도 없지요.


"그럼 도대체 저렇게 5호선 밖으로 뻗어나간 나머지 노선들은 어떻게 맞물리는 걸까" 하는 생각에서 출발해서, 아주 잉여로운 프로젝트로, "5호선을 T자형으로 쫙 펴서 먼저 그려 놓고 5호선 위주로 나머지 노선을 그 위에 억지로 왜곡해 그려보자!"라는 기획을 해 봤습니다.




그리고 (꼬박 3시간 걸려서) 실제로 했습니다.


5호선 위주로 보는 서울 (C)2013 by yuptogun.tistory.com130227 제 1.0판입니다. 클릭하시면 1920 사이즈로 보실 수 있을겁니다.


The total length of this line is 52.3 km and it is the 3rd longest fully underground subway line in in the world just behind Guangzhou Metro Line 3 and Beijing Subway Line 10 (see world's longest rapid transit tunnel).

이 노선의 총 길이는 52.3km로, 광저우 3호선과 베이징 10호선에 버금가는 세계 3위 최장 전체 지하 노선이다. [출처]


  1. 이 노선도의 저작권은 엽토군(김어진)에게 있습니다. 무단 도용을 엄금합니다.
  2. 역은 기점들만 표시했습니다. 심지어 노선 번호도 표기하지 않고 나머지 노선 색깔도 입히지 않았습니다. 서울을 5호선 위주로 보는 사람을 위한 지도입니다. 만약 이 노선도를 굳이 활용하겠다고 한다면 '*호선 ~방면으로 환승하는 ~역', '~역과 ~역 사이의 목적지 *역' 하는 식으로 읽는 수밖에 없겠지요. 뭔말인지 모르면 말구
  3. 5호선을 제외한 모든 노선은 정확도보다 아름다움(?)을 중시하기 위해 (그리고 도저히 다른 노선을 일일이 왜곡시키는 짓은 손과 머리로만은 할 수가 없어서) 역간 거리 비례가 거의 맞지 않습니다. 예컨대 신도림과 대림, 구로와 가산디지털단지 등이 엄청나게 과장되어 있습니다. 2.0으로 판올림을 하게되면 서울 남서부 저쪽도 어떻게 건드려질라나 근데 엄두가 안ㅋ남ㅋ
  4. 따라서 이 노선도는 거의 실용성이 없고 그냥 서울을 다른 모습으로 보는 목적만 실현한 셈입니다. ㅋ...ㅋㅋ... 나란녀석 못난녀석




원본 파일을 올려둡니다. 저작자표시-비영리-변경금지 2.0 대한민국 CC라이선스를 따릅니다.


JPG 3537*2464 2MB+ / PDN 6MB+

'1 내 > ㄷ 그림' 카테고리의 다른 글

지상파 가시내 61  (0) 2015.03.24
공중파 가시내 60  (0) 2014.11.20
방송국 가시내 59  (3) 2014.10.13
공중파 가시내 58  (0) 2014.10.07
최근에 만든 포스터들  (4) 2014.04.18
Posted by 엽토군
:

너네 집 변기 몇 개야?

2014. 10. 18. 10:20

집안 변기의 개수가 그 집의 계급이다.


고은 시인은 <지붕>이라는 시에서 "지붕이 그 집의 사주팔자다"라고 읊은 바 있다. "기와만년 기와집은 기와로 지붕을 하고 / 굴피천년 굴피집은 굴피로 지붕 얹고 / 초가삼간 지붕이야 짚으로 지붕 이고" 산다고 말이다. 오늘 아침 샤워를 하던 어머니를 쫓아내다시피해서 헐레벌떡 화장실에 들어가 급한 일 보고 나오는 길에 문득 생각이 미친 것은, 지금 시절은 지붕 말고 집안의 변기 개수가 바로 그 집의 팔자, 못해도 현재 처지를 보여주는 것 아닌가 하는 점이다.


지금 이 나라 대부분의 집은 내부에 화장실이 있고, 세면실과 욕실을 겸한 경우가 많다. 그 개수는 아마도 한 개인 경우가 가장 많을 것이다. 어떤 집에 변기가 하나 달리는가? 뻔하지, 단독주택 월세방이나 연립주택이 그러겠지. 변기가 하나만 있어도 저들끼리 어찌어찌 잘 융통하고 살아갈, 그래서 굳이 변기를 두 개 이상 달아 줄 이유가 없는 생활의 사람들, 피차 일이 많아 집에서 일을 볼 일이 많지 않은 소가족 혹은 1인 가구들이 그렇게 살고 있을 테다. 그들은 자기가 화장실에 들어갔을 때 다른 식구에게 폐가 되는지 어떤지를 항상 주의하고 있으며, 그래서 모종의 시간 배분을 만들어 행동한다. 그러지 않으면 나 한 사람의 볼일 때문에 나머지 모두가 씻지도 못하고 빨래도 못 걷고 큰일도 못 보는 불상사가 생기니까. 요컨대 집안에 변기가 하나인 집은 그렇게 매일같이 반복되는 일정량의 번잡스러움에 수시로 대응하며 살아간다. 그 빈도가 어느 정도인가 하면, 그것은 정확히 그 집에 무단정차 과태료 통지서(그렇다, 변기가 하나 딸리는 집에 그 집 전용 주차공간이 주어질 리 없지 않나, 그래서 변기가 하나 있는 집은 딱지도 자주 떼는 것이다), 보험료 자동이체 안내 이메일, 최신 휴대폰 무상교체 운운하는 광고 전화 따위가 방문하는 정도의 빈도이다.


변기가 두 개 딸리는 집은 주로 아파트다. 건설 현장에서 숱한 세대를 거쳐 보건대 짐작할 만하다. 현관 근처에 공용 화장실이 크게 있고, 주로 "부모님 방"(으로 쓰라고 건축학적으로 강요하다시피하는 굉장히 직설적인 모양의 방)의 한쪽 구석에 붙박이 옷장처럼 샤워 큐비클과 변기가 같이 놓인 조그마한 화장실이 있다. 이런 곳에서 살아가는 사람들은 적어도 한 명의 큰일 때문에 나머지 모두의 행동이 올스톱되지는 않는다. 대신 그 방의 짜임이, 그 변기의 위치가 그 사람들의 삶을 탁상시계 만들듯이 딱 떨어지게 조립해 놓는다. "부모님들"의 하루 동선은 방, 방에 딸린 화장실, 식탁, 현관, 밖, 다시 현관, 거실 TV 앞, 다시 방으로, 당최 "아이들 방"이나 큰 화장실에 갈 일이 없다. "아이들"도 엄마아빠 방에 들어갈 일이 별로 없기는 마찬가지다. 가끔 둘 중 하나가 큰일이 길어질 때나 화장실 일 보러 부모님 방을 잠깐 스쳐 지나가겠지. 분명히 삶은 좀더 윤택하고 여유시간은 조금 더 확보되는데, 그 '거슬림 없음'이 어쩐지 어색하다. 그 어색한 '거슬림 없음'이란, 비유하자면 대형마트에 설치된 무빙워크에 쇼핑카트를 끌고 들어갈 때나, 22층에서 내려오는 엘리베이터를 8층에서 잡아 타고 내려갈 때나, 중앙현관에 달린 "세콤"에 터치열쇠를 가져다 대려고 주머니에 손을 넣을 때의 느낌이다.


그리고 이 나라에는 변기가 세 개 이상 있는 집도 분명히 있고, 집안에 변기가 없는 집도 분명히 있다. 더욱 놀라운 사실은, 변기 세 개 달린 집의 비율과 변기 없는 집의 비율이 한심하리만치 바로 그대로 이 나라의 상위 1%와 하위 10%의 비율에 일치하리라고 예상된다는 것이다. 변기 세 개 달린 집에서의 삶을 상상해 본 적이 있는가? 그들은 대다수 우리와는 생각 자체가 다르다. 아니 집안 식구가 세 명인데 그럼 당연히 변기도 세 개여야 하는 것 아니냐며. 집안에 변기가 두 개밖에 없으면 애 일 보고 마누라(바깥양반) 일 볼 때 자기는 어떡하냐며. 아니 그럼 경비원을 경비라고 부르지 뭐라 부르냐며, 택배 좀 받고 청소 좀 하는 게 뭐 대수라고 지가 전태일도 아니고 분신 주접을 떠냐며. 그들은 똥 누러 갈 때와 나올 때가 다르지 않을 수 있는 사람들이다. 자기 변기가 확보돼 있으니까. 그들이 무슨 논리적이고 팩트에 근거한 안전하고 상식적인 냉정함을 갖추고 있는 것처럼 보인다면, 그것은 순전히 그들 집안의 변기 덕분이다. 당장 변기 두어 개 막혀 보라지. 일이 너무 급해서 아주 가끔 집 밖 공중화장실로 나가 봤던 사람들과는 비교도 할 수 없을 만큼 볼썽사나운 "똥 누러 갈 때"의 추태를 보여줄 것이다.

그런 추태는, 자기 집 안에 변기가 없는 집에서는, 도무지 나오지 않는다. 그들의 화장실은 항상 공용이며, 그들의 집은 항상 어디 셋방이며, 그들이 화장실에 있을 때 변소 문을 노크하는 것은 거의 대부분 옆집 사람이다. 화장실에 들어간다는 것은 첫째 귀찮음이며, 둘째 불편함이며, 셋째 잡념의 시작이다. 하지만 그 잡념은 두루마리 휴지처럼 이내 끊기고 만다. 옥외변소의 겨울은 똥 냄새가 얼어 있고, 옥외변소의 여름은 똥 냄새가 끓고 있는 그런 곳인데, 그런 곳을 자기 화장실로 쓰는 사람들에게는 불평도 사치가 되니까. 그저 빨리 일 보고 물 내리고 닦고 나가기만을 바라게 되는 그런 장소를 자기 집 화장실로 쓰다 보면, 자연히 꼼꼼히 씻는 것도 부단히 가꾸는 것도 좀체로 몸에 익지 않는다. 그냥 화장실은 일 보는 곳, 집은 잠 자는 곳 따위가 되면 오히려 그런 골방과는 다른 세상을 보여주는 TV나 컴퓨터, PC방 따위에 몰두하기 십상이다. 중요한 사실은, 여전히 변기가 집안에 없는 집이, 이 나라에 상당히 많다는 점이다. 그리고, 어떤 사람들은 도대체 집안에 변기가 어떻게 없을 수가 있는지 그러고도 사람이 사는지 짐작조차 하지 못한다.


오늘도 버스와 지하철을 타고 다니며, 숱한 사람들의 발과 얼굴과 머리끝을 둘러보며 생각한다. 이 많은 사람들이 다 어디선가는 씻고 일 보고 나온단 말이지. 모든 사람에게는 저마다의 화장실이 있다. 거기에 앉았을 때 가장 안심하고 큰일을 볼 수 있는 자기만의 변기가 있는 것이다. 하지만 그게 집안에 몇 개나 구비돼 있는가의 문제는 조금 다르다. 그것은 정확히 계급적이다. 화장실이 집안에 하나 있던 가족은 집안에 화장실 없는 집으로는 두 번 다시 이사하지 못한다. 하지만 그 가족이 집안에 화장실 세 개 딸린 집으로 이사 갈 일이 생기면, 그들은 그것을 좋은 기회로 보지 분수에 지나친 것으로 여기지는 않을 것이다. 서로 다른 개수의 변기를 쓰는 사람들끼리 공중의 공간에서 마주칠 때, 그들은 이따금 서로를 이해하지 못하곤 한다. 이것은 양극화하게 될까? 적어도 <지붕> 말미에서 시인이 밝힌 사태 하나만은 한동안 그대로일 것으로 보인다. 그게 지붕 때문이든 변기 때문이든, 주거 조건에 최소한의 기본 평등이 없는 한에서는.


어느 하늘놈 막아주나

어느 귀신년놈 막아주나

김어구네 오막살이 그뿐이 아니구나

동고티 김기백이네도

쇠정리 관선이네도

헌 지붕 노래기깨나 떨어진다

한동네 한식구라는 말

두레라는 말

말짱 헛것이여 물감자여

'1 내' 카테고리의 다른 글

“경기(京畿)”를 없애야 한다  (0) 2015.06.18
자기만의 100점  (0) 2015.02.03
(근황) 성실에 대하여  (0) 2014.07.21
붕괴  (0) 2014.04.23
좋아요 파티가 끝나는 날  (0) 2014.03.31
Posted by 엽토군
:
절치부심











'1 내 > ㄷ 그림' 카테고리의 다른 글

공중파 가시내 60  (0) 2014.11.20
쓸모없는 5호선 노선도  (0) 2014.10.18
공중파 가시내 58  (0) 2014.10.07
최근에 만든 포스터들  (4) 2014.04.18
방송국 가시내 57  (0) 2014.01.20
Posted by 엽토군
:

카테고리

분류 전체보기 (798)
0 주니어 PHP 개발자 (7)
1 내 (322)
2 다른 이들의 (254)
3 늘어놓은 (36)
4 생각을 놓은 (71)
5 외치는 (69)
9 도저히 분류못함 (31)

최근에 올라온 글

최근에 달린 댓글

달력

«   2026/03   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31