이글루스 | 로그인  


이글루스에 엠파스 검색창 넣기

예전에 블로그에 글을 쓸 때 검색의 중요성에 대해 글을 적었습니다.

'글쓰기에서 검색, 참조의 중요성'

이 글을 적고나서 글을 적을때마다 제 블로그를 검색하였습니다.

이 때 쓰이는 도구가 '이글루 파인더'와 '구글 site명령어'였습니다.

 

그런데 이글루 파인더는 최근 속도가 많이 느려졌습니다.

그래서 답답하더군요.

구글은 좋기는 하지만, site를 일일이 넣어야 하는 불편함이 있었습니다.

물론 이것도 자동으로 할 수 있지만 귀찮더군요.^^;;

 

그러던차에 KLDP에서 검색창이 구글에서 엠파스로 바뀐 것을 확인하였습니다.

Geek이 많다는 KLDP에서 쓰는 것을 보니 왠지 믿음이 가더군요.^^;;

그래서 제 블로그를 검색해보았습니다.

엠파스에서 블로그 검색은 'blog'명령어를 쓰면 됩니다.

(관련 글 보기)

제대로 나오더군요.

그래서 쓰기 편하게 이글루스 안에 검색창을 넣기로 하였습니다.

 

엠파스 검색창은 다음 문서에서 제공합니다.

'검색창달기'

여기서 제공하는 HTML에 수정을 하였습니다.

즉, 검색어로 넣은 값 뒤에 " blog:nosyu.egloos.com"을 넣는 코드를 넣었지요.

그러니 안된다고 하더군요.

submit은 금지어라고 합니다.

어떤 방법을 취했냐하면

onsubmit으로 이벤트를 알아내어 처리를 한 것이지요.

 

그럼 이 방법이 아닌 다른 방법을 찾다가 한 곳을 발견하였습니다.

'검색엔진 루씬 Lucene...'

루씬 검색 사이트인데, 오른쪽에 보니 루씬 검색창이 있더군요.

해당 소스를 보니 form객체를 쓰지 않고 onclick, onKeydown을 썼습니다.

거기에 힌트를 얻어 변형시켰습니다.

(힌트를 얻었다기보다는 거의 그대로 가져왔습니다.)

잘 되더군요.^^

 

그럼 코드를 공개하겠습니다.

코드 보기

너무 조잡하네요.^^;;

 

방법은 다음과 같습니다.

디자인은 엠파스에서 제공한 HTML은 Table코드를 쓰기에

배경을 없애고 DIV로 바꾸었습니다.

코드는 엠파스 통합검색페이지인

'http://search.empas.com/search/all.html' 뒤에

q변수를 넣어 그 변수안에 검색어를 넣었습니다.

이 때 검색어 뒤에 ' blog:nosyu.egloos.com'을 붙였습니다.

실행은 event.keyCode가 13 즉, 엔터가 눌러지거나

'검색' 그림을 클릭했을 때 실행이 되도록 하였습니다.

 

다른 이글루분들이 쓰시려면 'nosyu.egloos.com'을

본인의 이글루스 주소로 넣으시면 됩니다.

 

이거 삽질하느라 하루가 걸렸습니다.

전 처음부터 통합검색이 아닌 블로그 검색으로 가게하려고

'http://search.empas.com/search/ob.html'에 접근했습니다.

그러자 파폭에서 제대로 작동하지 않더군요.

이유는 해당 페이지가 UTF-8을 지원하지 않아서였습니다.

그래서 자바스크립트로 별의별 짓을 다 했지만,

모두 실패하였습니다.

(덕분에 escape함수라던가 한글 인코딩에 대해 배웠습니다.)

그러다 통합검색 페이지로 접근하니 잘 되더군요.;;;

(내 하루를 돌려도~~!!)

 

이 검색창에 문제점이 있습니다.

첫 째로 검색어를 넣고 엔터를 칠 경우 팝업차단을 실행시킵니다.

그러나 검색 버튼을 누르면 그렇지 않더군요.

이는 아마 javascript 구문 때문인 듯 싶습니다.

그래서 엔터를 없앨까 생각해보았지만,

검색을 할 때 검색 버튼을 누르는 것보다 엔터가 많을 듯 싶어

일단 지우지 않았습니다.

 

둘 째로 디자인 문제입니다.

검색 input text와 검색 버튼 사이의 간격을 위해

margin을 넣었더니 파폭에서는 제대로 나오는데,

IE6에서는 개행이 되어버리네요.

같은 코드에 두 프로그램이 다르게 작동하니 황당할 따름입니다.

 

셋 째로 현재 IE6와 FF2에서만 확인했습니다.

IE7과 Opera등에서는 어떻게 작동되는지 잘 모르겠습니다.

이는 확인 후 덧글로 추가하도록 하겠습니다.

 

마지막으로 이 검색창을 쓰는 것을

이글루스나 엠파스에 허락을 받아야 하는가 모르겠습니다.

엠파스에서는 페이지로 공개를 하고 있으니 괜찮은 듯 싶으나

이글루스에서는 어떻게 생각할지 모르겠군요.

그러나 '같은 회사(는 아니고, 같은 주주인가요?)끼리

서비스를 공유해야 모두 잘 살 수 있죠.'라는 핑계를 댈 예정입니다.^^;;

 

결론적으로 문제점이 많은 코드입니다.

다른 분들의 피드백 부탁드립니다.^^

 

참조

http://www.kldp.org

http://www.empas.com

http://lucene.egloos.com

by NoSyu | 2007/05/09 14:41 | in Windows | 트랙백 | 핑백(2) | 덧글(13)

트랙백 주소 : http://NoSyu.egloos.com/tb/3389652
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Linked at NoSyu의 주저리 주저리 :.. at 2007/07/20 23:45

... 제가 예전에 검색창을 가지고 삽질을 한 적이 있습니다.'이글루스에 엠파스 검색창 넣기'그 때 이글루 파인더에 불만이 있었던 터라검색창을 달기로 마음먹었습니다.하지만 form 태그가 허용되지 않아변형을 시켜서 엠파스 검색엔진을 쓸 수 있게 한 것입니다 ... more

Linked at AREPIN's Small T.. at 2007/07/22 17:29

... 재 굉장히 편하고 검색 성능이 끝내줘서 아주 만족 중입니다. T_Tb 혹시라도 지금 당장 구글 검색창을 달고 싶으신 분이 계신다면 이글루스에 엠파스 검색창 넣기 - by NoSyu 이글루스에 구글 검색창 달기 - 옛날 삽질은 오늘의 희망? - by NoSyu 를 참고하세요~ 마지막으로 유용한 소스를 공개해주 ... more

Commented by NoSyu at 2007/05/09 14:48
바로 문제가 발생했네요.
IE6에서는 한글이 제대로 작동되지 않는군요.OTL.....

파폭에서 안되는 것을 고치기 위해 노력했더니 이제 IE6에서 안되고 있으니....
어렵습니다.ㅜㅜ
Commented by NoSyu at 2007/05/09 14:53
encodeURI함수를 쓰는 것을 깜박했습니다.^^;;;
그래서 해결 보았습니다.^^
Commented by 레무네아 at 2007/05/09 15:12
대충 알거같습니다...
(전혀모르겠다는 이야기입니다...털석...)
Commented by NoSyu at 2007/05/09 15:17
/레무네아/
자.. 제 손을 잡으세요~
Commented by 사바욘의_단_울휀스 at 2007/05/09 18:40
어쨋든 저코드를 메모장에 사용할수 있다는것이군요^^
Commented by NoSyu at 2007/05/09 19:00
/사바욘의_단_울휀스/
네.. 그렇습니다.^^
Commented by 頭文字-K at 2007/05/10 09:58
검색창 붙이기...
......................

프로그램적 부분은 하나도 몰라서 저로서는 이해못하는 부분...
(만약에 가능하다면 아마도 전... 남들과는 다른 검색창을 붙일지도(...))
Commented by NoSyu at 2007/05/10 10:02
/頭文字-K/
다른 검색창이라...
하긴 저도 엠파스가 아닌 다른 것을 써보려고 했으나,
마땅히 떠오르는 것이 없어서 엠파스로 했답니다.^^;;
Commented by 레무네아 at 2007/05/10 12:07
복사해서 그냥 메모장에 붇여넣기 하면 되나요?
Commented by NoSyu at 2007/05/10 12:25
/레무네아/
복사하셔서
'blog nosyu.egloos.com'을 'blog lemnear1.egloos.com'으로 바꾸신 후
붙여넣기 하시면 됩니다.
Commented by NoSyu at 2007/05/11 15:35
문제점 발생
'과목'이라는 검색어를 넣으면 이상한 검색어가 날라갑니다.
'한글'이라는 검색어를 넣으면 제대로 작동합니다.
한글 윈도우 XP - FF2.0.0.3
Commented by NoSyu at 2007/05/11 16:44
'그림'이라고 해도 안됩니다.
'과정'이라고 하면 됩니다.
'과모'라고 하면 안됩니다.
'과메'라고 하면 됩니다.

이유를 잘 모르겠네요.ㅜㅜ
이래서 컴퓨터 잘하려면 원론적인 것을 잘 알아야 하는가 봅니다.
Commented by NoSyu at 2007/05/12 18:06
메모장을 수정하니 해당 구문이 자동으로 삭제되네요.ㅜㅜ
이글루스에 알렸더니 그걸 막았나봅니다.^^
아쉽지만 다음부터는 은밀하게..(엉??)

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶