Saturday, March 21, 2009
Auto Numbering Headers in Google Docs
Google Docs allows generation of table of contents, but doesn't by default number the headers. This inability can be overcome via some CSS magic.
Simply put these into the CSS file, opened from Edit menu's Edit CSS item. This will autonumber header 2,3 and 4. (H2, H3, H4)
body {
counter-reset: chapter;
}
h2 {
counter-reset: section;
counter-increment: chapter;
}
h3 {
counter-increment: section;
counter-reset: part;
}
h4 {
font-weight: bold;
counter-increment: part;
}
H2:before {
content: counter(chapter) "." " ";
}
H3:before {
content: counter(chapter) "." counter(section) " ";
}
H4:before {
content: counter(chapter) "." counter(section) "." counter(part) " ";
}
Saturday, March 14, 2009
MATLAB'da Anonim Fonksiyonlar
Az bilinen MATLAB özelliklerinden biri anonim fonksiyonlar.
Normalde betikler (script) içinde ve komut satırında fonksiyon tanımlaması yapılamaz. Bu kısıtlamanın üstesinden gelmek için anonim fonksiyonlar kullanılabilir.
Anonim fonksiyonlar sayesinde tek ifadeli fonksiyonlar oluşturabilirsiniz.
Anonim fonksiyon taslağı şu şekildedir:
fonksiyon adı = @ (giriş parametreleri) ifade;
Örneğin:
myfun = @(x) log(x) + x;
myfun(3)
Böyle bir fonksiyonu, giriş parametresi olarak fonksiyon handle'i alan fplot, quad gibi fonksiyonlarda kullanmak mümkün.
Örneğin:
a = 1; b = 2; c = 3;
myfun = @(x) a*x.^2 + b*x + c;
fplot(myfun, [-10 10])
Anonim fonksiyonlar içerisinde, üst kapsamda (betik içerisinde daha yukarıda) tanımlanmış değerleri kullanabiliriz; ancak bu değerler fonksiyon tanımlandıktan sonra değiştirilirse fonksiyona etki etmezler. Fonksiyonun yeni değerleri kullanabilmesi için bir kez daha tanımlanması gerekmektedir.Wednesday, March 11, 2009
Some MATLAB Tricks
These are some MATLAB tricks I will be compiling over time.
- Use
get(0,'ScreenSize')
to get screen size, and usefigure('OuterPosition',[left bottom width height])
to set figure size and location. - Use dynamic fields name in structs instead of eval commands. Ex: Instead of
eval(['a.', 'first', '=', i])
; usestr = 'first'; a(str) = i;
- Use cells to create multi-line titles. Ex:
plot(1:10), title({'First Line','Second'})
- Use uitable to visualize some matrices. Ex: a = uitable, set(a,’data’, magic(3))
- Use isequal to compare arrays for equality.
- Use hold all to hold subsequent plots and automatically switch line color and marker styles.
- To set marker every N lines, draw three plots.
h = plot(NaN,NaN,'b-*',x,y,'b-',x2,y2,'*');
legend(h(1),'signal'); - Close all figures including GUI's with
close all hidden
. Note that if the HandleVisibility of a GUI is set to off or callback, it cannot be closed by close all only, the extra parameter 'hidden' is needed in this case.
Also, see the MATLAB questions at StackOverFlow.
Tuesday, March 10, 2009
Some Nice MATLAB FileExchange Files
- print_pdf : Save figures to high quality pdfs with cropped borders and embedded fonts.
- textbp : Automatically locates text annotation to minimize figure obscuration
- hline and vline : Draw vertical and horizontal lines
- easygui : Create GUIs easily
- newfcn : Create new function template
- any2csv : Convert struct to csv files
- anymate : Make animations in MATLAB easily
Monday, March 02, 2009
GeceGece - Turk Indie Pop Grubu
http://www.myspace.com/gecegece
http://www.last.fm/music/gecegece
http://sozluk.sourtimes.org/show.asp?t=gecegece
Sibel Emek Ortaç: lead vocals
Gökçe Bayrakçeken Tüzel: acoustic guitars , backing vocals
Alper Sarioglu: electric guitars
Özgür Sari: keyboards, backing vocals
Murat Tüzel: bass guitar
Onur Ertem: drums
Simulating Sample Spaced Rayleigh
A nice and informative article about simple channel simulation in Matlab: http://dspdotcomm.blogspot.com/2008/11/simulating-sample-spaced-rayleigh.html
Sunday, March 01, 2009
Markdown ve ReStructuredText: Hafif Siklet Isaretleme Dilleri (Lightweight Markup Languages)
Dökümentasyon ya da basit belgeler oluştururken HTML ya da XML gibi bir işaretleme dili kullanmak zor gelebilir. WYSWYG türü Word benzeri programlarda belge hazırlamak da bazı konularda özgürlüğünüzü kısıtlar.
Bu gibi durumlarda İngilizce lightweight markup language olarak tabir edilen hafif sıklet işaretleme dillerini kullanmak uygun bir çözüm. Bu belgelerde metnin nasil gorunecegiyle ilgili kucuk isaretler kullanilmakta ve bu sekilde duz metin de olsa okunakli bir gorunum elde edilmekte. Daha sonra bu metinler bazi parserlardan gecirilip diger formatlara aktarilabilmekte.
Bu gibi durumlarda İngilizce lightweight markup language olarak tabir edilen hafif sıklet işaretleme dillerini kullanmak uygun bir çözüm. Bu belgelerde metnin nasil gorunecegiyle ilgili kucuk isaretler kullanilmakta ve bu sekilde duz metin de olsa okunakli bir gorunum elde edilmekte. Daha sonra bu metinler bazi parserlardan gecirilip diger formatlara aktarilabilmekte.
Ben önceden reStructured Text kullanıyordum. Bugün markdown adı verilen (markup vs markdown ;) bir işaretleme diliyle karşılaştim. İkisi birbirine oldukça benziyor; genel kanı, LaTeX ya da PDF gibi formatlara dönüştürme hedefiniz yoksa ve inline (kaynak kod içi) dökümentasyon hazırlamıyorsanız, yani sadece HTML çıktısıyla ilgileniyorsanız markdown'in daha kolay bir çözüm olduğu yönünde.
Ayrica rst'nin kullanımı emacs'te oldukça kolay olmakla beraber markdown daha metin editör bağımsız bir ortam sunuyor gibi.
Satirici link vermek icin
Daha sonra, asagida bir yerde referanslarin hangi URL'e isaret ettigini gostermek icin,
Daha fazla bilgi icin: Markdown Basics'e goz atin. Markdown'i aninda HTML'e donusturen bir online editor icin: http://attacklab.net/showdown/
Markdown'da belge hazirlama
Baslik ve altbasliklar
Bunlar baslik ya da altbaslik metninin basindaki # isaretlerinin sayisiyla belirleniyor. Ornegin en ust baslik (h1) icin, # Ana Baslik yazmaniz yeterli. Bir alt baslik (h2) da bu durumda ## Alt baslik olarak yaziliyor.Kalin ve italik yazilar
Italik yazilacak metinlerin soluna ve sagina * isareti koymak gerek. Kalin olmasi icin ise sola ve saga ** koymak gerek. Ornegin, *bu metin italik*, ** bu metin kalin olacak**.Listeler
Liste olusturmak icin her ogeyi alt alta yazip satir basina -, * gibi isaretleri koymak gerekiyor. Icice liste olusturmak icin de iki satir iceriden yeni bir isaretle baslamak gerek. Ornegin:
- elma
* golden
* starking
*grannysmith
- armut
- muz
Link (baglanti) verme
Satirici ve referans olarak ikiye ayriliyor. Ayni linki birden fazla kullanacaksaniz referans turunu tercih edebilirsiniz.Satirici link vermek icin
Bu [ornek link](http://example.com/)
kullanin. Referans linki vermek icin ise su kalibi kullanin. Ornek:[gorunmesini istediginiz metin][referans adi]
Daha sonra, asagida bir yerde referanslarin hangi URL'e isaret ettigini gostermek icin,
[referans adi] http://www.cnn.com
kismini ekleyin.Kod bloklari
Kod bloklari icin basa ve sonra ` isareti koyun.Daha fazla bilgi icin: Markdown Basics'e goz atin. Markdown'i aninda HTML'e donusturen bir online editor icin: http://attacklab.net/showdown/
Diger Kaynaklar
Labels:
emacs,
isaretleme dilleri,
lightweight markup languages,
markdown,
rst,
tech
Subscribe to:
Posts (Atom)