Bir yedek al
Herhangi bir toplu değişiklikten önce, Obsidian kasanın bir kopyasını mutlaka al. Her şey kusursuz çalışsa bile — hatalar olur. Ayrıca riski en aza indirmek için — elle yöntemi öneririm.
🎯 Neyi değiştirmek istiyoruz?
Notlar eskiden şöyle başlıyordu:
Şu an kullandığım bağlantı şablonu:
Bu format:
- Dataview eklentisi tarafından okunmaz
- notun yapısını bozar
- elle düzenleme gerektirir
YAML’a geçmek istiyoruz:
YAML şablonu nasıl görünüyor:
Ve YAML kaynak kodu olarak şöyle görünür:
---
input links:
- '[[PSİKOLOJİ]]'
tags:
- psikoloji
- blog
date: 24-05-2025
---
Geri bağlantıların gösterimi ise notun başına taşınabilir. Nasıl mı? Aşağıda ele alalım.
🔗 Geri bağlantılar — Obsidian’dan yerleşik bir özellik
[[Dataview]] kodlu Output links yerine, artık şunu kullanıyoruz:
- yerleşik geri bağlantılar (ayarlardan etkinleştirilir)
"Geri bağlantılar" nasıl görünüyor:
![]()
🎨 Geri bağlantıları CSS ile YAML’ın yanına, yukarı nasıl taşırsın
- CSS parçacıkları klasörünü aç:
CSS parçacıkları klasörü:
-
Bir CSS belgesi oluştur (önce sıradan bir not defteri oluştur → “Farklı kaydet” → “Tüm formatlar” → dosya adına .css ekle → örn. backlinks.css)
-
Bu kodu
publish.cssya daobsidian.css’e ekle:
.cm-sizer {
display: flex;
flex-direction: column;
}
.inline-title {
order: 1;
}
.metadata-container {
order: 2;
}
.embedded-backlinks {
order: 3;
position: static;
overflow-y: auto;
max-height: 300px;
}
.cm-contentContainer {
order: 4;
}
Kod not defterinde (css) nasıl görünüyor:
👉 Artık geri bağlantılar doğrudan YAML bloğunun altında olacak. Bu, bağlantıları hızlıca görmek için kullanışlı.
🔁 YAML’a geçmenin 3 yolu
1. 🐍 Python betiği (deneyimliler için)
# Aşağıya bak — Vault yolunu (Vault_Path) mutlaka değiştir ve arama şablonunu kontrol et
Dikkat! Bu yöntem metni toplu değiştirir. Emin değilsen çalıştırma. Çalıştırmadan önce ChatGPT'ye danışmak daha iyi.
İşte kodun kendisi:
import os
import re
VAULT_PATH = r"C:\delete after\Tutorial 01"
# Esnek regex: isteğe bağlı boşluklara, satır sonlarına ve bazı alanların yokluğuna izin verir
pattern = re.compile(
r"(?:)?",
re.DOTALL
)
def convert_file(filepath):
with open(filepath, "r", encoding="utf-8") as f:
content = f.read()
if content.strip().startswith("---"):
return False
match = pattern.search(content)
if not match:
return False
input_raw = match.group(1).strip()
tags_raw = match.group(2).strip()
date = match.group(3).strip() if match.group(3) else None
# Bağlantıları biçimlendirme: '[[...]]'
input_links = re.findall(r"\[\[(.*?)\]\]", input_raw)
input_yaml = "\n".join([f" - '[[{link.strip()}]]'" for link in input_links])
# Etiketleri biçimlendirme
tags = [tag.strip("# ").strip() for tag in tags_raw.split()]
tags_yaml = "\n".join([f" - {tag}" for tag in tags]) if tags else " - "
# YAML'ı oluşturma
yaml = [
"---",
"input links:",
input_yaml if input_yaml else " - ",
"tags:",
tags_yaml,
]
if date:
yaml.append(f"date: {date}")
yaml.append("---")
# Tüm eski bloğu sil ve YAML ekle
new_content = "\n".join(yaml) + "\n\n" + content[match.end():].lstrip()
with open(filepath, "w", encoding="utf-8") as f:
f.write(new_content)
print(f"✅ Güncellendi: {filepath}")
return True
def process_vault():
print("🚀 İşlem başlatılıyor...")
count = 0
for root, _, files in os.walk(VAULT_PATH):
for file in files:
if file.endswith(".md"):
full_path = os.path.join(root, file)
if convert_file(full_path):
count += 1
print(f"🎉 Bitti! Güncellenen dosya: {count}")
if __name__ == "__main__":
process_vault()
Kendine nasıl uyarlanır?
VAULT_PATH’i kendi kasanın yoluyla değiştirBu kodu ChatGPT’ye göster ve yaz: “
Kendi şablonlarıma uyarlamama yardım et. İşte örnek bir not…“
2. 🔍 Global Search and Replace eklentisi
Şablon dizeleri için uygun. Örneğin:
- Bul:
...%%bloğunu sil
- Geri bağlantıları etkinleştir ve yukarıda olmaları için CSS kullan
📌 Sonuç
YAML'a geçmek düzenle ilgilidir: elle koddan kurtulur, Obsidian'ın yerleşik özelliklerini kullanır ve sistemine temizlik getirirsin.
Kasana uyarlama örneği mi istiyorsun? ChatGPT’ye yaz:
“Eski şablonum böyle görünüyordu. Onu YAML’a dönüştürmeme yardım et ve hangi satırları elle ekleyebileceğimi açıkla.”
Devam edelim mi?





