Add Sublime Text to context menu on windows

This scripts adds 3 entry (or link, shortcut) to context menu (right click menu) for sublime text.

  1. ‘Open with SublimeText’ entry for file context menu.
  2. ‘Open with SublimeText’ entry for folder context menu.
  3. ‘Open with SublimeText’ entry for folder background context menu.

Create an empty file with “.bat” extension in SublimeText Installed Folder (where you installed sublime).  This is usually “C:\Program Files\Sublime Text <version>” folder.

Open this file and paste this code below and save:

@echo off
 
@reg add "HKEY_CLASSES_ROOT\*\shell\sublime" /t REG_SZ /v "" /d "Open with SublimeText" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\sublime" /t REG_EXPAND_SZ /v "Icon" /d "%~dp0sublime_text.exe,0" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\sublime\command" /t REG_SZ /v "" /d "\"%~dp0sublime_text.exe\" \"%%1\"" /f
 
@reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\sublime" /t REG_SZ /v "" /d "Open with SublimeText" /f
@reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\sublime" /t REG_EXPAND_SZ /v "Icon" /d "%~dp0sublime_text.exe,0" /f
@reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\sublime\command" /t REG_SZ /v "" /d "\"%~dp0sublime_text.exe\" \"%%V\"" /f
 
@reg add "HKEY_CLASSES_ROOT\Directory\shell\sublime" /t REG_SZ /v "" /d "Open with SublimeText" /f
@reg add "HKEY_CLASSES_ROOT\Directory\shell\sublime" /t REG_EXPAND_SZ /v "Icon" /d "%~dp0sublime_text.exe,0" /f
@reg add "HKEY_CLASSES_ROOT\Directory\shell\sublime\command" /t REG_SZ /v "" /d "\"%~dp0sublime_text.exe\" \"%%1\"" /f
 
@pause

Then right click on this file and run as administrator.

Note: This file must be in same folder with “sublime_text.exe”

Javascript’de new ve bellek adresleri – 2

Bir önceki yazıda C++’ın bellek kullanımını ve new anahtarının işlevlerini anlattım. Javascript önceki yazıda anlattığım işlemleri simule etmeye çalışır. Yani C++’ın ve benim, önceki yazıda anlattığım işlemleri yapıyor gibi davranır. O yazıda okuduklarınız javascript’de new anahtarını ve bellek kullanımını (bellek adreslerini) anlamanız açısından yararlıdır.
Okumaya devam et

Javascript’de new ve bellek adresleri – 1

Javascript’te new operatörü C++’da olduğu gibi işletim sisteminden bellek talep etmek için kullanılır. new operatöründen sonra kullanılan nesne ise belleğin boyutunu ve ne amaçla kullanılacağını söyler. Yorumlayıcı new’den sonraki nesneye bakarak ne kadar alana ihtiyaç duyulduğu belirler. new operatörünü ve ardından gelen nesneyi gören yorumlayıcı, bellekten alan tahsis ettikten sonra bellekte oluşturulan alandaki nesneyi (aslında yeni nesnenin bellek adresini) geri verir. Biz geri alınan bu yeni nesneyi (adresi) bir değişkene atarız ve daha sonra kullanırız. Eğer new kullanmadan bir nesneyi “=” operatörü ile bir değişkene atarsak bellekte yeni nesne oluşturulmayacak, sadece varolan nesneyi (varolan nesnenin adresini) yeni bir değişkene atamış olacağız.
Okumaya devam et

Toucan CSS Reset

Toucan CSS reset dosyası tarayıcılar arasındaki varsayılan css tanımlamalarını sıfırlayan veya eşleyen bir css dosyasıdır.

En çok bilinen iki css sıfırlayıcı (reset) dosyası olan Eric Meyer’ in css dosyası ve Yahoo User Interface (yui) css dosyasından farklı olarak Toucan sıfırlayıcısı tarayıcılar arasındaki css tanımlama farklılıklarını yok etmekle birlikte tüm tarayıcılarda  tipografi, tablolar, başlıklar, paragraflar, listeler, formlar vs. elementler için stil tanımlamalarını yeni jenerik kurallara göre yeniden yapılandırır.

Küçük, esnek ve tarayıcı dostu yapıya sahiptir. Ücretsizdir.

Toucan CSS Reset sitesi : http://borderleft.com/labs/reset/

Demo için tıklayın.

Küçültülmüş halini indirmek için buraya ya da  normal (okunabilir, sıkıştırılmamış) halini indirmek için buraya tıklayın.

IP’leri Veritabanında Saklama

Merhaba arkadaşlar. Bundan sonra blog’da daha sık yazı yazmayı düşünüyorum. Ufak ipuçlarına ve performans ipuçlarına ağırlık vereceğim.

Birçoğumuz ip adreslerini veritabanında saklarken 15 karakter uzunluğunda varchar ile oluşturulmuş sütunlar kullanırız. Bu durum INT alanından 4byte daha fazla kayba neden olur. Bunun yerine UNSIGNED INT kullanmamız sistem kaynaklarını 4byte daha az tüketmemizi sağlar.
Okumaya devam et

Find ile Sadece Dosyalarda veya Dizinlerde chmod

Bir dizin altındaki sadece klasörilerin (dizinlerin) yetkilendirme (chmod) ayarlarını yapmak için :

find ./ -type d -exec chmod 755 {} \;

Bir dizin altındaki sadece dosyaların yetkilendirme (chmod) ayarlarını yapmak için :

find . -type f -exec chmod 644 {} \;

kaynak: http://duntuk.com/chmod-directories-only

ek:
Linux altyapılı sunucunuzda windows’un “Thumbs.db” dosyalarını silmek için :

find . -type f -name "Thumbs.db" -exec rm {} \;

MySQL Karakter Seti Sorunları

Web sitesi olan ve sitesini başka bir sunucuya taşımak isteyen veya yedekleme işlemi yapan bir çok kişi karakter sorunlarıyla karşılaşmıştır. Aslında bu tür sorunlar yaşamamanız için yapmanız gerekenler çok basit. Ancak sorunla karşılaştığınızda çözüme ulaşmak başınıza bela olabilir.

Bu tür sorunlar yaşamamanız için benim önerilerim şunlar:

  1. Öncelikle kullandığınız ide, metin editörünün ayarlarından varsayılan karakter setini utf-8 yapın ve dosyalarınızı utf-8 karakter seti formatında kaydedin.
  2. Veritabanı oluştururken bağlantı karşılaştırmanızı utf8_xxx yapın.
  3. Veritabanı oluştururken karakter seti olarak yine utf8_xxx seçin.
  4. Veritabanına veri girdiğiniz html sayfanızın karakter setinin utf-8 olmasına dikkat edin.
  5. Sitenizin script dosyasından veritabanı sunucusuna bağlandıktan sonra şu sorguyu çalıştırmayı unutmayın : ” SET NAMES ‘UTF-8′; ” (çift tırnaklar yok, tek tırnaklar var.)

Bunları yaptıktan sonra sitenizde karakter seti sorunları yaşamazsınız. Ancak var olan veriler utf-8′e çevrilmez ise bu sefer eski içeriğiniz sayfanızda hatalı gösterilecektir.

Benim tek cümleyle önerim: “Herşey utf-8 olsun ve bunu biran önce yapın.”.

Javascript ile Style Değerine Erişim

Web sayfalarımızda kullandığımız html elementlerinin stil bilgilerine, o elementin style attribute’ü sayesinde ulaşabiliyoruz. Ama bu şekilde eğer elementin style attribute’ünde stil tanımlaması inline belirtilmişse ulaşabiliriz. Aksi durumda, bu yöntemle ulaşmak mümkün değil. Örneğin bir elemente css ile 200px genişlik belirlemişsek bu elementing genişliğine daha sonra javascript ile element.style.width kullanarak ulaşmak mümkün değil.

Okumaya devam et