Seleccione y copie parte del texto de un enlace en Safari

1

¿Cómo puedo copiar solo una sección de texto de un hipervínculo?

Al igual que en, si hay un enlace como el de abajo, ¿cómo puedo copiar solo una parte del texto que está vinculado?

  

Llámame Ishmael. Hace algunos años, sin importar cuánto tiempo, con poco o nada de dinero en mi bolso, y nada especial que me interese en la costa, pensé que navegaría un poco y vería la parte acuosa del mundo. Es una forma que tengo de sacar el bazo y regular la circulación.

Quiero copiar solo las palabras de "nada en particular" del texto anterior.

¿Cómo podría hacer eso?

En Chrome tenía una extensión que me permitía seleccionar enlaces como texto normal manteniendo pulsado shift.

Espero que haya una forma similar para que seleccione el texto de un enlace en Safari.

    
pregunta theonlygusti 22.03.2018 - 23:15

4 respuestas

0

Comencé a usar Tampermonkey, así que porté mi pequeña extensión a un script de usuario:

// ==UserScript==
// @name         Shift to select link text
// @namespace    http://theonlygusti.github.io/
// @version      1.0
// @description  Hold down the shift key to select text from within hyperlinks
// @author       theonlygusti
// @match        *://*/*
// @grant        none
// ==/UserScript==

(function() {
  'use strict';

  function bindNewAnchor(element) {
    element.addEventListener("mouseenter", function(event) {
      if (element.innerText) {
        if (event.shiftKey) setContenteditable(this);
        currentElement = this;
      }
    });
    element.addEventListener('keydown', function (event) {
      if (event.keyCode == 67 && event.metaKey) {
        document.execCommand('copy');
      }
    });
    element.addEventListener("mouseleave", function(event) {
      this.removeAttribute("contenteditable");
      currentElement = null;
    });
    element.addEventListener("keypress", blockEvent);
    element.addEventListener("paste", blockEvent);
    element.addEventListener("cut", blockEvent);
    allNodes.push(element);
  }

  function blockEvent(event) {
    event.preventDefault();
  }

  function setContenteditable(element) {
    element.setAttribute("contenteditable", "true");
    if (window.getComputedStyle(element, null).outlineWidth == "0px") {
      element.style.outlineWidth = "0px";
    }
  }

  var currentElement = null, allNodes = [];

  addEventListener("DOMNodeInserted", function(event) {
    if (allNodes.indexOf(event.target) == -1 && event.target instanceof HTMLAnchorElement) {
      bindNewAnchor(event.target);
    }
    if (event.target.querySelectorAll) {
      var element = event.target.querySelectorAll("a");
      for (var i = 0; i < element.length; i++) {
        if (0 > allNodes.indexOf(element[i])) bindNewAnchor(element[i]);
      }
    }
  });

  for (var elements = document.querySelectorAll("a"), i = 0; i < elements.length; i++) bindNewAnchor(elements[i]);

  window.addEventListener("keydown", function(event) {
    if (currentElement && event.keyCode == 16) {
      setContenteditable(currentElement);
    }
  });
})();

Mantén presionada la tecla Mayús y arrastra sobre los enlaces para seleccionarlos.

    
respondido por el theonlygusti 30.03.2018 - 14:06
0

En Safari esto no es directamente posible y no conozco una extensión especial para eso.

Una solución alternativa:

comience a seleccionar el texto detrás "circulación",
detenerse en "nada", (que se selecciona como texto sin formato y comienza su selección en el bit correspondiente)
ahora cmd + c

pega donde quieras

saltar al principio del párrafo salta dos palabras hacia adelante
borre el resto (forma rápida para eso, simplemente no en SE: ctrl + k o cmd Shift + flechas )

    
respondido por el LangLangC 23.03.2018 - 09:53
-1

La forma más sencilla es simplemente copiar todo, pegarlo en un documento TextEdit, convertirlo a texto sin formato y luego copiar exactamente lo que desea.

    
respondido por el l008com 23.03.2018 - 09:37
-1

Hice la extensión.

Debidoaquenoquieropagar$100porañoparaelprogramaDesarrolladordeApple,estaextensiónsedebevolveracargarcadavezquesereinicieSafari.

NuncaabandonéSafari,asíqueestoyasalvo;)

Parainstalarloyusarlo:

  1. Asegúresedeque'Mostrarmenúdedesarrolloenlabarrademenú'estéhabilitadoenlaspreferenciasdeSafari.

  • Clona mi extensión desde GitHub

    git clone https://github.com/theonlygusti/shift-to-select.git
    open -a Finder shift-to-select
    
  • Abra el Generador de extensiones, Desarrollar > Mostrar creador de extensiones.
  • Agregar una extensión.
  • Elija el que clonó de GitHub
  •     
    respondido por el theonlygusti 28.03.2018 - 21:49

    Lea otras preguntas en las etiquetas