Google Dokümanlar'da yüzlerce URL'yi tıklanabilir hale getirme


10

Çok sayıda URL içeren dokümanları Google Dokümanlar'a taşıyorum. Her birinin ardından Enter tuşuna basarsam, bağlantı tıklanabilir hale gelir. Ancak tüm URL'leri (http: // veya https: // ile başlayan metin) tıklanabilir hale getirmenin bir yolunu arıyorum.

Çalıştırabileceğim bir makro, eklenti veya komut dosyası var mı?

Yanıtlar:


8

Google Apps Komut Dosyalarını kullanma konusunda biraz araştırma yaptım ve ihtiyaçlarım için çalışan bu komut dosyasını buldum. Umarım başka biri için de faydalıdır.

function onOpen() {
  DocumentApp.getUi().createAddonMenu()
    .addItem('Make URLs Clickable', 'makeUrlsClickable')
    .addToUi();
}

function makeUrlsClickable() {
  var urlRegex = 'http[s]?:\/\/[^ ]+';
  var body = DocumentApp.getActiveDocument().getBody();
  var urlElement = body.findText(urlRegex);  

  while (urlElement != null) {    
    var urlText = urlElement.getElement().asText();

    var startOffset = urlElement.getStartOffset();
    var endOffset = urlElement.getEndOffsetInclusive();

    urlText.setLinkUrl(startOffset, endOffset, getOnlyUrl(urlText.getText()));

    urlElement = body.findText(urlRegex, urlElement);
  }
}

function getOnlyUrl(text) {
  var startOffset = text.indexOf('http');
  var endOffset = text.indexOf(' ', startOffset);

  if (endOffset === -1) {
    endOffset = text.length;
  }

  return text.substring(startOffset, endOffset);
}    

-1

Bu eğitimi izledim: YouTube Bağlantısı

İçeriğini özetlemek için: Elektrikli El Aletleri Eklentisi'nden Başlat işlevini kullandı . Videoda ve sayfanızda göreceğiniz gibi, bir URL'ye sahip hücreyi düzenler ve bağlantıdan sonra bir boşluk daha yazar ve ardından hücre düzenlemenizi sonlandırırsanız, bağlantı tıklanabilir olarak görünür. Dolayısıyla kullanılan fonksiyon bu 'modifikasyonu' toplu bir yaklaşımla yapar. Benim için gerçekten iyi çalıştı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.