Bilgisayarda çıkan bir problemleri çözmeye çalışırken birçok sayfa okumak gerekiyor. Genellikle bu problemler tek satır ile düzeltilecek hatalar olmadığından birbirinden farklı problemleri aramak yada gerekli açıklama metinlerini okumak gerekiyor. Tabi üretilen teknolojiler bizim dilimizde olmadığından literatürde olan bilinmeyen kelimlere ve konulara da bakmak gerekiyor. Bu yüzden herhangi bir işi yaparken eminim sizinde hangi işi yapıyordum(Nereden buraya geldim) demişsinizdir.
Senaryo şu şekilde;
Varsayalım Python ile bir script geliştiriyorsunuz ve Curl ile bir istek yollamanmız gerekiyor. Eğer bu işlemi önceden yapmadıysanız Python’da kullanacağınmız kütüphaneyi indirmelisiniz. Daha sonra bu sınıfın metotlarını nasıl kullanacağınmız ve hiçbir aksilik yok ise bu iş.
Evet sadece bir istek yollamak için;
- Uygun kütüphaneyi indirdik
- Tabiki ilk tek seferde doğru olanı bulmak zor.
- Nasıl kullanılacağını araştırdık
- Her farklı kullandığımız için farklı problemler
- Ne bileyim klasik çevirme işlemleri int2string, string2int gibi
Bir de, işin herhangi bir kısmında eğer mola verdiyseniz veya farklı bir konuya göz attıysanız dikkati toparlamak biraz zor oluyor.
Bende bu durumun, performansımı düşürdüğünü farkettikten sonra bir sistem geliştirdim.
Bir iş ile uğraşırken olayın her spesifikleştiği noktada, arama yaptığım yeni konuyu farklı bir pencerede(Mesela String2Int nasıl yapılır gibi) açıp daha sonra daha küçük problemleri(Python2.7, Python3 gibi) tabları ile araştırıyorum.
Bu sıkıntı çözüldüğünde pencereyi kapatıp yaptığım işe devam ediyordum.
Bir süre bu sistemi kullandıktan sonra iş fazla detaya indiğinde, haliyle pencereler çoğaldığında alt-tab pencereler arasında dolaşmanın performansı yine düşürdüğünü farkettim.1
Bende bu durumu avantaja çevirmek amacı ile sadece Firefox pencereleri arasında sondan başa doğru alt-tab yapan bir sistem geliştirdim ve gayette verimli oldu diyebilirim.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
#!/bin/bash # Copied from http://askubuntu.com/questions/269574/wmctrl-focus-most-recent-window-of-an-app # Usage # Download wmctrl by using apt-get or yum # Bound shortcut that sh code from your environment # If you press more than one it will change windows app_name=Firef workspace_number=`wmctrl -d | grep '\*' | cut -d' ' -f 1` win_list=`wmctrl -lx | grep $app_name | grep " $workspace_number " | awk '{print $1}'` active_win_id=`xprop -root | grep '^_NET_ACTIVE_W' | awk -F'# 0x' '{print $2}' | awk -F', ' '{print $1}'` if [ "$active_win_id" == "0" ]; then active_win_id="" fi # If you open new windows for you all new work that will help to you to start from last tab to see your app # It is convenient while using Firefox #If you want to start from beggining just comment that line win_list=$(echo $win_list | awk 'BEGIN{FS="[ ]*"; OFS=" "} { for (i=NF; i>0; i--) { printf "%s", $i;11 ; if (i>1) { printf "%s", OFS; } } printf "\n" }') switch_to=`echo $win_list | sed s/.*$active_win_id// | awk '{print $1}'` # if the current window is the last in the list ... take the first one if [ "$switch_to" == "" ];then switch_to=`echo $win_list | awk '{print $1}'` fi if [[ -n "${switch_to}" ]] then (wmctrl -ia "$switch_to") & else if [[ -n "$2" ]] then ($2) & fi fi exit 0 |
Sistem gayet basit çalışıyor yukarıdaki kodu herhangi bir kısayola atayıp gerekli o tuşa bastığınız taktirde sıkınmtısız çalışacaktır.
İyi çalışmalar 🙂