Ich habe eine App namens ** MacNote3 ** als Notebook-App verwendet, die auf einem Mac hierarchisch verwaltet werden kann.
MacNote3 → http://nsek.net/SYW/software/japanese/macnote3/index.html
Ein weiterer Grund, warum ich diese App liebte, war, dass sie eine (manuelle) Synchronisierungsfunktion mit der ** mmNote ** -App auf iOS-Geräten hatte, mit der ich Notizen zwischen meinem Mac und meinem iPhone austauschen konnte. mmNote → http://nsek.net/SYW/software/iPhoneJ/mmnote/index.html
Irgendwann funktionierte mmNote jedoch nicht mehr mit dem iOS-Update und ich suchte nach einer alternativen App, die nur auf meinem Mac verwendet werden konnte.
Die Funktion, die ich wollte
Es war einfach, aber ich konnte nichts finden, das hierarchisch verwaltet werden konnte. (Ich dachte, Microsoft OneNote wäre gut, aber ich habe mich nicht an die Notizen und Abschnitte gewöhnt.)
Zu dieser Zeit hatte ich zufällig einen Freund, der mir eine App namens ** Write ** vorstellte. Write → http://writeapp.net/ Mit Write können Sie Ihre Notizen in mehreren Ebenen verwalten und die Integration zwischen Mac- und iOS-Geräten durch Synchronisierung mit iCloud oder DropBox nutzen.
Noch aufregender ist, dass es die ** MarkDown-Notation ** unterstützt und die Softtastatur des iPhones so konzipiert wurde, dass Sie problemlos nützliche Symbole für MarkDown eingeben können. ** App für MarkDown beachten **. Es unterstützt auch die Vorschaufunktion von MarkDown, die Konvertierungsausgabe in das HTML-Format und die PDF-Ausgabe. Es ist wunderbar.
Es ist eine kostenpflichtige App, aber ich dachte, sie sei nicht teuer. Deshalb habe ich beschlossen, alle drei (Mac-Version, iPhone-Version und iPad-Version separat) zu kaufen und einen vollständigen Übergang vorzunehmen.
Um zu migrieren, müssen Sie jetzt ungefähr 400 (?) Notizen aus MacNote3 entfernen.
Glücklicherweise habe ich keinen Rich-Text verwendet und keine Bilder eingefügt, daher sollte ich nur den Text extrahieren.
Zuerst wollte ich es direkt aus dem von MacNote3 verwendeten Datenordner abrufen, aber die für jede Notiz gespeicherten Daten liegen im XML-Format (?) Und der Textteil in einem Code-konvertierten Format wie BASE64 vor. Also konnte ich es nicht einfach machen. MacNote 3 bietet auch die Möglichkeit, Notizen zu exportieren. Es war jedoch mühsam, dies für jede Notiz manuell zu tun.
Ich wollte aufgeben, aber ich erinnerte mich, dass MacNote3 mit AppleScript kompatibel war, und als ich mir das Glossar von MacNote3 im Skripteditor ansah, gab es Klassen und Methoden, die verwendet werden konnten, also gab es Versuch und Irrtum, aber das Ergebnis Mit einem einfachen Skript konnte ich den Text aller Notizen gleichzeitig abrufen.
Ich habe ein Skript erstellt, das den Titel und den Text einer Notiz herausnimmt, jede Trennlinie hinzufügt und sie in eine Textdatei ausgibt. Wenn Sie können, können Sie dies mit einer so geringen Anzahl von Zeilen tun.
ManNote3export.scpt
tell application "MacNote3"
set titleList to ""
set saveFile to choose file name
open for access saveFile with write permission
set allPages to all pages
repeat with aPage in allPages
set pTitle to title of aPage
set pText to text of aPage
write "== MacNote title ==" & return to saveFile
write pTitle & return to saveFile
write "== MacNote text ==" & return to saveFile
write pText & return to saveFile
write "== MacNote end ==" & return to saveFile
set titleList to titleList & pTitle & return
end repeat
close access saveFile
display dialog "Der Export ist beendet."
set the clipboard to titleList
end tell
Da der Zeichencode der von AppleScript extrahierten Textdaten SHIFT-JIS ist, konvertieren Sie ihn mit einem Texteditor, der den Zeichencode konvertieren kann, in UTF-8. (Als ich es in der Befehlszeile mit iconv konvertierte, wurde eine Fehlermeldung angezeigt, da die internen Daten falsch waren, sodass ich es problemlos mit Jedit X konvertieren konnte.)
In den Daten von MacNote3 war der Ordner (Trennung der Hierarchie) wie Notizdaten ohne Text. Verwenden Sie ihn also, erstellen Sie einen Ordner, machen Sie eine Notiz darin als eine Datei und geben Sie den Titel an Ich habe ein Programm in Python geschrieben, das Textdaten mit Dateinamen erstellt und Notizen sofort konvertiert.
Danach warf ich es in den Write-Ordner von DropBox und synchronisierte es mit meinem Mac, iPhone und iPad.
Zuerst habe ich versucht, es mit AppleScript zu tun, aber ich habe den Dreh raus, und Write war nicht AppleScript-konform. Als ich in Perl schrieb, was ich nicht gewohnt war, sagte mir ein Bekannter, dass "Python einfach ist". Als ich es während des Studiums mit Informationen im Web schrieb, war es relativ einfach, wie empfohlen.
Ich bin neu in Python, daher ist es kindisch und peinlich, aber ich habe beschlossen, es in der Hoffnung auf Ratschläge aufzudecken. Vorschläge, Ratschläge oder Vorschläge sind willkommen.
SepNote.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
import codecs
import os
odir = 'MacNote'
otitle = ""
odata = ""
ostart = 0
fin = codecs.open('conv.txt','r','utf-8')
for row in fin:
linedata = row.rstrip()
if '== MacNote title ==' in linedata:
ostart = 1
elif '== MacNote text ==' in linedata:
ostart = 2
elif '== MacNote end ==' in linedata:
if len(odata)< 2:
odir = otitle
else:
if not os.path.exists(odir): os.mkdir(odir)
ofname = otitle.replace('/', '_')
if len(ofname)>20: ofname = ofname[0:20]
ofneme = odir + '/' + ofname + '.txt'
fout_utf = codecs.open(ofneme,'w','utf-8')
fout_utf.write(u'■' + otitle + '\n')
fout_utf.write(odata)
fout_utf.close()
otitle = ''
odata = ''
ostart = 0
elif ostart == 1:
otitle = linedata
odata = ''
else:
odata = odata + linedata + '\n'
fin.close()
Recommended Posts