내가 원하는 기능
1. 크롬 브라우저에 있는 단어를 선택한 후
2. 마우스 오른쪽 버튼을 누르면 컨텍스트 메뉴가 뜨면
3. 컨텍스트 메뉴 안에 goo dictionary ( http://dictionary.goo.ne.jp/ ) 검색 메뉴가 있고,
4. 그 메뉴를 클릭하면, 새 탭이 뜨면서 위의 사전 기능을 바로 이용할 수 있었으면 함
1단계로 일단 컨텍스트 메뉴에 메뉴 추가하는 것 부터 시작했죠. 웹에서 이것저것 뒤져보다보니 확장프로그램을 만들기 위해서는 확장자가 json으로 끝나는 파일이 필요하더군요. 그리고 html과 기능을 실행하기 위한 js 파일도 필요하구요.
그냥 간단히 파일 텍스트만 올려보겠습니다.
파일명: manifest.json
----------------
{
"name": "search in goo dictionary",
"version": "0.1.0",
"manifest_version": 2,
"description": "Search Japanese in goo dictionary",
"permissions": [
"contextMenus"
],
"icons": {
"16": "icon.png"
},
"background": {
"scripts": ["contextmenu.js"]
}
}
-----------------
뭔 뜻인지도 모르고 여기저기에 있는 샘플 파일 가지고 만들어 봤습니다.
여기서 중요한건, "background" 인 것 같습니다. 백그라운드에서 실행하라는 뜻이겠거니 추측해봅니다.
"icons"는 사용할 아이콘을 지정합니다. 아이콘이 없으면 마땅히 없으면 삭제해도 무방할 것 같습니다. 아이콘 배경색하고 주변색하고 다르면 이상해보이니깐 png로 배경을 투명하게 해야겠죠?
백그라운드에 html을 넣고, 그 html안에 js를 넣는 방법도 있는 것 같은데. 귀찮고 해서 바로 js를 넣었습니다.
파일명: contextmenu.js
------------
chrome.contextMenus.create
(
{
'title': "test of mine",
'type': 'normal',
'contexts':['all']
}
);
------------
간단하죠?
'title'은 컨텍스트메뉴에서 뜨는 메뉴 이름을 말합니다. 'type'는 어떤 종류의 컨텍스트메뉴라는 거겠죠. 일단 normal로 했습니다. 파라미터가 몇개 있는 것 같던데. 하나씩 해봐야죠.
이렇게 간단하게 2개의 파일을 만들고, 크롬 확장프로그램 등록을 하면 컨텍스트메뉴에 'test of mine'이 뜨는 걸 확인할 수 있었습니다.
다음 단계는 새 탭을 여는 function을 넣을까합니다. 언제 할런지는 미정. 기분 내키면 하겠죠.