10 Mart 2017 Cuma

LibreOffice İçerik Menüsü İyileştirmeleri - 3

LibreOffice Calc'da belgede iki boyutlu bir nesne varsa (çizgi gibi) bununla ilgili bir alan biçimlendirmesi işlemi yapmak mümkün olmadığı halde nesneye sağ tıklandığında alan (Area) komutunu görüyordunuz.

İlgili hata kaydı: https://bugs.documentfoundation.org/show_bug.cgi?id=90856

5.4.0 sürümünden itibaren 2 boyutlu nesnelerin içerik menüsünde "Area" komutunun görünmesini engellediğim yamayı buradan inceleyebilirsiniz.

LibreOffice İçerik Menüsü İyileştirmeleri - 2

İçerik menüsü (sağ tık menüsü) belge içinde bir nesneye sağ tıkladığınızda o nesneyle ilgili en sık kullanılan fonksiyonları barındıran menüdür.

LibreOffice'de belgeye bir dip not/son not (footnote/endnote) eklendiğinde bu bölümü biçimlendirmek için gerekli komut sağ tık menüsü içerisinden kullanılmaya uygun değildi.

İlgili hata kaydı: https://bugs.documentfoundation.org/show_bug.cgi?id=103258

Bu kullanıma uygun komutu yeniden yazdım. Mouse imleci bir dipnot/son not üzerindeyken sağ tıklayıp bu fonksiyonu kullanabilirsiniz. Bu iyileştirmeyi 5.4.0 sürümünden itibaren kullanabileceksiniz. İlgili yamayı buradan inceleyebilirsiniz.

İlgili 5.4. sürüm notunu buradan inceleyebilrisiniz

LibreOffice İçerik Menüsü İyileştirmeleri - 1

İçerik menüsü (sağ tık menüsü) belge içinde bir nesneye sağ tıkladığınızda o nesneyle ilgili en sık kullanılan fonksiyonları barındıran menüdür. (Elbette sizin en sık kullandığınız değil genel de en sık kullanıldığı tespit edilen fonsiyonlar)

LibreOffice'de belgeye bir bölüm (section) eklendiğinde bu bölümü biçimlendirmek için gerekli komut sağ tık menüsü içerisinden kullanılmaya uygun değildi.

İlgili hata kaydı: https://bugs.documentfoundation.org/show_bug.cgi?id=102132

Bu kullanıma uygun komutu yeniden yazdım. Mouse imleci bir section üzerindenyken sağ tıklayıp fonksiyonu kullanabilirsiniz. Bu iyileştirmeyi 5.4.0 sürümünden itibaren kullanabileceksiniz. İlgili yamayı buradan inceleyebilirsiniz.

İlgili 5.4. sürüm notunu buradan inceleyebilrisiniz


Çizim araç çubuğu iyileştirmeleri

LibreOffice Draw ve Impress bileşeninde kullanabildiğiniz ok araç çubuğu Writer ve Calc bileşenindeyken kullanılamıyordu.

İlgili hata kaydı : https://bugs.documentfoundation.org/show_bug.cgi?id=101390

Gönderdiğim yama ile 5.3.0 sürümünden itibaren bu araç kutusunu Writer ve Calc bileşenlerinde kullanmanız da mümkün.

Yama serisini buradan inceleyebilirsiniz:
1- https://gerrit.libreoffice.org/#/c/28363/
2- https://gerrit.libreoffice.org/#/c/29021/
3- https://gerrit.libreoffice.org/#/c/29716/
4- https://gerrit.libreoffice.org/#/c/29768/
5- https://gerrit.libreoffice.org/#/c/29769/
6- https://gerrit.libreoffice.org/#/c/29669/

5.3 sürüm notlarında da görebilirsiniz: https://wiki.documentfoundation.org/ReleaseNotes/5.3#Arrows_Toolbox


LibreOffice Math % sembolü

LibreOffice bir docx içerisine yazılmış formülü import ederken eğer %20 gibi bir ifade varsa bunu parse edemeyip sadece % işaretini gösteriyordu. Çünkü İngilizcede gösterimi 20% şeklindedir.

İlgili hata kaydı : https://bugs.documentfoundation.org/show_bug.cgi?id=97164

Bu hata gönderdiğim yama ile 5.2.5 sürümünden itibaren çözülmüştür. Yamayı buradan inceleyebilirsiniz.

30 Ocak 2017 Pazartesi

Kod Katkısı Haricinde Özgür Yazılımlara Nasıl Katkıda Bulunulur?

Özgür yazılımlar genelde çevrelerinde oluşan toplulukların gücüyle hayatını sürdürür. Topluluklar elbette sadece geliştiricilerden oluşmaz. Özgür yazılımlara kod katkısı dışında katkıda bulunmanın bir çok yolu vardır. Ve her katkı kıymetlidir.

Bir özgür yazılım topluluğunun içinde nasıl işler yapan insanlar vardır LibreOffice özelinde yazacağım. Unuttuğum atladığım varsa uyarırsanız düzeltirim.  

Hata raporlama 

Kullanıcıdan geri bildirim almak her yazılım için kıymetlidir. LibreOffice'in her gün yeni kabul edilen yamalarıyla birlikte derlenip paketlenir. Buradan günlük derlemelere ulaşabiliriniz. Böylece en son hali üzerinden yazılımı test edebilirsiniz. İlla geliştirme sürümünü test etmeniz gerekmez ancak karşılaştığınız hatanın kısa bir süre içinde de çözülmüş olma ihtimali mevcut. Ben geliştirme sürümünü test etmenizi tavsiye ederim.

Kullanırken karşılaştığınız bir hatayı hata takip sistemine raporlayabilirsiniz Hata nasıl raporlanır kısmını olabilecek tüm ayrıntılarıyla Necdet Yücel'in yazısından öğrenebilirsiniz.

Raporlanmış hatayı test edip onaylama

Hata ilk raporlandığında doğrusu "UNCONFIRMED" etiketine sahip olmasıdır. LibreOffice'te raporlanmış hatalar en az bir kişi tarafından daha tekrar edilirse "NEW" etiketi kazanır.  Böylece raporlanmış hataların gerçekten hata olma ihtimali yükselir. Bu sebeten raporlanmış hataları test etmek de ayrı bir iş haline gelir. LibreOffice'te test edilmesi gereken hataların listesine şu filtre ile ulaşabilirsiniz. Hatayı tarif edildiği şekilde siz de görebiliyosanız ve eminseniz "NEW" etiketi verebilirsiniz.

Manuel test

Testi yazılmış özelliklerin bir sonraki sürümde doğru çalışıp çalışmadığının farkedilmesi kolaylaşır. Kod yazmadan düz metin yazar gibi test yazmanız da mümkündür. Buradan yazılmış testleri inceleyebilir yenilerini ekleyebilirsiniz.

Çeviri

Hiçbir yazılım kendiliğinden Türkçe'ye çevrilmez. Türkçe kullanabildiğiniz özgür yazılımların her birinin arkasında bir ya da birden çok gönüllü çevirmen vardır. LibreOffice'in çevirilerinin %99'unu tek başına Necdet  hoca devam ettiriyor. Düzgün çeviri yapmak için İngilizce bilmekten fazlası gerekir. Çeviri tutarlı olmalıdır. Hızlandırıcılar, değişkenler, formül isimleri gibi kod ile bağlantılı çevirileri yaparken öncekilerin nasıl çevrildiğini mutlaka incelemelisiniz. Çeviri arayüzüne buradan ulaşabilirsiniz.

Web sitesi, mail, forum ve diğer sosyal mecralar

Özgür yazılımların da tanıtılması, pazarlanması, topluluğunun bir arada tutulması gerekir. Bu gibi mecraların da birileri tarafından yönetilmesi gerekir. LibreOffice'in web sitesi, mail sunucusu, forumu ile gönüllü olarak yerelde ilgilenen Zeki Bildirici  en son mail listesine paylaşılması gereken işlerin bir listesini yazmıştı. Bu yönden katkıda bulunmak, sorumluluk almak isterseniz tam zamanı.

Belgelendirme

Elbette kod belgelendirmesinden bahsetmiyorum. Onun için koda hakim olmak gerekir ve bence kod yazmaktan daha zor bir iştir. Yine de meraklısı için kod belgelendirmesini şuraya iliştireyim.

Yazılımın bir özelliğe sahip olması tek başına yeterli değildir. Kullanıcı onu nasıl kullanacağını bilmediğinde özellik onun için anlamsız hale gelir. LibreOffice'in orijinal kullanım klavuzlarını şu linkten bulabilirsiniz.

Güncel olmasa da yine çok yardımcı olacak Türkçe kullanım klavuzları -sanıyorum ki TÜBİTAK tarafından çevirilmişti- şuradan bulabilirsiniz. Bu belgelerin güncele yakın hale getirilmesi için yardımcı olabilirsiniz.


Kullanım videoları

Bazı kullanıcılara okuyarak öğrenmek yerine izleyerek öğrenmek daha cazip gelir. Bu yüzden LibreOffice'in sevdiğiniz özelliklerinin kullanımını ekranınızı kaydederek gösterebilirsiniz. Böyle çalışmalarınızı bize ulaştırısanız duyurmak isteriz.

Bağış

Özgür yazılımlar ağaçta yetişmez, yerden bitmez :) Etkinlikler, sunucu-domain masrafı, geliştirici teşvik gibi benim de göremediğim bir sürü gideri vardır. Benim zamanım yok ama bağış yapabilirim derseniz miktarından bağımsız olarak yine kıymetli bir katkıda bulunmuş olursunuz. Zaman da ayırırım bağış da yaparım derseniz:



16 Ocak 2017 Pazartesi

LibreOffice - Kendi Notebookbar'ınızı Oluşturun

Yakın zamanda MUFFIN konsepti içinde tanıtılan Notebookbar, LibreOffice fonksiyonlarının serbestçe yerleştirilebileceği ve düzenlenebileceği boş bir tuval gibidir. Fazla kodlama bilgisi gerektirmeden dilediğiniz şekilde özelleştirmeye açıktır. Nasıl özelleştirebileceğimize dair LibreOffice Dizayn ekibinden bir geliştirici gayet güzel bir blog yazısı yazmış. Türkçe konuşan kullanıcılar için aktarmak istedim.

Çalışma Ortamının Hazırlanması

Notebookbar arayüz (ui) dosyaları sadece XML formatlı metin dosyalarıdır. Dosyaları herhangi bir metin düzenleyicisinde değiştirmek mümkündür, ancak oldukça sıkıcıdır. ui dosyalarını değiştirmenin varsayılan yolu şimdilik Glade kullanmaktır.

$ sudo apt-get install glade

Glade'yi kurduktan sonra, belirli kontrolleri kullanmak için LibreOffice kataloğunu eklemek gerekmektedir. Glade'i çalıştırın. Düzenle->Tercihler-> Katalog ekle (+)  kısmından <libreoffice kurulumu>/share/glade dizinini ekleyin.

Glade'i yeniden başlattığınızda sol tarafta LibreOffice'e ait kataloğun eklendiğini göreceksiniz.

Mevcut Notebookbar'ı Düzenleme

Artık mevcut araç çubuklarını değiştirebilirsiniz. Mevcut notebookbar'ların ui dosyaları aşağıdaki konumlardadır.

Kelime işlemci için <libreoffice kurulumu> /share/config/soffice.cfg/modules /swriter/ui/
Hesap tablosu için <libreoffice kurulumu> /share/config/soffice.cfg/modules/scalc/ui/
Sunum için <libreoffice kurulumu> /share/config/soffice.cfg/modules/simpress/ui/
altındaki notebookbar_groups.ui veya notebookbar_simple.ui'dir.

Sadece bu ui dosyasını Glade'e yükleyin, istediğiniz gibi değiştirin, kaydedin ve değiştirin. Yaptığınız değişikliği LibreOffice'de görebilmek için yeniden başlatmanıza gerek yoktur.

Yeni Notebookbar Oluşturma

Mevcut dosyalarla uğraşmaktan korkuyorsanız sıfırdan başlamak da mümkündür. İlk önce yeni oluşturacağımız bu ui dosyasının referansını <libreoffice kurulumu>/share/registry/main.xcd içine eklemek gerekmektedir. Ne yazık ki, bu XML dosyası oluşturma işlemi sırasında düzenleme yapılmasını engelleyen satır sonları olmadan oluşturulmuştur. Neyse ki, XML dosyalarını biçimlendirmede yardımcı olan tidy adlı küçük bir araç var. Main.xcd dosyasını önce main.bak olarak yeniden adlandırın ve şunu çalıştırın:

$ cat main.bak | tidy -utf8 -xml -w 255 -i -c -q -asxml > main.xcd

Artık dosyayı tercih ettiğiniz metin düzenleyicisinde açabilirsiniz. Ekleme yapacağınız satırı dosya içinde "notebookbar_groups" kelimesi ile arayın ve çoğaltmak için komple bölümü kopyalayıp yapıştırın:


  <prop oor:name="Label">
    <value xml:lang="en-US">Contextual groups</value>
  </prop>
  <prop oor:name="File">
    <value>notebookbar_groups.ui</value>
  </prop>
  <prop oor:name="HasMenubar">
    <value>true</value>
  </prop>
</node>
Notebookbar_groups.ui'nin her uygulama için bir tane olması gerekir. Aşağıdaki bölümü değiştirdiğinizden emin olun:

 <oor:component-data xmlns:install="http://openoffice.org/2004/installation" oor:name="Notebookbar" oor:package="org.openoffice.Office.UI">
//...
  <node oor:name="Applications">
    <node oor:name="Writer" oor:op="replace">

Artık düğüm adını "Groups" dan "MyMuffin" e, etiketi "Contextual Groups" dan "My Muffin" e, ve dosya referansını notebookbar_groups.ui'den notebookbar_mymuffin.ui'ye değiştirmeniz gerekmektedir.

Gerçek dosya olan notebookbar_mymuffin.ui dosyasını <libreoffice kurulumu> /share/config/soffice.cfg/modules/swriter/ui/ adresinde oluşturun ve temel öğelerini girin:
<?xml version="1.0" encoding="UTF-8"?>
  <interface>
    <requires lib="gtk+" version="3.12"/>
    <requires lib="LibreOffice" version="1.0"/>
  </interface>

Ayrıca, yeni bir dosya oluşturmak veya diğer Notebookbar dosyalarından birini çoğaltmak ve içeriği silmek için Glade'yi kullanabilirsiniz. Yaratıcılığınızı bekleyen güzel bir boş kanvas görmek için Kelime işlemciyi başlatın.

Notebookbar'ı Düzenlemek

Çok basit bir uygulama ile başlamak için klasik bir araç çubuğu oluşturuyoruz. Glade'i çalıştırın ve oluşturduğunuz ui dosyasını açın. Kutu sembolünü (Konteynerler bölümündeki ilk öğe) boş kanvasın üzerine sürükleyin. Açılır pencerede öğe sayısını 1 olarak değiştirin (tüm özellikleri daha sonra değiştirebilirsiniz). Şimdi bir Notebookbar araç kutusu ekleyin (LibreOffice bölümündeki son öğelerden birinde, Kaplar altındaki ortak araç çubuğu çalışmıyor) ve GtkBox'a bırakın. Tüm denetimleri istediğiniz gibi yeniden boyutlandırabilirsiniz, ancak son hizalama LibreOffice tarafından yapılır.

sfxlo-NotebookbarToolbox'a sağ tıklayıp düzenleyi seçin. İletişim kutusunda, Hiyerarşi sekmesine gidin ve Ekle'yi tıklayın. Sağda Özelliklerin bulunduğu alanda Action Name kısmına ".uno:Open" yazın.



Araç çubuğu öğeleri varsayılan olarak düğmeler olarak tanımlanır ve normal "Aç" fonksiyonunun aksine ek özelliklere sahip bir menüye sahip olmazsınız. Bu özelliği Hiyerarşi altından kolaylıkla değiştirebilirsiniz: Tool Item->Type kısmında Düğmeden Menüye çevirebilirsiniz.

Daha fazla işlev eklemek isteyebilirsiniz, bu nedenle tüm işlevlerin nasıl çağrıldığını ve nereden yardım alacağınız sorusu ortaya çıkmaktadır.

.uno:Nedir?

.uno: komutları, bir işleve ait isim ve araç ipuçları, seçili temaya bağlı simge, etkin / devre dışı durum, gerçek işlev vs. gibi tüm bilgileri jenerik bir modele dönüştürür. Örneğin, .uno:Bold, düğmenin metin görünümünü kalın / kalın değil olarak değiştirdiği anlamına gelir. İşlevleri adıyla biliyorsanız, ana menü spesifikasyonunda (menubar.xml) sağdaki .uno: komutunu <libreoffice kurulumu> /share/config/soffice.cfg/modules/swriter/menubar/ adresinde bulabilirsiniz (diğer modüller için sırasıyla) scalc / menubar, simpress / menubar vb.).

Ve elbette diğer Notebookbar'lara bakmak mantıklı. Bağlam bağlı bölümleri nasıl ele alacağınızı, sekmeleri nasıl kullanacağınızı ve çok basit araç çubuğu yerine büyük düğmeleri nasıl kullanacağınızı gösterir.

Özetle

Mevcut Notebookbar'ları Glade'yi kullanarak <libreoffice kurulumu> /share/config/soffice.cfg/modules/ <module> / ui adresinde değiştirebilir veya <libreoffice> /share/registry/main.xcd dosyasını düzenledikten sonra kendinizinkini ekleyebilirsiniz. Notebookbar, kontrollerin eklenebileceği boş bir tuval.

Bu değişiklikler hacktir ve bir sonraki güncelleme ile geçersiz kılınacaktır. Bu prosedürün kullanıcı dostu olmadığının farkındayız. Mevcut uygulama deneysel ve çok erken bir aşamadadır. Fakat mümkün olanı bir fikir verir.

Daha da önemlisi, LibreOffice ile birlikte gönderilen mevcut Notebookbar türevlerini düzeltebilir veya geliştirebilirsiniz. Bu yüzden, daha iyi yapılabilecek bir şey gördüğünüzde iyileştirmeleri yamalar olarak kabul ediyoruz!