Adobe Acrobat Reader는 현재 Linux 플랫폼에서 사용할 수있는 우수한 PDF 리더 중 하나입니다. xpdf와 Evince는 잘 작동하지만 Acrobat의 표시는 더 나은 것 같습니다.
나는 Vim 편집기로 사용하고 난 (사용 빔 탐색 기능하려면 h, j, k, 및 lAdobe Reader에서 이동할을). 어떻게합니까?
Evince가 그런 종류의 탐색 기능을 제공한다는 것을 알고 있습니다.
Adobe Acrobat Reader는 현재 Linux 플랫폼에서 사용할 수있는 우수한 PDF 리더 중 하나입니다. xpdf와 Evince는 잘 작동하지만 Acrobat의 표시는 더 나은 것 같습니다.
나는 Vim 편집기로 사용하고 난 (사용 빔 탐색 기능하려면 h, j, k, 및 lAdobe Reader에서 이동할을). 어떻게합니까?
Evince가 그런 종류의 탐색 기능을 제공한다는 것을 알고 있습니다.
답변:
AutoHotKey를vim
사용하여 Adobe Reader에서 탐색과 같이 설정했습니다 . 이 키 바인딩이 다른 응용 프로그램에 영향을 미치지 않도록 Adobe Reader가 현재 활성 창인 경우에만 키 매핑이 활성화되도록 구성해야합니다. 다음 수정 된 AutoHotKey.ahk 스크립트가이를 수행합니다.
#IfWinActive ahk_class AcrobatSDIWindow
h::Send {Left}
Return
#IfWinActive ahk_class AcrobatSDIWindow
j::Send {Down}
Return
#IfWinActive ahk_class AcrobatSDIWindow
k::Send {Up}
Return
#IfWinActive ahk_class AcrobatSDIWindow
l::Send {Right}
Return
ahk_class
이름은 실행에 의해 결정될 수있다 AutoIt3 Window Spy
.
유일한 단점은 Search/Find
Adobe Reader 에서 작동하는 동안 입니다. 검색 텍스트가 포함되어 h/j/k/l
있으면 화살표 키로 해석됩니다. 자동 키를 일시 중단하거나 Pause Script
작업 표시 줄 알림 영역에서 클릭하여이 제한을 극복 할 수 있습니다 .
이 한계를 극복하기위한 더 나은 접근 방식은 대문자 (HJKL)를 사용하는 것입니다. Adobe 검색은 대소 문자를 구분하지 않으므로 hjkl 문자도 검색합니다. 예를 들어 taKe는 take와 일치합니다.
내가 아는 한 불가능합니다. vim과 유사한 인터페이스를 가진 PDF 뷰어를 만드는 프로젝트가 진행 중이지만 개발이 활발한 것으로 보이지만 아직 갈 길이 없습니다. 관심이 있다면 여기에서 찾을 수 있습니다 (개발은 Windows에 중점을두고 있지만 Linux 및 Windows 용 버전 사용 가능).
http://code.google.com/p/apvlv/
그렇지 않으면, 당신이 evince 또는 커서 키를 사용하여 붙어 있다고 생각합니다.
필자가 작성한이 AutoHotKey 스크립트는 검색을 위해 hjkl, gg, G, Ce, Cy, Cf 및 Cb와 /, n 및 N을 지원합니다. 누르면 /검색 모드로 이동합니다, 그리고 Esc, Enter그리고 Ctrl- [일반 모드에서 다시 넣을 것입니다. 정상적으로 작동하지 않으면 Esc 키를 눌러 일반 모드로 돌아갑니다.
#IfWinActive ahk_class AcrobatSDIWindow
h::
if (inAcrobatSearchMode)
Send h
else Send {Left}
return
j::
if (inAcrobatSearchMode)
Send j
else Send {Down}
return
k::
if (inAcrobatSearchMode)
Send k
else Send {Up}
return
l::
if (inAcrobatSearchMode)
Send l
else Send {Right}
return
n::
if (inAcrobatSearchMode)
Send n
else Send {F3}{Esc}
return
+n::
if (inAcrobatSearchMode)
Send N
else Send +{F3}{Esc}
return
+g::
if (inAcrobatSearchMode)
Send G
else Send {End}
return
; see http://stackoverflow.com/questions/1794258/detect-a-double-key-press-in-autohotkey
g::
if (inAcrobatSearchMode)
Send g
else {
if (A_PriorHotkey <> "g" or A_TimeSincePriorHotkey > 400) {
; Too much time between presses, so this isn't a double-press.
KeyWait, g
return
}
Send {Home}
}
return
/::
if (inAcrobatSearchMode)
Send /
else {
inAcrobatSearchMode := true
Send ^f
}
return
Esc::
inAcrobatSearchMode := false
Send {Esc}
return
^[::
inAcrobatSearchMode := false
Send {Esc}
return
Enter::
if (inAcrobatSearchMode) {
inAcrobatSearchMode := false
}
Send {Enter}
return
;go back into normal mode after scrolling with any control command
^e::
inAcrobatSearchMode := false
Send {Esc}{Down}
return
^y::
inAcrobatSearchMode := false
Send {Esc}{Up}
return
^f::
inAcrobatSearchMode := false
Send {Esc}{PgDn}
return
^b::
inAcrobatSearchMode := false
Send {Esc}{PgUp}
return
#IfWinActive
의견에 짧은 버그 보고서 또는 제안을 남겨주세요!
AutoHotKey가 입력을 충분히 빨리 변환 할 수 없어서 Ctrl 이동 명령을 길게 누르는 것과 관련하여 알려진 일부 문제가 있지만 Ctrl 이동이 아닌 명령은이 문제가 없어야합니다.
안타깝게도 Linux 또는 Mac OS X에 대한 솔루션을 제공 할 수있는 충분한 지식이 없습니다. 누구든지 이것을 다른 운영 체제로 이식 할 수 있다면, 자신의 답변을 추가하거나 지침에 따라이 답변을 편집하십시오. :)
Linux에는 AutoHotkey에 대한 대안이 AutoKey
있으며 여기에 내 솔루션이 있습니다.
( AutoKey
오랫동안 업데이트되지 않았지만 우분투 14.04에서 방금 만들었습니다 )
README
컴파일 및 설치 (Qt 버전을 선택)autokey
런처에서 중, 또는에서 터미널에서 실행/usr/bin/autokey-qt
j
아래로 이동하는
데 사용mendeley - up
이나 의미가있는 이름<up>
j
사용하여 핫키로 할당Set
Set
버튼 을 클릭하여 창 필터를 설정하십시오.k
위로 이동, space
아래 로 이동 및 위로 이동 shift + space
했습니다.참조 :
Meh,이 질문은 1 살입니다. 그럼에도 불구하고 시도해 보도록하겠습니다.
acroread에서 어떻게 해야할지 모르기 때문에 주제를 약간 벗어 났습니다 . 하지만 Apvlv 를 사용해 볼 수도 있습니다 .
"Apvlv는 Linux / WIN32에서 PDF / DJVU / UMD 뷰어이며 그 동작은 Vim과 같습니다."
acroread를 기꺼이 남겨두고 싶다면이 PDF 리더는 많은 vim-love를 줄 것입니다.
Apvlv 는 libpoppler ( evince 와 동일한 백엔드 및 현재 xpdf )를 기반으로하므로 언급 한 것과 동일한 디스플레이 문제가 발생할 수 있습니다. 그러나 그것은 업계에서 가장 느린 acroread 보다 확실히 빨리 발생합니다 ! 행운을 빕니다.
면책 조항 : 나는이 프로젝트에 대한 문서를 한 번 썼습니다.