

ホームページ|ダウンロード|ドキュメント|マストドン|不和|寄稿|私たちをサポートしてください

Zettlrは、テキストにシンプルさを取り戻します。あなたのスタイルに適応するオープンマインドな文章。あなたにとって重要なことを見つける高速情報検索。雇用主や学校で使用している出版物パイプラインに適応できるようにする汎用性の高い輸出。
あなたにとって重要なことに焦点を合わせてください。
公開し、腐りません。
私たちのウェブサイトで詳細をご覧ください。
…そして最良のことは、 Zettlrが無料でオープンソースソフトウェア(FOSS)です!
Zettlrをインストールするには、オペレーティングシステムの最新リリースをダウンロードするだけです。現在サポートされているのは、MacOS、Windows、およびほとんどのLinux分布です(DebianおよびFedoraパッケージとAppimagesを介して)。
当社のウェブサイトで、ここでGitHubで、最も一般的なユースケースのインストーラーのセットを提供します。 64ビットのインストーラーと、ARMシステム用のインストーラー(MacOSエコシステムの「Apple Silicon」と呼ばれる)の両方を提供しています。 32ビットはサポートされていません。次のバイナリを直接提供します。
コミュニティのおかげで、他のさまざまなインストールの機会を提供することもできます。
Electronがサポートする他のすべてのプラットフォームもサポートされていますが、これが機能するためにアプリを自分で構築する必要があります。
また、後援者になったり、1回限りの寄付をすることを検討してください!
Zettlrをインストールしたら、Zettlrを知るためにドキュメントにアクセスしてください。ソフトウェアヘッドオンを使用する場合は、クイックスタートガイドを参照してください。

オープンソースアプリケーションとして、Zettlrは常にコミュニティからの貢献を歓迎します。助けを借りてコードを書く方法を知る必要はありません!あなたが助けられるすべての領域の完全な概要は、私たちの寄稿ガイドに記載されています。ここでは、ヘルプを歓迎する2つの最大の領域を紹介します:翻訳と寄稿コード。
開発チームは英語とドイツの翻訳を維持していますが、他の言語に関する十分な知識がありません。他のすべての利用可能な翻訳は、私たちのコミュニティによって作成されました。
Zettlrの翻訳は、GetTextシステムを利用しています。これは、翻訳がstatic/langディレクトリ内のPOファイルに保持されることを意味します。
翻訳を更新するには、対応する言語ファイルをダウンロードして編集します。シンプルなテキストエディターでPOファイルを編集できますが、より快適なグラフィカルエディターを好む場合は、そこに多くあります。良い選択肢の1つは、オープンソースの編集者PoEditです。
変更に満足したらすぐに、対応するファイルを更新するプルリクエストをここに開きます。 Githubは、プルリクエストを開く方法に関する素晴らしいガイドを作成しました。
Zettlrは電子ベースのアプリであるため、開発を開始するには、コンピューターに次のものをインストールする必要があります。
lts/iron )であることを確認してください。持っているバージョンをテストするには、 node -vを実行します。package-lock.json -filesをコミットしておらず、多くのコマンドがyarnを必要とするためです。 MacOSを使用している場合は、 npm install -g yarnまたはHomeBrewを使用してこれをグローバルにインストールできます。cURL (Pandocダウンロードスクリプトで必要)unzip (Pandocダウンロードスクリプトで必要)jq (i18nスクリプトで必要)xcode-select --install十分です次に、リポジトリをクローンして、ローカルコンピューターに依存関係をインストールするだけです。
$ git clone https://github.com/Zettlr/Zettlr.git
$ cd Zettlr
$ yarn install --immutable --immutableフラグは、Yarnがyarn.lockにリストされているようにバージョンに固執し、それらを更新しようとしないことを保証します。
開発中、Hotモジュールリロード(HMR)がアクティブであるため、レンダラーのコードを簡単に編集して、 electron-forgeによって変更された後にF5にヒットできます。開発者ツールを開いて、HMRが変更の読み込みが終了したことを確認できます。
コードを提供するには、次のトピックやマニュアル(下降する重要性によって注文)に基本的な精通度を持つ必要があります。
ヒント
Zettlrが具体的にどのように機能するかについてのアイデアを取得するには、以下の「ディレクトリ構造」セクションを参照してください。
このセクションには、アプリケーション開発中に使用できるすべての利用可能なコマンドがリストされています。これらはpackage.json内で定義されており、 yarnをプレフィックスすることでコマンドラインから実行できます。リポジトリのベースディレクトリ内からそれらを実行します。
startこのコマンドを使用して、アプリケーションに変更した変更をテストします。このコマンドはアプリケーションを開始しますが、カスタム構成とカスタムディレクトリを提供します。したがって、通常のZettlrインストールが使用するファイルは触れません。
このコマンドを初めて開始するときは、 --clean -flagを渡して、 ./resources resources -directoryに大量のテストファイルをコピーし、プロジェクトルートにtest-config.ymlを作成し、このクリーンな構成でアプリケーションを開始します。次に、 test-config.yml好みに合わせて適応させることができます(そうでなければ、常に設定される特定の設定が、設定を開くことなく事前に設定されます)。
テストディレクトリを初期状態にリセットするときはいつでも(または、ディレクトリを削除するか、プロジェクト全体を新たにクローン化しました)、ディレクトリを作成またはリセットするために、 --cleanコマンドに渡します。これは、 test-config.ymlで何かを変更した場合にも必要です。
構成ファイルが作成されないようにする場合(例えば、最初の開始体験をシミュレートするため)、このコマンドに--no-config渡すことができます。
このコマンドにも--clear-cacheなどの追加のコマンドラインスイッチを渡すことができます。それらは子プロセスに渡されます。
警告
注意:最初にコマンドを実行する前に、最初にディレクトリを作成するには、 --clean -Flagでそれを実行する必要があります!
さらに、完全な開発文書をご覧ください。
packageアプリケーションをパッケージ化しますが、インストーラーにバンドルするのではありません。サフィックスなしでは、このコマンドは現在のプラットフォームとアーキテクチャのアプリケーションをパッケージ化します。特定のパッケージを作成するには(対応するプラットフォームで実行する必要がある場合があります)、次のサフィックスが利用可能です。
package:mac-x64 (IntelベースのMac)package:mac-arm (Apple SiliconベースのMac)package:win-x64 (Intelベースのウィンドウ)package:linux-x64 (IntelベースのLinux)package:linux-arm (アームベースのLinux)結果のアプリケーションパッケージは./outに保存されます。
重要
このコマンドはタイプチェックをスキップしてビルドをスピードアップするため、エラーがないことを確認するために、パッケージの前にlintを実行することをお勧めします。
release:{platform-arch}アプリケーションをパッケージ化し、対応するプラットフォームとアーキテクチャ用のインストーラーにバンドルします。このようなバンドルを作成するには(対応するプラットフォームで実行する必要がある場合があります)、 {platform-arch}の次の値の1つが必要です。
release:mac-x64 (IntelベースのMac)release:mac-arm (Apple SiliconベースのMac)release:win-x64 (Intelベースのウィンドウ)release:linux-x64 (IntelベースのLinux)release:linux-arm (ARMベースのLinux)結果のセットアップバンドルは./releaseに保存されます。
注記
接尾辞なしでプラットフォームに直接packageできますが、リリースバンドルを作成するときにプラットフォームとアーキテクチャを指定する必要があります。これは、電子ビルダーがapp.asarに開発依存関係を含み、肥大化したアプリケーションになるためです。
csl:refreshこれにより、アプリケーションが出荷される引用スタイル言語(CSL)ファイルがダウンロードされ、それぞれstatic/csl-locales 、およびstatic/csl-stylesディレクトリに配置されます。
注記
このコマンドは、このアクションを実行するためにリポジトリで随時実行される自動化されたワークフローを対象としています。更新されたファイルをリポジトリにコミットしないでください。代わりに、更新されたファイルは、 git fetchたびにダウンロードされます。
lintEslintを実行します。 Visual Studioコードなどのアプリは、オープンファイルのバックグラウンドでESLINTを自動的に実行します。このコマンドは、コードベース全体でそれらを実行します。プルリクエストを送信する前に、必ずこのコマンドを実行してください。
注記
このコマンドは、各プルリクエストで自動的に実行され、コードが不一致を確認します。
shortcut:install .desktop -fileを作成して、ソースからコンパイルしたアプリをすばやく起動できるようにします。これにはLinuxが必要です。新しい変更を使用するには、リポジトリを簡単に同期し、 packageを再度実行すると、行ってもいいです。
警告
このコマンドを便利なものとして提供します。何をしているのかわからない限り、Develop Branchのヘッドコミットから直接コンパイルされたコードを実行しないでください。ただし、このコマンドは、何がうまくいかないかを知っており、適切な予防策を講じることができるいくつかのインスタンスで役立ちます。
shortcut:uninstallショートカットによって作成された.desktop -file shortcut:installを削除します。
注記
バイナリをコンパイルするたびに、ショートカットをアンインストールして再インストールする必要はありません。 Zettlrが再コンパイルする前に閉じていることを確認してください。テンプレート( scripts/assets/zettlr-dev.desktop )が変更された場合、ショートカットを再インストールする必要があるはずです。
testこれにより、ディレクトリ./testでユニットテストが実行されます。プルリクエストを送信する前にこのコマンドを実行してください。これはPRにコミットするたびに実行されるため、変更がテストを破らないようにし、PRプロセス全体を簡単にすることができます。
test-gui start参照してください。
重要
このコマンドは非推奨であり、 startのエイリアスのみです。代わりにstart使用します。
Zettlrは、開発の過程で何百ものディレクトリを蓄積した成熟したアプリです。ガイダンスなしでアプリケーションに貢献することは困難であるため、ディレクトリがどのように相互関係するかについて、ディレクトリの簡単な説明をまとめました。
.
├── out # Contains unpackaged binaries after running any `package` command
├── release # Contains distributables after running any `release` command
├── resources # General resource files
│ ├── NSIS # Windows installer bitmaps
│ ├── icons # Various icon formats
│ ├── screenshots # Contains the main screenshots
├── scripts # Scripts used during the build process and CI pipeline
│ ├── assets # Assets for the script files
│ └── test-gui # A full file tree used with the `test-gui` command
├── source # This is the actual source filetree
│ ├── app # Main process components
│ │ ├── service-providers # Service providers that handle most of the business logic
│ │ └── util # Utility functions for the main process
│ ├── common # Shared files between various renderer processes
│ │ ├── img # Images used in various places
│ │ ├── modules # Shared modules
│ │ │ ├── markdown-editor # Main Markdown editor
│ │ │ ├── markdown-utils # MD Utilities such as md2html converter
│ │ │ ├── preload # Electron preload files
│ │ │ └── window-register # Run by every renderer during setup
│ │ ├── util # General utility functions
│ │ └── vue # Shared Vue components
│ ├── pinia # Renderer state management
│ ├── types # Types-only directory; deprecated
│ ├── win-about # About dialog window
│ ├── win-assets # Assets Manager
│ ├── win-error # Error window
│ ├── win-log-viewer # Log Viewer
│ ├── win-main # Main window
│ ├── win-paste-image # Paste-Image-dialog
│ ├── win-preferences # Preferences window
│ ├── win-print # Print preview
│ ├── win-project-properties # Project properties
│ ├── win-splash-screen # The splash screen
│ ├── win-stats # Statistics window
│ ├── win-tag-manager # Tag manager
│ └── win-update # Updater
├── static # Contains static resources
│ ├── csl-locales # CSL locale files
│ ├── csl-styles # CSL styles
│ ├── defaults # Default defaults/Pandoc profiles
│ ├── dict # Dictionaries that ship with the app
│ ├── fonts # Fonts that ship with the app
│ ├── lang # Language and i18n-related files
│ ├── lua-filter # Default Lua-filters
│ └── tutorial # Tutorial files in various languages
└── test # Unit tests
Zettlrには「モジュール」と「サービスプロバイダー」の両方が含まれていることがわかります。 2つの違いは単純です。サービスプロバイダーはメインプロセスで実行され、アプリ全体に機能を提供しながら完全に自律的です。一方、モジュールは、ユーザーアクション(輸出業者や輸入業者など)によってトリガーする必要がある機能を提供します。
Zettlrを実行するたびに、次の手順が実行されます。
source/main.tsを実行しますsource/app/lifecycle.ts::bootApplication )source/app/lifecycle.ts::bootApplication )source/main/zettlr.ts )そして、アプリをシャットダウンすると、次の手順が実行されます。
source/main/zettlr.ts::shutdown )source/app/lifecycle.ts::shutdownApplication )アプリ( yarn startおよびyarn test-gui )の開発中、次の手順が実行されます。
.webpackに入れ、ウィンドウマネージャーの「作成」 - メソッドで見つけられる定数を適切なエントリポイントに置き換えます。アプリが構築されるたびに、次の手順が実行されます。
Electron Forgeは、パッケージ化されたアプリケーションをディレクトリに入れます./out電子ビルダーはインストーラーをディレクトリ./releaseに入れます。
Zettlrバイナリには、さまざまな目的で利用できるコマンドラインスイッチがいくつかあります。
--launch-minimizedこのCLIフラグは、Zettlrに開始時にメインウィンドウを表示しないように指示します。これは、AutoStartエントリを作成するのに役立ちます。その場合、System Bootでこのフラグを使用してZettlrを起動すると、トレイにそのアイコンのみが表示されるようになります。
これは、このようなアプリを起動するときにトレイバーまたは通知エリアでアプリを実行する必要があることを意味するため、対応する設定system.leaveAppRunning自動的に設定します。
注記
このフラグは、トレイバーまたは通知エリアにアイコンの表示をサポートしていないLinuxシステムに影響を与えません。
--clear-cacheこれにより、ファイルシステムの抽象化レイヤーがブートでキャッシュを完全にクリアするように指示されます。これを使用して、コードベースの変更に関する問題を軽減できます。キャッシュに保存されている情報の変更との互換性を確保するために、 config.jsonのバージョンフィールドがpackage.jsonと一致しない場合、キャッシュも自動的にクリアされます。つまり、 test-config.ymlでversion -fieldを明示的に設定しない限り、キャッシュは常にyarn test-guiを入力するときにクリアされます。
ヒント
トラブルシューティングのためにキャッシュを何気なくクリアしたい場合は、「ヘルプ」メニューで適切なメニュー項目を選択してキャッシュをクリアすることもできます。
--data-dir=pathこのスイッチを使用して、構成ファイルを保持するカスタムデータディレクトリを指定します。このスイッチがないと、データディレクトリは%AppData%/Zettlr (Windows 10以降)、 ~/.config/Zettlr (Linux)、または~/Library/Application Support/Zettlr (MACOS)にデフォルトです。パスは絶対的または相対的なものにすることができます。相対パスの基礎は、バイナリのディレクトリ(パッケージアプリを実行するとき)またはリポジトリルート(パッケージ化されていないアプリを実行するとき)のいずれかです。必要に応じて、スペースを逃れるか、パスを引用することを忘れないでください。この場合、ホームディレクトリを示す~文字は展開されていないため、必要に応じてパス全体をホームディレクトリに渡すようにしてください。電子のマイナーバグのため、空のDictionariesサブディレクトリがデフォルトのデータディレクトリに作成されますが、機能には影響しません。
--disable-hardware-accelerationこのスイッチにより、Zettlrはハードウェアアクセラレーションを無効にします。これは、特定のセットアップで必要な場合があります。このフラグが追加された理由の詳細については、問題#2127を参照してください。
このリポジトリは、Visual Studioコードの推奨拡張機能を使用しています。つまり、VSコードを使用してリポジトリを初めて開くと、リポジトリが少数の拡張機能をインストールすることを推奨することがわかります。これらの拡張機能は、Zettlrを使用する場合に推奨され、貢献がはるかに簡単になります。推奨事項は、ファイル.vscode/extensions.jsonで指定されています。
拡張機能をインストールすることは味の問題であることがあるため、そのファイル内の推奨拡張機能ごとに短い説明を追加して、推奨する理由を説明しています。このようにして、これらの拡張機能のいずれかをインストールするかどうかを独自に決定できます(たとえば、リポジトリで提供されているSVGファイルを使用しない場合、SVG拡張機能は必要ありません)。
推奨されるすべての拡張機能を一度にインストールしないことを選択した場合(これをお勧めします)、VSコードは拡張機能のサイドバーで推奨事項を表示して、最初にインストールしたいものを決定し、次に手動でインストールしたいものを決定できます。
ヒント
コア開発者チームと同じ拡張機能を使用すると、同じ視覚的なフィードバックが得られるため、コードが一般的に一貫しています。
このソフトウェアは、GNU GPL V3-Licenseを介してライセンスされています。
ブランド(名前、アイコン、Zettlrを識別できるすべてのものを含む)は除外され、すべての権利は予約されています。 Zettlrをフォークして別のアプリを開発したい場合は、お気軽には名前とアイコンを変更してください。ロゴの使用について読んでください。