mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-01-17 06:05:29 +01:00
Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
99aabb2453
21 changed files with 294 additions and 107 deletions
2
.github/CONTRIBUTING.md
vendored
2
.github/CONTRIBUTING.md
vendored
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
## NPM dependencies
|
||||
|
||||
Install pnpm: `npm install -g pnpm@10.27.0`
|
||||
Install pnpm: `npm install -g pnpm@10.28.0`
|
||||
|
||||
<details>
|
||||
<summary>For China mainland</summary>
|
||||
|
|
|
|||
2
.github/CONTRIBUTING_zh_CN.md
vendored
2
.github/CONTRIBUTING_zh_CN.md
vendored
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
## NPM 依赖
|
||||
|
||||
安装 pnpm:`npm install -g pnpm@10.27.0`
|
||||
安装 pnpm:`npm install -g pnpm@10.28.0`
|
||||
|
||||
<details>
|
||||
<summary>适用于中国大陆</summary>
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "السحب إلى العنوان الفرعي غير معتمد",
|
||||
"242": "المساحة المتاحة حاليا هي [%s]، على الأقل [%s] مطلوب لتنفيذ هذه العملية",
|
||||
"243": "تم عرض أول [%d] علامات (بما في ذلك العلامات الفرعية) فقط، للتعديل يرجى الانتقال إلى [الإعدادات - شجرة المستندات - الحد الأقصى لعدد العناصر المعروضة]",
|
||||
"244": "لم تكتمل فهرسة البيانات بعد الاستخدام الأخير. الرجاء تنفيذ [شجرة المستندات -إعادة إنشاء فهرس البيانات]. الرجاء الخروج من البرنامج بالكامل قبل إغلاق الكمبيوتر",
|
||||
"245": "لم تكتمل فهرسة البيانات بعد الاستخدام الأخير. الرجاء تنفيذ [Doc Tree - إعادة إنشاء فهرس البيانات]. الرجاء استخدام [الخروج من التطبيق] في لوحة العمود الأيمن للخروج عادة",
|
||||
"244": "لم تكتمل فهرسة البيانات بعد الاستخدام الأخير. الرجاء تنفيذ [الإعدادات - حول - إعادة إنشاء فهرس البيانات]. الرجاء الخروج من البرنامج بالكامل قبل إغلاق الكمبيوتر",
|
||||
"245": "لم تكتمل فهرسة البيانات بعد الاستخدام الأخير. الرجاء تنفيذ [الإعدادات - حول - إعادة إنشاء فهرس البيانات]. الرجاء استخدام [الخروج من التطبيق] في لوحة العمود الأيمن للخروج عادة",
|
||||
"246": "لا يمكن أن يحتوي عنوان المستند على / وقد تم استبداله بـ _",
|
||||
"247": "الملف [%s] أكبر من الحد الأقصى [%s]، وقد تم تجاهله للرفع إلى السحابة",
|
||||
"248": "العنوان المستهدف يقع في كتلة الحاوية ولا يمكن استخدامه كنقطة إسقاط",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Ziehen zu seiner Unterüberschrift wird nicht unterstützt",
|
||||
"242": "Derzeit verfügbarer Speicherplatz beträgt [%s], mindestens [%s] sind erforderlich, um diese Operation auszuführen",
|
||||
"243": "Nur die ersten [%d] Tags (einschließlich Untertags) auflisten, falls Sie anpassen müssen, bitte ändern [Einstellungen - Dokumentbaum - Maximale Anzahl aufzulistender]",
|
||||
"244": "Die Datenindizierung wurde nach der letzten Nutzung nicht abgeschlossen. Bitte führen Sie [Dokumentbaum - Index neu aufbauen] aus. Bitte beenden Sie das Programm vollständig, bevor Sie den Computer herunterfahren",
|
||||
"245": "Die Datenindizierung wurde nach der letzten Nutzung nicht abgeschlossen. Bitte führen Sie [Dokumentbaum - Index neu aufbauen] aus. Bitte verwenden Sie [Anwendung beenden] im rechten Spaltenpanel, um normal zu beenden.",
|
||||
"244": "Die Datenindizierung wurde nach der letzten Nutzung nicht abgeschlossen. Bitte führen Sie [Einstellungen - Über - Index neu aufbauen] aus. Bitte beenden Sie das Programm vollständig, bevor Sie den Computer herunterfahren",
|
||||
"245": "Die Datenindizierung wurde nach der letzten Nutzung nicht abgeschlossen. Bitte führen Sie [Einstellungen - Über - Index neu aufbauen] aus. Bitte verwenden Sie [Anwendung beenden] im rechten Spaltenpanel, um normal zu beenden.",
|
||||
"246": "Der Dokumenttitel darf das /-Zeichen nicht enthalten und wurde durch _ ersetzt.",
|
||||
"247": "Datei [%s] ist größer als die maximale Grenze [%s] und wurde beim Hochladen in die Cloud ignoriert.",
|
||||
"248": "Die Zielfüberschrift befindet sich im Containerblock und kann nicht als Ablagepunkt verwendet werden.",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Drag to its subheading is not supported",
|
||||
"242": "Currently available space is [%s], at least [%s] is required to perform this operation",
|
||||
"243": "Only list the first [%d] tags (including subtags), if you need to adjust, please modify [Settings - Doc Tree - Maximum number to list]",
|
||||
"244": "Data indexing was not completed after the last use. Please execute [Doc Tree - Rebuild Index]. Please exit the program completely before shutting down the computer",
|
||||
"245": "Data indexing was not completed after the last use. Please execute [Doc Tree - Rebuild Index]. Please use [Exit Application] in the right column panel to exit normally",
|
||||
"244": "Data indexing was not completed after the last use. Please execute [Settings - About - Rebuild Index]. Please exit the program completely before shutting down the computer",
|
||||
"245": "Data indexing was not completed after the last use. Please execute [Settings - About - Rebuild Index]. Please use [Exit Application] in the right column panel to exit normally",
|
||||
"246": "The document title cannot contain / and has been replaced with _",
|
||||
"247": "File [%s] is larger than the maximum limit [%s], and has been ignored for uploading to the cloud",
|
||||
"248": "The target heading is located in the container block and cannot be used as a drop point",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "No se admite arrastrar a su subtítulo",
|
||||
"242": "Espacio disponible actualmente [%s], se requiere al menos [%s] para realizar esta operación",
|
||||
"243": "Enumere solo las primeras [%d] etiquetas (incluidas las subetiquetas), modifique [Configuración - Documentos - Número máximo a listar]",
|
||||
"244": "La indexación de datos no se ha completado desde el último uso. Ejecute [Documentos - Reconstruir índice] una vez. En el futuro, salga completamente del programa antes de apagar la computadora.",
|
||||
"245": "La indexación de datos no se ha completado desde el último uso. Ejecute [Documentos - Reconstruir índice] una vez. Utilice [Salir de la aplicación] en el panel de la columna derecha para salir normalmente",
|
||||
"244": "La indexación de datos no se ha completado desde el último uso. Ejecute [Configuración - Acerca de - Reconstruir índice] una vez. En el futuro, salga completamente del programa antes de apagar la computadora.",
|
||||
"245": "La indexación de datos no se ha completado desde el último uso. Ejecute [Configuración - Acerca de - Reconstruir índice] una vez. Utilice [Salir de la aplicación] en el panel de la columna derecha para salir normalmente",
|
||||
"246": "El título del documento no puede contener / y ha sido reemplazado por _",
|
||||
"247": "El archivo [%s] es más grande que el límite máximo [%s] y se ha ignorado para cargarlo en la nube",
|
||||
"248": "El rumbo de destino está ubicado en el bloque contenedor y no puede usarse como punto de entrega",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Le glisser vers son sous-titre n'est pas pris en charge",
|
||||
"242": "Espace actuellement disponible [%s], au moins [%s] est requis pour effectuer cette opération",
|
||||
"243": "Répertorier uniquement les [%d] premières balises (y compris les sous-balises). veuillez modifier [Paramètres - Arbre des documents - Nombre maximum de documents à lister].",
|
||||
"244": "L'indexation des données n'a pas été terminée depuis la dernière utilisation. Veuillez exécuter [Arborescence des documents - Reconstruire l'index] une fois. À l'avenir, veuillez quitter complètement le programme avant d'éteindre l'ordinateur.",
|
||||
"245": "L'indexation des données n'a pas été terminée depuis la dernière utilisation. Veuillez exécuter [Arborescence des documents - Reconstruire l'index] une fois. Veuillez utiliser [Quitter l'application] dans le panneau de la colonne de droite pour quitter normalement",
|
||||
"244": "L'indexation des données n'a pas été terminée depuis la dernière utilisation. Veuillez exécuter [Paramètres - À propos de - Reconstruire l'index] une fois. À l'avenir, veuillez quitter complètement le programme avant d'éteindre l'ordinateur.",
|
||||
"245": "L'indexation des données n'a pas été terminée depuis la dernière utilisation. Veuillez exécuter [Paramètres - À propos de - Reconstruire l'index] une fois. Veuillez utiliser [Quitter l'application] dans le panneau de la colonne de droite pour quitter normalement",
|
||||
"246": "Le titre du document ne peut pas contenir / et a été remplacé par _",
|
||||
"247": "Le fichier [%s] est plus grand que la limite maximale [%s] et a été ignoré pour le téléchargement vers le cloud",
|
||||
"248": "Le cap cible est situé dans le bloc conteneur et ne peut pas être utilisé comme point de dépôt",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "אין תמיכה בגרירה לתת הכותרת",
|
||||
"242": "מעט מקום נותר [%s], נדרש לפחות [%s] כדי לבצע פעולה זו",
|
||||
"243": "רק רשום את %d התגים הראשונים (כולל תתי תגים), אם יש צורך להתאים, אנא שנה את [הגדרות - עץ המסמכים - מספר מקסימלי לרשימה]",
|
||||
"244": "אינדוקס הנתונים לא הושלם לאחר השימוש האחרון. אנא הפעל את [עץ מסמכים - שכתוב אינדקס]. אנא צא מהתוכנית לחלוטין לפני כיבוי המחשב.",
|
||||
"245": "אינדוקס הנתונים לא הושלם לאחר השימוש האחרון. אנא זכור לבצע [עץ המסמכים - שחזור אינדקס]. אנא השתמש [צא מהאפליקציה] בפאנל הטורי הימני כדי לצאת על פי סדר",
|
||||
"244": "אינדוקס הנתונים לא הושלם לאחר השימוש האחרון. אנא הפעל את [הגדרות - אודות - שכתוב אינדקס]. אנא צא מהתוכנית לחלוטין לפני כיבוי המחשב.",
|
||||
"245": "אינדוקס הנתונים לא הושלם לאחר השימוש האחרון. אנא זכור לבצע [הגדרות - אודות - שחזור אינדקס]. אנא השתמש [צא מהאפליקציה] בפאנל הטורי הימני כדי לצאת על פי סדר",
|
||||
"246": "כותרת המסמך לא יכולה להכיל / והחלפה ב- _ ",
|
||||
"247": "הקובץ [%s] גדול יותר מהמגבלה המקסימלית [%s], והוזנח להעלות בענן",
|
||||
"248": "הכותרת היעד ממוקמת בבלוק המיכל ואינה יכולה לשמש כנקודת זרימה",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Trascinare nel suo sottotitolo non è supportato",
|
||||
"242": "Lo spazio attualmente disponibile è [%s], è necessario almeno [%s] per eseguire questa operazione",
|
||||
"243": "Elencare solo i primi [%d] tag (inclusi i sottotag); se è necessario regolare, si prega di modificare [Impostazioni - Albero Documenti - Numero massimo da elencare]",
|
||||
"244": "L'indicizzazione dei dati non è stata completata dopo l'ultimo utilizzo. Si prega di eseguire [Albero Documenti - Ricostruisci Indice]. Si prega di uscire completamente dal programma prima di spegnere il computer",
|
||||
"245": "L'indicizzazione dei dati non è stata completata dopo l'ultimo utilizzo. Si prega di eseguire [Albero Documenti - Ricostruisci Indice]. Si prega di utilizzare [Esci dall'applicazione] nel pannello della colonna destra per uscire normalmente",
|
||||
"244": "L'indicizzazione dei dati non è stata completata dopo l'ultimo utilizzo. Si prega di eseguire [Impostazioni - Informazioni - Ricostruisci Indice]. Si prega di uscire completamente dal programma prima di spegnere il computer",
|
||||
"245": "L'indicizzazione dei dati non è stata completata dopo l'ultimo utilizzo. Si prega di eseguire [Impostazioni - Informazioni - Ricostruisci Indice]. Si prega di utilizzare [Esci dall'applicazione] nel pannello della colonna destra per uscire normalmente",
|
||||
"246": "Il titolo del documento non può contenere / ed è stato sostituito con _",
|
||||
"247": "Il file [%s] è più grande del limite massimo [%s] ed è stato ignorato per il caricamento nel cloud",
|
||||
"248": "L'intestazione di destinazione si trova nel blocco contenitore e non può essere utilizzata come punto di rilascio",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "小見出しへのドラッグはサポートされていません",
|
||||
"242": "現在利用可能なスペースは [%s] です。この操作を実行するには少なくとも [%s] が必要です",
|
||||
"243": "最初の [%d] 個のタグ (サブタグを含む) のみを表示します。調整が必要な場合は [設定] - [ドキュメントツリー] - [リストする最大数] を変更してください",
|
||||
"244": "前回の使用以降、データのインデックス作成が完了していません。[ドキュメントツリー] - [インデックスの再構築] を一度実行してください。今後は、コンピューターをシャットダウンする前にプログラムを完全に終了してください。",
|
||||
"245": "前回の使用以降、データのインデックス作成が完了していません。[ドキュメントツリー] - [インデックスの再構築] を一度実行してください。正常に終了するには、右側のパネルから [アプリケーションの終了] を使用してください。",
|
||||
"244": "前回の使用以降、データのインデックス作成が完了していません。[設定] - [情報] - [インデックスの再構築] を一度実行してください。今後は、コンピューターをシャットダウンする前にプログラムを完全に終了してください。",
|
||||
"245": "前回の使用以降、データのインデックス作成が完了していません。[設定] - [情報] - [インデックスの再構築] を一度実行してください。正常に終了するには、右側のパネルから [アプリケーションの終了] を使用してください。",
|
||||
"246": "ドキュメントのタイトルに / を含めることはできません。_ に置き換えられました",
|
||||
"247": "ファイル [%s] は制限サイズ [%s] を超えているためアップロードされませんでした",
|
||||
"248": "目標の見出しがコンテナブロック内にあるためドロップできません",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "자체 하위 제목으로 드래그하는 것은 지원되지 않습니다",
|
||||
"242": "현재 사용 가능한 공간은 [%s]이며, 이 작업을 수행하려면 최소 [%s]가 필요합니다",
|
||||
"243": "처음 [%d]개 태그(하위 태그 포함)만 나열합니다. 조정하려면 [설정 - 문서 트리 - 목록 최대 수]를 수정하세요",
|
||||
"244": "마지막 사용 후 데이터 인덱싱이 완료되지 않았습니다. [문서 트리 - 인덱스 재생성]을 실행하세요. 컴퓨터를 종료하기 전에 프로그램을 완전히 종료하세요",
|
||||
"245": "마지막 사용 후 데이터 인덱싱이 완료되지 않았습니다. [문서 트리 - 인덱스 재생성]을 실행하세요. 정상적으로 종료하려면 오른쪽 열 패널의 [애플리케이션 종료]를 사용하세요",
|
||||
"244": "마지막 사용 후 데이터 인덱싱이 완료되지 않았습니다. [설정 - 정보 - 인덱스 재생성]을 실행하세요. 컴퓨터를 종료하기 전에 프로그램을 완전히 종료하세요",
|
||||
"245": "마지막 사용 후 데이터 인덱싱이 완료되지 않았습니다. [설정 - 정보 - 인덱스 재생성]을 실행하세요. 정상적으로 종료하려면 오른쪽 열 패널의 [애플리케이션 종료]를 사용하세요",
|
||||
"246": "문서 제목에는 /가 포함될 수 없으며 _로 대체되었습니다",
|
||||
"247": "파일 [%s]이(가) 최대 제한 [%s]보다 크므로 클라우드 업로드가 무시되었습니다",
|
||||
"248": "대상 제목이 컨테이너 블록에 있으며 놓기 지점으로 사용할 수 없습니다",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Przeciąganie do podtytułu nie jest obsługiwane",
|
||||
"242": "Obecnie dostępna przestrzeń to [%s], co najmniej [%s] jest wymagane do wykonania tej operacji",
|
||||
"243": "Tylko wymień pierwsze [%d] tagów (w tym podtagi), jeśli potrzebujesz dostosować, proszę zmodyfikować [Ustawienia - Drzewo dokumentów - Maksymalna liczba do wyświetlenia]",
|
||||
"244": "Indeksowanie danych nie zostało zakończone po ostatnim użyciu. Proszę wykonać [Drzewo dokumentów - Przebudowa indeksu]. Proszę całkowicie wyjść z programu przed zamknięciem komputera",
|
||||
"245": "Indeksowanie danych nie zostało zakończone po ostatnim użyciu. Proszę wykonać [Drzewo dokumentów - Przebudowa indeksu]. Proszę użyć [Zamknij aplikację] w prawym panelu bocznym, aby wyjść normalnie",
|
||||
"244": "Indeksowanie danych nie zostało zakończone po ostatnim użyciu. Proszę wykonać [Ustawienia - O programie - Przebudowa indeksu]. Proszę całkowicie wyjść z programu przed zamknięciem komputera",
|
||||
"245": "Indeksowanie danych nie zostało zakończone po ostatnim użyciu. Proszę wykonać [Ustawienia - O programie - Przebudowa indeksu]. Proszę użyć [Zamknij aplikację] w prawym panelu bocznym, aby wyjść normalnie",
|
||||
"246": "Tytuł dokumentu nie może zawierać / i został zastąpiony _",
|
||||
"247": "Plik [%s] jest większy niż maksymalne ograniczenie [%s], i został zignorowany przy przesyłaniu do chmury",
|
||||
"248": "Docelowy nagłówek znajduje się w bloku kontenera i nie może być użyty jako punkt upuszczenia",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Arrastar para seu subcabeçalho não é suportado",
|
||||
"242": "Espaço disponível atual é [%s], pelo menos [%s] é necessário para realizar esta operação",
|
||||
"243": "Apenas listando as primeiras [%d] tags (incluindo subtags), se precisar ajustar, modifique [Configurações - Árvore de Documentos - Número máximo para listar]",
|
||||
"244": "A indexação de dados não foi concluída após o último uso. Por favor execute [Árvore de Documentos - Reconstruir Índice]. Por favor, saia completamente do programa antes de desligar o computador",
|
||||
"245": "A indexação de dados não foi concluída após o último uso. Por favor execute [Árvore de Documentos - Reconstruir Índice]. Por favor use [Sair do Aplicativo] no painel da coluna direita para sair normalmente",
|
||||
"244": "A indexação de dados não foi concluída após o último uso. Por favor execute [Configurações - Sobre - Reconstruir Índice]. Por favor, saia completamente do programa antes de desligar o computador",
|
||||
"245": "A indexação de dados não foi concluída após o último uso. Por favor execute [Configurações - Sobre - Reconstruir Índice]. Por favor use [Sair do Aplicativo] no painel da coluna direita para sair normalmente",
|
||||
"246": "O título do documento não pode conter / e foi substituído por _",
|
||||
"247": "O arquivo [%s] é maior que o limite máximo [%s], e foi ignorado para upload na nuvem",
|
||||
"248": "O cabeçalho de destino está localizado no bloco de contêiner e não pode ser usado como ponto de soltura",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Недоступно перетаскивание в его подзаголовок",
|
||||
"242": "Текущее доступное пространство [%s], для выполнения данной операции потребуется как минимум [%s]",
|
||||
"243": "Перечислить только первые [%d] меток (включая подметки), если нужно изменить, пожалуйста, измените [Настройки - Дерево документов - Максимальное количество для отображения]",
|
||||
"244": "Индексация данных не была завершена после последнего использования. Пожалуйста, выполните [Дерево документов - Восстановить индекс]. Пожалуйста, полностью закройте программу перед выключением компьютера",
|
||||
"245": "Индексация данных не была завершена после последнего использования. Пожалуйста, выполните [Дерево документов - Восстановить индекс]. Пожалуйста, используйте [Выход из приложения] в правой боковой панели для нормального выхода",
|
||||
"244": "Индексация данных не была завершена после последнего использования. Пожалуйста, выполните [Настройки - О программе - Восстановить индекс]. Пожалуйста, полностью закройте программу перед выключением компьютера",
|
||||
"245": "Индексация данных не была завершена после последнего использования. Пожалуйста, выполните [Настройки - О программе - Восстановить индекс]. Пожалуйста, используйте [Выход из приложения] в правой боковой панели для нормального выхода",
|
||||
"246": "Название документа не может содержать / и было заменено на _",
|
||||
"247": "Файл [%s] больше максимального ограничения [%s] и был проигнорирован для загрузки в облако",
|
||||
"248": "Целевой заголовок находится в контейнерном блоке и не может использоваться как пункт сброса",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "Alt başlığa sürükleme desteklenmiyor",
|
||||
"242": "Kullanılabilir alan [%s], bu işlem için en az [%s] gereklidir",
|
||||
"243": "Yalnızca ilk [%d] etiketi (alt etiketler dahil) listelenir. Ayarlamak istersen [Ayarlar - Belge Ağacı - Maksimum liste sayısı] kısmını düzenle",
|
||||
"244": "Son kullanımda veri indeksleme tamamlanmadı. Lütfen [Belge Ağacı - Dizin Yeniden Oluştur] işlemini yap. Bilgisayarı kapatmadan önce programı tamamen kapat",
|
||||
"245": "Son kullanımda veri indeksleme tamamlanmadı. Lütfen [Belge Ağacı - Dizin Yeniden Oluştur] işlemini yap. Normal çıkış için sağ paneldeki [Uygulamadan Çık] seçeneğini kullan",
|
||||
"244": "Son kullanımda veri indeksleme tamamlanmadı. Lütfen [Ayarlar - Hakkında - Dizin Yeniden Oluştur] işlemini yap. Bilgisayarı kapatmadan önce programı tamamen kapat",
|
||||
"245": "Son kullanımda veri indeksleme tamamlanmadı. Lütfen [Ayarlar - Hakkında - Dizin Yeniden Oluştur] işlemini yap. Normal çıkış için sağ paneldeki [Uygulamadan Çık] seçeneğini kullan",
|
||||
"246": "Belge başlığı / karakterini içeremez, _ ile değiştirildi",
|
||||
"247": "Dosya [%s] maksimum sınır [%s] değerini aştı, buluta yükleme sırasında yoksayıldı",
|
||||
"248": "Hedef başlık bir kapsayıcı blokta yer alıyor ve bırakma noktası olarak kullanılamaz",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "不支持拖曳為自己的子標題",
|
||||
"242": "目前可用空間 [%s],至少需要 [%s] 才能執行該動作",
|
||||
"243": "僅列出前 [%d] 個標籤(含子標籤),如需調整請修改 [設置 - 文檔樹 - 最大列出數量]",
|
||||
"244": "上次使用後未完成資料索引,請執行一次 [文檔樹 - 重建索引]。以後請完整退出程式後再關閉電腦",
|
||||
"245": "上次使用後未完成資料索引,請執行一次 [文檔樹 - 重建索引]。以後請使用右側欄面板中的 [退出應用] 進行正常退出",
|
||||
"244": "上次使用後未完成資料索引,請執行一次 [設置 - 關於 - 重建索引]。以後請完整退出程式後再關閉電腦",
|
||||
"245": "上次使用後未完成資料索引,請執行一次 [設置 - 關於 - 重建索引]。以後請使用右側欄面板中的 [退出應用] 進行正常退出",
|
||||
"246": "文件標題不能包含 /,已經使用 _ 替換",
|
||||
"247": "檔案 [%s] 大於最大限制 [%s],已忽略上傳至社群圖床",
|
||||
"248": "目標標題位於容器塊中,無法作為放置點",
|
||||
|
|
|
|||
|
|
@ -1687,8 +1687,8 @@
|
|||
"241": "不支持拖拽为自己的子标题",
|
||||
"242": "当前可用空间 [%s],至少需要 [%s] 才能执行该操作",
|
||||
"243": "仅列出前 [%d] 个标签(含子标签),如需调整请修改 [设置 - 文档树 - 最大列出数量]",
|
||||
"244": "上次使用后未完成数据索引,请执行一次 [文档树 - 重建索引]。以后请完整退出程序后再关闭电脑",
|
||||
"245": "上次使用后未完成数据索引,请执行一次 [文档树 - 重建索引]。以后请使用右侧栏面板中的 [退出应用] 进行正常退出",
|
||||
"244": "上次使用后未完成数据索引,请执行一次 [设置 - 关于 - 重建索引]。以后请完整退出程序后再关闭电脑",
|
||||
"245": "上次使用后未完成数据索引,请执行一次 [设置 - 关于 - 重建索引]。以后请使用右侧栏面板中的 [退出应用] 进行正常退出",
|
||||
"246": "文档标题不能包含 /,已经使用 _ 替换",
|
||||
"247": "文件 [%s] 大于最大限制 [%s],已忽略上传到社区图床",
|
||||
"248": "目标标题位于容器块中,无法作为放置点",
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"description": "Refactor your thinking",
|
||||
"homepage": "https://b3log.org/siyuan",
|
||||
"main": "./electron/main.js",
|
||||
"packageManager": "pnpm@10.27.0",
|
||||
"packageManager": "pnpm@10.28.0",
|
||||
"scripts": {
|
||||
"lint": "eslint . --fix --cache",
|
||||
"dev": "webpack --mode development",
|
||||
|
|
|
|||
|
|
@ -1,9 +1,49 @@
|
|||
#!/bin/bash
|
||||
|
||||
echo 'TIP: This script must be run from the project root directory'
|
||||
echo 'Usage: ./scripts/darwin-build.sh [--target=<target>]'
|
||||
echo 'Options:'
|
||||
echo ' --target=<target> Build target: amd64, arm64, or all (default: all)'
|
||||
echo
|
||||
|
||||
TARGET='all'
|
||||
|
||||
validate_target() {
|
||||
if [[ -z "$1" ]]; then
|
||||
echo 'Error: --target option requires a value'
|
||||
echo 'Usage: --target=<target>'
|
||||
echo 'Examples: --target=amd64'
|
||||
exit 1
|
||||
elif [[ "$1" != 'amd64' && "$1" != 'arm64' && "$1" != 'all' ]]; then
|
||||
echo "Error: Invalid target '$1'"
|
||||
echo 'Valid targets are: amd64, arm64, all'
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case $1 in
|
||||
--target=*)
|
||||
TARGET="${1#*=}"
|
||||
validate_target "$TARGET"
|
||||
shift
|
||||
;;
|
||||
--target)
|
||||
TARGET="$2"
|
||||
validate_target "$TARGET"
|
||||
[ -n "$2" ] && shift 2 || shift
|
||||
;;
|
||||
*)
|
||||
# Skip unknown options
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo 'Building UI'
|
||||
cd app
|
||||
cd app || exit
|
||||
pnpm install && pnpm run build
|
||||
cd ..
|
||||
cd .. || exit
|
||||
|
||||
echo 'Cleaning Builds'
|
||||
rm -rf app/build
|
||||
|
|
@ -12,26 +52,37 @@ rm -rf app/kernel-darwin-arm64
|
|||
|
||||
echo 'Building Kernel'
|
||||
|
||||
cd kernel
|
||||
cd kernel || exit
|
||||
go version
|
||||
export GO111MODULE=on
|
||||
export GOPROXY=https://mirrors.aliyun.com/goproxy/
|
||||
export CGO_ENABLED=1
|
||||
|
||||
echo 'Building Kernel amd64'
|
||||
export GOOS=darwin
|
||||
export GOARCH=amd64
|
||||
go build --tags fts5 -v -o "../app/kernel-darwin/SiYuan-Kernel" -ldflags "-s -w" .
|
||||
if [[ "$TARGET" == 'amd64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Kernel amd64'
|
||||
export GOOS=darwin
|
||||
export GOARCH=amd64
|
||||
go build --tags fts5 -v -o "../app/kernel-darwin/SiYuan-Kernel" -ldflags "-s -w" .
|
||||
fi
|
||||
|
||||
echo 'Building Kernel arm64'
|
||||
export GOOS=darwin
|
||||
export GOARCH=arm64
|
||||
go build --tags fts5 -v -o "../app/kernel-darwin-arm64/SiYuan-Kernel" -ldflags "-s -w" .
|
||||
cd ..
|
||||
if [[ "$TARGET" == 'arm64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Kernel arm64'
|
||||
export GOOS=darwin
|
||||
export GOARCH=arm64
|
||||
go build --tags fts5 -v -o "../app/kernel-darwin-arm64/SiYuan-Kernel" -ldflags "-s -w" .
|
||||
fi
|
||||
cd .. || exit
|
||||
|
||||
echo 'Building Electron App amd64'
|
||||
cd app
|
||||
pnpm run dist-darwin
|
||||
echo 'Building Electron App arm64'
|
||||
pnpm run dist-darwin-arm64
|
||||
cd ..
|
||||
cd app || exit
|
||||
|
||||
if [[ "$TARGET" == 'amd64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Electron App amd64'
|
||||
pnpm run dist-darwin
|
||||
fi
|
||||
|
||||
if [[ "$TARGET" == 'arm64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Electron App arm64'
|
||||
pnpm run dist-darwin-arm64
|
||||
fi
|
||||
|
||||
cd .. || exit
|
||||
|
|
|
|||
|
|
@ -1,9 +1,49 @@
|
|||
#!/bin/bash
|
||||
|
||||
echo 'TIP: This script must be run from the project root directory'
|
||||
echo 'Usage: ./scripts/linux-build.sh [--target=<target>]'
|
||||
echo 'Options:'
|
||||
echo ' --target=<target> Build target: amd64, arm64, or all (default: all)'
|
||||
echo
|
||||
|
||||
TARGET='all'
|
||||
|
||||
validate_target() {
|
||||
if [[ -z "$1" ]]; then
|
||||
echo 'Error: --target option requires a value'
|
||||
echo 'Usage: --target=<target>'
|
||||
echo 'Examples: --target=amd64'
|
||||
exit 1
|
||||
elif [[ "$1" != 'amd64' && "$1" != 'arm64' && "$1" != 'all' ]]; then
|
||||
echo "Error: Invalid target '$1'"
|
||||
echo 'Valid targets are: amd64, arm64, all'
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case $1 in
|
||||
--target=*)
|
||||
TARGET="${1#*=}"
|
||||
validate_target "$TARGET"
|
||||
shift
|
||||
;;
|
||||
--target)
|
||||
TARGET="$2"
|
||||
validate_target "$TARGET"
|
||||
[ -n "$2" ] && shift 2 || shift
|
||||
;;
|
||||
*)
|
||||
# Skip unknown options
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo 'Building UI'
|
||||
cd app
|
||||
cd app || exit
|
||||
pnpm install && pnpm run build
|
||||
cd ..
|
||||
cd .. || exit
|
||||
|
||||
echo 'Cleaning Builds'
|
||||
rm -rf app/build
|
||||
|
|
@ -12,27 +52,38 @@ rm -rf app/kernel-linux-arm64
|
|||
|
||||
echo 'Building Kernel'
|
||||
|
||||
cd kernel
|
||||
cd kernel || exit
|
||||
go version
|
||||
export GO111MODULE=on
|
||||
export GOPROXY=https://mirrors.aliyun.com/goproxy/
|
||||
export CGO_ENABLED=1
|
||||
|
||||
echo 'Building Kernel amd64'
|
||||
export GOOS=linux
|
||||
export GOARCH=amd64
|
||||
export CC=~/x86_64-linux-musl-cross/bin/x86_64-linux-musl-gcc
|
||||
go build -buildmode=pie --tags fts5 -v -o "../app/kernel-linux/SiYuan-Kernel" -ldflags "-s -w -extldflags -static-pie" .
|
||||
if [[ "$TARGET" == 'amd64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Kernel amd64'
|
||||
export GOOS=linux
|
||||
export GOARCH=amd64
|
||||
export CC=~/x86_64-linux-musl-cross/bin/x86_64-linux-musl-gcc
|
||||
go build -buildmode=pie --tags fts5 -v -o "../app/kernel-linux/SiYuan-Kernel" -ldflags "-s -w -extldflags -static-pie" .
|
||||
fi
|
||||
|
||||
echo 'Building Kernel arm64'
|
||||
export GOARCH=arm64
|
||||
export CC=~/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc
|
||||
go build -buildmode=pie --tags fts5 -v -o "../app/kernel-linux-arm64/SiYuan-Kernel" -ldflags "-s -w -extldflags -static-pie" .
|
||||
cd ..
|
||||
if [[ "$TARGET" == 'arm64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Kernel arm64'
|
||||
export GOARCH=arm64
|
||||
export CC=~/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc
|
||||
go build -buildmode=pie --tags fts5 -v -o "../app/kernel-linux-arm64/SiYuan-Kernel" -ldflags "-s -w -extldflags -static-pie" .
|
||||
fi
|
||||
cd .. || exit
|
||||
|
||||
echo 'Building Electron App amd64'
|
||||
cd app
|
||||
pnpm run dist-linux
|
||||
echo 'Building Electron App arm64'
|
||||
pnpm run dist-linux-arm64
|
||||
cd ..
|
||||
cd app || exit
|
||||
|
||||
if [[ "$TARGET" == 'amd64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Electron App amd64'
|
||||
pnpm run dist-linux
|
||||
fi
|
||||
|
||||
if [[ "$TARGET" == 'arm64' || "$TARGET" == 'all' ]]; then
|
||||
echo 'Building Electron App arm64'
|
||||
pnpm run dist-linux-arm64
|
||||
fi
|
||||
|
||||
cd .. || exit
|
||||
|
|
@ -1,8 +1,60 @@
|
|||
@echo off
|
||||
echo 'use ".\scripts\win-build.bat" instead of "win-build.bat"'
|
||||
|
||||
echo 'Building UI'
|
||||
echo TIP: This script must be run from the project root directory
|
||||
echo Usage: .\scripts\win-build.bat [--target=^<target^>]
|
||||
echo Options:
|
||||
echo --target=^<target^> Build target: amd64, arm64, appx-amd64, appx-arm64, or all (default: all)
|
||||
echo.
|
||||
|
||||
set "TARGET=all"
|
||||
|
||||
:parse_args
|
||||
if "%1"=="" goto :end_parse_args
|
||||
if "%1"=="--target" (
|
||||
if "%2"=="" (
|
||||
echo Error: --target option requires an equal sign and value
|
||||
echo Usage: --target=^<target^>
|
||||
echo Example: --target=amd64
|
||||
exit /b 1
|
||||
) else (
|
||||
if not "%2"=="amd64" if not "%2"=="arm64" if not "%2"=="appx-amd64" if not "%2"=="appx-arm64" if not "%2"=="all" (
|
||||
echo Error: Invalid target '%2'
|
||||
echo Valid targets are: amd64, arm64, appx-amd64, appx-arm64, all
|
||||
exit /b 1
|
||||
)
|
||||
set "TARGET=%2"
|
||||
shift
|
||||
shift
|
||||
goto :parse_args
|
||||
)
|
||||
) else (
|
||||
@REM Skip unknown options
|
||||
shift
|
||||
goto :parse_args
|
||||
)
|
||||
:end_parse_args
|
||||
|
||||
if "%TARGET%"=="amd64" (
|
||||
set BUILD_AMD64=1
|
||||
) else if "%TARGET%"=="arm64" (
|
||||
set BUILD_ARM64=1
|
||||
) else if "%TARGET%"=="appx-amd64" (
|
||||
set BUILD_APPX_AMD64=1
|
||||
) else if "%TARGET%"=="appx-arm64" (
|
||||
set BUILD_APPX_ARM64=1
|
||||
) else (
|
||||
REM all: build everything
|
||||
set BUILD_AMD64=1
|
||||
set BUILD_ARM64=1
|
||||
set BUILD_APPX_AMD64=1
|
||||
set BUILD_APPX_ARM64=1
|
||||
)
|
||||
|
||||
echo Building UI
|
||||
cd app
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
call pnpm install
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
|
|
@ -12,69 +64,102 @@ if errorlevel 1 (
|
|||
exit /b %errorlevel%
|
||||
)
|
||||
cd ..
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
|
||||
echo 'Cleaning Builds'
|
||||
echo Cleaning Builds
|
||||
rmdir /S /Q app\build 1>nul
|
||||
rmdir /S /Q app\kernel 1>nul
|
||||
rmdir /S /Q app\kernel-arm64 1>nul
|
||||
|
||||
echo 'Building Kernel'
|
||||
echo Building Kernel
|
||||
@REM the C compiler "gcc" is necessary https://sourceforge.net/projects/mingw-w64/files/mingw-w64/
|
||||
go version
|
||||
set GO111MODULE=on
|
||||
set GOPROXY=https://mirrors.aliyun.com/goproxy/
|
||||
set CGO_ENABLED=1
|
||||
set GOOS=windows
|
||||
|
||||
cd kernel
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
@REM you can use `go mod tidy` to update kernel dependency before build
|
||||
@REM you can use `go generate` instead (need add something in main.go)
|
||||
goversioninfo -platform-specific=true -icon=resource/icon.ico -manifest=resource/goversioninfo.exe.manifest
|
||||
|
||||
echo 'Building Kernel amd64'
|
||||
set GOOS=windows
|
||||
set GOARCH=amd64
|
||||
go build --tags fts5 -v -o "../app/kernel/SiYuan-Kernel.exe" -ldflags "-s -w -H=windowsgui" .
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
if defined BUILD_AMD64 (
|
||||
echo Building Kernel amd64
|
||||
set GOARCH=amd64
|
||||
go build --tags fts5 -v -o "../app/kernel/SiYuan-Kernel.exe" -ldflags "-s -w -H=windowsgui" .
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
)
|
||||
|
||||
echo 'Building Kernel arm64'
|
||||
set GOARCH=arm64
|
||||
@REM if you want to build arm64, you need to install aarch64-w64-mingw32-gcc
|
||||
set CC="D:/Program Files/llvm-mingw-20240518-ucrt-x86_64/bin/aarch64-w64-mingw32-gcc.exe"
|
||||
go build --tags fts5 -v -o "../app/kernel-arm64/SiYuan-Kernel.exe" -ldflags "-s -w -H=windowsgui" .
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
if defined BUILD_ARM64 (
|
||||
echo Building Kernel arm64
|
||||
set GOARCH=arm64
|
||||
@REM if you want to build arm64, you need to install aarch64-w64-mingw32-gcc
|
||||
set CC="D:/Program Files/llvm-mingw-20240518-ucrt-x86_64/bin/aarch64-w64-mingw32-gcc.exe"
|
||||
go build --tags fts5 -v -o "../app/kernel-arm64/SiYuan-Kernel.exe" -ldflags "-s -w -H=windowsgui" .
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
)
|
||||
cd ..
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
|
||||
echo 'Building Electron App amd64'
|
||||
cd app
|
||||
|
||||
copy "elevator\elevator-amd64.exe" "kernel\elevator.exe"
|
||||
copy "elevator\elevator-arm64.exe" "kernel-arm64\elevator.exe"
|
||||
|
||||
call pnpm run dist
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
echo 'Building Electron App arm64'
|
||||
call pnpm run dist-arm64
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
|
||||
if defined BUILD_AMD64 (
|
||||
echo Building Electron App amd64
|
||||
copy "elevator\elevator-amd64.exe" "kernel\elevator.exe"
|
||||
call pnpm run dist
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
)
|
||||
|
||||
if defined BUILD_ARM64 (
|
||||
echo Building Electron App arm64
|
||||
copy "elevator\elevator-arm64.exe" "kernel-arm64\elevator.exe"
|
||||
call pnpm run dist-arm64
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
)
|
||||
cd ..
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
|
||||
echo 'Building Appx'
|
||||
echo 'Building Appx should be disabled if you do not need it. Not configured correctly will lead to build failures'
|
||||
cd . > app\build\win-unpacked\resources\ms-store
|
||||
call electron-windows-store --input-directory app\build\win-unpacked --output-directory app\build\ --package-version 1.0.0.0 --package-name SiYuan --manifest app\appx\AppxManifest.xml --assets app\appx\assets\ --make-pri true
|
||||
if defined BUILD_APPX_AMD64 (
|
||||
echo Building Appx amd64
|
||||
echo Building Appx amd64 should be disabled if you do not need it. Not configured correctly will lead to build failures
|
||||
cd . > app\build\win-unpacked\resources\ms-store
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
call electron-windows-store --input-directory app\build\win-unpacked --output-directory app\build\ --package-version 1.0.0.0 --package-name SiYuan --manifest app\appx\AppxManifest.xml --assets app\appx\assets\ --make-pri true
|
||||
|
||||
rmdir /S /Q app\build\pre-appx 1>nul
|
||||
rmdir /S /Q app\build\pre-appx 1>nul
|
||||
)
|
||||
|
||||
echo 'Building Appx arm64'
|
||||
echo 'Building Appx arm64 should be disabled if you do not need it. Not configured correctly will lead to build failures'
|
||||
cd . > app\build\win-arm64-unpacked\resources\ms-store
|
||||
call electron-windows-store --input-directory app\build\win-arm64-unpacked --output-directory app\build\ --package-version 1.0.0.0 --package-name SiYuan-arm64 --manifest app\appx\AppxManifest-arm64.xml --assets app\appx\assets\ --make-pri true
|
||||
if defined BUILD_APPX_ARM64 (
|
||||
echo Building Appx arm64
|
||||
echo Building Appx arm64 should be disabled if you do not need it. Not configured correctly will lead to build failures
|
||||
cd . > app\build\win-arm64-unpacked\resources\ms-store
|
||||
if errorlevel 1 (
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
call electron-windows-store --input-directory app\build\win-arm64-unpacked --output-directory app\build\ --package-version 1.0.0.0 --package-name SiYuan-arm64 --manifest app\appx\AppxManifest-arm64.xml --assets app\appx\assets\ --make-pri true
|
||||
|
||||
rmdir /S /Q app\build\pre-appx 1>nul
|
||||
rmdir /S /Q app\build\pre-appx 1>nul
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue