Katılım
4 Şubat 2024
Mesajlar
3.916
Makaleler
7
Çözümler
77
Beğeniler
6.444
Neredeyse her yerde inline kodlara çift veya üç kere tıklandığında hepsini seçebiliyoruz ve kolayca kopyalayabiliyoruz. Tam kod oluşturup konuyu gereksiz büyütmeden, küçük çaplı kodları kopyalamak için kullanışlı olur.

Örnek: chrome://flags veya str(int(OriginalViewportHeight)/700)&"em" bir çırpıda kopyalamak ne kadar zor fark ettiniz mi? Normalde forumlarda bu tarz kod bloklarına çift tıklayınca kodun tümü seçilir.
 
Çift/üç kere tıklamak yerine kopyalamak istediğim kısmı başından sonuna sol tıka basılı tutarak vurgulamak oldukça kolayıma geliyor. Sizin sunduğunuz örnekler için bu işlem 1 saniyemi alıyor. Çok yavaş olsam en fazla 2-3 saniye sürüyor.

Çok gerekli gördüğüm bir öneri değil ama gelse de bir zararı olmaz tabii ki.

Ayrıca, bu işlev nasıl sağlanır? Merak ettim.
 
Çift/üç kere tıklamak yerine kopyalamak istediğim kısmı başından sonuna sol tıka basılı tutarak vurgulamak oldukça kolayıma geliyor. Sizin sunduğunuz örnekler için bu işlem 1 saniyemi alıyor. Çok yavaş olsam en fazla 2-3 saniye sürüyor.

Çok gerekli gördüğüm bir öneri değil ama gelse de bir zararı olmaz tabii ki.

Ayrıca, bu işlev nasıl sağlanır? Merak ettim.
Sürekli kopyala yapıştır yapmak çok zorlar bir sürü olunca. İşlev basit JS ile sağlanır :D
 
Sürekli kopyala-yapıştır yapmak çok zorlar bir sürü olunca.

Böyle bir senaryoyla hiç karşılaşmadım açıkçası: Bir sürü satır içi kod var ve sadece bu kodları kopyalamam gerekiyor. Çok nadir yaşanır gibi.

Yine de dediğim gibi, gelmesinin bir zararı olmaz.
 
Kod bloklarına kodu kopyalamak için şu şekilde bir tuş eklense daha mantıklı olabilir.
Unauthorized XenForo host: https://xenforo.com/community/resources/6570Eklenti uzun süredir güncellenmiyor, örnek amacıyla koydum.
 
Kod bloklarına kodu kopyalamak için şu şekilde bir tuş eklense daha mantıklı olabilir.
Unauthorized XenForo host: https://xenforo.com/community/resources/6570Eklenti uzun süredir güncellenmiyor, örnek amacıyla koydum.
Normal kodlarda var zaten bu. Inline kodlar için de standart olan şey iki veya üç tıklamada hepsinin seçilmesi. Bu zaten yapılan bir şey birçok sitede vardır.
 
Yapımına ilişkin önerilerinizi alabilirim, bizzat kendim kodlarım. Basit JS kodlarından bir bahsedin bakalım :)
 
Yapımına ilişkin önerilerinizi alabilirim, bizzat kendim kodlarım. Basit JS kodlarından bir bahsedin bakalım :)
Boilerplate olması için şu anki satıriçi kod bloğunun kodu var mı elinde? Veya öyle bir şey, onun üzerine çalışmak için?

PAGE_CONTAINER şablonunda olabilir mi bu kısım?

Şu anda direkt konsola bunu yapıştırdığımda çalışıyor. Daha robust bir yöntem bulunabilir mi acep.

JavaScript:
    document.querySelectorAll('code').forEach(function(codeBlock) {
        codeBlock.addEventListener('dblclick', function() {
            const selection = window.getSelection();
            const range = document.createRange();
            range.selectNodeContents(codeBlock);
            selection.removeAllRanges();
            selection.addRange(range);
        });

        codeBlock.addEventListener('click', function(event) {
            if (event.detail === 3) {
                const selection = window.getSelection();
                const range = document.createRange();
                range.selectNodeContents(codeBlock);
                selection.removeAllRanges();
                selection.addRange(range);
            }
        });
    });

Konsola yapıştırınca attığım gibi. Şablonda yapılacaksa muhtemelen bir event listener içine alacaksın. 'DOMContentLoaded'
 
Son düzenleme:
JavaScript:
    document.querySelectorAll('code').forEach(function(codeBlock) {
        codeBlock.addEventListener('dblclick', function() {
            const selection = window.getSelection();
            const range = document.createRange();
            range.selectNodeContents(codeBlock);
            selection.removeAllRanges();
            selection.addRange(range);
        });

        codeBlock.addEventListener('click', function(event) {
            if (event.detail === 3) {
                const selection = window.getSelection();
                const range = document.createRange();
                range.selectNodeContents(codeBlock);
                selection.removeAllRanges();
                selection.addRange(range);
            }
        });
    });
  1. querySelectorAll('code') yerine querySelectorAll('code.bbCodeInline') daha sağlıklı olacaktır. Öbür türlü blok kodlarda da çalışıyor bu. Blok kodlarda bu özellik hoş olmaz diye düşünüyorum.

  2. Hem çift hem de üç tıklamada çalışması yerine sadece çift tıklamada çalışabilir. Üç tıklamada da çalışınca tüm paragrafı seçeceğine gidip yine sadece kod kısmını seçiyor.
    Sinirimi bozdu benim. : D

  3. Editörün ön izleme butonunu kullanmak, yeni elementler oluşturuyor. Mesaj yazarken bile bu özelliğin kullanımı mümkün kılınmak istenirse bir kere çalıştırmak yetmez.