diff --git a/README.md b/README.md index 8b66bf5..ef75f23 100644 --- a/README.md +++ b/README.md @@ -2,56 +2,66 @@ TDK Güncel Türkçe Sözlük gts.json.tar.gz dosyasını PyGlossary aracılığıyla StarDict, Kobo ve Kindle formatlarına çeviren bir Python betiği. # Kullanımı -`python gts_convert.py --help` +`python gts.py --help` ``` -usage: gts_convert.py [-h] [--json-tar-gz-path JSON_TAR_GZ_PATH] [--cekim-sozlukler CEKIM_SOZLUKLER] [--stardict] - [--kobo] [--kindle] [--dictzip] [--dictgen DICTGEN] +usage: gts.py [-h] [-j GTS_JSON] [--cekim-sozlukleri CEKIM_SOZLUKLERI [CEKIM_SOZLUKLERI ...]] + [--cekim-sozlukleri-bicimleri CEKIM_SOZLUKLERI_BICIMLERI [CEKIM_SOZLUKLERI_BICIMLERI ...]] + [--hunspell-sozlukleri HUNSPELL_SOZLUKLERI [HUNSPELL_SOZLUKLERI ...]] [-b {1,2,3,4}] TDK Güncel Türkçe Sözlük gts.json.tar.gz dosyasını PyGlossary aracılığıyla StarDict, Kobo ve Kindle formatlarına çeviren bir Python betiği. options: -h, --help show this help message and exit - --json-tar-gz-path JSON_TAR_GZ_PATH + -j GTS_JSON, --json-tar-gz-path GTS_JSON gts.json.tar.gz konumu. - --cekim-sozlukler CEKIM_SOZLUKLER - Sözcük çekimleri için ek Stardict sözlüklerinin dosya yolları. Birden fazla kaynağı noktalı - virgül (;) ile ayırın - --stardict StarDict çıktı formatı oluşturulsun. - --kobo Kobo dicthtml.zip çıktı formatı oluşturulsun. - --kindle Kindle MOBI çıktı formatı oluşturulsun. - --dictzip StarDict .dict dosyasını sıkıştıracak dictzip aracı PATH'de mi? - --dictgen DICTGEN Kobo dicthtml-tr.zip dosyasını oluşturacak aracın (dictgen-*.exe) konumu. + --cekim-sozlukleri CEKIM_SOZLUKLERI [CEKIM_SOZLUKLERI ...] + Sözcük çekimleri için kullanılacak ek sözlüklerin yolları. Birden fazla dosya yolunu boşluk + ile ayırın. + --cekim-sozlukleri-bicimleri CEKIM_SOZLUKLERI_BICIMLERI [CEKIM_SOZLUKLERI_BICIMLERI ...] + --cekim-sozlukleri seçeneğinde kullanılan kaynakların biçimleri, birden fazla kaynak biçimini + boşluk ile ayırın. + --hunspell-sozlukleri HUNSPELL_SOZLUKLERI [HUNSPELL_SOZLUKLERI ...] + Çekim bilgilerinin alınacağı Hunspell dosyalarından .aff ve .dic dosyasının konumu. Birden + fazla dosya yolunu boşluk ile ayırın. + -b {1,2,3,4}, --cikti-bicimi {1,2,3,4} + Çıktı biçimi. StarDict = 1, StarDict (WebKit) = 2, Kobo = 3, Kindle = 4. StarDict biçimini + Webkit tabanlı bir görüntüleyicide kullanacaksanız (GoldenDict gibi) 2'yi seçin. ``` gts.json.tar.gz dosyasının ve sözcüklerin çekim bilgilerinin yer aldığı tr_TR.json.gz dosyasının betik ile aynı konumda olduğundan emin olun. (tr_TR.json.gz dosyasının nasıl oluşturulduğunu merak ediyorsanız [bağlantıyı](https://github.com/anezih/HunspellWordForms) takip edin. Üretilen json dosyasının [kaynak Hunspell dosyaları](https://github.com/titoBouzout/Dictionaries/blob/master/Turkish.txt).) (NOT: 2.4 versiyonu öncesinde kaynak olarak kullanılan gts.json.tar.gz dosyasına [buradan](https://github.com/ogun/guncel-turkce-sozluk) ulaşabilirsiniz) -Tüm formatları üretmek için betiği şu şekilde çağırın: +Tüm biçimleri üretmek için betiği Powershell üzerinde şu şekilde çağırın: -`python gts_convert.py --stardict --kobo --kindle --dictzip --dictgen "dictgen-windows.exe"` +```powershell +1..4 | % { python gts.py -b $_ } +``` -`--cekim-sozlukler` parametresi, var olan sözcük çekim bilgilerini hazırlanan sözlüğe ekleyebilmenizi sağlar. Bu parametreye çekim bilgileri olan StarDict sözlüklerinin yollarını gösterin. Birden fazla sözlük kullanılacaksa bunları noktalı virgül (;) ile ayırın. Örnek: +`--cekim-sozlukleri` parametresi, var olan sözcük çekim bilgilerini hazırlanan sözlüğe ekleyebilmenizi sağlar. Bu parametreye çekim bilgileri olan StarDict sözlüklerinin yollarını gösterin. Birden fazla sözlük kullanılacaksa bunları boşluk ile ayırın. Bu parametrenin kullanılması durumunda `--cekim-sozlukleri-bicimleri`'nde kullandığınız sözlüklerin biçimini belirtin. Örnek: ``` -python gts_convert.py --cekim-sozlukler "D:\sozlukler\kaynak_1.ifo;D:\sozlukler\kaynak_2.ifo" --stardict --kobo --kindle --dictzip --dictgen "dictgen-windows.exe" +python gts.py --cekim-sozlukleri "D:\sozlukler\kaynak_1.ifo" "D:\sozlukler\kaynak_2.ifo" --cekim-sozlukleri-bicimleri Stardict Stardict -b 1" ``` -`--dictzip` anahtarı, kullanıldığında dictzip çalıştırılabilir dosyasının PATH'de olduğunu belirtir. (Windows'a yüklemek için: https://github.com/Tvangeste/dictzip-win32) +# 2.4.3 sürümü hakkında notlar +## İki tane olan StarDict biçimi hakkında
+2.4.3 sürümünde sözlük biçimlendirmesi StarDict'de ayrı css dosyasına taşınmıştır. Ancak KOReader yazılımının sözlük görüntüleyici arka ucu (MuPDF) HTML4 ve eşleniği CSS sürümü ötesinde görüntüleme yapamadığından StarDict sürümü basit ve biraz daha karmaşık CSS'li olmaz üzere ikiye ayrılmıştır. Sonunda *WebKit olan sürüm, görüntüleyici olarak WebKit veya daha modern bir arka uç kullanan yazılımlar içindir (Örneğin GoldenDict veya KOReader dşındaki her şey.) + +## Kindle MOBI biçimi +2.4.2 sürümünde yer alan tanım içinde alan HTML bağlantılara yer verilmemiştir. Bu bağlantıların çalışıp çalışmadığını fiziki cihaz üzerinde deneyemediğimden bağlantıları bu sürüme dahil etmedim. 2.4.2 sürümünü deneyip, çalıştığını biri onaylayabilirse bu özellik tekrardan eklenebilir. -`--dictgen` parametresi Dictfile dosyasını Kobo dicthtml.zip formatına dönüştüren çalıştırılabilir dosyanın konumunu gösterir. Sisteminiz için uygun dictgen-* programını https://github.com/pgaskin/dictutil adresinden edinebilirsiniz. +## Biçimlendirme esnekliği +Bu sürümde sözlükleri oluşturan betik tekrar en baştan yazıldı. Bunun nedeni biçimlendirmeyi olabilidiğince koddan ayırmak ve kolaylaştırmak. Bu aynı zamanda biçimlendirmeyi son kullanıcı açısından da daha kişiselleştirilebilir kılıyor. Eğer HTML ve CSS biliyorsanız. `tpl/` klasöründe yer alan dosyaları düzenledikten sonra betiği yeniden çalıştırarak tanım görünümlerini değiştirebilirsiniz. StarDict biçiminde programı yeniden çalıştırmaya gerek kalmadan sadece CSS dosyasını düzenlemek ise yeterli. # Gerekli paketler ``` pip install pyglossary==4.6.1 -pip install requests +pip install spylls ``` # Kobo sözlüğünü yükleme -* Sözlüğü `KOBOeReader/.kobo/dict` konumuna kopyalayın. -* `KOBOeReader/.kobo/Kobo/Kobo eReader.conf` dosyasında `ApplicationPreferences` kısmının altına `ExtraLocales=tr` seçeneğini ekleyin. -* Veya sözlüğü doğrudan `KOBOeReader/.kobo/custom-dict` konumuna kopyalayın. +* Sözlüğü doğrudan `KOBOeReader/.kobo/custom-dict` konumuna kopyalayın. * Kaynak ve detaylı açıklama için [buraya](https://pgaskin.net/dictutil/dicthtml/install.html) başvurun. -
-

Ekran Görüntüleri

+

Ekran Görüntüleri (Eski)

V1

| | | @@ -83,4 +93,4 @@ pip install requests ||| |**V2.1 PyGlossary aracılığıyla Kindle için derlendi,
çekimlenmiş sözcüklerde sonuç dönüyor**| **Kindle üzerinde tanımın detaylı görünümü**| -
+ \ No newline at end of file diff --git a/src/gts.py b/src/gts.py index 20b267c..1a836c7 100644 --- a/src/gts.py +++ b/src/gts.py @@ -254,8 +254,9 @@ def yazar(self) -> str: return _yazar[0]["tam_adi"] class Anlam: - def __init__(self, anlam_sozluk: dict) -> None: + def __init__(self, anlam_sozluk: dict, bStarDict: bool = False) -> None: self.anlam_sozluk = anlam_sozluk + self.bStarDict = bStarDict @cached_property def anlam_sira(self) -> int: @@ -289,6 +290,7 @@ def anlam(self) -> str: @cached_property def anlam_gonderme_baglantili(self) -> str: + baglanti_simge = "↗" if self.bStarDict else "" res = re.search(r"(?:;|►|bk\.)\s?([^.:]+)", self.anlam) if not res: return self.anlam @@ -307,18 +309,19 @@ def anlam_gonderme_baglantili(self) -> str: for j in gonderme_yapilanlar: yeni_tanim = yeni_tanim.replace( j, - f'{j}', + f'{baglanti_simge} {j}', 1 ).replace("► ","") return yeni_tanim class Girdi: def __init__(self, json_girdisi: dict[str,str], duzeltme_imi: DuzeltmeImi, - cekim_sozlukleri: CekimSozlukleri, tpl: Template) -> None: + cekim_sozlukleri: CekimSozlukleri, tpl: Template, bStarDict: bool = False) -> None: self.json_girdisi = json_girdisi self.duzeltme_imi = duzeltme_imi self.cekim_sozlukleri = cekim_sozlukleri self.tpl = tpl + self.bStarDict = bStarDict @property def anlam_html(self) -> str: @@ -401,7 +404,7 @@ def atasozu(self) -> list[str]: def anlam(self) -> list[Anlam]: cikti: list[Anlam] = list() if _anlamlarListe:=self.json_girdisi.get("anlamlarListe"): - cikti = [Anlam(_anlamlar) for _anlamlar in _anlamlarListe] + cikti = [Anlam(_anlamlar, self.bStarDict) for _anlamlar in _anlamlarListe] cikti.sort(key=lambda x: x.anlam_sira) return cikti @@ -421,6 +424,12 @@ def __init__(self, gts_json: Path, cekim_sozlukleri: list[str], self.hunspell_sozlukleri = hunspell_sozlukleri self.cikti_secenegi = CiktiSecenegi(cikti_secenegi) + @cached_property + def bStarDict(self) -> bool: + if self.cikti_secenegi == CiktiSecenegi.StarDict: + return True + return False + @cached_property def InflDicts(self) -> list[InflBase]: infl_dicts: list[InflBase] = list() @@ -513,7 +522,8 @@ def glossary(self) -> Glossary: json_girdisi=x, duzeltme_imi=self.DuzeltmeImi, cekim_sozlukleri=self.CekimSozlukleri, - tpl=self.tpl + tpl=self.tpl, + bStarDict=self.bStarDict ) for x in self.GtsJSON ] @@ -548,6 +558,10 @@ def stardict(self) -> None: if not klasor.exists(): klasor.mkdir() glossary.write(str(dosya_ismi), "Stardict", dictzip=False) + # koreader res/ klasöründeki css dosyasını okuyamıyor. + css_path = klasor / "res" / "stardict_bicem.css" + css_uste = klasor / f"{dosya_ismi.name}.css" + css_uste.write_text(css_path.read_text("utf-8"),"utf-8") def stardict_webkit(self) -> None: glossary = self.glossary() diff --git a/src/tpl/inline.html.j2 b/src/tpl/inline.html.j2 index 2c36389..f20c422 100644 --- a/src/tpl/inline.html.j2 +++ b/src/tpl/inline.html.j2 @@ -1,69 +1,71 @@
- {% if Girdi.telaffuz %} - /{{ Girdi.telaffuz }}/ - {% endif %} - {% if Girdi.lisan %} - Kaynak: {{ Girdi.lisan }} - {% endif %} - {% if Girdi.cogul_mu %} - [ÇOĞUL]  - {% endif %} - {% if Girdi.ozel_mi %} + {%- if Girdi.telaffuz -%} + /{{- Girdi.telaffuz -}}/ + {%- endif -%} + {%- if Girdi.lisan -%} + Kaynak: {{ Girdi.lisan -}} + {%- endif -%} + {%- if Girdi.cogul_mu -%} + [ÇOKLUK]  + {%- endif -%} + {%- if Girdi.ozel_mi -%} [ÖZEL] - {% endif %} + {%- endif -%}
- {% if Girdi.on_taki or Girdi.taki %} - {{ Girdi.on_taki }} {{ Girdi.madde }}, -{{Girdi.taki}} - {% endif %} - {% for Anlam in Girdi.anlam %} + {%- if Girdi.on_taki or Girdi.taki -%} + {{- Girdi.on_taki -}} {{- Girdi.madde -}}, -{{-Girdi.taki-}} + {%- endif -%} + {%- for Anlam in Girdi.anlam -%}
- {% if Girdi.anlam|length > 1 %} - {{ Anlam.anlam_sira }}.  - {% else %} + {%- if Girdi.anlam|length > 1 -%} + {{- Anlam.anlam_sira -}}.  + {%- else -%} - {% endif %} - {% if Anlam.fiil %} + {%- endif -%} + {%- if Anlam.fiil -%} [FİİL]  - {% endif %} - {% if Anlam.ozelliklerListe %} - [ - {% for Ozellik in Anlam.ozelliklerListe %} - {{ "%s" % Ozellik if loop.last else "%s, " % Ozellik }} - {% endfor %} - ] - {% endif %} + {%- endif -%} + {%- if Anlam.ozelliklerListe -%} + [ + {%- for Ozellik in Anlam.ozelliklerListe -%} + {{- "%s" % Ozellik if loop.last else "%s, " % Ozellik -}} + {%- endfor -%} + ]  + {%- endif -%} - {{ Anlam.anlam }} + {{- Anlam.anlam -}} - {% if Anlam.orneklerListe %} + {%- if Anlam.orneklerListe -%}
- {% for _ornek in Anlam.orneklerListe %} - ▪ {{ _ornek.ornek }} - {% if _ornek.yazar %} - — {{ _ornek.yazar }} - {% endif %} - {% endfor %} + {%- for _ornek in Anlam.orneklerListe -%} + ▪ {{ _ornek.ornek -}} + {%- if _ornek.yazar -%} + — {{ _ornek.yazar -}} + {%- endif -%} + {%- endfor -%}
- {% endif %} + {%- endif -%}
- {% endfor %} - {% if Girdi.atasozu %} + {%- endfor -%} + {%- if Girdi.atasozu -%}
- Atasözleri, Deyimler veya Birleşik Fiiller
- {% for a in Girdi.atasozu %} - {{ "%s" % a if loop.last else "%s, " % a }} - {% endfor %} + Atasözleri, Deyimler veya Birleşik Fiiller
+ + {%- for a in Girdi.atasozu -%} + {{- "%s" % a if loop.last else "%s, " % a -}} + {%- endfor -%}
- {% endif %} - {% if Girdi.birlesikler %} + {%- endif -%} + {%- if Girdi.birlesikler -%}
- Birleşik Kelimeler
- {% for a in Girdi.birlesikler %} - {{ "%s" % a if loop.last else "%s, " % a }} - {% endfor %} + Birleşik Kelimeler
+ + {%- for a in Girdi.birlesikler -%} + {{- "%s" % a if loop.last else "%s, " % a -}} + {%- endfor -%}
- {% endif %} + {%- endif -%}
\ No newline at end of file diff --git a/src/tpl/stardict.html.j2 b/src/tpl/stardict.html.j2 index d99fb46..27dd8da 100644 --- a/src/tpl/stardict.html.j2 +++ b/src/tpl/stardict.html.j2 @@ -1,70 +1,70 @@
- {% if Girdi.telaffuz %} - /{{ Girdi.telaffuz }}/ - {% endif %} - {% if Girdi.lisan %} - Kaynak: {{ Girdi.lisan }} - {% endif %} - {% if Girdi.cogul_mu %} - [ÇOĞUL]  - {% endif %} - {% if Girdi.ozel_mi %} + {%- if Girdi.telaffuz -%} + /{{- Girdi.telaffuz -}}/ + {%- endif -%} + {%- if Girdi.lisan -%} + Kaynak: {{ Girdi.lisan -}} + {%- endif -%} + {%- if Girdi.cogul_mu -%} + [ÇOKLUK]  + {%- endif -%} + {%- if Girdi.ozel_mi -%} [ÖZEL] - {% endif %} + {%- endif -%}
- {% if Girdi.on_taki or Girdi.taki %} - {{ Girdi.on_taki }} {{ Girdi.madde }}, -{{Girdi.taki}} - {% endif %} - {% for Anlam in Girdi.anlam %} + {%- if Girdi.on_taki or Girdi.taki -%} + {{- Girdi.on_taki -}} {{- Girdi.madde -}}, -{{-Girdi.taki-}} + {%- endif -%} + {%- for Anlam in Girdi.anlam -%}
- {% if Girdi.anlam|length > 1 %} - {{ Anlam.anlam_sira }}.  - {% else %} + {%- if Girdi.anlam|length > 1 -%} + {{- Anlam.anlam_sira -}}.  + {%- else -%} - {% endif %} - {% if Anlam.fiil %} + {%- endif -%} + {%- if Anlam.fiil -%} [FİİL]  - {% endif %} - {% if Anlam.ozelliklerListe %} + {%- endif -%} + {%- if Anlam.ozelliklerListe -%} [ - {% for Ozellik in Anlam.ozelliklerListe %} - {{ "%s" % Ozellik if loop.last else "%s, " % Ozellik }} - {% endfor %} - ] - {% endif %} + {%- for Ozellik in Anlam.ozelliklerListe -%} + {{- "%s" % Ozellik if loop.last else "%s, " % Ozellik -}} + {%- endfor -%} + ]  + {%- endif -%} - {{ Anlam.anlam_gonderme_baglantili }} + {{- Anlam.anlam_gonderme_baglantili -}} - {% if Anlam.orneklerListe %} + {%- if Anlam.orneklerListe -%}
- {% for _ornek in Anlam.orneklerListe %} - ▪ {{ _ornek.ornek }} - {% if _ornek.yazar %} - — {{ _ornek.yazar }} - {% endif %} - {% endfor %} + {%- for _ornek in Anlam.orneklerListe -%} + ▪ {{ _ornek.ornek -}} + {%- if _ornek.yazar -%} + — {{ _ornek.yazar -}} + {%- endif -%} + {%- endfor -%}
- {% endif %} + {%- endif -%}
- {% endfor %} - {% if Girdi.atasozu %} + {%- endfor -%} + {%- if Girdi.atasozu -%}
Atasözleri, Deyimler veya Birleşik Fiiller - {% for a in Girdi.atasozu %} - {{a}} - {% endfor %} + {%- for a in Girdi.atasozu -%} + {{-a-}} + {%- endfor -%}
- {% endif %} - {% if Girdi.birlesikler %} + {%- endif -%} + {%- if Girdi.birlesikler -%}
Birleşik Kelimeler - {% for a in Girdi.birlesikler %} - {{a}} - {% endfor %} + {%- for a in Girdi.birlesikler -%} + {{-a-}} + {%- endfor -%}
- {% endif %} + {%- endif -%}
\ No newline at end of file diff --git a/src/tpl/stardict_bicem.css b/src/tpl/stardict_bicem.css index 4f36609..4eef602 100644 --- a/src/tpl/stardict_bicem.css +++ b/src/tpl/stardict_bicem.css @@ -71,15 +71,11 @@ span.girinti { } span.ozellik { - display: inline-block; + display: inline; font-style: normal; color: #002BB3; } -/* span.anlam { - -} */ - span.ornek { display: block; margin-left: 1em; @@ -107,14 +103,6 @@ span.birlesikler-baglanti { } a { - text-decoration: underline; - color: black; -} - -a.atasozu { - text-decoration: none; -} - -a.birlesikler { text-decoration: none; + color: black; } \ No newline at end of file diff --git a/src/tpl/stardict_webkit.html.j2 b/src/tpl/stardict_webkit.html.j2 index 557ff2f..8388ec9 100644 --- a/src/tpl/stardict_webkit.html.j2 +++ b/src/tpl/stardict_webkit.html.j2 @@ -1,74 +1,74 @@
- {% if Girdi.telaffuz %} - /{{ Girdi.telaffuz }}/ - {% endif %} - {% if Girdi.lisan %} - {{ Girdi.lisan }} - {% endif %} - {% if Girdi.cogul_mu %} - [ÇOĞUL] - {% endif %} - {% if Girdi.ozel_mi %} + {%- if Girdi.telaffuz -%} + /{{- Girdi.telaffuz -}}/ + {%- endif -%} + {%- if Girdi.lisan -%} + {{- Girdi.lisan -}} + {%- endif -%} + {%- if Girdi.cogul_mu -%} + [ÇOKLUK] + {%- endif -%} + {%- if Girdi.ozel_mi -%} [ÖZEL] - {% endif %} + {%- endif -%}
- {% if Girdi.on_taki or Girdi.taki %} - {{ Girdi.on_taki }} {{ Girdi.madde }}, -{{Girdi.taki}} - {% endif %} - {% for Anlam in Girdi.anlam %} + {%- if Girdi.on_taki or Girdi.taki -%} + {{- Girdi.on_taki -}} {{- Girdi.madde -}}, -{{-Girdi.taki-}} + {%- endif -%} + {%- for Anlam in Girdi.anlam -%}
- {% if Girdi.anlam|length > 1 %} - {{ Anlam.anlam_sira }} - {% else %} + {%- if Girdi.anlam|length > 1 -%} + {{- Anlam.anlam_sira -}} + {%- else -%} - {% endif %} - {% if Anlam.fiil %} + {%- endif -%} + {%- if Anlam.fiil -%} [FİİL] - {% endif %} - {% if Anlam.ozelliklerListe %} + {%- endif -%} + {%- if Anlam.ozelliklerListe -%} - {% for Ozellik in Anlam.ozelliklerListe %} - {{ "%s" % Ozellik if loop.last else "%s, " % Ozellik }} - {% endfor %} + {%- for Ozellik in Anlam.ozelliklerListe -%} + {{- "%s" % Ozellik if loop.last else "%s, " % Ozellik -}} + {%- endfor -%} - {% endif %} + {%- endif -%} - {{ Anlam.anlam_gonderme_baglantili }} + {{- Anlam.anlam_gonderme_baglantili -}} - {% if Anlam.orneklerListe %} + {%- if Anlam.orneklerListe -%}
- {% for _ornek in Anlam.orneklerListe %} - {{ _ornek.ornek }} - {% if _ornek.yazar %} - {{ _ornek.yazar }} - {% endif %} - {% endfor %} + {%- for _ornek in Anlam.orneklerListe -%} + {{- _ornek.ornek -}} + {%- if _ornek.yazar -%} + {{- _ornek.yazar -}} + {%- endif -%} + {%- endfor -%}
- {% endif %} + {%- endif -%}
- {% endfor %} - {% if Girdi.atasozu %} + {%- endfor -%} + {%- if Girdi.atasozu -%}
Atasözleri, Deyimler veya Birleşik Fiiller - {% for a in Girdi.atasozu %} - {% if loop.last %} - {{a}} - {% else %} - {{a}} - {% endif %} - {% endfor %} + {%- for a in Girdi.atasozu -%} + {%- if loop.last -%} + {{-a-}} + {%- else -%} + {{-a-}} + {%- endif -%} + {%- endfor -%}
- {% endif %} - {% if Girdi.birlesikler %} + {%- endif -%} + {%- if Girdi.birlesikler -%}
Birleşik Kelimeler - {% for a in Girdi.birlesikler %} - {{a}} - {% endfor %} + {%- for a in Girdi.birlesikler -%} + {{-a-}} + {%- endfor -%}
- {% endif %} + {%- endif -%}
\ No newline at end of file diff --git a/src/tpl/stardict_webkit_bicem.css b/src/tpl/stardict_webkit_bicem.css index 5732f01..de111f5 100644 --- a/src/tpl/stardict_webkit_bicem.css +++ b/src/tpl/stardict_webkit_bicem.css @@ -99,7 +99,7 @@ span.ozellik::before { } span.ozellik::after { - content: "]"; + content: "]\00A0"; font-style: normal; }