2

상황

나는 가로 현재 파이어 폭스 탭에서 볼 것이 현재의 페이지에 HTML 링크의 복사를 자동화해야 다른 WYSIWYG 편집자. 이 은 URL의 일반 텍스트 만 복사하는 것과 같지 않으며 은 웹 페이지 제목의 일반 텍스트를 붙여 넣기하는 것과 동일하지 않습니다. 이 은 다른 웹 페이지로 이동하여 에 관심있는 페이지에 대한 HTML 링크가 있고 마우스 커서로 텍스트를 선택하고 CTRL-C를 입력하여 현재 작동중인 시스템으로 복사하는 것과 다른 것은 아닙니다 클립 보드 (Linux와 Windows 모두에서 의 차이가 없어야 함). 클립 보드에 대한 업데이트 만 자동화됩니다. 클립 보드에서 대상 응용 프로그램에 붙여 넣기는 수작업으로 수행됩니다.파이어 폭스 확장

  1. 사용자는 파이어 폭스 내에서 모든 웹 페이지를 탐색 : 다음과 같이

    원하는 use case입니다.

  2. 사용자가 표준 Firefox 기본 제공 키 바인딩과 충돌하는 이 아닌 사용자 지정 키 시퀀스를 입력합니다.
  3. 파이어 폭스는 무엇 Copy Link Bookmarklet 의 일부만을 할 것입니다 대신 개방의 새로운 별도의 창/탭 을 선택하고 복사하는 움직임을 낭비 사용자가 필요로하는 다음 건설 및 링크의 HTML 렌더링, 그리고 링크가 클립 보드에 연결되면 확장 프로그램은 HTML 형식을 지정하고 직접 클립 보드에 복사합니다.
  4. 사용자는 아래에 설명 된 대상을 선택하고 CTRL-V를 입력하여 서식이 지정된 텍스트를 붙여 넣습니다.
  5. 는 사용자는 클릭 한 사용자가 그 대상 영역의 링크로 링크를보고하고, 웹 페이지이었다 http://www.google.com에 탐색 할 경우 는, 예를 들어 http://...

같은 문자 그대로 아무것도 표시되지 않습니다, 그리고 사용자 정의 키 시퀀스는 사용자들이 해당 문서에 표시되는 것이 무엇 일부 Google 문서로 에게 그것을 붙여 넣어 경우는 하지http://www.google.com도 아니고 그들이 Google을 볼 것, 대신 는 무엇을 볼 것이다 당신이 웹 브라우저에서 StackOverflow의이 읽을 때 볼 것이다 : Google

을 지금,이 파이어 폭스 확장하고, 을 가까이 올 북마크가 있지만 그들은 모두 마우스 모션 및/또는 키를 눌러 오버 헤드에는 순 감소를 포함하지 않습니다, 가장 자주 시간 낭비되는 부분은 use case입니다. 기존 내선 번호를 검색해도 내 필요를 정확히 충족시키는 항목이 전혀 없었습니다 (아래의 연구 섹션 참조). . 따라서이 기능을 제공하는 기존 확장 프로그램을 가리키지 않으면 내 확장 프로그램 (또는 기존 프로그램 수정)을 사용해야 할 수도 있습니다.

내가 생각한 확장 프로그램은 Firefox 버전 11 또는 Linux 또는 Windows 버전에서 더 크게 실행되어야합니다. 오직 파이어 폭스와 적절한 파이어 폭스 확장이 필요하며, 다른 특별한 소프트웨어는 이 아니어야한다. 페이스트의

대상은 다음과 같아야합니다

  1. Gmail에서
  2. Google 문서
  3. Microsoft Word 문서
  4. 마이크로 소프트 아웃룩은 텍스트 영역을 구성하는 텍스트 영역을 구성한다.
  5. 다른 모든 WYSIWYG 편집기 (예 : Blogger 게시 편집기).
  6. 메모장 (URL이 아닌 만 붙여진 웹 페이지 제목 또는 웹 페이지 제목과 URL이 각각 일반 텍스트 인 경우). 사용자 지정 키 바인딩에 대한

: 확장 이미 위에서 만에 키 바인딩을 결합 할 수있는 기능을 제공하지 않고 한 가 있었다면, 그때에 keyconfig extension 확장을 사용할 수 있도록 기대 그 양상을 다뤄 라. 실제로, 그것은 조차 좋을지도 모르다; 나는 아직 모른다.

연구

다음

내가 원하는 가까운 듯 는하지만 정확하게 필요에 부합하지 않았다 내가 조사 방법은 다음과 같습니다

  1. 해킹 Copy Link Bookmarklet 작동하지 않습니다에를 무엇 내가 할 수 있기 때문에 말하자면 OS 클립 보드를 북마크릿에서 업데이트 할 방법이 없기 때문에 Firefox 확장이 필요하다고 생각합니다.
  2. In a Firefox extension, how can I copy rich text/links to the clipboard?
  3. 3 FireFox Addons to Easier Copy Links and Anchor Texts - 나열된 확장 중에 그들이 마우스 오른쪽 버튼을 사용하여 움직임을 낭비 컨텍스트 메뉴 중 하나 개 또는 두 가지 수준 아래로 이동하도록 강요하기 때문에 내가하고 싶은 일을하지 않습니다.
  4. Copy Link Text (CoLT) - CoLT는 하이퍼 링크 복사를 지원하며 관련 텍스트를 서식있는 텍스트 형식의 링크로 지원하지만 기본 키 바인딩은 포함하지 않습니다. someone 다른 사람이 keyconfig를 CoLT에 연결하려고 시도하고 있는데, 해결책으로 옵션 일 수 있습니다.
  5. Copy URL Plus - 클립 보드 로직이있는 것처럼 보이지만 Firefox 1.x 이후로 유지 관리 된 것처럼 보이지 않습니다.

답변

2

나는 내 자신의 질문에 대답하고있다 :

enter image description hereCTRL-SHIFT-F11 바인딩이 자동으로 keysnailkeyconfig 모두 동일한 파이어 폭스 브라우저에 설치되어있는 경우 작동이 중지됩니다. 나를위한 해결책은 내가 그것을 사용하지 않기 때문에 단지 keysnail을 제거하는 것이었다.

는 사실은 내 자신의 파이어 폭스 확장 기능을 쓸 필요가 없었다,하지만 난 keyconfig 확장에 바인딩 사본 Copy Link Text (CoLT) 확장에서 서식있는 텍스트 링크는 로 직접 적용 코드의 비트를 긁어 필요했다

  1. keyconfig 확장 프로그램을 설치하십시오.
  2. Firefox를 다시 시작하십시오.
  3. Firefox가로드되면 CTRL-SHIFT-F12을 입력하여 keyconfig 구성 메뉴를 불러 오십시오.
  4. 페이지 하단에서 새 키 추가 버튼을 클릭하십시오.
  5. 이름이 인 필드에는 Copy Rich Text Link to Current Page과 같은 적절한 이름을 입력하십시오. 자바 스크립트 코드의 다음 청크
  6. 유형 (필자는 Copy Link Text (CoLT) 확장 내부의 content/colt.js 파일 내부의 objCoLT.CopyBoth 기능에서 조각이 코드) : 좋아

    var url = content.document.location.href; 
    var text = content.document.title; 
    
    // Use the users selection instead of the title if text is selected: 
    var selection = document.commandDispatcher.focusedWindow.getSelection().toString(); 
    if (selection != "") 
    { 
        text = selection; 
    } 
    
    var richText = "<a href=\"" + url + "\">" + text + "</a>"; 
    
    var xfer = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable); 
    xfer.addDataFlavor("text/html"); 
    
    var htmlString = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString); 
    htmlString.data = richText; 
    xfer.setTransferData("text/html", htmlString, richText.length * 2); 
    
    var clipboard = Components.classes["@mozilla.org/widget/clipboard;1"].getService(Components.interfaces.nsIClipboard); 
    clipboard.setData(xfer, null, Components.interfaces.nsIClipboard.kGlobalClipboard); 
    
  7. 을 클릭합니다.

  8. 메인 Keyconfig 대화 상자에서 버튼의 왼쪽 텍스트 필드에 <disabled>이 표시되어야합니다.
  9. 해당 텍스트 필드를 클릭하고 연관시킬 키 바인딩을 입력하십시오 (예 : CTRL-SHIFT-F11).
  10. 버튼을 클릭하십시오.
  11. 닫기 버튼을 클릭하여 Keyconfig 구성 대화 상자를 닫습니다. ,

    1. 을 Firefox에서 어떤 임의의 페이지로 이동 :

  12. 는 다음과 같이 진행이를 테스트합니다.
  13. CTRL-SHIFT-F11 (또는 위에서 선택한 키 바인딩)을 입력하십시오.
  14. 대화 상자 팝업이 표시되지 않습니다. 그것은 의도적 인 것입니다.
  15. Google 문서를 열고 새 문서를 만듭니다.
  16. 새 문서를 클릭하고 CTRL-V을 입력하십시오.
  17. 붙여 넣은 링크의 HTML/서식있는 텍스트 형식을 볼 수 있습니다.
  18. Change의 왼쪽에있는 URL을 클릭하십시오.
  19. 브라우저는 해당 URL에 해당하는 원래 페이지를 열어야합니다.