1 puan yazan GN⁺ 5 시간 전 | 1 yorum | WhatsApp'ta paylaş
  • Geleneksel kes ve yapıştır, metin taşımayı iki ayrı işleme böldüğü için tam geri alma mümkün değildir ve belgenin akışını da gereksiz yere değiştirir
  • Kesme işlemini geri alsanız bile üzerine yazılan pano içeriği geri gelmez; pano yöneticisi kullansanız da tek bir tuş vuruşunun yarattığı tüm değişiklikleri geri alamazsınız
  • Metin anında kaybolup belge reflow yaşadığı için yapıştırılacak yeri yeniden bulmanız gerekir; taşımanın tamamını geri almak içinse en az iki kez geri alma gerekir
  • Roman editörü Ishmael'in Ghost Cut özelliği, Ctrl+X ile seçili alanı soluk ve devre dışı hale getirdikten sonra, yapıştırırken onu özgün konumundan kaldırıp yeni konuma taşıyan tek bir atomik işlem gerçekleştirir
  • Ghost Cut, panonun üzerine yazmaz ve tüm taşımayı tek seferde geri alabilir; ancak yalnızca geleneksel şekilde kesmek isterseniz kopyalayıp ardından Backspace tuşuna basmanız gerekir

Geleneksel kes/yapıştır nasıl çalışır

  • Kes/yapıştır, seçili metni belgeden çıkarıp panoya koyan kesme ile başka bir konuma ekleyen yapıştırma işlemlerinin birleşimidir
  • Bu, metni bir yerden başka bir yere taşıyan tek bir işlem gibi algılansa da, editörde gerçekte birbirinden ayrı iki işlem olarak ele alınır

Geleneksel kesmenin üç kusuru

  • Geri alma panoyu geri getiremez

    • Kesmeden sonra Ctrl+Z veya Command+Z tuşuna bastığınızda belgedeki metin geri gelir, ancak üzerine yazılan pano içeriği geri dönmez
    • Pano yöneticisi kullansanız bile, tek bir tuş vuruşunun yaptığı tüm değişiklikler temiz biçimde geri alınmış olmaz
  • Orijinal metin silinince belge anında yeniden düzenlenir

    • Metni kestiğiniz anda geriye kalan içerik yukarı çekilir ve belgedeki satırlar ile konumlar yeniden düzenlenir
    • Çoğu kes/yapıştır işleminin amacı metni taşımaktır, ancak yapıştırılacak noktayı bulmadan önce ekran değişir ve konumu yeniden bulmanız gerekir
    • Yük küçük olabilir ama gereksiz bir bilişsel maliyet yaratır
  • Taşıma atomik bir işlem olarak ele alınmaz

    • Yapıştırmayı geri aldığınızda yalnızca yeni konuma eklenen metin kaldırılır; onu özgün yerine döndürmek için bir kez daha geri alma yapmanız gerekir
    • Kesme ile yapıştırma arasında yeni paragraf oluşturma gibi düzenlemeler varsa, özgün kesme işlemine dönmek için önce bunları sırayla geri almanız gerekir
    • Kavramsal olarak tek bir metin taşıma olsa da düzenleme geçmişinde birden çok adıma bölünür

Ghost Cut nasıl çalışır

  • Ishmael içinde Ctrl+X tuşuna bastığınızda seçili metin soluklaşır ve devre dışı hale gelir, ancak belgede yerinde kalır
    • Bu alana tıklanamaz ve imleç de üzerinden atlar
    • Bu aşamada panoya hiçbir şey kaydedilmez ve geri alınacak bir işlem de oluşmaz
    • Escape tuşuna basarsanız metin yeniden düzenlenebilir hale gelir
  • Ctrl+V veya Command+V tuşuna bastığınızda soluk alan özgün konumundan kaldırılır ve imlecin bulunduğu yere taşınır
    • Taşımanın tamamı tek bir atomik işlem olduğu için tek bir geri alma ile geri döndürülebilir
    • Bu, Excel'de kesilmiş hücrelerin soluk gösterilmesine benzer, ancak metin editörlerinde aynı yaklaşıma pek rastlanmaz
  • Geleneksel kesme davranışı gerekirse Ctrl+C veya Command+C ile kopyalayıp ardından orijinal metni Backspace ile silmeniz gerekir
  • Kod editörlerinde belge reflow sorunu daha az olduğu için ihtiyaç görece düşüktür, ancak VSCode için sunulsa açıp kullanmaya değer olur

1 yorum

 
GN⁺ 5 시간 전
Hacker News yorumları
  • X11'in seçim/yapıştırma davranışına müdahale edilmemesini isterdim. Artık eskisi gibi kullanmak için Shift'e basıp basmamak gerektiği her seferinde şansa kalmış durumda
    Kopyalama ve yapıştırmada hem fareyi hem klavyeyi kullanmayı gerektiren seç → Ctrl+C → tıkla → Ctrl+V yöntemi barbarca; X11'in doğru yaptığı şeyi modern uygulamalar bozuyor

  • Kes ve yapıştır üç ayrı işlemden oluşur; kesme, kopyalama ve silmeden oluşur. Geri al, kopyalamayı geri çevirmediği gibi kesmenin pano içeriğini de geri çevirmemelidir; ben her gün kesip geri aldıktan sonra birden çok kez yapıştırma yöntemini kullanıyorum
    Ghost Cut'ta birden çok kez yapıştırıldığında ne çıkması gerektiği, geri alma için editörün daha yapıştırma bile yapılmadan panoyu okuyup okumaması gerektiği ve içinde gizli anahtar varsa bunun Copilot benzeri eklentilere açığa çıkıp çıkmayacağı belirsiz
    Dosya gezginindeki kesme aslında kaynak ve hedefi sırayla belirleyen bir taşıma işlemidir; dosya sistemi panosu diye bir şey de yoktur ve birden fazla yere yapıştırma ihtiyacı da nadirdir. Önerilen anlambilimin kötü olduğunu söylemiyorum; ama ayrı bir kısayolla metni soluk gösterip sonra atomik olarak taşıyan bağımsız bir özellik daha temiz olurdu

    • Kesme ve yapıştırma tek bir atomik işlem olmalı. Birden çok kez yapıştırmak istiyorsan kopyalarsın
      Kesmeyi geri alırken yan etkileri geri çevirmemek temel bir kusurdur; geri al, koşula göre birkaç adım geri gitmek değil, sistemi önceki durumuna döndürmek zorunda
    • Metin editörlerine kullanışlı bir atomik taşıma özelliği önermek mantıklı, ama kişisel olarak buna çok ihtiyaç duymuyorum
    • Metni soluk gösterip sonra istenen yere taşımak, macOS'taki sürükle ve bırak ile fiilen aynı şey
    • macOS Finder'da ⌘+C ile dosya kopyalayıp hedefte ⌘+⌥+V ile taşımak ya da ⌘+V ile kopyalamak akışının neden eleştirildiğini anlamıyorum. İşlem hedefte belirlendiği için en sezgisel yöntem bu
      Windows da kesilen dosyaları soluk gösterip yapıştırıldığında taşıyarak dosya kaybını önlüyor, ama bu kadar iyi kullanıcı deneyimi yeterince takdir edilmiyor
    • Bir şeyi birden çok kez yapıştırıyorsan aslında kopyalamak istemişsindir diye düşünüyorum. Hiçbir zihinsel model mutlak olarak doğru değildir; kesme kopyalama ve silmeyse bunu doğrudan kopyalayıp sonra silerek de yapabilirsin, Vim ve Emacs'te ise sadece silmen yeterli
  • Ghost Cut, Excel'in kes/yapıştırmasına neredeyse aynı ve panoyu hiç kullanmıyor bile olabilir. Genel yazılımlar bunu kopyala-yapıştırmaya silme eklenmiş hali olarak görürken, yazar ve Excel bunu belge içinde içeriği taşıma olarak görüyor
    Ghost Cut'ın hedefinin tam olarak bir tane olması ve aynı program ya da belge içinde bulunması gibi kısıtları var. Yine de mevcut kesme zaten sonuçta kopyala-yapıştırmanın bir varyantıysa, Kopyala sonra Backspace ile aynı etki elde edilebildiğinden Ghost Cut'a geçilse de çok şey kaybedilmiş olmaz gibi görünüyor

    • IDE'de seçim yapmadan imleci satırın herhangi bir yerine koyup kesmeye basarak bunu sık sık satırın tamamını silmek için kullanıyorum. Sol elle basması kolay bir kısayol; Ghost Cut bu kullanım şeklini bozuyor
  • Varsayılan kesme davranışının yazarın kişisel zihinsel modeliyle uyuşmaması onu kusurlu yapmaz. Yanlışlıkla kesildiyse çoğu zaman aslında kopyalamak istenmiştir; dolayısıyla metni panoda bırakmak mantıklı bir tasarım
    Çoğu kişi geri almayı dosya değişikliğini iptal etmek olarak anlar, dosya ve işletim sistemi durumunu birlikte geri almak olarak değil. Yapılandırılabilir kesme düşünülebilir, ama çoğunluktan çok azınlığa hitap eden bir alternatif olur

    • Bu davranışı kusur olarak görmüyorum ama eksilerini işaret edip alternatif önermesini takdir ediyorum. Bir şeyi kesip panoya koyduktan sonra sadece değişikliği geri alıp içeriği kullanmaya devam ettiğim panonun korunması davranışını oldukça sık kullanıyorum
    • Metni kesip ya da kopyalayıp birkaç adım geri aldıktan sonra yeni bir yere yapıştırmayı tercih ediyorum. Önerilen şekilde, geri almadan önce geçici bir dosyaya yapıştırmak gibi ara adımlar eklenmiş oluyor
  • Kesme, uygulamadan ayrı bir uygulama olan panoya metin taşıma işlemidir. A uygulamasını değiştirip sonra B uygulamasında geri alınca A'nın da değişmesini beklemediğimiz gibi, geri almanın panoyu etkilemesini de beklemem
    Ghost Cut Excel'e benziyor ve bu yüzden sık sık şaşırtıyor. Excel'de hücre kopyalayıp düzenledikten sonra yapıştırmaya çalıştığınızda, kopyalamanın aslında gerçek değer değil seçim alanına referans olduğu ve o alan değiştiği ya da geri alındığı için hiçbir şey yapıştıramadığınız durumlar olabiliyor

  • Sıfırdan tasarlanacaksa mevcut kes/yapıştırmaya yönelik eleştiri mantıklı. Ama kesme ve yapıştırma iki ayrı işlem olduğundan tek bir geri alma ile ikisini birden geri çevirmek gerektiğini savunmak tuhaf
    Bu, komutun tek bir CUTANDPASTE mi yoksa iki ayrı CUT ve PASTE mi olduğu sorusundaki RISC/CISC tarzı tercihe benziyor

  • Beklenen davranış değiştirilmemeli. Excel benzer davranıyor ama istenen şekilde çalışmadığı için çok rahatsız edici
    Kesme, anında panoya gitmeli ki başka programlara da yapıştırılabilsin; az sayıdaki kullanıcı için iyileştirme uğruna çoğunluğun beklentisini ve normal akışını bozmanın değeri yok

    • Yapıştırılmayan metin sürekli soluk mu kalacak, başka bir uygulamada yeni metin kopyalanırsa soluk metin mi yoksa yeni pano içeriği mi yapıştırılacak gibi çok fazla sınır durum ortaya çıkıyor
      Ctrl+X panoyu değiştirmiyorsa başka programlara da yapıştırılamaz. İdeal akıştan çıkıldığında doğan dertlere kıyasla getirisi çok küçük
  • Bu bakış açısı serbest ama katılmak zor. Hatta önce, seçili öğeyi kopyalamaya çalışırken site ya da uygulamanın sözde yardımcı olup bambaşka bir içerik koyduğu kopyalama ele geçirme sorununu çözseler daha iyi olurdu
    URL kopyalarken tarayıcının kafasına göre https:// eklemesini de istemiyorum

  • Windows Explorer da dosya keserken buna benzer davranıyor ama panoya da yazıyor
    Ghost Cut da sadece mevcut davranışı farklı bir şekilde bozuyor; ama yazarın zevkine uyduğu söylenebilir. Yine de kes/yapıştır sistem genelinde ve uygulamalar arası bir özellik olarak tasarlanmamış olsaydı diğer uygulamaların nasıl evrileceğini düşündüren ilginç bir fikir

  • Bu yaklaşımı seveceğimi sanmıyorum. Benzer davranan Excel, kesme-kopyalama-yapıştırma konusunda en sevmediğim uygulama

    • Bence Excel bazı kusurlarına rağmen çoğu kullanıcı için çok iyi tasarlanmış. Yalnızca hücre içeriği değil, hücre referansları da olduğu için kesme ve kopyalama ince biçimde farklı davranıyor
      Kesme genelde tek yapıştırmayla biten atomik bir taşıma olduğundan, taşınan alanın içindeki ya da dışındaki ve göreli ya da mutlak oluşuna bakılmaksızın ilgili tüm referanslar güncelleniyor. Yapıştırdıktan sonra göstergenin kaybolup ikinci kez yapıştırılamaması da bundan
      Buna karşılık kopyalamada yalnızca kopyalanan hücreler arasındaki göreli referanslar güncelleniyor; mutlak referanslar ya da kopyalanmayan hücrelerin referansları değişmiyor ve birden çok kez yapıştırılabiliyor. Aralık referansları da düşünülünce bunun bu kadar beklenir şekilde çalışması başlı başına şaşırtıcı; kaynak alanı değiştirdiğinizde işlemin iptal olması kısıtı da anlaşılabilir. Bu yüzden Excel'de kopyala sonra sil, kesme ile aynı işlem değil
    • Excel sanki niyetime göre her seferinde kopyalama-kesme-yapıştırmanın en kötü biçimini seçiyormuş gibi hissettiriyor. Gerçekte öyle değildir belki ama bana birçok açıdan çok sezgisiz geliyor
    • Excel'de önce kopyalayıp yapıştırıyor, sonra kaynağı siliyorum. Normal kes/yapıştır, yapıştırma konumuna referans veren formülleri bozduğu için böyle yapıyorum
      Varsayılan kesme korunmalı, özel taşıma işlemi ise Ctrl+Shift++ kısayoluna atanmalıydı
    • Yaklaşık yarısında zaten düzgün çalışmıyor