2 puan yazan GN⁺ 2024-03-10 | 1 yorum | WhatsApp'ta paylaş
  • Monodraw, diyagramları, akış şemalarını ve veri yapılarını düz metin olarak çizip teknik belgeler ve kod içinde doğrudan okunabilir hale getiren bir Mac ASCII sanat editörüdür
  • Çıktı metin olduğu için kopyalayıp yapıştırmak kolaydır; gerektiğinde PNG ve SVG dışa aktarma ile görsel biçiminde de üretilebilir
  • Zihin haritaları, ER diyagramları ve afiş oluşturmaya kadar destek sunarak basit metin düzenlemeden çok dokümantasyon amaçlı görselleştirmeye odaklanır
  • FIGlet ve varsayılan 148 font, çizgi, dikdörtgen, hizalama kılavuzları, gruplar ve kısayollar gibi tekrar eden metin sanatı işlerini azaltan özellikler sunar
  • macOS 11 Big Sur ve sonrası gerekir; komut satırı araçları doğrudan web sitesinden indirilen ve mağazadan satın alınan sürüme dahildir

Metinle çizim yapan Mac görselleştirme aracı

  • Monodraw, Mac'te ASCII sanatı oluşturmak için bir editördür
  • Diyagramlar, yerleşimler ve akış şemaları gibi yapıları metin tabanlı olarak hazırlayabilirsiniz
  • Algoritmalar, veri yapıları ve ikili biçimler gibi yalnızca kodla anlaşılması zor olan şeyleri görsel olarak düzenlemek için kullanılır
  • Çıktı düz metin olduğu için belge, kod ve spesifikasyonların içine neredeyse olduğu gibi eklenebilir
  • Görsel gerektiğinde PNG ve SVG olarak dışa aktarılabilir

Teknik belgeler ve veri modellerini ifade etme

  • Kod ve spesifikasyonlarda yer alan metin diyagramları, yapının hızlıca anlaşılmasına yardımcı olur
  • Veri yapılarının, algoritmaların ve veri biçimlerinin görselleştirilmesi, okuyan kişinin ilişkileri ve akışı kavraması açısından önemlidir
  • Kod, yazılmasından daha uzun süre okunduğu için metin diyagramları bakım ve inceleme süreçlerinde faydalı olabilir
  • Zihin haritaları

    • Düz metnin sadeliğini zihin haritası yaklaşımıyla birleştirir
    • Sonsuz tuval üzerinde metni istediğiniz konuma taşıyabilirsiniz
    • Metin dosyalarının doğrusal yapısına bağlı kalmaz
  • ER diyagramları

    • Veri modelini basit varlık-ilişki diyagramlarıyla görselleştirir
    • Crow’s Foot gösterimini 3 farklı varyasyonla destekler

Metin sanatı üretim özellikleri

  • Afişler tek tıklamayla oluşturulabilir
  • FIGlet yerleşik olarak gelir ve varsayılan olarak 148 font içerir
    • Özel fontlar da desteklenir
    • Metin kutusu boyutlandırma, font değiştirme ve hizalama ayarı işlemleri terminal olmadan etkileşimli şekilde yapılabilir
  • Metin aracı, CoreText tabanlı özel bir metin motoruyla çalışır
    • Hizalama, konum, satır ilerleme yönü ve satır kaydırma ayarlanabilir
    • Tek tıklamayla metnin etrafına kenarlık eklenebilir
  • Çizgi aracı, şekiller arasında bağlantı kurmayı kolaylaştırır ve ortogonal çizgiler ile basamaklı çizgileri destekler
    • Çizginin kesikli desenini ayarlayabilirsiniz
    • Bağlantı noktaları sayesinde çizgiler diğer şekillere dinamik olarak bağlanabilir; böylece şekilleri taşıdıktan sonra yeniden yerleştirme zahmeti azalır
  • Dikdörtgen aracı, metin sanatında sık kullanılan kutuları oluşturmak için vardır
    • Kenarlık ve arka plan birkaç tıklamayla ayarlanabilir
    • Gölge eklenebilir
    • Özel bağlantı noktalarıyla çizgiler tam istenen konuma bağlanabilir

Tuval üzerindeki işi azaltan yardımcı özellikler

  • Varsayılan çizim araçları olarak Pencil, Eraser, Bucket Fill ve Picker sunulur
    • Görseller, iz sürme amacıyla tuvalin üzerine bindirilerek kullanılabilir
  • Grup özelliği, birden fazla şekli tek bir yapı altında toplayarak kopyalama ve taşımayı kolaylaştırır
  • Hizalama kılavuzları, içerik yerleştirme ve yeniden boyutlandırma sırasında karakterleri tek tek sayma ihtiyacını ortadan kaldırır
  • Odak özelliği, tuvalin belirli bir bölümüne yoğunlaşırken diğer şekilleri kilitlemenize veya gizlemenize olanak tanır
    • O anda görünen öğelere odaklanmak için yakınlaştırma yapılabilir
  • Tüm özelliklere klavye kısayollarıyla erişilebilir
    • Araçlar, yardımcı tuş olmadan tek tuşla hızlıca seçilebilir

macOS desteği ve komut satırı aracı koşulları

  • Monodraw, metin yerleşim motorundan arayüze kadar macOS için yerel bir uygulama olarak tasarlanmıştır
  • Metin sanatı, kopyalanıp istenen metin editörüne yapıştırılarak dışa aktarılabilir
  • Sistem gereksinimi macOS 11 Big Sur ve sonrasıdır
    • Daha eski macOS sürümlerinde Monodraw v1.3 kullanılabilir ve macOS 10.10 Yosemite veya sonrası gerekir
    • Monodraw v1.5 için macOS 10.14 Mojave veya sonrası gerekir
  • Komut satırı arayüzü yalnızca doğrudan indirilen sürümde bulunur
    • Web sitesinden doğrudan indirilen ve mağazadan satın alınan sürüme dahildir
    • Mac App Store sürümünde App Sandbox kısıtlamaları nedeniyle komut satırı aracı yer alamaz
    • Sürüm kontrolü hook'ları kullanılarak commit sırasında belgeleri otomatik üretmek gibi amaçlarla kullanılabilir
    • JSON çıktısı da desteklenir, bu da programatik kullanımını kolaylaştırır
  • Monodraw, hiçbir veri toplamadığını belirtir

1 yorum

 
GN⁺ 2024-03-10
Hacker News yorumları
  • Sonunda hep Monodraw'a geri dönüyorum
    Diğer uygulamalarda o kadar çok özellik ve stil seçeneği var ki asıl içeriğe odaklanmak zorlaşıyor; Monodraw ise dikkati dağıtmıyor
    Yine de epey şey yapmaya yetecek kadar özelliği var; özellikle anchor'ları seviyorum: https://tamasruss.com/articles/monodraw-anchors

    • Diğer uygulamaların içeriğe odaklanmayı engellediğini söyleyip Monodraw'da duyarlı ayırıcı çizgiler ve anchor noktalarıyla uğraşmanın sorun olmaması biraz ironik
      Yine de tekniğin kendisi temiz
    • Sınıflar için UML kutuları gerçekten kullanışlı, öğretici anlatım da iyi
  • Bu araç gerçekten sevdiğim uygulamalardan biri; çıktığında hemen parasını ödedim
    Bu tür dokümantasyonlarda birkaç kez kullandım: https://github.com/ivank/potygen/blob/main/packages/potygen/...
    ASCII o kadar çok yönlü ki, beklenmedik yerlere hoş görünen çizimler ekleyip anlamayı kolaylaştırabiliyor

    • Şu köşeler Unicode blok karakterleri gibi görünüyor
    • Bu örnek, yazılımın cazibesini hemen gösteren harika bir çizim; insana doğrudan inceleme isteği veriyor
      1. satırdaki "With Expression" diyagramı emacs'te iyi görünüyor ama gerçek bağlantıyı chrome'da açınca sağ tarafın tamamı bozuk görünüyor
        Karakterlerde sorun yok; github'ın yazı tipi seçimi uzantı kısmındaki “anlamlı boşlukları” iyi işleyemiyor gibi
    • Göstermek istediğin satırları seçip o konuma bağlantı vermek daha iyi olur
  • Web tabanlı metinden diyagrama araçları listesi tutuyorum: https://xosh.org/text-to-diagram/
    Bu tür ASCII çizim araçlarının web alternatifleri arasında https://fsymbols.com/draw/, https://textik.com/, https://asciiflow.com/#/, https://web.archive.org/web/20210503172024/https://fatiherik..., https://app.monosketch.io gibi seçenekler var

    • Listeye Pikchr'ı da eklemeyi değerlendirebilirsin
      SQLite'ın geliştiricisi tarafından yapılmış bir araç: https://pikchr.org/home/doc/trunk/doc/userman.md
    • Yakın zamanda elle yaptığım diyagramlara göre, bu listedeki araçlar istediğim işlevlerin hepsine sahip değildi
      Listede çapraz çizgileri işleyen tek araç https://textik.com/ gibi görünüyor; onda da doldurma özelliği yok gibi
      Çizmeye çalıştığım diyagram da şu biçimdeydi: https://pastebin.com/NPXFS1Fi
      textik.com'da kutu ve üçgenleri oluşturdum ama birçok köşeyi elle düzeltmem ve iç kısımları da kendim doldurmam gerekti
      Monodraw sadece 10 dolar olsa bile Mac'e özel yerel uygulama olduğu için para verir miyim bilmiyorum
      Web'de çok çalışıyorum ve birden fazla cihaz kullanıyorum; diyagramı da yılda sadece birkaç kez çizdiğim için web tabanlı bir araç ya da VSCode eklentisi daha iyi görünüyor
    • https://fmhy.net üzerindeki listelere de bakmaya değer
      İlginç araçlar olabilir
    • Listeye eklenebilecek araçlardan biri de https://mbarkhau.github.io/asciigrid
    • Birkaç yıl önce basit bir araç yapmıştım ve hâlâ https://letterbrush.com adresinde barındırılıyor
  • Bu aracı gerçekten seviyorum
    Mapless diyagramları hazırlamak için kullandım: https://sebastianconcept.github.io/Mapless/guides/2024/01/28...
    Ayrıca Pharo VM Plugin builder yapılandırmasının dokümantasyonu için de kullandım: https://github.com/sebastianconcept/PharoPluginBuilder

    • ASCII çizim aracıyla metin diyagramı yapıp sonra bunun ekran görüntüsünü alarak web sitesine koymuşsun gibi mi?
      Birkaç dikdörtgen çizmek için fazla dolambaçlı bir yöntem gibi görünüyor; daha kolay bir yol yok mu?
    • Kaynak kodu dokümantasyonu için kullanıyorum; kodun içinde buffer veya struct yerleşimlerini görselleştirebilmek çok iyi
  • Bunun çapraz platform olması harika olurdu
    Linux'ta da kullanmak isterdim
    Yüksek kaliteli bir uygulama yapmanın gerektirdiği emeği anlıyorum ama masaüstü uygulama araçlarının Linux, Windows ve Mac'i daha iyi hedeflemesini isterdim
    Web tabanlı uygulamaların artmasının büyük nedenlerinden biri de muhtemelen bu

    • Masaüstü uygulamalarında Qt'nin daha fazla kullanılmaması biraz şaşırtıcı
      Bu tür uygulamalara gerçekten çok uygun
  • Harika bir araç
    Web sürümü alternatifi olarak bir arkadaşımın Kotlin ile yaptığı https://github.com/tuanchauict/MonoSketch var
    Ben de Rust ile daha az tamamlanmış bir sürüm yapmıştım: https://github.com/huytd/ascii-d

  • Güzel görünüyor
    https://asciiflow.com/ web tabanlı bir alternatif ve 10 yıldır ağırlıklı olarak kullandığım araç

    • ASCIIFlow’u her zaman kullanıyorum
      Ancak tarayıcıda sabit genişlikli yazı tipini düzgün render ettirmenin yolunu hâlâ çözemedim
      Bu sayfadaki örnek diyagramlara bakabilirsiniz: http://uggly.bytester.net/#how-it-works
    • Bu tür diyagramlardaki metinler ekran okuyucular tarafından okunamıyor gibi görünüyor
  • Bu araç, ara sıra kullanılsa bile satın alıp elinizde tutacağınız türden bir uygulama

    • Uzun zamandır kullandığınız için mi böyle dediğinizi, yoksa seveceğiniz türden bir yazılım olduğunu mu tahmin ettiğinizi merak ediyorum
      Bizzat kullandıysanız, oluşturduğunuz diyagramları nasıl değerlendirdiğinizi de duymak isterim
      Diyagram ekran görüntülerini hayal edebiliyorum ama ham metin, terminal gibi yerlere koymak için fazla büyük olacak gibi
    • Web sitesi tasarımı da sade ve temiz
  • Bu uygulama 2018’de bakım moduna geçmişti; o zamandan beri değişen bir şey oldu mu? https://blog.helftone.com/monodraw-maintenance-mode/

    • Monodraw geliştiricisiyim
      Uygulamaya yönelik güzel tepkiler için teşekkürler
      Zamanım son derece kısıtlı olduğu için daha fazla güncelleme çıkaramıyorum
      Çok istenen birkaç özellik üzerinde çalışıyorum, ancak ne zaman yayımlanacağına söz veremem
      Genellikle tatillerde azar azar ilerletiyorum
      Yine de OS yükseltmelerinin yol açtığı bozulmaları düzeltmeye ve ürünün çalışır kalmasını sağlamaya devam etmeyi düşünüyorum
    • https://x.com/Monodraw adresine bakılırsa gerçekten güncellemeler olmuş gibi
    • FAQ’nun altındaki yanıt biraz tuhaf
      Açık kaynak bir projeyi sürdürmenin büyük bir yük olduğu ve bitmiş bir ürünü açık kaynak yayımlamanın, klonlarının tanımadığınız müşterilere satılmasına yol açabileceği gerekçe gösteriliyor
      Ama açık kaynak yayımlanırsa katkıda bulunanlar işin bir kısmını üstlenebilir ve belirli lisanslar bu tür klon satışlarını engelleyebilir
  • Eskiden denemiştim ve güzeldi
    Hatırladığım kadarıyla tek şikâyetim, anchor’lar veya yeniden boyutlandırılabilir kutular gibi hoş özellikleri korumak için kendi yerleşik dosya biçimini kullanmanız gerekmesiydi
    Markdown belgesindeki ASCII çizimine doğrudan işaret etmek, tüm özelliklerin otomatik olarak gelmesini sağlamıyor
    Gerçekten istenirse akıllı algoritmalar ve LLM ile bir ölçüde çözülebilir gibi; nitekim ASCII diyagram taslakları hazırlamak için LLM’i epey kullandım ve bir ölçüde başarılı oldum
    Ancak bakım yapılabilirlik, yani kutuları kutu olarak ele alıp taşıdığınızda bağlantı çizgilerinin de peşinden gelmesi, ile taşınabilirlik, yani her şeyin saf metin olması, arasında iyi bir dengeyi hâlâ bulamadım
    Güncel Monodraw farklıysa veya başka bir araç bunu çözüyorsa kesinlikle bilmek isterim
    En azından Monodraw bana Emacs’in artist mode’undan daha iyi uydu

    • İlginç bir bakış açısı
      Yönetmek istediğiniz çok sayıda mevcut diyagram olup olmadığını merak ediyorum
      Sıfırdan oluşturulacaksa böyle bir soyut dosya biçimi olmasını aksine beklerim; bunu PSD gibi bir kaynak dosya ile PNG gibi render edilmiş çıktı arasındaki ilişki gibi görmek isterim
      Ya da kaynak kod ile binary arasındaki ilişkiye de benziyor
      Çıktı artefaktını yeniden anlamlı bir soyut forma parse etmenin kusursuz biçimde yapılmasının zor olduğunu düşünüyorum