Emacs 사용자를 위한 Chrome 확장 프로그램을 게시해 보았습니다.
개요
Emacs 키 바인딩으로 Chrome을 조작할 수 있는 Extension 를 공개해 보았으므로, 그 소개가 됩니다.
배경
저자는 이전에 메인 브라우저로 Chrome이 아닌 Firefox를 사용했습니다. 왜냐하면 Firefox에는 Firemacs라는 Emacs 사용자를 위한 애드온이 있었고, Chrome에는 그 대신이 없었기 때문입니다. 그러나, 특정 파괴적인 업데이트 에 의해 Firefox의 애드온이 엄청나게 사용할 수 없게 되었기 때문에, Chrome에의 이행을 강요당했다고 하는 경위가 있습니다. 단지 Chrome에는 Emacs 키 바인딩으로 탭 조작이나 스크롤링을 실시할 수 있는 Extension이 당시 존재하지 않았기 때문에, Vimium 했어요. 그래서 처음부터 Emacs 키 바인딩을 사용할 수있는 Chrome Extension이 있으면 편리하다고 생각한 것이 공개 계기입니다.
덧붙여서 Vimium을 Emacs풍에 사용하는 방법에 관해서는, 아래가 참고가 됩니다.
Chrome vimium에서 Emacs 키 바인딩으로 시도
Vimium을 Emacs와 같이 행복하게 만드는 이야기
기능
Emacs 키 바인딩으로 브라우저를 조작할 수 있습니다. 예를 들어 C-v/M-v로 스크롤 다운/업하거나, C-b/C-f로 탭을 좌우로 이동하거나 등입니다. 일례를 올리면 아래와 같은 키 바인드를 사용할 수 있습니다. 또한 설정에서 키를 변경하여 나름대로 사용자 정의할 수 있습니다.
# Navigating the current page
<c-h> show the help dialog for a list of all available keys
<c-b> scroll left
<c-n> scroll down
<c-p> scroll up
<c-f> scroll right
<c-m-,> scroll to top of the page
<c-m-.> scroll to bottom of the page
<c-v> scroll down half a page
<m-v> scroll up half a page
<c-x><c-f> open a link in the current tab
<c-x><a-F> open a link in a new tab
<m-r> reload
<a-s> view source
<c-g><c-u> copy the current url to the clipboard
<c-g><c-l> copy a link url to the clipboard
<c-x>o cycle forward to the next frame
# Manipulating tabs
<c-b> go one tab left
<c-f> go one tab right
<c-x><up> go to the first tab
<c-x><down> go to the last tab
<c-g><c-t> create tab
<c-x>4 duplicate current tab
<c-x>0 close current tab
<c-g><c-r> restore closed tab (i.e. unwind the 'x' command)
<c-x>b search through your open tabs
<c-x>5 move current tab to new window
<a-p> pin/unpin current tab
구현
Extension 구현은 Vimium 소스 코드 을 fork하여 키 바인딩을 Emacs 스타일로 다시 작성한 것만 입니다. 리포지토리는 아래와 같이 공개하고 있으므로, 수정 등 필요한 것 같은 부분이 있으면 자유롭게 PR등 보내 주시면 좋겠습니다.
htps : // 기주 b. 코 m / 마에다 - 카즈야 / ch 로메마 CS
주의점
Chrome 사양 탓인지 일부 페이지 (Chrome 설정 화면 등)에서 키 바인딩이 작동하지 않을 수 있습니다. 원인은 조사 중이지만 일부 바로 가기 키와 충돌하거나 원래 확장 프로그램이 비활성화되었을 수 있습니다.
요약
그 외 눈치채는 점이 있으면, 아래와 같이 Github상의 Issue에 올려 주시면 좋겠습니다. 원래는 자신용으로 작성한 Extension입니다만, 사용하기 어려운 부분 등이 있으면 수시로 개선해 나가고 싶습니다.
htps : // 기주 b. 코 m / 마에다 - 카즈야 / ch 로메마 cs / 이스에 s
Reference
이 문제에 관하여(Emacs 사용자를 위한 Chrome 확장 프로그램을 게시해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/maebaru/items/f7163b70625865b32e68텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)