Wie entferne ich Nikkud (Vokalzeichen) aus einem Word 2016-Dokument?

Ich arbeite an einem Kommentar zur Ethik der Väter und möchte, dass die Leser die Quellen, die ich zitiere, in ihrem hebräischen Original lesen können. Ich bekomme die meisten meiner Quellen von sefaria.org und leider haben viele der Quellen Nekudos (Vokalzeichen), während die meisten von ihnen dies nicht tun. Aus Gründen der Konsistenz und Professionalität möchte ich, dass alle Quellen keine Nekudos enthalten.

Zum Beispiel diese Zeile: מֹשֶׁה קִבֵּל תּוֹרָה מִסִּינַי. אוֹמֵר אֲנִי, לְפִי שֶׁמַּסֶּכֶת זוֹ sollte משה קבל תורה מסיני sein. אומר אני שמסכת זו. Ich erwarte, dass ich das hunderte Male machen muss, also brauche ich etwas Schnelles. Jemand hat mir einmal ein Dokument mit Makros erstellt, um dies zu tun, aber es funktioniert nicht mit Word 2016. Hat jemand anderes eine effiziente Möglichkeit, dies zu tun? Ich danke dir sehr.

Kann bitte jemand Hebräisch als Tag hinzufügen? Ich kann es noch nicht. Vielen Dank.
Hast du es mit Notepad++ versucht?
Ein paar Tags hinzugefügt. Hilft das? Vielleicht möchten Sie versuchen, in der hebräischen Community oder der SuperUser-Community von Stack Exchange nachzusehen. Ich wünschte, ich könnte einen direkten Link zu einer der beiden Communitys finden, aber ich bin schnell auf diese Frage gestoßen. Nicht sicher, ob es relevant ist. superuser.com/questions/769204/hebrew-nikkud-on-ms-word
@BugFolk Ich habe die Tags so geändert, dass sie [microsoft-word] und [formatting] enthalten. Hebräisch ist als Tag nicht geeignet, da sich die Frage zwar auf Vokalzeichen auf Hebräisch bezieht, aber leicht auf jede Sprache angewendet werden kann. Außerdem ist „Hebräisch“ kein Tag, und es empfiehlt sich, das Erstellen von Tags nach Möglichkeit zu vermeiden. Ebenso passten die Tags [Software] und [Sprache] nicht zu der Frage, die weder nach einer Sprache noch speziell nach Software fragte. Das OP hat speziell nach MS Word gefragt, das ist also ein weitaus besseres Tag als "Software".
Okay. Gut zu wissen.

Antworten (4)

Eine schnelle Google-Suche auf hebrew remove nikkudgab eine Antwort.

Auf Github gibt es ein JavaScript mit einem Live -Vorschaucode . Wenn es sich um wenig Text handelt, können Sie das JavaScript entweder online verwenden oder herunterladen und auf Ihrem PC verwenden (speichern unter .js).

Die hebräischen Charcodes liegen alle zwischen 1425 und 1479 und die Nikkud zwischen 0591 und 05C7.

Python-Implementierung (getestet):

import unicodedata
# nikkud-test.txt is the file you save your text in.
f= open('nikkud-test.txt','r', encoding='utf-8') 
content = f.read()
normalized=unicodedata.normalize('NFKD', content)
no_nikkud=''.join([c for c in normalized if not unicodedata.combining(c)])
no_nikkud
f.close()
f = open('no-nikkud-test.txt','w',encoding='utf-8')
fw = f.write(no_nikkud)
f.close()

Das funktioniert sehr schnell.

AKTUALISIERT: Wie verwende ich dieses Skript?

  1. Laden Sie Python 3.xx von python.org herunter
  2. Speichern Sie Ihren Nikkud-Text nikkud-test.txtin einem beliebigen Verzeichnis
  3. Starten Sie aus dem Startmenü Ihre cmdShell/Eingabeaufforderung/Terminal.
  4. Wechseln Sie in das Verzeichnis, in dem Sie Ihre Datei gespeichert haben, indem Sie cdgefolgt vom Verzeichnis eingeben
  5. Geben Sie eine Konsole pythonein oder öffnen Sie sie.iPython
  6. Skript kopieren + einfügen
  7. no-nikkud-test.txtwird im selben Verzeichnis angezeigt

UPDATE ohne Terminal (Getestet mit Python 3.5 IDLE und iPython)

  1. Laden Sie Python 3.5 oder höher von python.org herunter
  2. Speichern Sie Ihren niqqud-Text niqqud.txtin Ihrem Dokumentenordner. (Windows/Mac)
  3. Öffnen Sie IDLE aus dem Startmenü. (Alternativ verwenden Sie iPython )

Kopieren Sie die folgende Funktion und fügen Sie sie ein:

def hasar_niqqud(source="niqqud.txt"):
    """This function removes niqqud vowel diacretics from Hebrew.
    @param source: The source filename with .txt extension."""
    import os, unicodedata
    path  = os.path.expanduser('~/Documents/'+str(source))
    f= open(path,'r', encoding='utf-8')
    content = f.read()
    normalized=unicodedata.normalize('NFKD', content)
    no_niqqud=''.join([c for c in normalized if not unicodedata.combining(c)])
    f.close()
    path  = os.path.expanduser('~/Documents/'+str(source)[:-4]+"-removed.txt")
    f = open(path,'w',encoding='utf-8')
    f.write(no_niqqud)
    f.close()

Führen Sie dann die Funktion mit diesem Code aus:

hasar_niqqud()

Das ist es! Sie finden die Ausgabe im Ordner Dokumenteniqqud-removed.txt

Ich danke dir sehr. Ich kenne mich mit Codierung nicht aus. Wie verwende ich das?
Könnten Sie für diejenigen von uns, die technisch herausgefordert sind, erklären, wo Python3 heruntergeladen und wie eine cmdShell gestartet werden kann?
Aktualisiert. Die Eingabeaufforderung wird auf anderen Systemen auch als Terminal bezeichnet. Es ist nicht so schwer, wie es scheint. Es ist anfangs nur ein wenig überwältigend.
Ich weiß nicht. Ich habe eine Weile damit verbracht, diese Anweisungen zu befolgen, und ich erhalte ständig Fehlercodes. Ich weiß wirklich nichts über die Verwendung dieser Art von Programmen.
Versuchen Sie, iPython zu installieren ipython.org/install.html Es hat eine bessere Schnittstelle als das Terminal.
Ein vereinfachtes Tutorial hinzugefügt, ohne dass das Terminal benötigt wird. Ich werde das frühere Tutorial entfernen, wenn es zu kompliziert ist (?). Ich muss sagen, ich habe ziemlich viel über Hebräisch gelernt :)

Ich habe genau das gleiche gesucht. Ich habe herumgegraben und Wege gefunden, dies außerhalb von Word zu tun, wollte dies aber wirklich tun, ohne Word zu verlassen. Habe noch etwas gelesen und festgestellt, dass der Schlüssel darin besteht, ein Suchen und Ersetzen auszuführen und nach den Vokalzeichen im hebräischen Unicode-Block zu suchen. Ich wollte maqqef und sof pasuq behalten, also musste ich drei separate Bereiche verwenden (wenn Sie diese Zeichen nicht wollen, können Sie dies zu einer Suche für den gesamten Bereich 1425-1479 vereinfachen). Die Ergebnisse sind unten. Wenn Sie Text auswählen und das Makro ausführen, gilt es nur für die Auswahl. Wenn Sie keine Auswahl haben, wird es bis zum Ende des Dokuments ausgeführt.

Sub HebrewDevocalizer()
With Selection.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = "[" & ChrW(1425) & "-" & ChrW(1469) & "]"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindStop
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchKashida = False
    .MatchDiacritics = False
    .MatchAlefHamza = False
    .MatchControl = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll

With Selection.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = "[" & ChrW(1471) & "-" & ChrW(1474) & "]"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindStop
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchKashida = False
    .MatchDiacritics = False
    .MatchAlefHamza = False
    .MatchControl = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll

With Selection.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = "[" & ChrW(1476) & "-" & ChrW(1479) & "]"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindStop
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchKashida = False
    .MatchDiacritics = False
    .MatchAlefHamza = False
    .MatchControl = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Falls Ihre Liste in Excel ist, können Sie dieses Makro verwenden (basierend auf dem Vorschlag von Jonathan Potter). Wählen Sie einen Zellbereich aus und führen Sie dann das Makro in VBEditor aus.

Sub HebrewDevocalizer()
Dim i As Integer

    For i = 1425 To 1469
        Selection.Replace What:=ChrW(i), Replacement:="", LookAt:=xlPart, _
            SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Next i
    For i = 1471 To 1474
        Selection.Replace What:=ChrW(i), Replacement:="", LookAt:=xlPart, _
            SearchOrder:=xlByColumns, MatchCase:=False
    Next i
    For i = 1476 To 1479
        Selection.Replace What:=ChrW(i), Replacement:="", LookAt:=xlPart, _
            SearchOrder:=xlByColumns, MatchCase:=False
    Next i

End Sub

Ich suchte nach einer App, die den Nikud (Vokale) für Wörter bereitstellt, die ich zum Erstellen eines Glossars verwendete. Sobald ich jedoch die Wörter in dieser Form hatte, konnte ich sie nicht mehr sortieren (wie wir an diesen Fragen erkennen können).

Dieselbe App, https://nakdan.dicta.org.il/ erlaubt es dem Benutzer jedoch auch, die „moderne hebräische“ Version auszuwählen, und wenn Sie auf לחץ כאן (hier klicken) klicken, erscheint ein kleines Dialogfeld. Klicken Sie auf das schwarze Kästchen, das Sie im Grunde zu einer anderen Version führt, um Vokale hinzuzufügen, es löscht dann tatsächlich alle Vokale, die Sie dort hatten.

Möglicherweise müssen Sie ein wenig damit herumspielen, um den Dreh raus zu bekommen und/oder es in Teilen tun.

Dann können Sie einfach kopieren und in eine temporäre Spalte in Ihre Tabelle einfügen, um sie zum Sortieren zu verwenden. Löschen Sie diese Spalte nach der endgültigen Sortierung.

Probieren Sie das für eine Problemumgehung aus!

Grüße Madeleine

Hallo Madeleine, willkommen bei writing.se! Nehmen Sie an der Tour teil und besuchen Sie das Hilfezentrum für weitere Informationen. Dies ist eine nette erste Antwort, danke für die Teilnahme und viel Spaß beim Schreiben!
Hier ist eine Webseite, die Nikud entfernt: eshkol.net/Nikud/Default.aspx הסרת ניקוד Hasarat Nikkud