diff --git a/404.html b/404.html
index 095dae08..ae51c25d 100644
--- a/404.html
+++ b/404.html
@@ -158,7 +158,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="./offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="./offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="./"
data-offline-search-max-results="10"
>
diff --git a/about/index.html b/about/index.html
index 24e38925..7de90c3c 100644
--- a/about/index.html
+++ b/about/index.html
@@ -160,7 +160,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../"
data-offline-search-max-results="10"
>
diff --git a/community/index.html b/community/index.html
index e3a9c310..43f8124d 100644
--- a/community/index.html
+++ b/community/index.html
@@ -159,7 +159,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../"
data-offline-search-max-results="10"
>
diff --git a/docs/faq/index.html b/docs/faq/index.html
index caf55f57..8f15cdfe 100644
--- a/docs/faq/index.html
+++ b/docs/faq/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/docs/index.html b/docs/index.html
index ecc8bc0a..39c66a3a 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../"
data-offline-search-max-results="10"
>
diff --git a/docs/installation/build-from-source/index.html b/docs/installation/build-from-source/index.html
index f2070f6b..adaabdad 100644
--- a/docs/installation/build-from-source/index.html
+++ b/docs/installation/build-from-source/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/installation/download-from-releases/index.html b/docs/installation/download-from-releases/index.html
index 42e0cde3..7ebc2994 100644
--- a/docs/installation/download-from-releases/index.html
+++ b/docs/installation/download-from-releases/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/installation/index.html b/docs/installation/index.html
index 7aeb6744..65d2e313 100644
--- a/docs/installation/index.html
+++ b/docs/installation/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/docs/installation/use-artifacts/index.html b/docs/installation/use-artifacts/index.html
index 567d3604..eb6a0e3b 100644
--- a/docs/installation/use-artifacts/index.html
+++ b/docs/installation/use-artifacts/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/installation/use-package-managers/index.html b/docs/installation/use-package-managers/index.html
index 17de2515..7dcf0f9c 100644
--- a/docs/installation/use-package-managers/index.html
+++ b/docs/installation/use-package-managers/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/actions/index.html b/docs/preferences/actions/index.html
index 01519141..40963dce 100644
--- a/docs/preferences/actions/index.html
+++ b/docs/preferences/actions/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/advanced/index.html b/docs/preferences/advanced/index.html
index e0a5f433..0b0119ba 100644
--- a/docs/preferences/advanced/index.html
+++ b/docs/preferences/advanced/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/appearance/index.html b/docs/preferences/appearance/index.html
index 9dfc29fd..0dc4882b 100644
--- a/docs/preferences/appearance/index.html
+++ b/docs/preferences/appearance/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -826,7 +826,6 @@
Display EOLN in Diff
Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).
Add an extra margin at the bottom of the code editor, so that you can scroll less.
-Due to technical reasons, it could slightly affect the operation history, i.e. you might be able undo the margin change by Ctrl+Z.
Font
Show only Monospaced Font
When checked the font picker dialog shows only monospaced fonts.
@@ -890,7 +889,7 @@ Custom Application Font
-
diff --git a/docs/preferences/code-edit/index.html b/docs/preferences/code-edit/index.html
index 290de843..ac95cc14 100644
--- a/docs/preferences/code-edit/index.html
+++ b/docs/preferences/code-edit/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/extensions/index.html b/docs/preferences/extensions/index.html
index 99a2886e..d1ebb68e 100644
--- a/docs/preferences/extensions/index.html
+++ b/docs/preferences/extensions/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/file-path/index.html b/docs/preferences/file-path/index.html
index 22b6ad58..906ad825 100644
--- a/docs/preferences/file-path/index.html
+++ b/docs/preferences/file-path/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/general/index.html b/docs/preferences/general/index.html
index 98476c6a..fc66d668 100644
--- a/docs/preferences/general/index.html
+++ b/docs/preferences/general/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/index.html b/docs/preferences/index.html
index 3eb3edab..79c0be23 100644
--- a/docs/preferences/index.html
+++ b/docs/preferences/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/index.xml b/docs/preferences/index.xml
index 8965ef0e..fcf93bfb 100644
--- a/docs/preferences/index.xml
+++ b/docs/preferences/index.xml
@@ -169,7 +169,6 @@ page.</p>
<p>Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).</p>
<h3 id="add-extra-margin-at-the-bottom-of-the-code-editor">Add extra margin at the bottom of the code editor</h3>
<p>Add an extra margin at the bottom of the code editor, so that you can scroll less.</p>
-<p>Due to technical reasons, it could slightly affect the operation history, i.e. you might be able undo the margin change by <kbd>Ctrl+Z</kbd>.</p>
<h2 id="font">Font</h2>
<h3 id="show-only-monospaced-font">Show only Monospaced Font</h3>
<p>When checked the font picker dialog shows only monospaced fonts.</p>
diff --git a/docs/preferences/key-bindings/index.html b/docs/preferences/key-bindings/index.html
index 5cce3a2d..0dd9a937 100644
--- a/docs/preferences/key-bindings/index.html
+++ b/docs/preferences/key-bindings/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/preferences/language/index.html b/docs/preferences/language/index.html
index 62f5195b..98f5d75b 100644
--- a/docs/preferences/language/index.html
+++ b/docs/preferences/language/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/docs/setup/index.html b/docs/setup/index.html
index af946454..c17fc922 100644
--- a/docs/setup/index.html
+++ b/docs/setup/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/docs/tips/index.html b/docs/tips/index.html
index 2c0de74a..3adf3c0c 100644
--- a/docs/tips/index.html
+++ b/docs/tips/index.html
@@ -161,7 +161,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/download/index.html b/download/index.html
index e38f9d44..b3d62172 100644
--- a/download/index.html
+++ b/download/index.html
@@ -159,7 +159,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../"
data-offline-search-max-results="10"
>
diff --git a/en/sitemap.xml b/en/sitemap.xml
index d42394e5..7d4f28b1 100644
--- a/en/sitemap.xml
+++ b/en/sitemap.xml
@@ -1 +1 @@
-/docs/preferences/code-edit/2021-05-23T22:19:00+08:00/docs/installation/download-from-releases/2021-12-08T22:24:16+08:00/docs/installation/2021-12-08T22:24:16+08:00/docs/installation/use-package-managers/2022-12-30T12:55:26+08:00/docs/installation/build-from-source/2024-02-13T21:31:23+08:00/docs/2020-10-18T15:54:00+08:00/docs/preferences/language/2021-05-23T22:19:00+08:00/docs/preferences/appearance/2021-01-31T19:11:52+08:00/docs/setup/2021-09-19T12:29:14+08:00/docs/installation/use-artifacts/2021-01-31T19:11:52+08:00/docs/preferences/actions/2024-02-14T19:40:57+08:00/docs/preferences/2021-01-31T19:11:52+08:00/docs/preferences/extensions/2021-09-19T12:29:14+08:00/docs/tips/2024-02-14T19:40:57+08:00/docs/preferences/file-path/2021-05-23T22:19:00+08:00/docs/faq/2021-05-23T22:19:00+08:00/docs/preferences/key-bindings/2020-12-06T14:00:35+08:00/docs/preferences/advanced/2021-01-31T19:11:52+08:00/docs/preferences/general/2024-02-13T15:47:01+08:00/about/2021-01-31T13:13:07+08:00/community/2021-07-05T21:16:06+08:00/2022-02-14T11:46:06+05:30/download/2022-06-04T21:37:40+08:00
\ No newline at end of file
+/docs/preferences/code-edit/2021-05-23T22:19:00+08:00/docs/installation/download-from-releases/2021-12-08T22:24:16+08:00/docs/installation/2021-12-08T22:24:16+08:00/docs/installation/use-package-managers/2022-12-30T12:55:26+08:00/docs/installation/build-from-source/2024-02-13T21:31:23+08:00/docs/2020-10-18T15:54:00+08:00/docs/preferences/language/2021-05-23T22:19:00+08:00/docs/preferences/appearance/2024-02-14T20:49:31+08:00/docs/setup/2021-09-19T12:29:14+08:00/docs/installation/use-artifacts/2021-01-31T19:11:52+08:00/docs/preferences/actions/2024-02-14T19:40:57+08:00/docs/preferences/2021-01-31T19:11:52+08:00/docs/preferences/extensions/2021-09-19T12:29:14+08:00/docs/tips/2024-02-14T19:40:57+08:00/docs/preferences/file-path/2021-05-23T22:19:00+08:00/docs/faq/2021-05-23T22:19:00+08:00/docs/preferences/key-bindings/2020-12-06T14:00:35+08:00/docs/preferences/advanced/2021-01-31T19:11:52+08:00/docs/preferences/general/2024-02-13T15:47:01+08:00/about/2021-01-31T13:13:07+08:00/community/2021-07-05T21:16:06+08:00/2022-02-14T11:46:06+05:30/download/2022-06-04T21:37:40+08:00
\ No newline at end of file
diff --git a/index.html b/index.html
index 825cd7ef..ff2feb1f 100644
--- a/index.html
+++ b/index.html
@@ -159,7 +159,7 @@
aria-label="Search this site…"
autocomplete="off"
- data-offline-search-index-json-src="./offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="./offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="./"
data-offline-search-max-results="10"
>
diff --git a/offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json b/offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json
deleted file mode 100644
index ef15a0bc..00000000
--- a/offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json
+++ /dev/null
@@ -1 +0,0 @@
-[{"body":"Tab Width The width (number of characters) of an indent. It is used when displaying the tab characters. It is also used in Auto Indent and Replace tabs by spaces .\nCursor Width The width of the text cursor in pixels.\nAuto Indent When you start a new line, the new line will have the same indent (i.e. white spaces at the beginning of the line) as the old line. If the old line ends with {, an extra indent (a tab character or Tab Width spaces, depending on whether Replace tabs by spaces is enabled) will be inserted at the beginning of the new line. Wrap Text If a line is too long to fit in a single line, the line will be separated into several lines.\nAuto Complete Parentheses Automatically add the right parenthesis when you type the left one. For example, when you type (, ) will be added.\nWhen the character next to the cursor is a right parenthesis and you type this parenthesis, instead of typing this parenthesis, the cursor will jump out of the parenthesis.\nYou can choose the parentheses to auto-complete in the Parentheses settings.\nAuto Remove Parentheses When you delete a left parenthesis, if a corresponding right parenthesis is next to it, the right parenthesis will also be deleted.\nYou can choose the parentheses to auto-remove in the Parentheses settings.\nJump out of a parenthesis by pressing Tab When the cursor is next to a right parenthesis, you can use the Tab key to jump out of it. If Auto Complete Parentheses is enabled, this is an alternative of typing the right parenthesis.\nYou can choose the parentheses to jump out by Tab in the Parentheses settings.\nReplace tabs by spaces When you insert an indent, insert spaces instead of a tab character. The number of spaces is equal to the Tab Width .\nNote that this won’t replace the existing tab characters. In Auto Indent , the tab characters in the old line will remain in the new line (however, the new indent inserted after { will be spaces).\n","excerpt":"Tab Width The width (number of characters) of an indent. It is used …","ref":"/docs/preferences/code-edit/","title":"Code Edit"},{"body":"Tab Width The width (number of characters) of an indent. It is used when displaying the tab characters. It is also used in Auto Indent and Replace tabs by spaces .\nCursor Width The width of the text cursor in pixels.\nAuto Indent When you start a new line, the new line will have the same indent (i.e. white spaces at the beginning of the line) as the old line. If the old line ends with {, an extra indent (a tab character or Tab Width spaces, depending on whether Replace tabs by spaces is enabled) will be inserted at the beginning of the new line. Wrap Text If a line is too long to fit in a single line, the line will be separated into several lines.\nAuto Complete Parentheses Automatically add the right parenthesis when you type the left one. For example, when you type (, ) will be added.\nWhen the character next to the cursor is a right parenthesis and you type this parenthesis, instead of typing this parenthesis, the cursor will jump out of the parenthesis.\nYou can choose the parentheses to auto-complete in the Parentheses settings.\nAuto Remove Parentheses When you delete a left parenthesis, if a corresponding right parenthesis is next to it, the right parenthesis will also be deleted.\nYou can choose the parentheses to auto-remove in the Parentheses settings.\nJump out of a parenthesis by pressing Tab When the cursor is next to a right parenthesis, you can use the Tab key to jump out of it. If Auto Complete Parentheses is enabled, this is an alternative of typing the right parenthesis.\nYou can choose the parentheses to jump out by Tab in the Parentheses settings.\nReplace tabs by spaces When you insert an indent, insert spaces instead of a tab character. The number of spaces is equal to the Tab Width .\nNote that this won’t replace the existing tab characters. In Auto Indent , the tab characters in the old line will remain in the new line (however, the new indent inserted after { will be spaces).\n","excerpt":"Tab Width The width (number of characters) of an indent. It is used …","ref":"/ru/docs/preferences/code-edit/","title":"Code Edit"},{"body":"Tab 寬度 The width (number of characters) of an indent. It is used when displaying the tab characters. It is also used in 自動縮排 and 以空白代替 Tab .\n游標寬度 游標的像素寬度。\n自動縮排 When you start a new line, the new line will have the same indent (i.e. white spaces at the beginning of the line) as the old line. If the old line ends with {, an extra indent (a tab character or Tab 寬度 spaces, depending on whether 以空白代替 Tab is enabled) will be inserted at the beginning of the new line. 自動換行 一行文字過長時,將其換行顯示。\n自動完成括號 Automatically add the right parenthesis when you type the left one. For example, when you type (, ) will be added.\nWhen the character next to the cursor is a right parenthesis and you type this parenthesis, instead of typing this parenthesis, the cursor will jump out of the parenthesis.\nYou can choose the parentheses to auto-complete in the Parentheses settings.\n自動刪除括號 When you delete a left parenthesis, if a corresponding right parenthesis is next to it, the right parenthesis will also be deleted.\nYou can choose the parentheses to auto-remove in the Parentheses settings.\n按下 Tab 時從一對括號跳出 When the cursor is next to a right parenthesis, you can use the Tab key to jump out of it. If 自動完成括號 is enabled, this is an alternative of typing the right parenthesis.\nYou can choose the parentheses to jump out by Tab in the Parentheses settings.\n以空白代替 Tab 縮排時使用空白字元(' ')代替 Tab 字元('\\t')。啟用時,縮排的寬度同為 Tab 寬度 。\n請注意,開啟此選項並不會替換已有的 Tab 字元。此設定對於 自動縮排 需換行後才會生效。\n","excerpt":"Tab 寬度 The width (number of characters) of an indent. It is used when …","ref":"/zh_tw/docs/preferences/code-edit/","title":"Code Edit"},{"body":"You need to choose a version in the Releases , then download an asset according to your OS and install it.\nWindows Setup Version The setup version needs to be installed on your machine. The setting files will be stored in the config directory on your system, and it will be visible in the list of installed programs on your system.\nDownload the setup.exe in the assets and install it.\nPortable Version The portable version can be executed without installation. The setting files will be stored in the same directory as the executable file, and you won’t see it in the list of installed programs on your system.\nDownload the portable.zip in the assets and unzip it to any directory you like.\nMost Linux Distros Download the AppImage in the assets, add execute permission to it (chmod +x \u003cAppImagePath\u003e), then run it.\nDebian-based Linux Distros On Debian-based Linux distributions (Ubuntu, Linux Mint, etc.) you can download the .deb package in the assets and run the command in the terminal:\nsudo apt install \u003cpath to .deb package\u003e Then type your root password and agree with the installation. You can also use Gdebi or other graphical tools to install the deb package. Supported: Debian 10 Buster, Ubuntu 18.04 Bionic Beaver, Linux Mint 19 Tara, and newer versions of these distributions or the ones based on them.\nmacOS Download the .dmg file in the assets and install it.\nYou may need to click “Yes” to access Filesystem several times. Apple may report that this application does not come from a recognized developer and prevent you from launching the app. Please add an exception to CP Editor from System Preferences -\u003e Security \u0026 Privacy -\u003e General, and allow CP Editor to run anyways\n","excerpt":"You need to choose a version in the Releases , then download an asset …","ref":"/docs/installation/download-from-releases/","title":"Download from Releases"},{"body":"You need to choose a version in the Releases , then download an asset according to your OS and install it.\nWindows Setup Version The setup version needs to be installed on your machine. The setting files will be stored in the config directory on your system, and it will be visible in the list of installed programs on your system.\nDownload the setup.exe in the assets and install it.\nPortable Version The portable version can be executed without installation. The setting files will be stored in the same directory as the executable file, and you won’t see it in the list of installed programs on your system.\nDownload the portable.zip in the assets and unzip it to any directory you like.\nMost Linux Distros Download the AppImage in the assets, add execute permission to it (chmod +x \u003cAppImagePath\u003e), then run it.\nDebian-based Linux Distros On Debian-based Linux distributions (Ubuntu, Linux Mint, etc.) you can download the .deb package in the assets and run the command in the terminal:\nsudo apt install \u003cpath to .deb package\u003e Then type your root password and agree with the installation. You can also use Gdebi or other graphical tools to install the deb package. Supported: Debian 10 Buster, Ubuntu 18.04 Bionic Beaver, Linux Mint 19 Tara, and newer versions of these distributions or the ones based on them.\nmacOS Download the .dmg file in the assets and install it.\nYou may need to click “Yes” to access Filesystem several times. Apple may report that this application does not come from a recognized developer and prevent you from launching the app. Please add an exception to CP Editor from System Preferences -\u003e Security \u0026 Privacy -\u003e General, and allow CP Editor to run anyways\n","excerpt":"You need to choose a version in the Releases , then download an asset …","ref":"/ru/docs/installation/download-from-releases/","title":"Download from Releases"},{"body":"You can choose one of the following installation methods.\nIf you are not sure which one to choose, just go with Download from Releases .\n","excerpt":"You can choose one of the following installation methods.\nIf you are …","ref":"/docs/installation/","title":"Installation"},{"body":"You can choose one of the following installation methods.\nIf you are not sure which one to choose, just go with Download from Releases .\n","excerpt":"You can choose one of the following installation methods.\nIf you are …","ref":"/ru/docs/installation/","title":"Installation"},{"body":"缩进宽度 设置制表符的宽度或缩进的空格个数。该选项设置的值将同时对 自动缩进 和 将制表符替换为空格 产生影响。\n光标宽度 以像素计算的光标宽度。\n自动缩进 当代码另起一行时,该行将和上一行拥有相同的缩进。 如果上一行以 { 结束,该行将会插入一个额外的缩进(一个制表符或 缩进宽度 个空格,取决于 将制表符替换为空格 选项是否开启)。 文本自动换行 如果某一行的字符数超出了屏幕的宽度,则该行的内容将会折成多行显示。\n自动补全括号 在输入左括号时自动插入右括号。例如,当你输入一个 ( 时,将会自动加入一个 )。\n如果光标处右边的第一个字符是右括号,而你输入了一个右括号,光标将会自动跳到该右括号后面,而不再输入右括号。\n你可以在各语言的 括号 设置中设置各语言自动补全的括号类型。\n自动删除括号 在删除一个左括号时,如果其右侧有一个右括号相邻,则该右括号也会被自动删除。\n你可以在各语言的 括号 设置中设置各语言自动删除的括号类型。\n在按下 Tab 键时跳出括号 如果光标处右边的第一个字符是右括号,你可以通过按下 Tab 键来自动跳出这对括号。如果 自动补全括号 选项被启用,这种方式可以作为输入右括号的另一种方式。\n你可以在各语言的 括号 设置中设置各语言按下 Tab 时自动跳出的括号类型。\n将制表符替换为空格 当插入一个缩进时,插入与 缩进宽度 数目相等的空格来代替制表符。\n该设置不会影响文件中已经存在的空格。在 自动缩进 选项中,如果上一行使用了制表符作为缩进,新的一行仍然会使用制表符缩进。但如果上一行以 { 结束,新的一行插入的额外缩进将会使用空格。\n","excerpt":"缩进宽度 设置制表符的宽度或缩进的空格个数。该选项设置的值将同时对 自动缩进 和 将制表符替换为空格 产生影响。\n光标宽度 以像素计算的光标 …","ref":"/zh/docs/preferences/code-edit/","title":"代码编辑"},{"body":"你需要在 Releases 頁面找到你需要的版本,然後根據你的作業系統選擇相應的檔案並下載安裝。\nWindows 安裝版 安裝版需要將本軟體安裝在您的電腦。設定組態將儲存於系統的設定目錄中,且 CP Editor 會出現在系統的已安裝程式清單上。\n下載檔案列表中的 setup.exe 並安裝它。\n免安裝版 免安裝版無需安裝即可執行。其設定組態將與 CP Editor 的可執行檔置於同一目錄,CP Editor 不會出現在系統的已安裝程式清單上。\n下載檔案列表中的 portable.zip 並解壓縮到您喜歡的地方。\n大多數 Linux 發行版 下載檔案列表中的 AppImage,並賦予其執行權限(chmod +x \u003cAppImagePath\u003e),再執行它。\nDebian 衍生的 Linux 發行版 在一些由 Debian 衍生的 Linux 發行版(如 Ubuntu, Linux Mint)您可以下載 .deb 套件並在終端機執行這行命令:\nsudo apt install \u003cpath to .deb package\u003e 接著輸入 root 使用者的密碼並同意安裝。如果您習慣操作圖形介面,亦可使用像 Gdebi 這樣的工具來安裝 deb 套件。\n支援的發行版:Debian 10 Buster、Ubuntu 18.04 Bionic Beaver、Linux Mint 19 Tara 以及更新的版本(或其他由前述版本再衍生的發行版)。\nmacOS 下載檔案列表中的 .dmg 檔案並安裝它。\n在安裝過程中,您可能需要按幾次「好」以存取檔案系統。Apple 可能會警告您這個應用程式是來自未識別開發者的 Mac App。參考 Apple 的 macOS 使用手冊 將 CP Editor 授予例外。\n","excerpt":"你需要在 Releases 頁面找到你需要的版本,然後根據你的作業系統選擇相應的檔案並下載安裝。\nWindows 安裝版 安裝版需要將本軟體 …","ref":"/zh_tw/docs/installation/download-from-releases/","title":"在 Releases 中下載"},{"body":"你需要在 Releases 页面找到你需要的版本,然后根据你的操作系统选择相应的文件并下载安装。\n如果你访问 GitHub 的速度较慢,你还可以尝试 Gitee 镜像 或者 FastGit 镜像 。\nWindows 使用安装包安装 使用安装包在你的电脑上进行安装。配置文件将会存储在你的系统的配置目录下,CP Editor 将会出现在你的系统的已安装程序列表中。\n下载 setup.exe 以进行安装。\n便携式版本 使用便携式版本,无需安装即可使用 CP Editor。这意味着你可以将 CP Editor 存储在 U 盘等可移动介质中。\n配置文件将存储在可执行文件所在的文件夹,CP Editor 将不会出现在你的系统的已安装程序列表中。\n下载 portable.zip,将其解压到任意一个你想要存放的位置。\n绝大部分 Linux 发行版 下载 AppImage,执行 chmod +x \u003cAppImagePath\u003e 给其添加执行权限,随后运行该文件。\nDebian 系 Linux 发行版 如果你使用的是 Debian 系的 Linux 发行版(Ubuntu,Linux Mint 等),可以下载 .deb 包,并在终端中执行如下命令:\nsudo apt install \u003cpath to .deb package\u003e 接下来输入密码,确认安装。你也可以使用 Gdebi 等图形化工具安装 deb 包,要求系统版本不低于 Debian 10 Buster,Ubuntu 18.04 Bionic Beaver,Linux Mint 19 Tara 或其他基于前述发行版的系统的相应版本。\nmacOS 下载 .dmg 文件然后安装。如果出现“未识别的开发者”等提示消息,请依然允许 CP Editor 运行。可以在 System Preferences -\u003e Security \u0026 Privacy -\u003e General 中将 CP Editor 添加到白名单里。\n","excerpt":"你需要在 Releases 页面找到你需要的版本,然后根据你的操作系统选择相应的文件并下载安装。\n如果你访问 GitHub 的速度较慢,你还 …","ref":"/zh/docs/installation/download-from-releases/","title":"在 Releases 中下载"},{"body":"你可以从下列安装方法中选择一个。\n如果你不确定要选择什么,请选择 在 Releases 中下载 。\n","excerpt":"你可以从下列安装方法中选择一个。\n如果你不确定要选择什么,请选择 在 Releases 中下载 。\n","ref":"/zh/docs/installation/","title":"安装"},{"body":"你可以從下列安裝方法中選擇一個。\n如果你不確定要選擇什麼,請選擇 在 Releases 中下載 。\n","excerpt":"你可以從下列安裝方法中選擇一個。\n如果你不確定要選擇什麼,請選擇 在 Releases 中下載 。\n","ref":"/zh_tw/docs/installation/","title":"安裝"},{"body":"Packaging status Some of the packages are officially maintained while most of them are maintained by the community.\nHowever, at present, CP Editor is not available in many package repositories. Package maintainers can contact us if any help is needed. For example, we may add some scripts in our CI/CD workflow.\nHere are a few guidelines to install the packages.\nSnapcraft You can use Snapcraft to install cpeditor , which is available on most Linux distros.\nThere are two channels available: latest/stable and latest/edge.\nDue to technical reasons, it was published using classic confinement, so you’ll need the --classic option to install it.\nTo install the latest stable version: sudo snap install cpeditor --classic\nTo install the latest alpha version: sudo snap install cpeditor --classic --channel=latest/edge\nAUR If you are using Arch Linux , it’s recommended to install CP Editor via AUR . AUR usually also works on Arch-based distros like Manjaro, but it sometimes fails due to reasons like different main repositories.\nThere are two AUR packages for CP Editor: cpeditor for the stable version and cpeditor-git for the alpha version.\nIf you are unfamiliar with AUR, it’s recommended to install paru and use paru -S cpeditor to install. You can also read the wiki on how to manually install an AUR package or AUR helpers .\nAfter the installation, you’ll be able to run CP Editor by cpeditor in your terminal or launch from the start menu like other apps.\n","excerpt":"Packaging status Some of the packages are officially maintained …","ref":"/docs/installation/use-package-managers/","title":"Use package managers"},{"body":"Packaging status Some of the packages are officially maintained while most of them are maintained by the community.\nHowever, at present, CP Editor is not available in many package repositories. Package maintainers can contact us if any help is needed. For example, we may add some scripts in our CI/CD workflow.\nHere are a few guidelines to install the packages.\nSnapcraft You can use Snapcraft to install cpeditor , which is available on most Linux distros.\nThere are two channels available: latest/stable and latest/edge.\nDue to technical reasons, it was published using classic confinement, so you’ll need the --classic option to install it.\nTo install the latest stable version: sudo snap install cpeditor --classic\nTo install the latest alpha version: sudo snap install cpeditor --classic --channel=latest/edge\nAUR If you are using Arch Linux , it’s recommended to install CP Editor via AUR . AUR usually also works on Arch-based distros like Manjaro, but it sometimes fails due to reasons like different main repositories.\nThere are two AUR packages for CP Editor: cpeditor for the stable version and cpeditor-git for the alpha version.\nIf you are unfamiliar with AUR, it’s recommended to install paru and use paru -S cpeditor to install. You can also read the wiki on how to manually install an AUR package or AUR helpers .\nAfter the installation, you’ll be able to run CP Editor by cpeditor in your terminal or launch from the start menu like other apps.\n","excerpt":"Packaging status Some of the packages are officially maintained …","ref":"/ru/docs/installation/use-package-managers/","title":"Use package managers"},{"body":"Packaging status Some of the packages are officially maintained while most of them are maintained by the community.\nHowever, at present, CP Editor is not available in many package repositories. Package maintainers can contact us if any help is needed. For example, we may add some scripts in our CI/CD workflow.\nHere are a few guidelines to install the packages.\nSnapcraft You can use Snapcraft to install cpeditor , which is available on most Linux distros.\nThere are two channels available: latest/stable and latest/edge.\nDue to technical reasons, it was published using classic confinement, so you’ll need the --classic option to install it.\nTo install the latest stable version: sudo snap install cpeditor --classic\nTo install the latest alpha version: sudo snap install cpeditor --classic --channel=latest/edge\nAUR If you are using Arch Linux , it’s recommended to install CP Editor via AUR . AUR usually also works on Arch-based distros like Manjaro, but it sometimes fails due to reasons like different main repositories.\nThere are two AUR packages for CP Editor: cpeditor for the stable version and cpeditor-git for the alpha version.\nIf you are unfamiliar with AUR, it’s recommended to install paru and use paru -S cpeditor to install. You can also read the wiki on how to manually install an AUR package or AUR helpers .\nAfter the installation, you’ll be able to run CP Editor by cpeditor in your terminal or launch from the start menu like other apps.\n","excerpt":"Packaging status Some of the packages are officially maintained …","ref":"/zh_tw/docs/installation/use-package-managers/","title":"Use package managers"},{"body":"打包情况 其中有的包是官方维护的,而大多数的包是由社区维护的。\n然而,目前很多软件包仓库都没有包含 CP Editor。如果需要帮助,软件包维护者可以联系我们。例如,我们可以在我们的 CI/CD 工作流中加入一些脚本。\n下面是一些安装软件包的指导。\nSnapcraft 你可以使用 Snapcraft 来安装 cpeditor ,它在大多数 Linux 发行版上都可用。\n有两个 channel 可供选择:latest/stable 和 latest/edge。\n由于技术原因,它以 classic confinement 发布,所以你需要 --classic 选项来安装它。\n安装最新的稳定版本:sudo snap install cpeditor --classic\n安装最新的测试(alpha)版本: sudo snap install cpeditor --classic --channel=latest/edge\nAUR 如果你使用的是 Arch Linux ,你可以从 AUR 安装 CP Editor。AUR 通常情况下也在 Manjaro 等基于 Arch 的发行版可用,但偶尔会因为主仓库不同等原因而出错。\nCP Editor 在 AUR 上有两个包:稳定版 cpeditor 和 alpha 版 cpeditor-git 。\n如果你对 AUR 不熟悉,你可以安装 paru 并使用 paru -S cpeditor 来安装。你也可以阅读关于 手动安装 AUR 包 或者 AUR 工具 的 wiki。\n安装完成后,你就可以在终端中运行 cpeditor 或在开始菜单中运行 CP Editor 了。\n","excerpt":"打包情况 其中有的包是官方维护的,而大多数的包是由社区维护的。\n然而,目前很多软件包仓库都没有包含 CP Editor。如果需要帮助,软 …","ref":"/zh/docs/installation/use-package-managers/","title":"使用包管理器"},{"body":"Preparation Clone this repo and submodules:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git # or alternatively in two separate commands # git clone https://github.com/cpeditor/cpeditor.git # git submodule update --init --recursive cd cpeditor Install Qt (5.15), CMake (3.12 or higher) and Python3 .\n On some Linux distributions and macOS, you can install from your package manager. For example, sudo pacman -S qt5-base on Arch Linux, brew install qt@5 on macOS. You can also use aqtinstall to install Qt. If CMake can’t find the Qt installation path, you should set the environment variable: CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake. For example, on macOS, you can run something like export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.2\".\n Install KDE (kf5) Syntax Highlighting.\n On some Linux distributions and macOS, you can install from your package manager. For example, sudo pacman -S syntax-highlighting5 on Arch Linux, Homebrew KDE and then brew install kde-mac/kde/kf5-syntax-highlighting on macOS.\n Otherwise, you can use CMake to build and install Extra CMake Modules first and then KSH:\ncd third_party/extra-cmake-modules cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install # may require sudo cd ../syntax-highlighting cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install Build Linux/macOS:\ncmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build Windows:\ncmake -S . -B build cmake --build build --config Release On Linux, you will get build/cpeditor.\nOn macOS, you will get build/cpeditor.app.\nOn Windows, you will get build\\cpeditor.exe, or build\\Release\\cpeditor.exe. If DLLs are missing, you can add %QtPath%\\%QtVersion%\\%Compiler%\\bin (for example, D:\\Qt\\5.15.2\\msvc2019_64\\bin) to the PATH environmental variable.\n","excerpt":"Preparation Clone this repo and submodules:\ngit clone …","ref":"/docs/installation/build-from-source/","title":"Build from source"},{"body":" Clone this repo and submodules:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git cd cpeditor Install Qt (5.15 or higher), CMake (3.12 or higher) and Python3 .\n On some Linux distributions and macOS, you can install from your package manager. For example, sudo pacman -S qt5 on Arch Linux, brew install qt5 on macOS. You can also use aqtinstall to install Qt. If CMake can’t find the Qt installation path, you should set the environment variable: CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake. For example, on macOS, you can run something like export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.1\".\n Run the following commands:\n Linux/macOS:\nmkdir build cd build cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . Windows:\nmkdir build cd build cmake .. cmake --build . --config Release On Linux, you will get build/cpeditor.\nOn macOS, you will get build/cpeditor.app.\nOn Windows, you will get build\\cpeditor.exe, or build\\Release\\cpeditor.exe. If DLLs are missing, you can add %QtPath%\\%QtVersion%\\%Compiler%\\bin (for example, D:\\Qt\\5.15.1\\msvc2019_64\\bin) to the PATH environmental variable.\n","excerpt":" Clone this repo and submodules:\ngit clone --recurse-submodules …","ref":"/ru/docs/installation/build-from-source/","title":"Build from source"},{"body":"","excerpt":"","ref":"/docs/","title":"Documentation"},{"body":"","excerpt":"","ref":"/ru/docs/","title":"Documentation"},{"body":"General Default Language The default programming language. It’s used when opening a new tab and some other places.\nCommands C++ Commands C++ Compile Command The compilation command for C++. For example: g++ -Wall.\nThe command shouldn’t contain the source file and the output file, CP Editor automatically adds them.\nFor compilation flags, please refer to the manual of the compiler. For example, you may want to add -std=c++14 in the compile command to use C++14.\nC++ Executable File Path The path of the executable file, i.e. the argument of the -o option of the compiler.\nIf this path is relative, then it’s relative to the source file (if it’s an untitled tab, then relative to the Temporary Directory ).\nYou can use some place holders for this setting:\n ${filename}: The complete name of the source file. If it’s an untitled tab (i.e. an unsaved file), the complete file name is sol.cpp. ${basename}: ${filename} without the suffix (i.e. without .cpp, etc.). ${tmpdir} or ${tempdir}: The path of the Temporary Directory . For example, you can use ${tmpdir}/${basename} if you don’t want to keep the executable files, or executables/${basename} if you want to keep all executable files in the executables directory under the directory of the source file.\nC++ Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nC++ Compiler Output Codec The text codec of the compiler output (warnings, errors, etc.), used to display the messages from the compiler in CP Editor.\nIt could be useful if you are using locales for your compiler and the compiler messages are not English.\nJava Commands Java Compile Command The compilation command for Java. For example: javac.\nThe command shouldn’t contain the source file and the class path, CP Editor automatically adds them.\nJava Class Path The path to save the class files.\nPlease refer to C++ Executable File Path for the details.\nJava Class Name The name of the main class of your solution.\nYou can use an arbitrary name for your source file. When compiling, CP Editor automatically saves your code to a file with the class name.\nJava Run Command The command to run your solution. For example java.\nThis command shouldn’t contain the class path or the class name, CP Editor automatically adds them.\nJava Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nJava Compiler Output Codec Please refer to C++ Compiler Output Codec .\nPython Commands Python Run Command The command to run a python code. It’s usually one of python/python2/python3.\nPython Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nTemplate The code template is a file. When opening a new tab, the content of the template will be the initial content in the code editor.\nTemplate Path The path to the code template.\nTemplate Cursor Position The initial position of the text cursor when opening the template.\nIt contains three parts:\n Regex Offset type: start or end. Offset characters: a number, could be negative. It works as below:\n Find the first match of the regex in the template. If nothing matches the regex, the cursor will be at the end of the template. Otherwise, depending on the offset type, the cursor will be at the start/end of the first match, and then moved to the right by the number of the offset characters. For example, if your template contains the following snippet:\nint main() { } Then you can use int main as the regex, end as the offset type, and 9 as the offset characters. After that, when opening a new tab, the cursor will be at the first line in the main function.\nSnippets Manage Snippets You can add/delete/rename snippets in “Language-\u003eXXX-\u003eXXX Snippet”. You can use Ctrl+N for “Add”, Ctrl+W for “Del” and F2 for “Rename”.\nYou can also import snippets from files or extract your snippets to files in the “More” menu on the snippet page.\nUse Snippets You can insert a snippet into the code editor by either clicking “Actions-\u003eUse Snippets” or pressing Ctrl+T.\nWhen choosing a snippet, you can enter the first few characters of the snippet name, and it will be auto-completed.\nParentheses You can set the parentheses settings for each language and each parenthesis.\nEach setting has three states: enable, disable and default. If it’s default, it uses the settings in the Code Edit page. Otherwise, it overwrites the settings in the Code Edit page.\nAuto Complete See Code Edit/Auto Complete Parentheses .\nAuto Remove See Code Edit/Auto Remove Parentheses .\nTab Jump Out See Code Edit/Jump out of a parenthesis by pressing Tab .\n","excerpt":"General Default Language The default programming language. It’s used …","ref":"/docs/preferences/language/","title":"Language"},{"body":"General Default Language The default programming language. It’s used when opening a new tab and some other places.\nCommands C++ Commands C++ Compile Command The compilation command for C++. For example: g++ -Wall.\nThe command shouldn’t contain the source file and the output file, CP Editor automatically adds them.\nFor compilation flags, please refer to the manual of the compiler. For example, you may want to add -std=c++14 in the compile command to use C++14.\nC++ Executable File Path The path of the executable file, i.e. the argument of the -o option of the compiler.\nIf this path is relative, then it’s relative to the source file (if it’s an untitled tab, then relative to the Temporary Directory ).\nYou can use some place holders for this setting:\n ${filename}: The complete name of the source file. If it’s an untitled tab (i.e. an unsaved file), the complete file name is sol.cpp. ${basename}: ${filename} without the suffix (i.e. without .cpp, etc.). ${tmpdir} or ${tempdir}: The path of the Temporary Directory . For example, you can use ${tmpdir}/${basename} if you don’t want to keep the executable files, or executables/${basename} if you want to keep all executable files in the executables directory under the directory of the source file.\nC++ Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nC++ Compiler Output Codec The text codec of the compiler output (warnings, errors, etc.), used to display the messages from the compiler in CP Editor.\nIt could be useful if you are using locales for your compiler and the compiler messages are not English.\nJava Commands Java Compile Command The compilation command for Java. For example: javac.\nThe command shouldn’t contain the source file and the class path, CP Editor automatically adds them.\nJava Class Path The path to save the class files.\nPlease refer to C++ Executable File Path for the details.\nJava Class Name The name of the main class of your solution.\nYou can use an arbitrary name for your source file. When compiling, CP Editor automatically saves your code to a file with the class name.\nJava Run Command The command to run your solution. For example java.\nThis command shouldn’t contain the class path or the class name, CP Editor automatically adds them.\nJava Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nJava Compiler Output Codec Please refer to C++ Compiler Output Codec .\nPython Commands Python Run Command The command to run a python code. It’s usually one of python/python2/python3.\nPython Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nTemplate The code template is a file. When opening a new tab, the content of the template will be the initial content in the code editor.\nTemplate Path The path to the code template.\nTemplate Cursor Position The initial position of the text cursor when opening the template.\nIt contains three parts:\n Regex Offset type: start or end. Offset characters: a number, could be negative. It works as below:\n Find the first match of the regex in the template. If nothing matches the regex, the cursor will be at the end of the template. Otherwise, depending on the offset type, the cursor will be at the start/end of the first match, and then moved to the right by the number of the offset characters. For example, if your template contains the following snippet:\nint main() { } Then you can use int main as the regex, end as the offset type, and 9 as the offset characters. After that, when opening a new tab, the cursor will be at the first line in the main function.\nSnippets Manage Snippets You can add/delete/rename snippets in “Language-\u003eXXX-\u003eXXX Snippet”. You can use Ctrl+N for “Add”, Ctrl+W for “Del” and F2 for “Rename”.\nYou can also import snippets from files or extract your snippets to files in the “More” menu on the snippet page.\nUse Snippets You can insert a snippet into the code editor by either clicking “Actions-\u003eUse Snippets” or pressing Ctrl+T.\nWhen choosing a snippet, you can enter the first few characters of the snippet name, and it will be auto-completed.\nParentheses You can set the parentheses settings for each language and each parenthesis.\nEach setting has three states: enable, disable and default. If it’s default, it uses the settings in the Code Edit page. Otherwise, it overwrites the settings in the Code Edit page.\nAuto Complete See Code Edit/Auto Complete Parentheses .\nAuto Remove See Code Edit/Auto Remove Parentheses .\nTab Jump Out See Code Edit/Jump out of a parenthesis by pressing Tab .\n","excerpt":"General Default Language The default programming language. It’s used …","ref":"/ru/docs/preferences/language/","title":"Language"},{"body":"General Default Language The default programming language. It’s used when opening a new tab and some other places.\nCommands C++ Commands C++ Compile Command The compilation command for C++. For example: g++ -Wall.\nThe command shouldn’t contain the source file and the output file, CP Editor automatically adds them.\nFor compilation flags, please refer to the manual of the compiler. For example, you may want to add -std=c++14 in the compile command to use C++14.\nC++ Executable File Path The path of the executable file, i.e. the argument of the -o option of the compiler.\nIf this path is relative, then it’s relative to the source file (if it’s an untitled tab, then relative to the 暫存目錄 ).\nYou can use some place holders for this setting:\n ${filename}: The complete name of the source file. If it’s an untitled tab (i.e. an unsaved file), the complete file name is sol.cpp. ${basename}: ${filename} without the suffix (i.e. without .cpp, etc.). ${tmpdir} or ${tempdir}: The path of the 暫存目錄 . For example, you can use ${tmpdir}/${basename} if you don’t want to keep the executable files, or executables/${basename} if you want to keep all executable files in the executables directory under the directory of the source file.\nC++ Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nC++ Compiler Output Codec The text codec of the compiler output (warnings, errors, etc.), used to display the messages from the compiler in CP Editor.\nIt could be useful if you are using locales for your compiler and the compiler messages are not English.\nJava Commands Java Compile Command The compilation command for Java. For example: javac.\nThe command shouldn’t contain the source file and the class path, CP Editor automatically adds them.\nJava Class Path The path to save the class files.\nPlease refer to C++ Executable File Path for the details.\nJava Class Name The name of the main class of your solution.\nYou can use an arbitrary name for your source file. When compiling, CP Editor automatically saves your code to a file with the class name.\nJava Run Command The command to run your solution. For example java.\nThis command shouldn’t contain the class path or the class name, CP Editor automatically adds them.\nJava Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nJava Compiler Output Codec Please refer to C++ Compiler Output Codec .\nPython Commands Python Run Command The command to run a python code. It’s usually one of python/python2/python3.\nPython Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nTemplate The code template is a file. When opening a new tab, the content of the template will be the initial content in the code editor.\nTemplate Path The path to the code template.\nTemplate Cursor Position The initial position of the text cursor when opening the template.\nIt contains three parts:\n Regex Offset type: start or end. Offset characters: a number, could be negative. It works as below:\n Find the first match of the regex in the template. If nothing matches the regex, the cursor will be at the end of the template. Otherwise, depending on the offset type, the cursor will be at the start/end of the first match, and then moved to the right by the number of the offset characters. For example, if your template contains the following snippet:\nint main() { } Then you can use int main as the regex, end as the offset type, and 9 as the offset characters. After that, when opening a new tab, the cursor will be at the first line in the main function.\nSnippets Manage Snippets You can add/delete/rename snippets in “Language-\u003eXXX-\u003eXXX Snippet”. You can use Ctrl+N for “Add”, Ctrl+W for “Del” and F2 for “Rename”.\nYou can also import snippets from files or extract your snippets to files in the “More” menu on the snippet page.\nUse Snippets You can insert a snippet into the code editor by either clicking “Actions-\u003eUse Snippets” or pressing Ctrl+T.\nWhen choosing a snippet, you can enter the first few characters of the snippet name, and it will be auto-completed.\nParentheses You can set the parentheses settings for each language and each parenthesis.\nEach setting has three states: enable, disable and default. If it’s default, it uses the settings in the Code Edit page. Otherwise, it overwrites the settings in the Code Edit page.\nAuto Complete See Code Edit/Auto Complete Parentheses .\nAuto Remove See Code Edit/Auto Remove Parentheses .\nTab Jump Out See Code Edit/Jump out of a parenthesis by pressing Tab .\n","excerpt":"General Default Language The default programming language. It’s used …","ref":"/zh_tw/docs/preferences/language/","title":"Language"},{"body":"准备工作 克隆源代码仓库以及子组件:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git # 或者分成两条命令 # git clone https://github.com/cpeditor/cpeditor.git # git submodule update --init --recursive cd cpeditor 安装 Qt (5.15), CMake (3.12 或更高版本)以及 Python3 。\n 在一些 Linux 发行版和 macOS 系统上,你可以直接使用包管理器安装 Qt。例如,在 Arch Linux 上可以使用 sudo pacman -S qt5-base,在 macOS 上可以使用 brew install qt@5。 你还可以使用 aqtinstall 来下载并安装。 如果 CMake 提示找不到 Qt 路径,你应该设置环境变量:CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake。例如,在 macOS 上,你可以运行 export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.2\"。\n 安装 KDE (kf5) Extra CMake Modules。\n 在一些 Linux 发行版和 macOS 系统上,你可以直接使用包管理器安装它们。例如,在 Arch Linux 上可以使用 sudo pacman -S syntax-highlighting5,在 macOS 上可以使用 Homebrew KDE 然后 brew install kde-mac/kde/kf5-syntax-highlighting。\n 否则,你需要使用 CMake 先构建并安装 Extra CMake Modules 然后再是 KSH:\ncd third_party/extra-cmake-modules cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install # 可能需要 sudo cd ../syntax-highlighting cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install 构建 Linux/macOS:\ncmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build Windows:\ncmake -S . -B build cmake --build build --config Release 在 Linux 上,你会得到 build/cpeditor。\n在 macOS 上,你会得到 build/cpeditor.app。\n在 Windows 上,你会得到 build/cpeditor.exe 或 build/Release/cpeditor.exe。如果打开时提示 DLL 缺失,你可以将 %QtPath%\\%QtVersion%\\%Compiler%\\bin(例如:D:\\Qt\\5.15.2\\msvc2019_64\\bin)加入 PATH 环境变量。\n","excerpt":"准备工作 克隆源代码仓库以及子组件:\ngit clone --recurse-submodules …","ref":"/zh/docs/installation/build-from-source/","title":"从源代码构建"},{"body":"","excerpt":"","ref":"/zh/docs/","title":"文档"},{"body":" Clone 儲存庫及 submodules:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git cd cpeditor 安裝 Qt (5.15 or higher), CMake (3.12 or higher) 及 Python3 。\n 在 macOS 及某些 Linux 發行版,您可以透過套件管理系統來安裝。例如在 Arch Linux 上使用 sudo pacman -S qt5,在 macOS 上使用brew install qt5。 您也可以用 aqtinstall 安裝 Qt。 若 CMake 找不到 Qt 的安裝路徑,需要設定環境變數:CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake。以 macOS 而言,執行這個命令 export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.1\"。\n 執行下列命令。\n Linux/macOS:\nmkdir build cd build cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . Windows:\nmkdir build cd build cmake .. cmake --build . --config Release 依據不同的系統,建置的檔案位於\nLinux:build/cpeditor\nmacOS:build/cpeditor.app\nWindows:build\\cpeditor.exe 或 build\\Release\\cpeditor.exe 若執行時發生缺少 DLL 的錯誤,您可以在 PATH 環境變數加上%QtPath%\\%QtVersion%\\%Compiler%\\bin (例如: D:\\Qt\\5.15.1\\msvc2019_64\\bin)。\n","excerpt":" Clone 儲存庫及 submodules:\ngit clone --recurse-submodules …","ref":"/zh_tw/docs/installation/build-from-source/","title":"編譯原始碼"},{"body":"","excerpt":"","ref":"/zh_tw/docs/","title":"說明文件"},{"body":"通用 默认编程语言 设置打开新标签时使用的默认编程语言。\n命令 C++ 命令 C++ 编译命令 设置编译 C++ 时的编译命令,例如 g++ -Wall。\n该命令中不应包含源代码和输出文件的名称,CP Editor 将会自动添加它们。\n详细的编译选项请参考编译器的文档。\nC++ 可执行文件路径 设置可执行文件的路径,即编译命令中 -o 选项后的参数。\n如果使用了相对路径,则可执行文件的位置将和源代码位置有关(如果当前标签是未命名标签,则可执行文件位置将和 临时文件夹 的位置有关)。\n该设置中,你可以使用如下参数:\n ${filename}:源代码的完整文件名。如果当前标签是未命名标签,则完整文件名是 sol.cpp。 ${basename}:将 ${filename} 去掉扩展名(.cpp 等)后的文件名。 ${tmpdir} 或 ${tempdir}: 临时文件夹 的路径。 例如,使用 ${tmpdir}/${basename} 将会把可执行文件存储在临时文件夹下。如果你不想要存储可执行文件的话,可以这样设定路径。而 executables/${basename} 将会把可执行文件存储在源代码所在目录的下的 executables 文件夹。\nC++ 运行参数 设置执行 C++ 程序需要的参数。在算法竞赛中一般留空即可。\nC++ 编译器输出编码 设置当编译器输出警告,错误等消息时使用的编码。\n如果输出的警告和错误信息不是英文,合理配置该设置可以避免输出信息出现乱码。\nJava 命令 Java 编译命令 设置编译 Java 源代码的编译命令,例如 javac。\n该命令中不应包含源代码和类路径,CP Editor 将会自动添加它们。\nJava 类路径 设置编译后存储 Java 类文件的位置。\n更多细节详见 C++ 可执行文件路径 。\nJava 类名称 设置你的源代码中主类的名字。\n源代码的名字不必与主类名相同。当编译时,CP Editor 将会自动将源代码保存在一个与主类名称相同的文件中。\nJava 运行命令 设置执行 Java 程序时的命令。例如 java。\n该命令中不应出现类路径或类名,CP Editor 会自动添加它们。\nJava 运行参数 设置执行 Java 程序需要的参数。在算法竞赛中一般留空即可。\nJava 编译器输出源码 详见 C++ 编译器输出编码 。\nPython 命令 Python 运行命令 设置运行 Python 源代码的命令。一般为 python,python2 或 python3。\nPython 运行命令 设置执行 Python 程序需要的参数。在算法竞赛中一般留空即可。\n模板 如果设置了模板,在创建新标签时,将会用设置的模板自动填充内容。\n模板路径 设置模板所在的路径。\n使用模板时的光标初始位置 设置使用模板时光标所在的初始位置。\n该设置包含三部分。\n 正则表达式 偏移类型:开头或末尾。 偏移量:一个数字,可以为负值。 光标位置将会通过如下步骤确定:\n 找到模板中匹配正则表达式的第一个位置。 如果模板中不存在匹配正则表达式的位置,光标将会在模板末尾。 否则,光标将会在第一个匹配位置的开头或末尾(取决于设置的偏移类型),并会在该位置基础上向右移动偏移量个位置(如果是负数,就会向左移动)。 例如,如果你的模板中包含下列代码片段:\nint main() { } 则可以用 int main 作为匹配的正则表达式,end 作为偏移类型,9 作为偏移量,则在打开一个新标签时,光标将会停在 main 函数的第一行。\n代码片段 管理代码片段 你可以在 “语言-\u003eXXX-\u003eXXX 代码片段中” 添加,删除,重命名代码片段。你可以使用 Ctrl+N 作为添加的快捷键,Ctrl+W 作为删除的快捷键,F2 作为重命名的快捷键。\n你也可以在 “更多” 菜单中导入或导出代码片段。\n使用代码片段 你可以通过 “动作-\u003e使用代码片段” 或按下 Ctrl+T 来使用代码片段。\n当你在挑选代码片段时,你可以在搜索框中输入代码片段名的前几个字符,以更快找到相应的片段。\n括号 你可以为各编程语言设置相应的括号补全选项。\n每个设置有三种状态:开启,关闭或默认。如果处于默认状态,将应用 代码编辑 中的设置,否则将会使用这里的设置。\n自动补全 详见 代码编辑/自动补全括号 。\n自动删除 详见 代码编辑/自动删除括号 。\n按 Tab 键跳出 详见 代码编辑/在按下 Tab 键时跳出括号 。\n","excerpt":"通用 默认编程语言 设置打开新标签时使用的默认编程语言。\n命令 C++ 命令 C++ 编译命令 设置编译 C++ 时的编译命令,例如 g++ …","ref":"/zh/docs/preferences/language/","title":"语言"},{"body":"General UI Language The natural language used in the UI.\nUI Style The style used for the UI. The available options are different on different platforms.\nThe “default” style is either the most appropriate style on your platform or the style specified by the --style command-line option.\nOn Windows, there’s an extra option “Auto Fusion”. “Auto Fusion” is either dark or light depending on the system theme (i.e. whether the Windows application theme is dark or light).\nIf there’s anything wrong after you change the UI style, you can try restarting CP Editor.\nEditor Theme The syntax highlighting theme for the code editor.\nOpacity The opacity of the main window.\nTest Case Maximum Height The maximum height of a test case before the scrollbar occurs.\nShow Compile And Run Only Hide the compile only and run only buttons.\nIt can be useful if you don’t care about the time used on compilation.\nDisplay EOLN in Diff Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).\nAdd extra margin at the bottom of the code editor Add an extra margin at the bottom of the code editor, so that you can scroll less.\nDue to technical reasons, it could slightly affect the operation history, i.e. you might be able undo the margin change by Ctrl+Z.\nFont Show only Monospaced Font When checked the font picker dialog shows only monospaced fonts.\nEditor Font The font for the code editor.\nTest Cases Font The font for the test cases.\nMessage Logger Font The font for the messages.\nCustom Application Font Use a custom font for the UI (except for code editor, test cases, messages, etc.), instead of the system font.\n","excerpt":"General UI Language The natural language used in the UI.\nUI Style The …","ref":"/docs/preferences/appearance/","title":"Appearance"},{"body":"General UI Language The natural language used in the UI.\nUI Style The style used for the UI. The available options are different on different platforms.\nThe “default” style is either the most appropriate style on your platform or the style specified by the --style command-line option.\nOn Windows, there’s an extra option “Auto Fusion”. “Auto Fusion” is either dark or light depending on the system theme (i.e. whether the Windows application theme is dark or light).\nIf there’s anything wrong after you change the UI style, you can try restarting CP Editor.\nEditor Theme The syntax highlighting theme for the code editor.\nOpacity The opacity of the main window.\nTest Case Maximum Height The maximum height of a test case before the scrollbar occurs.\nShow Compile And Run Only Hide the compile only and run only buttons.\nIt can be useful if you don’t care about the time used on compilation.\nDisplay EOLN in Diff Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).\nAdd extra margin at the bottom of the code editor Add an extra margin at the bottom of the code editor, so that you can scroll less.\nDue to technical reasons, it could slightly affect the operation history, i.e. you might be able undo the margin change by Ctrl+Z.\nFont Show only Monospaced Font When checked the font picker dialog shows only monospaced fonts.\nEditor Font The font for the code editor.\nTest Cases Font The font for the test cases.\nMessage Logger Font The font for the messages.\nCustom Application Font Use a custom font for the UI (except for code editor, test cases, messages, etc.), instead of the system font.\n","excerpt":"General UI Language The natural language used in the UI.\nUI Style The …","ref":"/ru/docs/preferences/appearance/","title":"Appearance"},{"body":"Change UI Language Now CP Editor is available in multiple languages, including English and Chinese.\nYou can change the UI language in Preferences-\u003eAppearance-\u003eGeneral-\u003eUI Language . Note that you need to restart CP Editor to apply the change.\nSet Compile and Run Commands You need to install g++ / python / java depending on which language you are using. You need to add them to system PATH to have them found by CP Editor.\nThen you can set the Compile and Run Commands in the preferences. For example, you can set C++ Commands in Preferences-\u003eLanguages-\u003eC++-\u003eC++ Commands .\nSetup CF Tool To submit Codeforces problems in CP Editor, you need to install CF Tool .\nYou can add it to your system PATH to use it directly, or you can set the path to it in Preferences-\u003eExtensions-\u003eCF Tool .\nYou need to configure the tool by running the command cf config in the command line before using it.\nSetup Competitive Companion Competitive Companion is used to parse problems/contests from online judges. After you install it, you can parse sample test cases with a single click, instead of copying them manually.\nYou can install it from the addon/extension markets:\n Chrome Extension Firefox Addon Setup WakaTime You can use WakaTime to track your time usage.\nIf you are a Linux/macOS user and your distro provides the WakaTime CLI, it’s recommended to use it.\nOtherwise, there are two options:\n The deprecated Python version. You can install it via pip install wakatime. The new Go version. You can download it at https://github.com/wakatime/wakatime-cli/releases. Setup Code Formatter Setup Clang Format CP Editor uses Clang Format to format your C/C++ and Java code.\nYou need to add it to your system PATH, or set the path to it at Preferences-\u003eExtensions-\u003eClang Format .\nSetup YAPF CP Editor uses YAPF to format your Python code.\nIt should work after installation . If not, set the program and arguments in Preferences-\u003eExtensions-\u003eCode Formatting-\u003eYAPF .\nSetup Language Server You can use Language Server to lint your codes and get errors, warnings, etc.\nYou can install any language server program and set suitable settings in Preferences-\u003eExtensions-\u003eLanguage Server .\nThough you can use any language server program you like, here are some suggestions if you are not sure which to use.\nC++ Server If you have installed LLVM, you already have clangd, because it comes with the clang compiler. If you haven’t, please install LLVM prebuild binaries for Windows. On Linux and macOS you can install it from your package manager. You need to set the start command of clangd in Preferences -\u003e Extensions -\u003e Language Server -\u003e C++ Server -\u003e Path, where the command can be the path to the executable file or just clangd if it’s in the PATH.\nJava Server You need to have java installed and added to PATH. Download Eclipse.JDT.ls , extract it to any location (in a new directory), We call the path to that directory \u003cINSTALL_PATH\u003e (Something like C://Users/Myname/Desktop/EclipseJDT.ls/). In CP Editor, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Java Server. Set “Path” to java and set “Arguments” to something like -jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac). For example, on Windows, the arguments should be something like -configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win.\nThe full name of the jar file above, org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar, may change incrementally as the project version of JDT changes. If java complains about “jar not found”, then look for the latest version of the org.eclipse.equinox.launcher_* jar in \u003cINSTALL_PATH\u003e/plugins and replace it in the command after -jar.\nPython Server You need to have python and pip installed and added to PATH. Install python-language-server pip module by running pip install 'python-language-server[all]'. After the installation is done, open CP Editor settings, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Python Server. Set “Path” to python and set “Arguments” to -m pyls. Save the changes and you will have linting for Python.\n","excerpt":"Change UI Language Now CP Editor is available in multiple languages, …","ref":"/docs/setup/","title":"Setup"},{"body":"Change UI Language Now CP Editor is available in multiple languages, including English and Chinese.\nYou can change the UI language in Preferences-\u003eAppearance-\u003eGeneral-\u003eUI Language . Note that you need to restart CP Editor to apply the change.\nSet Compile and Run Commands You need to install g++ / python / java depending on which language you are using. You need to add them to system PATH to have them found by CP Editor.\nThen you can set the Compile and Run Commands in the preferences. For example, you can set C++ Commands in Preferences-\u003eLanguages-\u003eC++-\u003eC++ Commands .\nSetup CF Tool To submit Codeforces problems in CP Editor, you need to install CF Tool .\nYou can add it to your system PATH to use it directly, or you can set the path to it in Preferences-\u003eExtensions-\u003eCF Tool .\nYou need to configure the tool by running the command cf config in the command line before using it.\nSetup Competitive Companion Competitive Companion is used to parse problems/contests from online judges. After you install it, you can parse sample test cases with a single click, instead of copying them manually.\nYou can install it from the addon/extension markets:\n Chrome Extension Firefox Addon Setup WakaTime You can use WakaTime to track your time usage.\nIf you are a Linux/macOS user and your distro provides the WakaTime CLI, it’s recommended to use it.\nOtherwise, there are two options:\n The deprecated Python version. You can install it via pip install wakatime. The new Go version. You can download it at https://github.com/wakatime/wakatime-cli/releases. Setup Code Formatter Setup Clang Format CP Editor uses Clang Format to format your C/C++ and Java code.\nYou need to add it to your system PATH, or set the path to it at Preferences-\u003eExtensions-\u003eClang Format .\nSetup YAPF CP Editor uses YAPF to format your Python code.\nIt should work after installation . If not, set the program and arguments in Preferences-\u003eExtensions-\u003eCode Formatting-\u003eYAPF .\nSetup Language Server You can use Language Server to lint your codes and get errors, warnings, etc.\nYou can install any language server program and set suitable settings in Preferences-\u003eExtensions-\u003eLanguage Server .\nThough you can use any language server program you like, here are some suggestions if you are not sure which to use.\nC++ Server If you have installed LLVM, you already have clangd, because it comes with the clang compiler. If you haven’t, please install LLVM prebuild binaries for Windows. On Linux and macOS you can install it from your package manager. You need to set the start command of clangd in Preferences -\u003e Extensions -\u003e Language Server -\u003e C++ Server -\u003e Path, where the command can be the path to the executable file or just clangd if it’s in the PATH.\nJava Server You need to have java installed and added to PATH. Download Eclipse.JDT.ls , extract it to any location (in a new directory), We call the path to that directory \u003cINSTALL_PATH\u003e (Something like C://Users/Myname/Desktop/EclipseJDT.ls/). In CP Editor, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Java Server. Set “Path” to java and set “Arguments” to something like -jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac). For example, on Windows, the arguments should be something like -configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win.\nThe full name of the jar file above, org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar, may change incrementally as the project version of JDT changes. If java complains about “jar not found”, then look for the latest version of the org.eclipse.equinox.launcher_* jar in \u003cINSTALL_PATH\u003e/plugins and replace it in the command after -jar.\nPython Server You need to have python and pip installed and added to PATH. Install python-language-server pip module by running pip install 'python-language-server[all]'. After the installation is done, open CP Editor settings, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Python Server. Set “Path” to python and set “Arguments” to -m pyls. Save the changes and you will have linting for Python.\n","excerpt":"Change UI Language Now CP Editor is available in multiple languages, …","ref":"/ru/docs/setup/","title":"Setup"},{"body":"If you want to use the latest version (even later than the beta release), but don’t want to build from source, you can download Artifacts from GitHub Actions .\nHowever, it’s not recommended to use Artifacts, they are more unstable than beta releases, and could be a work in progress. You should read the commit logs and even the source codes before using Artifacts.\nTo run it on Windows/macOS, you should install from Releases first (usually any version is OK unless something like DLL missing happens). On Windows, replace cpeditor.exe in your install folder with the Artifact. On macOS, run cp path/to/Artifact cpeditor.app/Contents/MacOs, where cpeditor.app is the one already installed on your machine.\nTo run it on Ubuntu 18.04, you need to install Qt. Other Linux distributions may not support binaries compiled on Ubuntu 18.04.\n","excerpt":"If you want to use the latest version (even later than the beta …","ref":"/docs/installation/use-artifacts/","title":"Use Artifacts"},{"body":"If you want to use the latest version (even later than the beta release), but don’t want to build from source, you can download Artifacts from GitHub Actions .\nHowever, it’s not recommended to use Artifacts, they are more unstable than beta releases, and could be a work in progress. You should read the commit logs and even the source codes before using Artifacts.\nTo run it on Windows/macOS, you should install from Releases first (usually any version is OK unless something like DLL missing happens). On Windows, replace cpeditor.exe in your install folder with the Artifact. On macOS, run cp path/to/Artifact cpeditor.app/Contents/MacOs, where cpeditor.app is the one already installed on your machine.\nTo run it on Ubuntu 18.04, you need to install Qt. Other Linux distributions may not support binaries compiled on Ubuntu 18.04.\n","excerpt":"If you want to use the latest version (even later than the beta …","ref":"/ru/docs/installation/use-artifacts/","title":"Use Artifacts"},{"body":"If you want to use the latest version (even later than the beta release), but don’t want to build from source, you can download Artifacts from GitHub Actions .\nHowever, it’s not recommended to use Artifacts, they are more unstable than beta releases, and could be a work in progress. You should read the commit logs and even the source codes before using Artifacts.\nTo run it on Windows/macOS, you should install from Releases first (usually any version is OK unless something like DLL missing happens). On Windows, replace cpeditor.exe in your install folder with the Artifact. On macOS, run cp path/to/Artifact cpeditor.app/Contents/MacOs, where cpeditor.app is the one already installed on your machine.\nTo run it on Ubuntu 18.04, you need to install Qt. Other Linux distributions may not support binaries compiled on Ubuntu 18.04.\n","excerpt":"If you want to use the latest version (even later than the beta …","ref":"/zh_tw/docs/installation/use-artifacts/","title":"Use Artifacts"},{"body":"一般 介面語言 用於顯示使用者介面的語言。\n介面樣式 依據不同的平台,可用的選項也不同。\n「預設」樣式會套用適合目前平台的樣式,或者您在命令列中以 --style 指定的樣式。\n在 Windows 上,還有一個「Auto Fusion」選項。這個選項會跟隨系統設定使用淺色、深色佈景。\n若變更 UI 樣式後有什麼問題,可以試著重開 CP Editor。\n編輯器色彩佈景主題 程式碼編輯器中語法標示的色彩佈景主題。\n不透明度 控制主視窗的不透明度。\n測資顯示最大高度 在捲軸不出現的情況下,可允許顯示的最大高度。\n僅顯示「編譯並執行」按鈕 隱藏「編譯」及「執行」按鈕。\n這是個好用的功能,只要您不在意編譯的時間。\n在 Diff 中顯示 EOLN 在 Diff 檢視器中將 EOF 顯示為「¶」。這功能在需要檢查 EOL 的差異時(比如看看是否多了換行)尤為有用。\n在程式碼編輯器的底部加上額外邊距 在程式碼編輯器的底部加上額外邊距,這可以改善來回滾動的困擾。\n由於技術原因,這會稍微影響操作的紀錄,比如您可以按 Ctrl+Z 來復原邊距設定。\n字型 只顯示等寬字型 在選取字型的對話窗中,僅列出等寬字型。\n編輯器字型 在程式碼編輯器中使用的字型。\n測資字型 在測資區塊中使用的字型。\n訊息字型 在訊息區塊中使用的字型。\n自訂全域字型 在呈現使用者介面時,不使用系統的預設字型。生效的範圍排除了程式碼編輯器、測資、訊息等處……。\n","excerpt":"一般 介面語言 用於顯示使用者介面的語言。\n介面樣式 依據不同的平台,可用的選項也不同。\n「預設」樣式會套用適合目前平台的樣式,或者您在命令 …","ref":"/zh_tw/docs/preferences/appearance/","title":"介面"},{"body":"如果你想要使用最新版本(比 beta 还要新),但是不想从源代码构建,你可以从 GitHub Actions 下载 Artifacts。\n然而,我们不建议你使用 Artifacts,因为它们比 beta 版本更加不稳定,可能正在开发中。在使用 Artifacts 之前,你应该阅读 commit 日志甚至源代码。\n为了在 Windows/macOS 上运行它,你应该首先从 Releases 安装(通常任何版本都可以,除非出现了 DLL 丢失等问题)。在 Windows 上,将安装文件夹中的 cpeditor.exe 替换为 Artifact 版本的。在 macOS 上,运行 cp path/to/Artifact cpeditor.app/Contents/MacOs,其中 cpeditor.app 是你的计算机上已安装的那个。\n为了在 Ubuntu 18.04 上运行它,你需要安装 Qt。其他 Linux 发行版可能不支持在 Ubuntu 18.04 上编译的二进制文件。\n","excerpt":"如果你想要使用最新版本(比 beta 还要新),但是不想从源代码构建,你可以从 GitHub Actions 下载 Artifacts。\n然 …","ref":"/zh/docs/installation/use-artifacts/","title":"使用 Artifacts"},{"body":"更改界面语言 现在 CP Editor 支持多种语言,包括英文,中文和俄语。\n在默认情况下 CP Editor 的界面语言与系统设置一致。如果你需要对界面语言进行更改,可以在 设置-\u003e外观-\u003e通用-\u003e界面语言 中进行更改。注意你需要重启 CP Editor 以使更改生效。\n设置编译与运行命令 根据你使用的编程语言,你需要安装 g++ / python / java 等环境。你需要将它们加入 PATH 环境变量以使 CP Editor 能找到它们。\n接下来在设置页面设置编译与运行命令。例如,你可以在 设置-\u003e语言-\u003eC++-\u003eC++ 命令 中设置 C++ 的相关命令。\n安装 CF Tool 如果你需要在 CP Editor 中提交 Codeforces 题目,你需要安装 CF Tool 。\n你可以将其加入 PATH 环境变量,或是在 设置-\u003e扩展-\u003eCF Tool 中设置其路径。\n在使用 CF Tool 之前,你需要在终端运行 cf config 命令完成相关配置。\n安装 Competitive Companion Competitive Companion 用于从在线评测系统中解析题目/比赛的信息。在安装它后,你只需点击一下即可从题目中获取测试样例,免除了手动复制的麻烦。\n你可以通过安装浏览器扩展的方式来安装 Competitive Companion。\n Chrome Firefox 安装 WakaTime WakaTime 可以帮助你进行工作量的统计。\n如果你正在使用 Linux/macOS 提供 WakaTime CLI 的发行版,我们建议直接通过你的操作系统的软件包管理器安装。\n否则,有两种方式安装 WakaTime:\n 已被弃用的 Python 版本。 可以通过 pip install wakatime 安装。 Go 版本。 可在 https://github.com/wakatime/wakatime-cli/releases 下载。 安装代码格式化程序 安装 Clang Format CP Editor 使用 Clang Format 来格式化 C/C++ 以及 Java 代码。\n你需要将其加入 PATH 环境变量,或是在 设置-\u003e扩展-\u003eClang Format 中设置其路径。\n安装 YAPF CP Editor 使用 YAPF 来格式化 Python 代码。\n 安装 后应该就可以使用了。如果不能,请在 设置-\u003e扩展-\u003e代码格式化-\u003eYAPF 进行设置。\n安装 Language Server 你可以使用 Language Server 来获得你代码中的错误或警告信息。\n要使用 Language Server,你需要安装 Language Server 程序 并在 设置-\u003e扩展-\u003eLanguage Server 中完成相关设置。\n如果你不熟悉 Language Server 的话,下面是一些可能有用的建议。\nC++ Server LLVM 提供了 clangd 程序。在 Windows 下,你需要下载 LLVM 的二进制安装包;而在 Linux 和 macOS 下,你可以通过包管理器进行安装。你需要在 设置-\u003e扩展-\u003eLanguage Server-\u003eC++ Server 中设置 clangd 路径,该路径应被设置为可执行文件的路径。如果它已经在 PATH 中,直接设置为 clangd 即可。\nJava Server 你需要安装 java 并将其加入 PATH 环境变量中。接下来下载 Eclipse.JDT.ls ,将其解压至你想要解压的位置(需要在一个新目录下),我们下面称该目录为 \u003cINSTALL_PATH\u003e。接下来在 设置-\u003e扩展-\u003eLanguage Server-\u003eJava Server 中,将路径设置为 java,将参数设置为 -jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac)。例如,在 Windows 下,参数可以这样设置:-configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win。\n上述 jar 文件的完整文件名,org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar,可能会随 JDT 的版本改变而改变。如果 Java 提示 “jar 未找到”,请在 \u003cINSTALL_PATH\u003e/plugins 下找到 org.eclipse.equinox.launcher_* jar 文件的最新版本,并用相应的文件名替换 -jar 后面的命令参数。\nPython Server 你需要安装 python 和 pip 并将其加入 PATH 中。执行命令 pip install 'python-language-server[all] 安装 python-language-server。在安装完成后,打开 CP Editor,在 设置-\u003e扩展-\u003eLanguage Server-\u003ePython Server 中,将路径设置为 python,将参数设置为 -m pyls,即可完成 Python 下 Language Server 程序的配置。\n","excerpt":"更改界面语言 现在 CP Editor 支持多种语言,包括英文,中文和俄语。\n在默认情况下 CP Editor 的界面语言与系统设置一致。如 …","ref":"/zh/docs/setup/","title":"初始化"},{"body":"通用 界面语言 (UI Language) UI 中使用的自然语言。\n界面风格 用户界面使用的样式。可用选项在不同平台上有所不同。\n“默认”样式要么是在你的平台上最合适的样式,要么是 --style 命令行选项指定的样式。\n在 Windows 上,还有一个附加选项 “Auto Fusion”。“Auto Fusion” 是深色还是浅色取决于系统主题(即 Windows 应用程序主题是深色还是浅色)。\n更改 UI 样式后,如果有任何问题,可以尝试重新启动 CP Editor。\n编辑器主题 代码编辑器的语法高亮显示主题。\n不透明度 主窗口的不透明度。\n测试用例最大高度 滚动条出现之前测试用例的最大高度。\n只显示编译并运行 隐藏仅编译、仅运行这两个按钮。\n如果你不在乎编译所用的时间,这或许会有用。\n在差异查看器中显示行尾字符 使用字符 “¶” 在差异查看器中可视化行尾。如果你要查看行尾的差异(即末尾多余的空行),这将很有用。\n在代码编辑器底部添加额外的边距 在代码编辑器的底部添加一个额外的边距,让你可以更少地滚动。\n由于技术原因,它可能会稍微影响操作历史记录,所以你可以通过 Ctrl+Z 撤消页边距更改。\n字体 仅显示等宽字体 在为下面的设置选择字体时只显示等宽字体。\n编辑器字体 代码编辑器的字体。\n测试用例字体 测试用例的字体。\n消息字体 消息的字体。\n使用自定义的全局字体 对 UI 用自定义字体(代码编辑器,测试用例,消息等除外)来替代系统字体。\n","excerpt":"通用 界面语言 (UI Language) UI 中使用的自然语言。\n界面风格 用户界面使用的样式。可用选项在不同平台上有所不同。\n“默认” …","ref":"/zh/docs/preferences/appearance/","title":"外观"},{"body":"調整 UI 語言 CP Editor 支援多種語言,包括英文及俄文。\n您可以在 偏好設定-\u003e介面-\u003e一般-\u003eUI 語言 調整介面的顯示語言。需要重開 CP Editor 以生效。\n設定編譯及執行指令 依據您使用的程式語言,需要安裝 g++、python、java 等軟體。為了讓 CP Editor 可以順利找到它們,可能需要將其加到系統的 PATH 環境變數。\n接下來可以在偏好設定畫面中設定輸入編譯及執行的指令。例如在 偏好設定-\u003e程式語言-\u003eC++-\u003eC++ 指令 設定 C++ 指令。\n設定 CF Tool 需要安裝 CF Tool 才能在 CP Editor 裡繳交答案至 Codeforces。\n接著將 CF Tool 加入系統 PATH 環境變數,或者在 偏好設定-\u003e擴充功能-\u003eCF Tool 設定其路徑。\n此外在使用之前,還需要在命令列中輸入 cf config 以調整其組態。\n設定 Competitive Companion Competitive Companion 是用來剖析線上評測系統(Online Judge)的題目。安裝了它,您就可以單鍵取得範例測資,跟手動複製貼上說掰掰。\n您可以在這些瀏覽器外掛元件商店安裝:\n Firefox 附加元件 Chrome 擴充功能 Setup WakaTime You can use WakaTime to track your time usage.\nIf you are a Linux/macOS user and your distro provides the WakaTime CLI, it’s recommended to use it.\nOtherwise, there are two options:\n The deprecated Python version. You can install it via pip install wakatime. The new Go version. You can download it at https://github.com/wakatime/wakatime-cli/releases. 安裝程式碼排版工具 設定 Clang Format CP Editor 使用 Clang Format 排版 C/C++、Java 程式碼。\n您需要將 Clang Format 加入系統 PATH 環境變數,或者在 偏好設定-\u003e擴充功能-\u003eClang Format 設定其路徑。\n設定 YAPF CP Editor 使用 YAPF 排版 Python 程式碼。\n請依照 安裝指示 操作,在完成之後應該就能運作。若沒有,請在 偏好設定-\u003e擴充功能-\u003e程式碼排版-\u003eYAPF 中設定其路徑及引數。\n設定 Language Server Language Server 可以來梳理(Lint)程式碼,並顯示錯誤、警告訊息。\n您可以安裝 Language Server 程式 並在 偏好設定-\u003e擴充功能-\u003eLanguage Server 調整設定值。\n若您不知道該安裝哪個,以下是一些建議。\nC++ Server 如果您已經安裝了 LLVM,那麼 clangd 就會與 clang 編譯器一同安裝。\n根據不同作業系統,安裝方法如下:\n Windows:到 LLVM 的網站 下載並安裝編譯好的檔案 Linux/macOS:使用套件管理系統安裝 接著必須讓 CP Editor 找到 Language Server 程式,在 偏好設定-\u003e擴充功能-\u003eLanguage Server-\u003eC++ Server-\u003e路徑 中設定 clangd 的命令,視情況為:\n clangd 已在 PATH 環境變數中時,值為 clangd clangd 的可執行檔路徑 Java Server 首先,您的電腦需要安裝 java 並將其加入 PATH 環境變數。接著下載 Eclipse.JDT.ls 並將其解壓縮到您喜歡的位置,此小節將以 \u003cINSTALL_PATH\u003e 來稱呼該位置。在 Windows 上 \u003cINSTALL_PATH\u003e 可能會長這樣:C://Users/Myname/Desktop/EclipseJDT.ls/)。\n接著進到 CP Editor,在 偏好設定-\u003e擴充功能-\u003eLanguage Server-\u003eJava Server 將「路徑」的值填入 java 並在「引數」填入像這樣的值:\n-jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac)。\n以 Windows 而言,引數的值類似:\n-configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win。\n請注意,您的 jar 檔案名稱可能不會與此處的例子相同,會隨著 JDT 版本更迭而變。若 java 出現「jar not found」的錯誤,請在 \u003cINSTALL_PATH\u003e/plugins 中找到 org.eclipse.equinox.launcher_* jar 檔案的最新版本,並將該檔名替代引數中 -jar 後面的內容。\nPython Server 首先,您的系統需有 python 及 pip,且將其加入 PATH 環境變數。接著以 pip install 'python-language-server[all]' 命令安裝 python-language-server pip 模組,在安裝完成後開啟 CP Editor 進到 偏好設定-\u003e擴充功能-\u003eLanguage Server-\u003ePython Server。\n在「路徑」填入 python,並將「引數」設為-m pyls。儲存設定後,您就可以使用 Python 的 Linting 功能了。\n","excerpt":"調整 UI 語言 CP Editor 支援多種語言,包括英文及俄文。\n您可以在 偏好設定-\u003e介面-\u003e一般-\u003eUI 語言 調整介面的顯示語言。 …","ref":"/zh_tw/docs/setup/","title":"首次設定"},{"body":"Save Save Files Faster Use QFile instead of QSaveFile to save files.\nThis is slightly unsafer but notably faster.\nSave File On Compilation Save your code when compiling it.\nSave File On Execution Save your code when executing it.\nSave Testcases on Save Save the test cases on the disk when saving the code.\nYou can choose where to save the test cases in File Path/Testcases .\nAuto Save Auto Save Interval Type It is easier to describe if we explain a little bit about the internal implementation: There is a countdown timer. When we “reset” it, it will be “running” in the next Auto Save Interval milliseconds, and after Auto Save Interval milliseconds, the timer will “timeout” and the code is auto-saved.\nAfter the last modification The timer is reset whenever you modify the code. i.e. Your codes will be saved if you haven’t modified it for Auto Save Interval milliseconds.\nThis mode is suitable for a small Auto Save Interval so that your codes will be auto-saved every time you take a short break from typing. If the interval is too long, likely, your codes will never be auto-saved.\nAfter the first modification The timer is reset when you modify the code if the timer is not running. i.e. Your codes will be saved if you modified it Auto Save Interval milliseconds ago.\nThis mode is suitable for a long Auto Save Interval, otherwise, it’s likely that the save happens when you are typing, which could affect your typing experience.\nWithout modification The timer is reset when it timeouts. i.e. Your codes will be saved every Auto Save Interval milliseconds, no matter you have modified it or not.\nThis mode is suitable for saving test cases, etc. In the other modes, the test cases are not auto-saved if you don’t modify the codes.\nDetached Execution Terminal Program Terminal Arguments This setting is only available on Linux.\nThe terminal program is the name/path of the terminal emulator you want to use.\nThe arguments are used to execute a given command. i.e. \u003cTerminal Program\u003e \u003cTerminal Arguments\u003e \u003ccommand\u003e can be used to execute \u003ccommand\u003e in the terminal emulator.\nIn most terminal emulators including konsole, xterm and xfce-terminal, the argument is -e.\nIn gnome-terminal, it is --.\nYou can read the manual of your terminal emulator to get the suitable arguments.\nSave Session Restore last session at startup Save the status of the editor, and restore most status from the last session when you start CP Editor.\nYou can use the --no-restore-session command-line option to temporarily disable this, in case that the last session is too big and the application hangs.\nAuto-save the current session periodically Save the current session periodically instead of only when exiting the application.\nThis is useful if you don’t want to lose your codes after abnormal terminations, such as power outage, forced shutdown, killing CP Editor, etc. However, if the files and test cases are too large, the editor hangs each time the auto-save happens.\nBind file and problem Restore the problem URL when opening a file If a problem URL was set for a file, when you open that file again, the problem URL will be restored.\nOpen the old file when parsing an old problem URL If a problem URL was set for a file, when parsing that problem from Competitive Companion again, the old file will be opened.\nTest Cases Run your codes on empty test cases Run your code on all non-hidden test cases even if the input is empty.\nCheck your answer on test cases with empty output Check your answer even if your output or the expected output is empty.\nAuto Uncheck Accepted Testcases After the code is executed, the accepted test cases will be automatically unchecked. When test cases are unchecked, they are collapsed and won’t be tested on when you execute your code.\nLoad External File Changes Auto-load external file changes if there’s no unsaved modification If the file on the disk and the code in CP Editor was the same, and then the file is changed outside of CP Editor, load the external change without confirmation.\nAsk whether to load external file changes If the file is changed outside of CP Editor, ask whether to load the change or not.\nIf this setting is disabled, external changes won’t be loaded.\n Auto-load external file changes if there’s no unsaved modification overrides this setting. i.e. if Auto-load external file changes if there’s no unsaved modification is enabled, external file changes will be loaded without confirmation regardless of Ask whether to load external file changes ; if Auto-load external file changes if there’s no unsaved modification is disabled, the user will be asked whether to load the changes only when Ask whether to load external file changes is enabled, otherwise the changes won’t be loaded.\nStopwatch Display Stopwatch Show a stopwatch in the UI. You can use it to track your time spent on solving a problem.\nStart/Stop stopwatch on tab switch When switching to a different tab, automatically start the stopwatch on the current tab and pause the stopwatch on the previous tab.\nIf you switch to the correct tab when solving a problem, with this setting enabled, you won’t need to manually start/stop the stopwatch.\nShow stopwatch result only when the button is pressed Hide the time of the stopwatch and only show the time when the “Show” button is pressed.\nThis may reduce distractions caused by stopwatch updates.\n","excerpt":"Save Save Files Faster Use QFile instead of QSaveFile to save files. …","ref":"/docs/preferences/actions/","title":"Actions"},{"body":"Save Save Files Faster Use QFile instead of QSaveFile to save files.\nThis is slightly unsafer but notably faster.\nSave File On Compilation Save your code when compiling it.\nSave File On Execution Save your code when executing it.\nSave Testcases on Save Save the test cases on the disk when saving the code.\nYou can choose where to save the test cases in File Path/Testcases .\nAuto Save Auto Save Interval Type It is easier to describe if we explain a little bit about the internal implementation: There is a countdown timer. When we “reset” it, it will be “running” in the next Auto Save Interval milliseconds, and after Auto Save Interval milliseconds, the timer will “timeout” and the code is auto-saved.\nAfter the last modification The timer is reset whenever you modify the code. i.e. Your codes will be saved if you haven’t modified it for Auto Save Interval milliseconds.\nThis mode is suitable for a small Auto Save Interval so that your codes will be auto-saved every time you take a short break from typing. If the interval is too long, likely, your codes will never be auto-saved.\nAfter the first modification The timer is reset when you modify the code if the timer is not running. i.e. Your codes will be saved if you modified it Auto Save Interval milliseconds ago.\nThis mode is suitable for a long Auto Save Interval, otherwise, it’s likely that the save happens when you are typing, which could affect your typing experience.\nWithout modification The timer is reset when it timeouts. i.e. Your codes will be saved every Auto Save Interval milliseconds, no matter you have modified it or not.\nThis mode is suitable for saving test cases, etc. In the other modes, the test cases are not auto-saved if you don’t modify the codes.\nDetached Execution Terminal Program Terminal Arguments This setting is only available on Linux.\nThe terminal program is the name/path of the terminal emulator you want to use.\nThe arguments are used to execute a given command. i.e. \u003cTerminal Program\u003e \u003cTerminal Arguments\u003e \u003ccommand\u003e can be used to execute \u003ccommand\u003e in the terminal emulator.\nIn most terminal emulators including konsole, xterm and xfce-terminal, the argument is -e.\nIn gnome-terminal, it is --.\nYou can read the manual of your terminal emulator to get the suitable arguments.\nSave Session Restore last session at startup Save the status of the editor, and restore most status from the last session when you start CP Editor.\nYou can use the --no-restore-session command-line option to temporarily disable this, in case that the last session is too big and the application hangs.\nAuto-save the current session periodically Save the current session periodically instead of only when exiting the application.\nThis is useful if you don’t want to lose your codes after abnormal terminations, such as power outage, forced shutdown, killing CP Editor, etc. However, if the files and test cases are too large, the editor hangs each time the auto-save happens.\nBind file and problem Restore the problem URL when opening a file If a problem URL was set for a file, when you open that file again, the problem URL will be restored.\nOpen the old file when parsing an old problem URL If a problem URL was set for a file, when parsing that problem from Competitive Companion again, the old file will be opened.\nTest Cases Run your codes on empty test cases Run your code on all non-hidden test cases even if the input is empty.\nCheck your answer on test cases with empty output Check your answer even if your output or the expected output is empty.\nAuto Uncheck Accepted Testcases After the code is executed, the accepted test cases will be automatically unchecked. When test cases are unchecked, they are collapsed and won’t be tested on when you execute your code.\nLoad External File Changes Auto-load external file changes if there’s no unsaved modification If the file on the disk and the code in CP Editor was the same, and then the file is changed outside of CP Editor, load the external change without confirmation.\nAsk whether to load external file changes If the file is changed outside of CP Editor, ask whether to load the change or not.\nIf this setting is disabled, external changes won’t be loaded.\n Auto-load external file changes if there’s no unsaved modification overrides this setting. i.e. if Auto-load external file changes if there’s no unsaved modification is enabled, external file changes will be loaded without confirmation regardless of Ask whether to load external file changes ; if Auto-load external file changes if there’s no unsaved modification is disabled, the user will be asked whether to load the changes only when Ask whether to load external file changes is enabled, otherwise the changes won’t be loaded.\nStopwatch Display Stopwatch Show a stopwatch in the UI. You can use it to track your time spent on solving a problem.\nStart/Stop stopwatch on tab switch When switching to a different tab, automatically start the stopwatch on the current tab and pause the stopwatch on the previous tab.\nIf you switch to the correct tab when solving a problem, with this setting enabled, you won’t need to manually start/stop the stopwatch.\nShow stopwatch result only when the button is pressed Hide the time of the stopwatch and only show the time when the “Show” button is pressed.\nThis may reduce distractions caused by stopwatch updates.\n","excerpt":"Save Save Files Faster Use QFile instead of QSaveFile to save files. …","ref":"/ru/docs/preferences/actions/","title":"Actions"},{"body":"Save Save Files Faster Use QFile instead of QSaveFile to save files.\nThis is slightly unsafer but notably faster.\nSave File On Compilation Save your code when compiling it.\nSave File On Execution Save your code when executing it.\nSave Testcases on Save Save the test cases on the disk when saving the code.\nYou can choose where to save the test cases in File Path/Testcases .\nAuto Save Auto Save Interval Type It is easier to describe if we explain a little bit about the internal implementation: There is a countdown timer. When we “reset” it, it will be “running” in the next Auto Save Interval milliseconds, and after Auto Save Interval milliseconds, the timer will “timeout” and the code is auto-saved.\nAfter the last modification The timer is reset whenever you modify the code. i.e. Your codes will be saved if you haven’t modified it for Auto Save Interval milliseconds.\nThis mode is suitable for a small Auto Save Interval so that your codes will be auto-saved every time you take a short break from typing. If the interval is too long, likely, your codes will never be auto-saved.\nAfter the first modification The timer is reset when you modify the code if the timer is not running. i.e. Your codes will be saved if you modified it Auto Save Interval milliseconds ago.\nThis mode is suitable for a long Auto Save Interval, otherwise, it’s likely that the save happens when you are typing, which could affect your typing experience.\nWithout modification The timer is reset when it timeouts. i.e. Your codes will be saved every Auto Save Interval milliseconds, no matter you have modified it or not.\nThis mode is suitable for saving test cases, etc. In the other modes, the test cases are not auto-saved if you don’t modify the codes.\nDetached Execution Terminal Program Terminal Arguments This setting is only available on Linux.\nThe terminal program is the name/path of the terminal emulator you want to use.\nThe arguments are used to execute a given command. i.e. \u003cTerminal Program\u003e \u003cTerminal Arguments\u003e \u003ccommand\u003e can be used to execute \u003ccommand\u003e in the terminal emulator.\nIn most terminal emulators including konsole, xterm and xfce-terminal, the argument is -e.\nIn gnome-terminal, it is --.\nYou can read the manual of your terminal emulator to get the suitable arguments.\nSave Session Restore last session at startup Save the status of the editor, and restore most status from the last session when you start CP Editor.\nYou can use the --no-restore-session command-line option to temporarily disable this, in case that the last session is too big and the application hangs.\nAuto-save the current session periodically Save the current session periodically instead of only when exiting the application.\nThis is useful if you don’t want to lose your codes after abnormal terminations, such as power outage, forced shutdown, killing CP Editor, etc. However, if the files and test cases are too large, the editor hangs each time the auto-save happens.\nBind file and problem Restore the problem URL when opening a file If a problem URL was set for a file, when you open that file again, the problem URL will be restored.\nOpen the old file when parsing an old problem URL If a problem URL was set for a file, when parsing that problem from Competitive Companion again, the old file will be opened.\nTest Cases Run your codes on empty test cases Run your code on all non-hidden test cases even if the input is empty.\nCheck your answer on test cases with empty output Check your answer even if your output or the expected output is empty.\nAuto Uncheck Accepted Testcases After the code is executed, the accepted test cases will be automatically unchecked. When test cases are unchecked, they are collapsed and won’t be tested on when you execute your code.\nLoad External File Changes Auto-load external file changes if there’s no unsaved modification If the file on the disk and the code in CP Editor was the same, and then the file is changed outside of CP Editor, load the external change without confirmation.\nAsk whether to load external file changes If the file is changed outside of CP Editor, ask whether to load the change or not.\nIf this setting is disabled, external changes won’t be loaded.\n Auto-load external file changes if there’s no unsaved modification overrides this setting. i.e. if Auto-load external file changes if there’s no unsaved modification is enabled, external file changes will be loaded without confirmation regardless of Ask whether to load external file changes ; if Auto-load external file changes if there’s no unsaved modification is disabled, the user will be asked whether to load the changes only when Ask whether to load external file changes is enabled, otherwise the changes won’t be loaded.\nStopwatch Display Stopwatch Show a stopwatch in the UI. You can use it to track your time spent on solving a problem.\nStart/Stop stopwatch on tab switch When switching to a different tab, automatically start the stopwatch on the current tab and pause the stopwatch on the previous tab.\nIf you switch to the correct tab when solving a problem, with this setting enabled, you won’t need to manually start/stop the stopwatch.\nShow stopwatch result only when the button is pressed Hide the time of the stopwatch and only show the time when the “Show” button is pressed.\nThis may reduce distractions caused by stopwatch updates.\n","excerpt":"Save Save Files Faster Use QFile instead of QSaveFile to save files. …","ref":"/zh_tw/docs/preferences/actions/","title":"Actions"},{"body":"You can set the preferences by either clicking Options-\u003ePreferences or pressing Ctrl+P.\nYou can hover over the settings to see the tooltips. Usually, the tooltips are clear enough, but if you want a more detailed explanation, you can read the documentation.\n","excerpt":"You can set the preferences by either clicking Options-\u003ePreferences or …","ref":"/docs/preferences/","title":"Preferences"},{"body":"You can set the preferences by either clicking Options-\u003ePreferences or pressing Ctrl+P.\nYou can hover over the settings to see the tooltips. Usually, the tooltips are clear enough, but if you want a more detailed explanation, you can read the documentation.\n","excerpt":"You can set the preferences by either clicking Options-\u003ePreferences or …","ref":"/ru/docs/preferences/","title":"Preferences"},{"body":"用滑鼠點按 選項-\u003e偏好設定 或按下 Ctrl+P 打開偏好設定視窗。\n滑鼠暫留於設定值時,會顯示其描述。通常描述已清晰易懂,但如果需要更詳細的解釋,請閱讀我們的說明文件。\n","excerpt":"用滑鼠點按 選項-\u003e偏好設定 或按下 Ctrl+P 打開偏好設定視窗。\n滑鼠暫留於設定值時,會顯示其描述。通常描述已清晰易懂,但如果需要更詳 …","ref":"/zh_tw/docs/preferences/","title":"偏好設定"},{"body":"保存 更快地保存文件 使用 QFile 而非 QSaveFile 来保存文件。\n启用该选项会有可忽略不计的丢失文件风险,但会显著提高保存文件的速度。\n编译时保存文件 在编译前保存你的代码。\n执行时保存文件 在运行前保存你的代码。\n保存文件时保存测试用例 在保存代码时将测试用例一并保存。\n你可以在 文件路径/测试点 中设置测试用例保存的位置。\n自动保存 自动保存间隔类型 自动保存机制以如下的方式运作:有一个计时器,每当它被“重置”,它就会“运行” 自动保存时间间隔 毫秒,当计时器“运行”了 自动保存时间间隔 毫秒后,当前代码就会被自动保存。\nAfter the last modification 计时器在每次修改代码后被重置。即,如果你在 自动保存时间间隔 毫秒内没有修改你的代码,则计时器完成了倒计时,同时你的代码会被自动保存。\n该模式适合使用较短的 自动保存时间间隔,以使代码能在你两次输入的间歇间被自动保存。如果设置的间隔时间过长,则难以让代码被自动保存。\nAfter the first modification 在计时器未运行时,若你修改了代码,则计时器将被重置。即,你的代码将在第一次修改后 自动保存时间间隔 毫秒被自动保存。\n该模式适合使用较长的 自动保存时间间隔。如果设置的时间过短,代码会在你输入的时候被自动保存,这可能会影响你的输入体验。\nWithout modification 每当计时器完成倒计时,计时器会被重置。即,无论你是否修改了你的代码,你的代码都会以恒定的 自动保存时间间隔 被自动保存。\n该模式适合保存测试用例。在其他模式下,如果你不修改你的代码,测试用例不会被自动保存。\n终端中运行 终端程序 终端参数 本设置仅在 Linux 系统中可用。\n终端程序是你想要使用的终端模拟器的名称或路径。\n终端参数是终端模拟器中用于运行给定命令的参数。即,命令 \u003c终端程序\u003e \u003c终端参数\u003e \u003c命令\u003e 可在指定的终端模拟器中运行 \u003c命令\u003e。\n在大多数终端模拟器,如 konsole, xterm 和 xfce-terminal,终端参数为 -e,在 gnome-terminal 中,该参数为 --。\n你可以阅读你使用的终端模拟器的手册,以获取关于终端参数的相关信息。\n保存会话 在启动时恢复上一次会话 在退出 CP Editor 时保存当前状态,并在启动时恢复上一次会话。\n在终端下,你可以使用 --no-restore-session 命令以暂时禁用该选项。如果上一次会话过大导致 CP Editor 卡死,该命令将会解决这一问题。\n定期自动保存当前会话 每隔一段时间就保存当前会话,而不是仅在退出时保存会话。\n启用该选项会避免因为非正常退出(如断电,强行终止 CP Editor 等)导致代码丢失的情况发生。然而,如果代码和测试用例过大,每次自动保存时 CP Editor 会卡顿较长时间。\n关联文件和题目 打开文件时加载对应题目 如果一个文件已经设置了题目链接,当该文件被再次打开时,将会使用原来的题目链接。\n加载以前的题目时打开以前的文件 如果一个文件已经设置了题目链接,当使用 Competitive Companion 解析同样的题目时,将会直接打开以前的文件。\n测试点 在空测试点上运行你的代码 在所有未被隐藏的测试点上运行你的代码,即使输入为空。\n在输出为空的测试点上检查输出的正确性 即使程序输出或答案为空,也检查该测试点输出的正确性。\n自动取消选中已通过的测试点 在运行代码后,自动将通过了的测试点取消选中。当测试点未被选中时,它们会被折叠,并且在你运行代码时不会在这些测试点上进行测试。\n加载外部文件修改 若没有未保存的修改,自动加载外部文件修改 若硬盘上的文件和 CP Editor 中的文件相同,该文件在 CP Editor 外部被修改,无需确认,自动加载外部文件修改。\n询问是否加载外部文件修改 若文件在 CP Editor 外部被修改,询问是否加载这些修改。\n如果该选项被禁用,外部文件修改不会被加载。\n 若没有未保存的修改,自动加载外部文件修改 会覆盖该选项的设置。即,若选项 若没有未保存的修改,自动加载外部文件修改 被启用,无论 询问是否加载外部文件修改 是否启用,外部文件修改将会在无确认的情况下被自动加载。若选项 若没有未保存的修改,自动加载外部文件修改 被禁用,且 询问是否加载外部文件修改 被启用,CP Editor 将会询问用户是否加载这些修改。而在两个选项都被禁用的情况下,外部文件修改将不会被加载。\n计时器 显示计时器 在 UI 中显示计时器。你可以用它来记录做题用时。\n切换标签页时启动/暂停计时器 切换标签页后,暂停原来那个标签页的计时器并启动当前标签页的计时器。\n启用了这个设置,如果你在做一道题时切换到正确的标签页,你就不需要手动启动/停止计时器了。\n只在按钮按下时显示计时结果 隐藏计时结果,只在“显示”按钮按下时显示。\n这或许可以避免计时结果更新使人分心。\n","excerpt":"保存 更快地保存文件 使用 QFile 而非 QSaveFile 来保存文件。\n启用该选项会有可忽略不计的丢失文件风险,但会显著提高保存文件 …","ref":"/zh/docs/preferences/actions/","title":"动作"},{"body":"你可以通过点击 选项-\u003e设置 或者键入 Ctrl+P 设定设置。\n你可以将鼠标悬停在设置上以查看工具提示。通常,工具提示足够清晰,但是如果你需要更详细的说明,可以阅读文档。\n","excerpt":"你可以通过点击 选项-\u003e设置 或者键入 Ctrl+P 设定设置。\n你可以将鼠标悬停在设置上以查看工具提示。通常,工具提示足够清晰,但是如果你 …","ref":"/zh/docs/preferences/","title":"设置"},{"body":"Code Formatting Clang Format Clang Format is used to format the C/C++ and Java codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only the selection (and its necessary adjacent codes) will be formatted.\nSee also Setup Clang Format .\nProgram The path to the clang-format executable, or simply clang-format if it’s in the PATH environment variable.\nArguments The arguments passed to clang-format. It should NOT contain -i (the in-place modification option).\nStyle The Clang Format style. The content here is the same as the content of a .clang-format file.\nYou can read Clang-Format Style Options documentation or search for other materials to learn how to write the styles.\nYAPF YAPF is used to format the Python codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only these lines will be formatted.\nSee also Setup YAPF .\nProgram The program of YAPF. It could be one of:\n yapf: You should be able to run yapf in the command line. The arguments can be empty. A Python interpreter, i.e. python, python2, etc. or the path to an interpreter. The arguments should be -m yapf. Note that you need to use Python 2 to format Python 2, use Python 3 to format Python 3 . So you may need to choose the correct Python interpreter.\nArguments The arguments passed to the YAPF program. This should be -m yapf if the program is a Python interpreter. It should NOT contain -i (the in-place modification option).\nStyle The YAPF Format style. The content here is the same as the content of a .style.yapf file. You can check all possible configurations by running yapf --style-help, read the documentation or search for other materials to learn how to write the styles.\nLanguage Server See also Setup Language Server .\nUse Linting with Language Server Use language server to lint errors, warnings, hints, etc.\nYou can hover over the squiggles to see the tooltips for the explanation of the errors/warnings.\nDelay in Linting Update linting if you haven’t been typing for delay milliseconds.\nPath to LSP executable The path to the language server program, or the name if it’s in the PATH environment variable.\nArguments for Language Server Additional arguments for the language server program. See the documentation of the language server program you are using for more information.\nFor example, if you are using pyls for Python, you probably want to use python as the language server program, and use -m pyls as the arguments.\nCompetitive Companion See also Setup Competitive Companion .\nOpen New Tabs Open a new tab when a problem is parsed.\nIf this is disabled, when parsing a problem, the test cases in the current tab will be replaced by the new test cases.\nConnection Port Usually, you don’t have to modify this setting. The default port 10045 is supported by Competitive Companion, so if you are using the default port, you don’t have to add custom ports in Competitive Companion. However, in case of port conflicts, etc., you can change the port and add custom ports in Competitive Companion.\nUse the time limit from Competitive Companion Use the time limit parsed by Competitive Companion as the time limit of the corresponding tab.\nHead Comments The head comments are added at the head of the code when parsing a problem.\nContent of the head comments The content of the head comments. You can use the following place holders:\n ${time}: The time when the problem was parsed. The time format can be set in Time format for the head comments . ${json.X.Y}: An attribute of the data provided by Competitive Companion. You can read more about the attributes in the documentation of Competitive Companion . For example, ${json.name} is the name of the problem. Time format for the head comments The format of the ${time} place holder in the head comments. You can read the Qt documentation for available expressions:\n Date Format Time Format CF Tool You can use CF Tool to submit your solutions to Codeforces .\nTo submit a solution, you have to either parse a problem by Competitive Companion from Codeforces or manually set the problem URL of a tab in the context menu of it.\nSee also Setup CF Tool .\nPath The path to the cf executable file, or simply cf if it’s in the PATH environment variable.\nShow toast messages for submission verdicts Show a toast message when the verdict of a submission is determined.\nA toast message is a “system notification”, which is visible outside of CP Editor.\nThis is useful if you want to get the verdict of the previous problem when reading/solving the next problem.\nWakaTime WakaTime can help you to track your time usage.\nSee also Setup WakaTime .\nEnable WakaTime Use WakaTime to track your time usage.\nPath The path to the wakatime executable file, or simply wakatime if it’s in the PATH environment variable.\nApi Key Can be found at WakaTime Settings .\nIt can be empty if you have the global wakatime config file ~/.wakatime.cfg.\nUse Proxy Use Network Proxy to send data to WakaTime.\n","excerpt":"Code Formatting Clang Format Clang Format is used to format the C/C++ …","ref":"/docs/preferences/extensions/","title":"Extensions"},{"body":"Code Formatting Clang Format Clang Format is used to format the C/C++ and Java codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only the selection (and its necessary adjacent codes) will be formatted.\nSee also Setup Clang Format .\nProgram The path to the clang-format executable, or simply clang-format if it’s in the PATH environment variable.\nArguments The arguments passed to clang-format. It should NOT contain -i (the in-place modification option).\nStyle The Clang Format style. The content here is the same as the content of a .clang-format file.\nYou can read Clang-Format Style Options documentation or search for other materials to learn how to write the styles.\nYAPF YAPF is used to format the Python codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only these lines will be formatted.\nSee also Setup YAPF .\nProgram The program of YAPF. It could be one of:\n yapf: You should be able to run yapf in the command line. The arguments can be empty. A Python interpreter, i.e. python, python2, etc. or the path to an interpreter. The arguments should be -m yapf. Note that you need to use Python 2 to format Python 2, use Python 3 to format Python 3 . So you may need to choose the correct Python interpreter.\nArguments The arguments passed to the YAPF program. This should be -m yapf if the program is a Python interpreter. It should NOT contain -i (the in-place modification option).\nStyle The YAPF Format style. The content here is the same as the content of a .style.yapf file. You can check all possible configurations by running yapf --style-help, read the documentation or search for other materials to learn how to write the styles.\nLanguage Server See also Setup Language Server .\nUse Linting with Language Server Use language server to lint errors, warnings, hints, etc.\nYou can hover over the squiggles to see the tooltips for the explanation of the errors/warnings.\nDelay in Linting Update linting if you haven’t been typing for delay milliseconds.\nPath to LSP executable The path to the language server program, or the name if it’s in the PATH environment variable.\nArguments for Language Server Additional arguments for the language server program. See the documentation of the language server program you are using for more information.\nFor example, if you are using pyls for Python, you probably want to use python as the language server program, and use -m pyls as the arguments.\nCompetitive Companion See also Setup Competitive Companion .\nOpen New Tabs Open a new tab when a problem is parsed.\nIf this is disabled, when parsing a problem, the test cases in the current tab will be replaced by the new test cases.\nConnection Port Usually, you don’t have to modify this setting. The default port 10045 is supported by Competitive Companion, so if you are using the default port, you don’t have to add custom ports in Competitive Companion. However, in case of port conflicts, etc., you can change the port and add custom ports in Competitive Companion.\nUse the time limit from Competitive Companion Use the time limit parsed by Competitive Companion as the time limit of the corresponding tab.\nHead Comments The head comments are added at the head of the code when parsing a problem.\nContent of the head comments The content of the head comments. You can use the following place holders:\n ${time}: The time when the problem was parsed. The time format can be set in Time format for the head comments . ${json.X.Y}: An attribute of the data provided by Competitive Companion. You can read more about the attributes in the documentation of Competitive Companion . For example, ${json.name} is the name of the problem. Time format for the head comments The format of the ${time} place holder in the head comments. You can read the Qt documentation for available expressions:\n Date Format Time Format CF Tool You can use CF Tool to submit your solutions to Codeforces .\nTo submit a solution, you have to either parse a problem by Competitive Companion from Codeforces or manually set the problem URL of a tab in the context menu of it.\nSee also Setup CF Tool .\nPath The path to the cf executable file, or simply cf if it’s in the PATH environment variable.\nShow toast messages for submission verdicts Show a toast message when the verdict of a submission is determined.\nA toast message is a “system notification”, which is visible outside of CP Editor.\nThis is useful if you want to get the verdict of the previous problem when reading/solving the next problem.\nWakaTime WakaTime can help you to track your time usage.\nSee also Setup WakaTime .\nEnable WakaTime Use WakaTime to track your time usage.\nPath The path to the wakatime executable file, or simply wakatime if it’s in the PATH environment variable.\nApi Key Can be found at WakaTime Settings .\nIt can be empty if you have the global wakatime config file ~/.wakatime.cfg.\nUse Proxy Use Network Proxy to send data to WakaTime.\n","excerpt":"Code Formatting Clang Format Clang Format is used to format the C/C++ …","ref":"/ru/docs/preferences/extensions/","title":"Extensions"},{"body":"程式碼排版 Clang Format Clang Format is used to format the C/C++ and Java codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only the selection (and its necessary adjacent codes) will be formatted.\nSee also 設定 Clang Format .\nProgram The path to the clang-format executable, or simply clang-format if it’s in the PATH environment variable.\nArguments The arguments passed to clang-format. It should NOT contain -i (the in-place modification option).\nStyle The Clang Format style. The content here is the same as the content of a .clang-format file.\nYou can read Clang-Format Style Options documentation or search for other materials to learn how to write the styles.\nYAPF YAPF is used to format the Python codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only these lines will be formatted.\nSee also 設定 YAPF .\nProgram The program of YAPF. It could be one of:\n yapf: You should be able to run yapf in the command line. The arguments can be empty. A Python interpreter, i.e. python, python2, etc. or the path to an interpreter. The arguments should be -m yapf. Note that you need to use Python 2 to format Python 2, use Python 3 to format Python 3 . So you may need to choose the correct Python interpreter.\nArguments The arguments passed to the YAPF program. This should be -m yapf if the program is a Python interpreter. It should NOT contain -i (the in-place modification option).\nStyle The YAPF Format style. The content here is the same as the content of a .style.yapf file. You can check all possible configurations by running yapf --style-help, read the documentation or search for other materials to learn how to write the styles.\nLanguage Server See also 設定 Language Server .\nUse Linting with Language Server Use language server to lint errors, warnings, hints, etc.\nYou can hover over the squiggles to see the tooltips for the explanation of the errors/warnings.\nDelay in Linting Update linting if you haven’t been typing for delay milliseconds.\nPath to LSP executable The path to the language server program, or the name if it’s in the PATH environment variable.\nArguments for Language Server Additional arguments for the language server program. See the documentation of the language server program you are using for more information.\nFor example, if you are using pyls for Python, you probably want to use python as the language server program, and use -m pyls as the arguments.\nCompetitive Companion See also 設定 Competitive Companion .\nOpen New Tabs Open a new tab when a problem is parsed.\nIf this is disabled, when parsing a problem, the test cases in the current tab will be replaced by the new test cases.\nConnection Port Usually, you don’t have to modify this setting. The default port 10045 is supported by Competitive Companion, so if you are using the default port, you don’t have to add custom ports in Competitive Companion. However, in case of port conflicts, etc., you can change the port and add custom ports in Competitive Companion.\nUse the time limit from Competitive Companion Use the time limit parsed by Competitive Companion as the time limit of the corresponding tab.\nHead Comments The head comments are added at the head of the code when parsing a problem.\nContent of the head comments The content of the head comments. You can use the following place holders:\n ${time}: The time when the problem was parsed. The time format can be set in Time format for the head comments . ${json.X.Y}: An attribute of the data provided by Competitive Companion. You can read more about the attributes in the documentation of Competitive Companion . For example, ${json.name} is the name of the problem. Time format for the head comments The format of the ${time} place holder in the head comments. You can read the Qt documentation for available expressions:\n Date Format Time Format CF Tool You can use CF Tool to submit your solutions to Codeforces .\nTo submit a solution, you have to either parse a problem by Competitive Companion from Codeforces or manually set the problem URL of a tab in the context menu of it.\nSee also 設定 CF Tool .\nPath The path to the cf executable file, or simply cf if it’s in the PATH environment variable.\nShow toast messages for submission verdicts Show a toast message when the verdict of a submission is determined.\nA toast message is a “system notification”, which is visible outside of CP Editor.\nThis is useful if you want to get the verdict of the previous problem when reading/solving the next problem.\nWakaTime WakaTime can help you to track your time usage.\nSee also Setup WakaTime .\nEnable WakaTime Use WakaTime to track your time usage.\nPath The path to the wakatime executable file, or simply wakatime if it’s in the PATH environment variable.\nApi Key Can be found at WakaTime Settings .\nIt can be empty if you have the global wakatime config file ~/.wakatime.cfg.\nUse Proxy Use Network Proxy to send data to WakaTime.\n","excerpt":"程式碼排版 Clang Format Clang Format is used to format the C/C++ and Java …","ref":"/zh_tw/docs/preferences/extensions/","title":"Extensions"},{"body":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI debugger, but this doesn’t mean it’s hard to debug codes using CP Editor.\nBesides single-stepping, the most used debugging approach is to output some variables. Do you remember the times you tried hard to distinguish the debugged variables from the normal outputs? You don’t have to do this in CP Editor.\nThe key is: Use stderr to output debug information. In C++, this means to use cerr instead of cout to output. CP Editor will show the stderr of your program in the Messages section.\nRun on only selected test cases In CP Editor, you don’t have to always run on all test cases.\nTo tell CP Editor not to run on a certain test case, just uncheck the checkbox of that test case. You can also use the “More” menu to manage the checks: you can Check All, Uncheck All, Uncheck Accepted (very useful when you passed most test cases and want to debug on the unaccepted ones) and Invert.\nIf you want to run on a single test case, you can simply click the “Run” button of that test case.\nCopy output to expected for problems with multiple correct answers Sometimes you are solving a problem that has more than one correct answer. The online judge has a checker, but you don’t, and you don’t have the time to write one. Leaving them in the “WA” verdict could be annoying, or even inconvenient because you have to manually check again after modifying your codes.\nCP Editor provides a solution: Copy Output to Expected. This could be done in either the right-click menu of the Expected section for a single test case or in the “More” menu for all selected test cases. With this function, you can easily copy the accepted outputs to expected, and they will be in the AC verdict as long as their outputs are not changed.\nLoad, edit and save test cases You can load test cases from files, edit test cases in bigger windows and save a test case in a file in the right-click menu of the test cases.\nTestlib checkers are compiled at runtime Testlib checkers are compiled when changing the checker or changing the preferences, so you may have to wait for it after the execution is finished.\nDrag and drop files You can drag files and drop them into the main editor or the input/expected part of test cases.\nShortcuts in the code editor Besides the shortcuts in the menu, you can use the Read-only Key Bindings and the Editing Key Bindings . There are also some hidden shortcuts: Tab (when there’s a selection) and Shift+Tab for indent and unindent, Ctrl+Enter and Ctrl+Shift+Enter for inserting line after and before, Shift+Delete for deleting the current line.\nSwitching between tabs You can use Ctrl+Tab and Ctrl+Shift+Tab to switch to the next/previous tab.\nThe right-click menu of the tabs You can right-click on the tabs to get a useful context menu, including:\n Manage tabs: Close Others, Close to the Right, etc. Duplicate tab. Very useful when you want to make experimental changes with the original code untouched or use different approaches to solve a problem without parsing it twice. Set compile command/time limit for a single tab. If you are solving a special problem. Reveal source/executable file. To easily find your code and the executable file. Manage the problem URL: Open Problem in Browser, Set Codeforces URL, etc. Shortcuts in the preferences window You can use Ctlr+D, Ctrl+R and Ctrl+S for “Default”, “Reset” and “Apply” respectively.\nYou can use Ctlr+Tab and Ctlr+Shift+Tab to go through the preferences pages.\nChange the view mode Editor mode: You can focus on your codes. IO mode: You can investigate the outputs and errors. Split mode: You can see both the codes and the test cases. You can set a hotkey for switching view modes in Preferences .\nLaunch CP Editor in the command line CP Editor supports some command-line options, run cpeditor --help for more information.\nOn Windows, it’s better to use UNIX-like shells like git bash.\nIn the command line, you can open a non-existing file as a tab by cpeditor \u003cpath\u003e (and you can save to this path later), open all C++ files in a directory recursively by cpeditor --cpp \u003cdirectory\u003e or temporarily disable Restore last session at startup by cpeditor --no-restore-session.\nCP Editor normally closes when receiving SIGINT and SIGHUP, so if you start CP Editor in the command line, you can safely press Ctrl+C to quit.\n","excerpt":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI …","ref":"/docs/tips/","title":"Tips"},{"body":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI debugger, but this doesn’t mean it’s hard to debug codes using CP Editor.\nBesides single-stepping, the most used debugging approach is to output some variables. Do you remember the times you tried hard to distinguish the debugged variables from the normal outputs? You don’t have to do this in CP Editor.\nThe key is: Use stderr to output debug information. In C++, this means to use cerr instead of cout to output. CP Editor will show the stderr of your program in the Messages section.\nRun on only selected test cases In CP Editor, you don’t have to always run on all test cases.\nTo tell CP Editor not to run on a certain test case, just uncheck the checkbox of that test case. You can also use the “More” menu to manage the checks: you can Check All, Uncheck All, Uncheck Accepted (very useful when you passed most test cases and want to debug on the unaccepted ones) and Invert.\nIf you want to run on a single test case, you can simply click the “Run” button of that test case.\nCopy output to expected for problems with multiple correct answers Sometimes you are solving a problem that has more than one correct answer. The online judge has a checker, but you don’t, and you don’t have the time to write one. Leaving them in the “WA” verdict could be annoying, or even inconvenient because you have to manually check again after modifying your codes.\nCP Editor provides a solution: Copy Output to Expected. This could be done in either the right-click menu of the Expected section for a single test case or in the “More” menu for all selected test cases. With this function, you can easily copy the accepted outputs to expected, and they will be in the AC verdict as long as their outputs are not changed.\nLoad, edit and save test cases You can load test cases from files, edit test cases in bigger windows and save a test case in a file in the right-click menu of the test cases.\nTestlib checkers are compiled at runtime Testlib checkers are compiled when changing the checker or changing the preferences, so you may have to wait for it after the execution is finished.\nDrag and drop files You can drag files and drop them into the main editor or the input/expected part of test cases.\nShortcuts in the code editor Besides the shortcuts in the menu, you can use the Read-only Key Bindings and the Editing Key Bindings . There are also some hidden shortcuts: Tab (when there’s a selection) and Shift+Tab for indent and unindent, Ctrl+Enter and Ctrl+Shift+Enter for inserting line after and before, Shift+Delete for deleting the current line.\nSwitching between tabs You can use Ctrl+Tab and Ctrl+Shift+Tab to switch to the next/previous tab.\nThe right-click menu of the tabs You can right-click on the tabs to get a useful context menu, including:\n Manage tabs: Close Others, Close to the Right, etc. Duplicate tab. Very useful when you want to make experimental changes with the original code untouched or use different approaches to solve a problem without parsing it twice. Set compile command/time limit for a single tab. If you are solving a special problem. Reveal source/executable file. To easily find your code and the executable file. Manage the problem URL: Open Problem in Browser, Set Codeforces URL, etc. Shortcuts in the preferences window You can use Ctlr+D, Ctrl+R and Ctrl+S for “Default”, “Reset” and “Apply” respectively.\nYou can use Ctlr+Tab and Ctlr+Shift+Tab to go through the preferences pages.\nChange the view mode Editor mode: You can focus on your codes. IO mode: You can investigate the outputs and errors. Split mode: You can see both the codes and the test cases. You can set a hotkey for switching view modes in Preferences .\nLaunch CP Editor in the command line CP Editor supports some command-line options, run cpeditor --help for more information.\nOn Windows, it’s better to use UNIX-like shells like git bash.\nIn the command line, you can open a non-existing file as a tab by cpeditor \u003cpath\u003e (and you can save to this path later), open all C++ files in a directory recursively by cpeditor --cpp \u003cdirectory\u003e or temporarily disable Restore last session at startup by cpeditor --no-restore-session.\nCP Editor normally closes when receiving SIGINT and SIGHUP, so if you start CP Editor in the command line, you can safely press Ctrl+C to quit.\n","excerpt":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI …","ref":"/ru/docs/tips/","title":"Tips"},{"body":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI debugger, but this doesn’t mean it’s hard to debug codes using CP Editor.\nBesides single-stepping, the most used debugging approach is to output some variables. Do you remember the times you tried hard to distinguish the debugged variables from the normal outputs? You don’t have to do this in CP Editor.\nThe key is: Use stderr to output debug information. In C++, this means to use cerr instead of cout to output. CP Editor will show the stderr of your program in the Messages section.\nRun on only selected test cases In CP Editor, you don’t have to always run on all test cases.\nTo tell CP Editor not to run on a certain test case, just uncheck the checkbox of that test case. You can also use the “More” menu to manage the checks: you can Check All, Uncheck All, Uncheck Accepted (very useful when you passed most test cases and want to debug on the unaccepted ones) and Invert.\nIf you want to run on a single test case, you can simply click the “Run” button of that test case.\nCopy output to expected for problems with multiple correct answers Sometimes you are solving a problem that has more than one correct answer. The online judge has a checker, but you don’t, and you don’t have the time to write one. Leaving them in the “WA” verdict could be annoying, or even inconvenient because you have to manually check again after modifying your codes.\nCP Editor provides a solution: Copy Output to Expected. This could be done in either the right-click menu of the Expected section for a single test case or in the “More” menu for all selected test cases. With this function, you can easily copy the accepted outputs to expected, and they will be in the AC verdict as long as their outputs are not changed.\nLoad, edit and save test cases You can load test cases from files, edit test cases in bigger windows and save a test case in a file in the right-click menu of the test cases.\nTestlib checkers are compiled at runtime Testlib checkers are compiled when changing the checker or changing the preferences, so you may have to wait for it after the execution is finished.\nDrag and drop files You can drag files and drop them into the main editor or the input/expected part of test cases.\nShortcuts in the code editor Besides the shortcuts in the menu, you can use the Read-only Key Bindings and the Editing Key Bindings . There are also some hidden shortcuts: Tab (when there’s a selection) and Shift+Tab for indent and unindent, Ctrl+Enter and Ctrl+Shift+Enter for inserting line after and before, Shift+Delete for deleting the current line.\nSwitching between tabs You can use Ctrl+Tab and Ctrl+Shift+Tab to switch to the next/previous tab.\nThe right-click menu of the tabs You can right-click on the tabs to get a useful context menu, including:\n Manage tabs: Close Others, Close to the Right, etc. Duplicate tab. Very useful when you want to make experimental changes with the original code untouched or use different approaches to solve a problem without parsing it twice. Set compile command/time limit for a single tab. If you are solving a special problem. Reveal source/executable file. To easily find your code and the executable file. Manage the problem URL: Open Problem in Browser, Set Codeforces URL, etc. Shortcuts in the preferences window You can use Ctlr+D, Ctrl+R and Ctrl+S for “Default”, “Reset” and “Apply” respectively.\nYou can use Ctlr+Tab and Ctlr+Shift+Tab to go through the preferences pages.\nChange the view mode Editor mode: You can focus on your codes. IO mode: You can investigate the outputs and errors. Split mode: You can see both the codes and the test cases. You can set a hotkey for switching view modes in Preferences .\nLaunch CP Editor in the command line CP Editor supports some command-line options, run cpeditor --help for more information.\nOn Windows, it’s better to use UNIX-like shells like git bash.\nIn the command line, you can open a non-existing file as a tab by cpeditor \u003cpath\u003e (and you can save to this path later), open all C++ files in a directory recursively by cpeditor --cpp \u003cdirectory\u003e or temporarily disable Restore last session at startup by cpeditor --no-restore-session.\nCP Editor normally closes when receiving SIGINT and SIGHUP, so if you start CP Editor in the command line, you can safely press Ctrl+C to quit.\n","excerpt":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI …","ref":"/zh_tw/docs/tips/","title":"Tips"},{"body":"代码格式化 Clang Format Clang Format 是格式化 C/C++ 和 Java 代码的工具。你可以点击 动作-\u003e格式化代码 或按快捷键 Ctrl+Shift+I 来格式化代码。如果你选择了代码的一部分,只有被选择的部分(以及必要的相邻部分)会被格式化。\n参见 安装 Clang Format 。\n程序 clang-format 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写 clang-format 即可。\n参数 向 clang-format 传递的参数。它不应包含 -i(就地修改选项)。\n风格 Clang Format 格式化代码的风格。这里的内容和 .clang-format 的内容一致。\n你可以查看 Clang-Format Style Options 或其他资料以获取关于代码格式化风格的相关信息。\nYAPF YAPF 是格式化 Python 代码的工具。你可以点击 动作-\u003e格式化代码 或按快捷键 Ctrl+Shift+I 来格式化代码。如果你选择了代码的一部分,只有被选择的行会被格式化。\n参见 安装 YAPF 。\n程序 YAPF 的程序,它可以是如下两项之一:\n yapf:需要能在命令行下执行 yapf 命令。参数可以为空。 Python 解释器的程序名,如 python,python2 等。参数应该为 -m yapf。 注意,你需要 使用 Python 2 来格式化 Python 2 代码,使用 Python 3 来格式化 Python 3 代码 。因此你需要选择正确的 Python 解释器程序。\n参数 传递给 YAPF 程序的参数。如果在程序一栏里填写的是 Python 解释器,这里的参数应该是 -m yapf。参数中不应包含 -i(就地修改选项)。\n风格 YAPF 格式化代码的风格,这里的内容和 .style.yapf 的内容一致。你可以运行 yapf --style-help,查看 文档 或其他资料以获取关于代码格式化风格的相关信息。\nLanguage Server 参见 安装 Language Server .\n利用 Language Server 获取提示信息 使用 Language Server 以获取错误,警告,提示等信息。\n你可以将鼠标移动到提示错误的下划线上以获取错误或警告的相关信息。\n提示延迟 若距离最近一次修改的时间达到了 延迟 毫秒,更新提示信息。\nLanguage Server 可执行文件路径 Language Server 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写相应的可执行文件的文件名即可。\nLanguage Server 参数 为 Language Server 程序传递的额外参数。你可以阅读相应的 Language Server 程序的文档以了解更多信息。\n例如,如果你使用 pyls 作为 Python 的 Language Server 程序,你可以填写 python 作为 Language Server 程序,-m pyls 作为参数。\nCompetitive Companion 参见 安装 Competitive Companion .\n打开新标签页 当一个问题被解析时,打开一个新标签页。\n如果该选项被禁用,当一个问题被解析时,当前页面的测试用例将会被新的测试用例覆盖。\n连接端口 从 Competitive Companion 接收数据使用的端口。\n默认情况下该端口为 10045,在大多数情况下不用更改。在遇到端口冲突等情况时,你可以在 Competitive Companion 里设置自定义端口,并在这里更改数据接收端口。\n使用从 Competitive Companion 处获取的时间限制 在解析一道题目后,为对应的标签页使用从 Competitive Companion 获取的时间限制。\n头部注释 在获取一道题目后在代码开头添加的注释。\n头部注释的内容 你可以在头部注释中使用如下占位符:\n ${time}:题目被解析的时间,相应的时间格式可以在 头部注释的时间格式 中设置。 ${json.X.Y}:由 Competitive Companion 提供的数据的一个属性。你可以在 Competitive Companion 的文档 中获得更多信息。例如,${json.name} 代表题目名。 头部注释的时间格式 ${time} 占位符对应的时间的格式。你可以阅读如下 Qt 文档以获得更多信息:\n Date Format Time Format CF Tool 你可以使用 CF Tool 向 Codeforces 提交你的代码。\n为了提交你的代码,你需要使用 Competitive Companion 解析题目,或是手动设置标签页的题目链接。\n参见 安装 CF Tool .\n路径 CF Tool 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写 cf 即可。\n为评测结果显示气泡信息 在收到一次提交的结果后,显示一条气泡信息。\n气泡信息是系统通知,在 CP Editor 外仍然可见。在你忙于解决下一个问题时,气泡信息可以让你得知前一个问题的解决情况。\nWakaTime WakaTime 可以帮助你进行工作量的统计。\n参见 安装 WakaTime 。\n启用 WakaTime 是否启用 WakaTime。\n路径 WakaTime 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写 wakatime 即可。\nApi 密钥 可以在 WakaTime 设置 查看。\n如果有 WakaTime 的全局配置文件 ~/.wakatime.cfg 则可以留空。\n使用代理 使用 网络代理 将数据发送给 WakaTime。\n","excerpt":"代码格式化 Clang Format Clang Format 是格式化 C/C++ 和 Java 代码的工具。你可以点击 动作-\u003e格式化代 …","ref":"/zh/docs/preferences/extensions/","title":"扩展"},{"body":"使用 stderr 进行调试 目前,CP Editor 并没有一个内置的 GUI 调试器,但这不意味着使用 CP Editor 就难以调试了。\n除了单步调试,最常用的调试方法就是输出一些变量。你还记得你试图分辨调试输出和正常输出的那些日子吗?使用 CP Editor,你就不需要这样做了。\n关键在于:使用 stderr 来输出调试信息。在 C++ 中,这意味着在输出时使用 cerr 而不是 cout。CP Editor 会将你的程序的 stderr 展示在“消息”区域。\n只在选中的测试点上运行 在 CP Editor 中,你不需要总是在所有测试点上运行。\n为了告诉 CP Editor 你不想在某个测试点上运行,你只需要取消选中这个测试点。你还可以使用“更多”菜单来管理勾选情况:全选,取消全选,取消选择已通过的(当你通过了大多数测试点,而只想在少数未通过的测试点上调试时,这非常有用)以及反选。\n如果你想在单个测试点上运行,你还可以点击位于测试点的“运行”按钮。\n解决有多解的题目时,将输出复制到答案 有时你会解决一些有多个正确答案的题目。OJ 有 Special Judge,但你没有 Special Judge,也没有时间自己写一个。让这些测试点保持 WA 状态可能让人看着不爽,甚至带来不便,因为你在修改代码后需要再次检查它们是否正确。\nCP Editor 提供了一个解决方法:将输出复制到答案。这可以在答案编辑框的右键菜单中为单个测试点进行,也可以在“更多”菜单中为所有选中的测试点进行。有了这个功能,你就能够轻松地将已通过的输出复制到答案,这样只要它们不改变就一直会是 AC 状态。\n加载,编辑以及保存测试点 你可以右键单击测试数据框,从而实现从文件中加载测试数据,在更大的窗口中编辑测试点,或者将测试点保存为文件。\ntestlib 评测器在运行时编译 testlib 评测器在切换评测器或设置变更时会重新编译,所以使用 testlib 评测器时运行后未能及时反馈结果是正常现象。\n将文件拖入 你可以直接将文件拖入编辑器或测试数据框中。\n将文件拖入编辑器中会打开该文件,而将文件拖入测试数据框的输入/答案框中,会自动用该文件填充该框。\n代码编辑器中的快捷键 除了菜单中提及的快捷键之外,你还可以使用 Qt 中的 只读快捷键 和 修改快捷键 。\nCP Editor 还提供一些隐藏的快捷键:Tab(当有文本被选中时)和 Shift+Tab 用于缩进和取消缩进,Ctrl+Enter 和 Ctrl+Shift+Enter 分别用于在当前行之前和之后插入空行,Shift+Delete 用于删除当前行。\n切换标签页 你可以使用 Ctrl+Tab 和 Ctrl+Shift+Tab 以切换到下一个/上一个标签。\n标签栏的右键菜单 你可以通过右键点击标签调出一个菜单,包括:\n 管理标签页:关闭其它标签页,关闭右侧标签页,等等。 复制标签页。当你想要在不影响当前代码的同时做一些实验性的改动,或者用不同的方法解决一道题目而不想重新获取样例时,这非常有用。 为单个标签页设置编译命令/时间限制。也许在你解决一道奇特的题目时可以用到。 在文件管理器中查看源文件/可执行文件。轻松地找到你的代码和可执行文件。 管理题目链接:在浏览器中打开题目,设置 Codeforces 链接,等等。 设置页面中的快捷键 在设置页面中,你可以使用 Ctlr+D,Ctrl+R 和 Ctrl+S 作为 “默认”,“重置” 和 “应用” 的快捷键。\n你还可以使用 Ctlr+Tab 和 Ctlr+Shift+Tab 以实现各设置页面间的快捷切换。\n切换视图模式 编辑器模式:你可以专注于你的代码。 IO 模式:你可以仔细检查输出和错误。 分屏模式:你可以同时看到代码和测试用例。 你可以在 设置 中设置一个快捷键来快速切换到编辑器模式。\n从命令行启动 CP Editor CP Editor 支持在命令行下启动,可以通过执行 cpeditor --help 命令获得更多详情。\n在 Windows 下,更推荐使用类 UNIX 的终端(如 Git Bash)。\n在命令行下,你可以通过 cpeditor \u003cpath\u003e 来在指定的位置创建新文件,或是用 cpeditor --cpp \u003cdirectory\u003e 打开一个目录下的所有 C++ 源代码,还可以通过 cpeditor --no-restore-session 暂时禁用 在启动时恢复上一次会话 。\nCP Editor 在接收到 SIGINT 和 SIGHUP 命令时会正常关闭,因此如果你在命令行下启动 CP Editor,你可以通过按下 Ctrl+C 退出,而不必担心丢失任何工作。\n","excerpt":"使用 stderr 进行调试 目前,CP Editor 并没有一个内置的 GUI 调试器,但这不意味着使用 CP Editor 就难以调试 …","ref":"/zh/docs/tips/","title":"提示"},{"body":"Testcases Input File Save Path Answer File Save Path The path where the test cases are saved . If it is a relative path, it is relative to the source file.\nYou can use the following place holders:\n ${filename}: the complete filename ${basename}: the base file name without the suffix ${0-index}: the index of the test case started from 0 ${1-index}: the index of the test case started from 1 For example, a test case is the 3-rd test case of the source file /a/b/c.cpp, the place holders are:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 If the path is testcases/${basename}-${1-index}.in, the input of this test case will be saved in /a/b/testcases/c-3.in.\nTestcases Matching Rules The rules used to match test cases when loading pairs of test cases.\nEach rule is a pair of regular expression patterns . The first regex matches the whole input file name, and the second pattern is a replacement pattern which is the name of the answer file.\nFor example, you can use (.+)\\.in and \\1.out to match test-1.in and test-1.out, or use (.+)\\.in\\.(\\d+) and \\1.ans.\\2 to match test.in.3 and test.ans.3.\nWhen loading pairs of test cases, each rule which matches an input file will be used to try to find the corresponding answer file to the input file.\nProblem URL Default File Path For Problem URLs The default path when choosing where to save an untitled tab with problem URL.\nEach rule is a pair of regular expression patterns . The first regex matches a part of the problem URL, and the second pattern is a replacement pattern which is the default save path.\nWhen saving a file with a problem URL, if the problem URL matches at least one regex in the rules, the default save path will be the replacement of the first matching regex.\nHere’s an example of a rule:\nThe problem URL regex: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)\nThe file path: /home/username/Codeforces/\\1/\\2\nDefault Paths The default path used when the user is asked for a file path.\nThere are several actions, different actions can use different default paths.\nThe user can set multiple default paths, each default path has a name. A default path can be used as a place holder in the default path of an action. When the user chooses a path for an action, several default paths can be set to this path.\nFor example:\n The default path for the action “Save File” is ${file}, and “Save File” changes file and testcase. The default path for the action “Load Single Test Case” is ${testcase}, and “Load Single Test Case” only changes testcase. At the beginning, file is /a/b and testcase is /a/c. You are asked to choose the path for “Load Single Test Case”. The default path is /a/c, and you choose /a/d as the path. Now file is still /a/b, but testcase is changed to /a/d. You are asked to choose the path for “Save File”. The default path is /a/b, and you choose /a/e as the path. Now both file and testcase are /a/e. You are asked to choose the path for “Load Single Test Case”. The default path is /a/e because testcase was modified by choosing /a/e for “Save File”. In the preferences window, the default paths changed by an action is a comma-separated list.\n","excerpt":"Testcases Input File Save Path Answer File Save Path The path where …","ref":"/docs/preferences/file-path/","title":"File Path"},{"body":"Testcases Input File Save Path Answer File Save Path The path where the test cases are saved . If it is a relative path, it is relative to the source file.\nYou can use the following place holders:\n ${filename}: the complete filename ${basename}: the base file name without the suffix ${0-index}: the index of the test case started from 0 ${1-index}: the index of the test case started from 1 For example, a test case is the 3-rd test case of the source file /a/b/c.cpp, the place holders are:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 If the path is testcases/${basename}-${1-index}.in, the input of this test case will be saved in /a/b/testcases/c-3.in.\nTestcases Matching Rules The rules used to match test cases when loading pairs of test cases.\nEach rule is a pair of regular expression patterns . The first regex matches the whole input file name, and the second pattern is a replacement pattern which is the name of the answer file.\nFor example, you can use (.+)\\.in and \\1.out to match test-1.in and test-1.out, or use (.+)\\.in\\.(\\d+) and \\1.ans.\\2 to match test.in.3 and test.ans.3.\nWhen loading pairs of test cases, each rule which matches an input file will be used to try to find the corresponding answer file to the input file.\nProblem URL Default File Path For Problem URLs The default path when choosing where to save an untitled tab with problem URL.\nEach rule is a pair of regular expression patterns . The first regex matches a part of the problem URL, and the second pattern is a replacement pattern which is the default save path.\nWhen saving a file with a problem URL, if the problem URL matches at least one regex in the rules, the default save path will be the replacement of the first matching regex.\nHere’s an example of a rule:\nThe problem URL regex: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)\nThe file path: /home/username/Codeforces/\\1/\\2\nDefault Paths The default path used when the user is asked for a file path.\nThere are several actions, different actions can use different default paths.\nThe user can set multiple default paths, each default path has a name. A default path can be used as a place holder in the default path of an action. When the user chooses a path for an action, several default paths can be set to this path.\nFor example:\n The default path for the action “Save File” is ${file}, and “Save File” changes file and testcase. The default path for the action “Load Single Test Case” is ${testcase}, and “Load Single Test Case” only changes testcase. At the beginning, file is /a/b and testcase is /a/c. You are asked to choose the path for “Load Single Test Case”. The default path is /a/c, and you choose /a/d as the path. Now file is still /a/b, but testcase is changed to /a/d. You are asked to choose the path for “Save File”. The default path is /a/b, and you choose /a/e as the path. Now both file and testcase are /a/e. You are asked to choose the path for “Load Single Test Case”. The default path is /a/e because testcase was modified by choosing /a/e for “Save File”. In the preferences window, the default paths changed by an action is a comma-separated list.\n","excerpt":"Testcases Input File Save Path Answer File Save Path The path where …","ref":"/ru/docs/preferences/file-path/","title":"File Path"},{"body":"Testcases Input File Save Path Answer File Save Path The path where the test cases are saved . If it is a relative path, it is relative to the source file.\nYou can use the following place holders:\n ${filename}: the complete filename ${basename}: the base file name without the suffix ${0-index}: the index of the test case started from 0 ${1-index}: the index of the test case started from 1 For example, a test case is the 3-rd test case of the source file /a/b/c.cpp, the place holders are:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 If the path is testcases/${basename}-${1-index}.in, the input of this test case will be saved in /a/b/testcases/c-3.in.\nTestcases Matching Rules The rules used to match test cases when loading pairs of test cases.\nEach rule is a pair of regular expression patterns . The first regex matches the whole input file name, and the second pattern is a replacement pattern which is the name of the answer file.\nFor example, you can use (.+)\\.in and \\1.out to match test-1.in and test-1.out, or use (.+)\\.in\\.(\\d+) and \\1.ans.\\2 to match test.in.3 and test.ans.3.\nWhen loading pairs of test cases, each rule which matches an input file will be used to try to find the corresponding answer file to the input file.\nProblem URL Default File Path For Problem URLs The default path when choosing where to save an untitled tab with problem URL.\nEach rule is a pair of regular expression patterns . The first regex matches a part of the problem URL, and the second pattern is a replacement pattern which is the default save path.\nWhen saving a file with a problem URL, if the problem URL matches at least one regex in the rules, the default save path will be the replacement of the first matching regex.\nHere’s an example of a rule:\nThe problem URL regex: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)\nThe file path: /home/username/Codeforces/\\1/\\2\nDefault Paths The default path used when the user is asked for a file path.\nThere are several actions, different actions can use different default paths.\nThe user can set multiple default paths, each default path has a name. A default path can be used as a place holder in the default path of an action. When the user chooses a path for an action, several default paths can be set to this path.\nFor example:\n The default path for the action “Save File” is ${file}, and “Save File” changes file and testcase. The default path for the action “Load Single Test Case” is ${testcase}, and “Load Single Test Case” only changes testcase. At the beginning, file is /a/b and testcase is /a/c. You are asked to choose the path for “Load Single Test Case”. The default path is /a/c, and you choose /a/d as the path. Now file is still /a/b, but testcase is changed to /a/d. You are asked to choose the path for “Save File”. The default path is /a/b, and you choose /a/e as the path. Now both file and testcase are /a/e. You are asked to choose the path for “Load Single Test Case”. The default path is /a/e because testcase was modified by choosing /a/e for “Save File”. In the preferences window, the default paths changed by an action is a comma-separated list.\n","excerpt":"Testcases Input File Save Path Answer File Save Path The path where …","ref":"/zh_tw/docs/preferences/file-path/","title":"File Path"},{"body":"测试点 输入文件/答案文件保存路径 设置测试数据 保存 的位置。如果设置的路径是相对路径,则实际路径将基于源代码所在路径。\n你可以使用如下占位符:\n ${filename}:完整的文件名。 ${basename}:将 ${filename} 去掉扩展名后的文件名。 ${0-index}:从 0 开始的测试点编号。 ${1-index}:从 1 开始的测试点编号。 例如,某个输入文件是源代码 /a/b/c.cpp 的第三个测试点的输入文件,此时各占位符将会以如下方式被替换:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 如果输入文件的保存路径被设定为 testcases/${basename}-${1-index}.in,则该测试数据的输入文件将会被保存在 /a/b/testcases/c-3.in 下。\n测试数据匹配规则 在加载成对的测试点时,输入文件和答案文件的匹配规则。\n每条规则是一对 正则表达式 。其中第一个正则表达式用于匹配完整输入文件名,第二个正则表达式用于匹配相应的答案文件名。\n例如,你可以使用 (.+)\\.in 和 \\1.out 匹配 test-1.in 和 test-1.out,或者使用 (.+)\\.in\\.(\\d+) 和 \\1.ans.\\2 匹配 test.in.3 和 test.ans.3。\n在加载成对的测试点时,每一条与输入文件匹配的规则都会被用于尝试寻找相应的答案文件。\n题目链接 针对题目链接的默认保存路径 保存一个有题目链接的新文件时,使用的默认保存路径。\n每条规则是一对 正则表达式 。其中第一个正则表达式用于匹配题目链接的一部分,第二个正则表达式用于设置相应的保存路径。\n当保存一个有题目链接的新文件时,如果题目链接与至少一个规则匹配,将使用第一个匹配的规则对应的保存路径。\n下面是一个例子:\n 题目链接: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)。 相应的文件路径: /home/username/Codeforces/\\1/\\2。 默认路径 在各种需要用户选择文件路径的情况下,默认的文件路径。对于不同的操作,可以设置不同的默认路径。\n用户可以设置多种默认路径,每条默认路径都有一个名称。设置的默认路径名称可以作为占位符在其他默认路径中使用。当用户为某个操作设定新的路径,其他路径的值也可能会发生变化。\n例如:\n 操作“保存文件”的默认路径是 ${file},而“保存文件”会修改 file 和 testcase。 操作“加载单个测试用例”的默认路径是 ${testcase},而“加载单个测试用例”会修改 testcase。 刚开始时,file 是 /a/b,testcase 是 /a/c。 在执行“加载单个测试用例”操作时,默认路径为 /a/c,而你操作时将路径设置为 /a/d。现在 file 代表的路径仍然是 /a/b,而 testcase 代表的路径变成了 /a/d。 在执行“保存文件”操作时,默认路径为 /a/b,而你操作时将路径设置为 /a/e。现在 file 和 testcase 代表的路径都变成了 /a/e。 在执行“加载单个测试用例”操作时,默认路径已经变成了 /a/e,因为在执行“保存文件”操作时,testcase 代表的路径被修改了。 在设置中,可以设置执行每个操作后,被改变的路径的列表,列表中相邻两项之间用逗号隔开。\n","excerpt":"测试点 输入文件/答案文件保存路径 设置测试数据 保存 的位置。如果设置的路径是相对路径,则实际路径将基于源代码所在路径。\n你可以使用如下占 …","ref":"/zh/docs/preferences/file-path/","title":"文件路径"},{"body":"How to fetch test cases from the websites? You have to install Competitive Companion on your browser, and use it on the website while CP Editor is running. Here is a youtube video demonstrating this setup.\nHow to submit to CF inside CP Editor? You have to either parse the problem from Competitive Companion, or set the problem URL in the right-click menu of the tabs. Then you’ll see the submit button.\nI am using it on Codeforces but the submit button is not clickable. It’s because CP Editor can’t run the cf command. Please make sure it’s in the PATH or set the path to it in the Preferences.\nWhen I click the Submit button, I get some message saying template is required? CF-Tool requires you to configure it before you use it. Please run cf config in the terminal to set the username \u0026 password and add a template.\nHow to enable error linting in the code editor? You need to install a Language Server program and set the settings in Preferences -\u003e Extensions -\u003e Language Server. You can learn about more details here .\nMy code gets TLE on every first execution after compilation. It’s probably because your anti-virus software is scanning your program. A possible solution is to set the output directory of the executable files (for example, you can set it to D:/cpeditor-executables/${basename}), and add that directory (D:/cpeditor-executables in the example) in the whitelist of your anti-virus software.\n","excerpt":"How to fetch test cases from the websites? You have to install …","ref":"/docs/faq/","title":"FAQ"},{"body":"Как получить тестовые примеры с веб-сайта? Вам следует установить Competitive Companion в ваш браузер и использовать его при запущенном CP Editor. Видео на YouTube , демонстрирующее эту настройку.\nКак отправлять решения на проверку в CF прямо из CP Editor? Вы должны либо скопировать проблему из Competitive Companion, либо задать URL-адрес проблемы в контекстном меню вкладок. Затем вы увидите кнопку отправки.\nЯ использую CP Editor на Codeforces, но кнопка отправки отключена. CP Editor не может выполнить команду cf. Пожалуйста, убедитесь, что команда указана в PATH, или укажите путь к ней в настройках.\nКогда я нажимаю кнопку отправки, я получаю сообщение о том, что требуется шаблон. Настройте CF-Tool перед использованием. Пожалуйста, запустите cf config в терминале для установки имя пользователя с паролем, затем добавьте шаблон.\nКак включить подсветку ошибок в редакторе кода? Вам необходимо установить протокол языкового сервера и добавить его в Настройки -\u003e Расширения -\u003e Language Server. Более подробную информацию вы можете узнать здесь .\nМой код получает TLE (превышение лимита времени) при каждом выполнении после компиляции. Вероятно, это связано с тем, что ваш антивирус сканирует вашу программу. Возможным решением является установка output директории для исполняемых файлов (например, вы можете установить его на D:/cpeditor-executables/${basename}), и добавить эту директорию (D:/cpeditor-executables в примере) в белый список вашего антивируса.\n","excerpt":"Как получить тестовые примеры с веб-сайта? Вам следует установить …","ref":"/ru/docs/faq/","title":"FAQ"},{"body":"如何从网站上抓取测试数据? 你需要在浏览器上安装 Competitive Companion ,并在 CP Editor 运行时使用它。 这个 youtube 视频 演示了安装过程。\n如何在 CP Editor 里将代码提交到 CF? 你需要使用 Competitive Companion 获取题目,或是右击标签栏后在右键菜单中设置题目链接。之后你就可以看到提交按钮了。\n我不能点击提交按钮。 这是因为 CP Editor 无法执行 cf 命令。请确保它在 PATH 环境变量中,或是在设置中设置了它的路径。\n当我点击提交按钮时,提示“template is required”。 CF Tool 需要在使用前进行配置。请在终端中执行 cf config 以完成用户名和密码设置,并添加模板。\n如何在代码编辑框中启用错误提示? 你需要安装 Language Server 程序 并在 设置-\u003e扩展-\u003eLanguage Server 中完成有关配置。更多细节详见 初始化 页面。\n我的代码每次首次运行时都超时。 这很可能是因为你的杀毒软件在扫描你的程序。一个可能的解决方法是, 设置可执行文件的输出目录 (例如,你可以将其设置为 D:/cpeditor-executables/${basename}),然后将这个目录(在上面的例子中,即 D:/cpeditor-executables)加到杀毒软件的白名单中。\n","excerpt":"如何从网站上抓取测试数据? 你需要在浏览器上安装 Competitive Companion ,并在 CP Editor 运行时使用它。 这 …","ref":"/zh/docs/faq/","title":"FAQ"},{"body":"How to fetch test cases from the websites? You have to install Competitive Companion on your browser, and use it on the website while CP Editor is running. Here is a youtube video demonstrating this setup.\nHow to submit to CF inside CP Editor? You have to either parse the problem from Competitive Companion, or set the problem URL in the right-click menu of the tabs. Then you’ll see the submit button.\nI am using it on Codeforces but the submit button is not clickable. It’s because CP Editor can’t run the cf command. Please make sure it’s in the PATH or set the path to it in the Preferences.\nWhen I click the Submit button, I get some message saying template is required? CF-Tool requires you to configure it before you use it. Please run cf config in the terminal to set the username \u0026 password and add a template.\nHow to enable error linting in the code editor? You need to install a Language Server program and set the settings in Preferences -\u003e Extensions -\u003e Language Server. You can learn about more details here .\nMy code gets TLE on every first execution after compilation. It’s probably because your anti-virus software is scanning your program. A possible solution is to set the output directory of the executable files (for example, you can set it to D:/cpeditor-executables/${basename}), and add that directory (D:/cpeditor-executables in the example) in the whitelist of your anti-virus software.\n","excerpt":"How to fetch test cases from the websites? You have to install …","ref":"/zh_tw/docs/faq/","title":"FAQ"},{"body":"You can set custom key bindings for many actions. You can change the key by clicking the edit and press the key you want. You can delete a custom key binding by clicking the button on the right.\n","excerpt":"You can set custom key bindings for many actions. You can change the …","ref":"/docs/preferences/key-bindings/","title":"Key Bindings"},{"body":"You can set custom key bindings for many actions. You can change the key by clicking the edit and press the key you want. You can delete a custom key binding by clicking the button on the right.\n","excerpt":"You can set custom key bindings for many actions. You can change the …","ref":"/ru/docs/preferences/key-bindings/","title":"Key Bindings"},{"body":"您可以針對許多動作自訂快捷鍵。點一下「編輯」會開始紀錄鍵盤按鍵,也可以按下「刪除」來清除自訂的快捷鍵組合。\n","excerpt":"您可以針對許多動作自訂快捷鍵。點一下「編輯」會開始紀錄鍵盤按鍵,也可以按下「刪除」來清除自訂的快捷鍵組合。\n","ref":"/zh_tw/docs/preferences/key-bindings/","title":"快捷鍵"},{"body":"你可以设置不同操作的自定义热键。你可以通过点击某个热键的编辑框,并按下你想要设置的热键,来设置某个操作的热键。你还可以按下相应热键右侧的删除按钮来清除自定义热键。\n","excerpt":"你可以设置不同操作的自定义热键。你可以通过点击某个热键的编辑框,并按下你想要设置的热键,来设置某个操作的热键。你还可以按下相应热键右侧的删除 …","ref":"/zh/docs/preferences/key-bindings/","title":"热键"},{"body":"Update Check for updates on startup When CP Editor starts, checks whether there are new versions of CP Editor.\nIf there are new versions, a pop-up window will ask you whether to update or not.\nUse the beta version When checking for updates, check for beta versions. The beta versions usually have more features and improvements, but they are not as stable as the stable versions.\nLimits Default Time Limit The default time limit when executing programs.\nThe program will be killed if it doesn’t terminate within the time limit.\nOutput Length Limit The maximum number of characters in the output of the program.\nThe program will be killed if either of its stdout or stderr is too long.\nOutput Display Length Limit The maximum number of characters to be displayed for the output of the program.\nIf the output is too long, it will be elided.\nMessage Length Limit The maximum number of characters in each message in the top-right corner of the main window.\nThe message will be elided if it’s too long.\nHTML Diff Viewer Length Limit The maximum number of characters in the HTML Diff Viewer.\nThe Diff Viewer will fall back to plain text if either of the output or the expected output is too long.\nOpen File Length Limit The maximum number of characters in a source file to open.\nA source file won’t be opened if it’s too long.\nDisplay Test Case Length Limit The maximum number of characters in a test case to be displayed.\nA test case will be elided and read-only if it’s too long.\nNetwork Proxy The proxy server used to check for updates.\n","excerpt":"Update Check for updates on startup When CP Editor starts, checks …","ref":"/docs/preferences/advanced/","title":"Advanced"},{"body":"Update Check for updates on startup When CP Editor starts, checks whether there are new versions of CP Editor.\nIf there are new versions, a pop-up window will ask you whether to update or not.\nUse the beta version When checking for updates, check for beta versions. The beta versions usually have more features and improvements, but they are not as stable as the stable versions.\nLimits Default Time Limit The default time limit when executing programs.\nThe program will be killed if it doesn’t terminate within the time limit.\nOutput Length Limit The maximum number of characters in the output of the program.\nThe program will be killed if either of its stdout or stderr is too long.\nOutput Display Length Limit The maximum number of characters to be displayed for the output of the program.\nIf the output is too long, it will be elided.\nMessage Length Limit The maximum number of characters in each message in the top-right corner of the main window.\nThe message will be elided if it’s too long.\nHTML Diff Viewer Length Limit The maximum number of characters in the HTML Diff Viewer.\nThe Diff Viewer will fall back to plain text if either of the output or the expected output is too long.\nOpen File Length Limit The maximum number of characters in a source file to open.\nA source file won’t be opened if it’s too long.\nDisplay Test Case Length Limit The maximum number of characters in a test case to be displayed.\nA test case will be elided and read-only if it’s too long.\nNetwork Proxy The proxy server used to check for updates.\n","excerpt":"Update Check for updates on startup When CP Editor starts, checks …","ref":"/ru/docs/preferences/advanced/","title":"Advanced"},{"body":"Update Check for updates on startup When CP Editor starts, checks whether there are new versions of CP Editor.\nIf there are new versions, a pop-up window will ask you whether to update or not.\nUse the beta version When checking for updates, check for beta versions. The beta versions usually have more features and improvements, but they are not as stable as the stable versions.\nLimits Default Time Limit The default time limit when executing programs.\nThe program will be killed if it doesn’t terminate within the time limit.\nOutput Length Limit The maximum number of characters in the output of the program.\nThe program will be killed if either of its stdout or stderr is too long.\nOutput Display Length Limit The maximum number of characters to be displayed for the output of the program.\nIf the output is too long, it will be elided.\nMessage Length Limit The maximum number of characters in each message in the top-right corner of the main window.\nThe message will be elided if it’s too long.\nHTML Diff Viewer Length Limit The maximum number of characters in the HTML Diff Viewer.\nThe Diff Viewer will fall back to plain text if either of the output or the expected output is too long.\nOpen File Length Limit The maximum number of characters in a source file to open.\nA source file won’t be opened if it’s too long.\nDisplay Test Case Length Limit The maximum number of characters in a test case to be displayed.\nA test case will be elided and read-only if it’s too long.\nNetwork Proxy The proxy server used to check for updates.\n","excerpt":"Update Check for updates on startup When CP Editor starts, checks …","ref":"/zh_tw/docs/preferences/advanced/","title":"Advanced"},{"body":"更新 启动时检查更新 在 CP Editor 启动时,检查是否有新版本的 CP Editor。\n如果有新版本,则会弹出一个窗口询问你是否进行更新。\n使用测试版本 检查更新时,检查 Beta 版本。 Beta 版通常具有更多功能和改进,但不如稳定版稳定。\n限制 默认时间限制 执行程序的默认时间限制。\n超时的程序会被终止。\n输出长度限制 程序的最大输出字符数。\nstdout 或 stderr 过长的程序将会被终止。\n输出显示长度限制 会显示出来的程序输出的最大字符数。\n如果输出过长,超长部分会被省略。\n消息长度限制 主窗口右上角内每条信息的最大长度。\n超长部分将会被省略。\nHTML 差异查看器长度限制 HTML 差异查看器中的最大字符数。\n如果输出或答案太长,差异查看器将以纯文本显示。\n打开文件长度限制 允许打开的文件的最大字符数。\n如果文件超长,将不会被打开。\n显示测试用例长度限制 会显示出来的测试用例的最大字符数。\n如果测试用例过长,超长部分会被省略,且测试用例会变得只读。\n网络代理 用于检查更新的代理服务器。\n","excerpt":"更新 启动时检查更新 在 CP Editor 启动时,检查是否有新版本的 CP Editor。\n如果有新版本,则会弹出一个窗口询问你是否进行 …","ref":"/zh/docs/preferences/advanced/","title":"高级"},{"body":"Temporary Directory In CP Editor, each file has a temporary directory, it can be used to save the executable files, etc.\nYou can treat it as a place to safely save something for each tab (i.e. each file) without affecting other files on your disk, and it will be automatically deleted when the tab is closed.\nOn Linux, it’s /tmp/cpeditor-XXXXXX. On Windows, it’s C:\\Users\\\u003cusername\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX.\nRegular Expression The regular expression is used to match patterns in a string and find and replace substrings.\nYou can find many online regex courses, for example https://regexone.com/.\nIn CP Editor, you can use \\1, \\2, etc. for the content of the first/second capture group in the replacement patterns.\n","excerpt":"Temporary Directory In CP Editor, each file has a temporary directory, …","ref":"/docs/preferences/general/","title":"General"},{"body":"Temporary Directory In CP Editor, each file has a temporary directory, it can be used to save the executable files, etc.\nYou can treat it as a place to safely save something for each tab (i.e. each file) without affecting other files on your disk, and it will be automatically deleted when the tab is closed.\nOn Linux, it’s /tmp/cpeditor-XXXXXX. On Windows, it’s C:\\Users\\\u003cusername\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX.\nRegular Expression The regular expression is used to match patterns in a string and find and replace substrings.\nYou can find many online regex courses, for example https://regexone.com/.\nIn CP Editor, you can use \\1, \\2, etc. for the content of the first/second capture group in the replacement patterns.\n","excerpt":"Temporary Directory In CP Editor, each file has a temporary directory, …","ref":"/ru/docs/preferences/general/","title":"General"},{"body":"暫存目錄 CP Editor 中,每個檔案都位於各自的臨時目錄,用來存放可執行檔及其它檔案。\n您可以將其看做每個分頁(每個檔案)都有一個安全存放資料的地方,以避免影響硬碟上的其他檔案。暫存目錄會在分頁關閉時被自動刪除。\n暫存目錄的位置因不同系統而異:\n Linux:/tmp/cpeditor-XXXXXX Windows:C:\\Users\\\u003c您的使用者名稱\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX 正規表達式 正規表達式 可以用來比對字串中符合給定規則的內容,並用來尋找及取代它們。\n您可以在網路上找到許多關於正規表達式的課程,例如 https://regexone.com/。\n在 CP Editor 中,您可以使用 \\\u003c數字\u003e 來表示符合取代規則的第幾個組別。例如:\\1、\\2 表示符合取代規則的第一、第二個組別。\n","excerpt":"暫存目錄 CP Editor 中,每個檔案都位於各自的臨時目錄,用來存放可執行檔及其它檔案。\n您可以將其看做每個分頁(每個檔案)都有一個安全 …","ref":"/zh_tw/docs/preferences/general/","title":"一般"},{"body":"临时文件夹 在 CP Editor 中,每个文件都有一个临时目录,可用于保存可执行文件等等。\n你可以将其视为一个能够安全地为每个标签页(即每个文件)保存内容而不影响磁盘上其他文件的地方,并且在关闭标签页时它会被自动删除。\n在 Linux 上,它位于 /tmp/cpeditor-XXXXXX。在 Windows 上,它位于 C:\\Users\\\u003cusername\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX。\n正则表达式 正则表达式 用于匹配字符串中的模式以及查找和替换子字符串。\n你可以找到许多在线正则表达式课程,例如: 正则表达式 30 分钟入门教程 。\n在 CP Editor 中,你可以使用 \\1, \\2 等用于替换模式中的第一个/第二个捕获组的内容。\n","excerpt":"临时文件夹 在 CP Editor 中,每个文件都有一个临时目录,可用于保存可执行文件等等。\n你可以将其视为一个能够安全地为每个标签页(即每 …","ref":"/zh/docs/preferences/general/","title":"通用"},{"body":" #td-cover-block-0 { background-image: url(/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } About CP Editor An IDE specially designed for competitive programming\n CP Editor is a Qt-based, lightweight and cross-platform IDE specially designed for competitive programming.\nIt’s free software distributed under GPL-3.0. The source code is available on GitHub.\n You can: Learn about the Features Download and have a try Read the Documentation Join the Community Become a Sponsor This website is built by Hugo with the Docsy theme. The home page is based on the Colorlib template. ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/about/","title":"About CP Editor"},{"body":" Ask for help / Share ideas GitHub Discussions Say thanks Say thanks to CP Editor! Make complaints CP Editor sucks Chat with other users Telegram Group ","excerpt":" Ask for help / Share ideas GitHub Discussions Say thanks Say …","ref":"/community/","title":"Join the CP Editor community"},{"body":" The Missing Editor for Competitive Programmers CP Editor is designed for competitive programming. It helps you focus on your algorithms and automates compilation, execution and testing of your code. It can fetch test cases from different platforms and submit solutions to Codeforces.\nView on GitHub Download What it does It automates all that's reasonably possible and allows you to purely focus on your code. Say no to manual efforts of running and testing your code against expected outputs.\n Get the testcases It can fetch testcases automatically from almost all competitive programming sites. No more copy-pasting!\n Test your solution With a single click you can run your code on multiple test cases and get verdicts.\n Submit to CF Thanks to CF tools, It can submit your solution directly to codeforces and show you verdict without leaving the editor.\n Run without Saving Variety of Themes Code Linting Submit to Codeforces Run your code\nwithout saving We know that you want to test something quickly. You can run your code with one click without saving and the hot exit feature makes it easy to restore your code from the last session.\nGet Started Now Dark themes? We've got you covered Our lives are colorful, why not our coding editor We have added five different themes for you to choose from: Light, Drakula, Monkai, Solarized Light and Solarized Dark. More themes are coming in the near future.\nGet Started Now Errors and Warnings?\nWe lint them while you are coding Save your precious contest time with code linting Using Language Servers, we provide real-time linting for errors and warnings in your code. You can see squiggles under the code and hover over them to get useful tooltips.\nGet Started Now We can submit your Solutions to Codeforces All thanks to Competitive Programming Community We have gathered the best tools in competitive programming and merged them into one editor. One such tool is called CF Tool. We have added it so you can submit and get verdicts in the editor.\nGet Started Now Simple and Adaptive User Interface We have made a simple UI with lots of flexibility and customisation and seamlessly adapts to your existing environment. Everything you need is always in front of your eyes\n Feedback from Community Our Community support us and keep us alive. We would love to hear your feedback too!\nSee what other Competitive Programmers have to say about our editor\n Easy to use and lightweight. It's very fast in terms of compiling and also provides the feature to parse testcases from competitive websites. It is the best editor I have ever used.\nYatharth Varma This is exactly what I was looking for. An Editor that automates all redundant tasks and helps me in focusing on the Algorithm. Give a try, you are gonna love me.\nNitish Kumar Singh Full support for\nC/C++, Java and Python Use the language you like We officially support three languages in the editor. You can set your own compilation commands and pass runtime arguments to your code. It really gets exciting when you have the opportunity to use different languages in different tabs with one-click options.\nGet Started Now Impressed by our features? We are excited that you have chosen to try out this editor. We hope that our Editor will fulfill all your needs in Competitive Programming. CP Editor is, \"by competitive programmers, to competitive programmers, for competitive programmers\".\nTry it now ","excerpt":" The Missing Editor for Competitive Programmers CP Editor is designed …","ref":"/","title":"CP Editor"},{"body":" Редактор, которого не хватало спортивным программистам CP Editor специально разработан для спортивного программирования. Он помогает вам сконцентрироваться на алгоритмах и автоматизирует компиляцию, выполнение и тестирование кода, а также умеет отображать тесты с различных платформ и может отправлять решения на Codeforces!\nСмотреть на GitHub Скачать Как это работает? CP Editor избавляет вас от написания рутинного кода пока идёт соревнование. Он автоматизирует большинство процессов, позволяя сосредоточиться на решении задачи.\n Захват тестов CP Editor способен получать примеры автоматически почти с любого сайта соревнований. Можете попрощаться с ошибками при копировании тестов.\n Быстрая печать Пишите быстрее, используя крутые возможности шаблонов. Буквально за две секунды вы можете вставить целый DFS в свой код.\n Получение вердикта Вы можете получить ответ на ваши примеры в один клик при помощи встроенной проверки или же из testlib. Если они вам не подходят, то добавьте свои варианты.\n Запуск без сохранения Множество тем Проверка кода Отправка на Codeforces Запускайте свой код\nВ любое время Мы знаем, что вы хотите протестировать свой код без временного файла Вы можете запустить свой код в один клик без сохранения, а особенность быстрого выхода сделает возможным восстановить ваш код с прошлой сессии.\nПрисоединяйтесь сейчас Темная тема? Пожалуйста Наши жизни полны красок, что мешает сделать таким же редактор? Мы добавили пять различных тем: Light, Drakula, Monkai, Solarized Light и Solarized Dark. Если этого вам недостаточно, попросите нас на странице сообщества и мы добавим больше.\nПрисоединяйтесь сейчас Ошибки и предупреждения?\nМы отмечаем их пока вы пишите Сохраните своё драгоценное время на контесте при помощи проверки кода Используя Языковые Сервера, мы предоставляем проверку вашему коду в реальном времени, прямо как Intellisense в VSCode и Atom. Вы можете увидеть стрелку у предупреждения и навести курсор, чтобы получить подсказку.\nПрисоединяйтесь сейчас Мы можем отправить ваши Решения на Codeforces Благодарность Сообществу Спортивного Программирования Мы собрали лучшие инструменты из спортивного программирования и объединили их в единое целое. Одним из таких средств является CF Tool. Мы добавили его, чтобы вы могли отправлять задачу и получать ответ сразу в редакторе.\nПрисоединяйтесь сейчас Разделяй и влавствуй Мы сделали простой, но мощный UI, который не будет мешать в процессе решения контеста Все, что вам нужно, всегда перед вашими глазами\n Отзывы от Сообщества Наше Сообщество помогает нам и поддерживает нас. Мы будем рады узнать и ваше мнение тоже!\nСмотрите, что другие спортивные программисты говорят о нашем редакторе:\n Простой в использовании и маловесящий. Очень быстро компилирует код, а также позволяет перенести тесты с сайтов соревнований. Это лучший редактор, который я когда-либо использовал.\nYatharth Varma Это именно то, что я искал. Редактор, который делает за меня всю простую работу и помогает мне сфокусироваться на алгоритме задачи. Попробуйте, вам понравится.\nNitish Kumar Singh Полная поддержка\nC/C++, Java и Python Используйте тот язык, который вам нравится Официально мы поддерживаем три языка программирования в редакторе. Для них вы можете установить свои собственные команды компиляции и передавать аргументы в свой код. Это правда удивляет, когда у вас есть возможность использовать разные языки программирования, просто переключаясь между вкладками.\nПопробуйте сейчас Впечатлены нашими возможностями? Мы рады, что вы выбрали наш редактор. Надеемся, он сможет покрыть все ваши потребности в Спортивном Программировании. CP Editor - это \"от спортивных программистов, для спортивных программистов\".\nПопробуйте сейчас ","excerpt":" Редактор, которого не хватало спортивным программистам CP Editor …","ref":"/ru/","title":"CP Editor"},{"body":" 算法竞赛选手们\n所需要的 IDE CP Editor 专为算法竞赛设计,不像其它 IDE 主要是为了开发设计的。它可以帮助你自动化编译、运行、测试,从而让你专注于算法设计。它甚至可以从各种算法竞赛网站上获取样例,将代码提交到 Codeforces 上!\n在 GitHub 上查看 下载 它如何为你工作 CP Editor 解决了算法竞赛中重复和无聊的任务。它会尽可能地将操作自动化,让你完全专注于代码。\n 获取测试用例 CP Editor 可以从几乎所有的算法竞赛网站上自动获取样例。你再也不用手动进行麻烦的复制粘贴。\n 更快地编程 强大的可自定义代码片段功能可加快编程速度。在短短两秒钟内,你可以将整个 DFS 代码插入编辑器。\n 获取评测结果 你可以通过内置检查器或来自 testlib 的检查器一键获取样例的评测结果。你也可以添加自己的 SPJ。\n 运行而无需保存 多种主题 代码检查 提交至 Codeforces 在任何时候\n运行任何代码 我们知道你想要无需临时文件就能进行测试 你可以一键运行代码而无需保存,热退出功能使你可以轻松地从上一个会话中还原代码。\n即刻开始 想要暗色模式?\n我们提供了 我们的生活是丰富多彩的,难道代码编辑器就不吗? 我们提供了五个不同的主题供你选择:Light, Drakula, Monkai, Solarized Light 以及 Solarized Dark。如果你不满意,请告诉我们,我们将为你提供更多。\n即刻开始 错误和警告?\n我们会在你打字的过程中指出 用代码检查节省宝贵的比赛时间 就像 VS Code 和 Atom 中的 Intellisense 那样,使用 Language Server,我们可以为代码中的错误和警告提供实时更新。你可以在警告下方看到波浪线,并将鼠标悬停在它们上方以获取提示。\n即刻开始 我们可以将你的代码提交到 Codeforces 多亏了算法竞赛编程社区 我们收集了算法竞赛编程中最好的工具,并将它们合并为一个 IDE。其中一种这样的工具称为 CF Tool。我们已经添加了它,因此,你可以在 CP Editor 中提交并获取评测结果。\n即刻开始 独特的屏幕,完美地工作 我们已经创建了一个简洁而功能强大的 UI,在解决问题时不会让你感到困惑 你所需的一切始终在你的眼前\n 来自社区的反馈 我们的社区支持我们并让我们保持活力。我们也很想听听你的反馈!\n看看其他算法竞赛选手们对 CP Editor 有什么看法\n Easy to use and lightweight. It's very fast in terms of compiling and also provides the feature to parse testcases from competitive websites. It is the best editor I have ever used.\nYatharth Varma This is exactly what I was looking for. An Editor that automates all redundant tasks and helps me in focusing on the Algorithm. Give a try, you are gonna love me.\nNitish Kumar Singh 全面支持\nC/C++, Java 和 Python 使用你喜欢的语言 我们支持三种编程语言。你可以设置自己的编译命令,并将运行时参数传递给代码。令人兴奋的是,你有机会在带有一键式选项的不同选项卡中使用不同的语言。\n即刻开始 被 CP Editor 的强大功能所吸引了? 很高兴你选择尝试 CP Editor。\n我们希望 CP Editor 能够满足你在算法竞赛编程中的所有需求。\nCP Editor 由算法竞赛选手创建,给算法竞赛选手使用,为算法竞赛选手着想。\n现在就试试 ","excerpt":" 算法竞赛选手们\n所需要的 IDE CP Editor 专为算法竞赛设计,不像其它 IDE 主要是为了开发设计的。它可以帮助你自动化编译、运 …","ref":"/zh/","title":"CP Editor"},{"body":" 讓你的競程之旅\n如虎添翼! The Missing Editor for Competitive Programmers -- CP Editor 是專為競程用途開發的程式碼編輯器。藉由自動化編譯、執行、測試的過程,讓您得以專注於設計演算法。它甚至可以從不同的平台取得測資,並繳交答案至 Codeforces!\n看看我們的 GitHub 下載軟體 厲害之處 How it works for you -- CP Editor 將競賽過程中大部分的重複又乏味的工作自動化,省略了繁複的程序,讓您可以全然專注於撰寫程式碼。\n 取得測資 CP Editor 可以從大部分的競賽網站取得測資,別再煩惱複製貼上時出差錯了。\n 寫得更快 您可以自訂各種常用的程式碼片段,節省撰寫重複程式碼的時間。在兩秒內變出 DFS 也不是難事了。\n 評判結果 使用內建或自 testlib 取得的評判程式來驗證範例測資,過程簡單快速。您也可以加入自己的評判程式。\n 免存檔執行 多種佈景 問題標註 提交至 Codeforces 想隨時執行程式\n沒問題 存檔很麻煩,我們都知道 我們讓存檔變得不再必要。僅需一步,您就可以立即執行您的程式;關閉視窗前不必猶豫,CP Editor 幫你記住工作階段。\n立即開始 盯著螢幕讓眼睛很不舒服嗎?\n沒問題,我們準備好暗色模式了。 生活多采多姿,程式碼編輯器也要一樣 我們準備了五種配色任君挑選:Light、Drakula、Monkai、Solarized Light 及 Solarized Dark。還是不滿意?歡迎到我們的社群網頁提出需求,我們可能就會在下次的更新加入。\n立即開始 編譯過不了?\n現在問題都無所遁形 不用再慢慢找哪裡拼錯了,Linter 都幫你標示出來 有了 Language Server 的協助,我們可以在程式碼即時顯示錯誤及警告,就像在 Atom 或 VS Code 中的 IntelliSense 那樣。您會見到警告訊息下方的波浪線,將滑鼠暫留在上方以檢視提示。\n立即開始 為您提交答案至Codeforces We can submit your Solutions to Codeforces -- 多虧了競賽程式的社群 我們蒐集了最棒的工具並將其整合在編輯器裡。CF Tool 讓您不用離開編輯器,就能繳交程式碼、讀取評判結果。\nGet Started Now 獨特又好用的介面 簡潔又強大的 UI 讓解題過程更加順暢\n需要的功能都在眼前,一目瞭然\nWe have made a simple yet powerful UI that shouldn't confuse you when solving problems Everything you need is always in front of your eyes\n-- 看看社群怎麼說 社群的力量支持我們的發展,我們也很樂意聽取您的回饋意見!\n來看看其他使用者對 CP Editor 的感想\n Easy to use and lightweight. It's very fast in terms of compiling and also provides the feature to parse testcases from competitive websites. It is the best editor I have ever used.\nYatharth Varma This is exactly what I was looking for. An Editor that automates all redundant tasks and helps me in focusing on the Algorithm. Give a try, you are gonna love me.\nNitish Kumar Singh 完整支援\nC/C++、Java 及 Python 使用您喜歡的程式語言 可以自訂編譯命令及執行引數,在不同分頁撰寫不同語言的程式碼。\n立即開始 喜歡這些功能嗎? 很高興您決定試用。\nCP Editor 是由競程選手開發,為競程選手考量,給競程選手使用。\n我們希望它能提供您於競賽中的一切所需。\nWe are excited that you have chosen to try out this editor. We hope that our Editor will fulfill all your needs in Competitive Programming. CP Editor is, \"by competitive programmers, to competitive programmers, for competitive programmers\".\n-- 立刻嘗試 ","excerpt":" 讓你的競程之旅\n如虎添翼! The Missing Editor for Competitive Programmers -- CP …","ref":"/zh_tw/","title":"CP Editor"},{"body":" [v-cloak] { display: none; } Get CP Editor on your machine and have a try! You probably want to use the latest stable version on {{ userPlatform }} . Choose your platform and the version you want to download Installation instructions All versions Loading... No available asset found Platform {{ platformOption }} Version v{{ release.tag_name }} (Latest Stable) (Latest Beta) Asset {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) Download ","excerpt":" [v-cloak] { display: none; } Get CP Editor on your machine and …","ref":"/download/","title":"Download CP Editor"},{"body":"","excerpt":"","ref":"/ru/need-translation-list/","title":"Need Translation List"},{"body":" #td-cover-block-0 { background-image: url(/ru/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/ru/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } Подробнее о CP Editor Редактор, созданный специально для спортивного программирования\n CP Editor - легковесная, основанная на Qt, кроссплатформенная среда разработки.\nЭто бесплатное ПО, распространяемое под лицензией GPL-3.0. Исходный код доступен на GitHub.\n Вы можете: Изучить Особенности Скачать и попробовать Прочитать Документацию Вступить в Сообщество Стать Спонсором Этот сайт сконструирован при помощи Hugo и использует Docsy тему. Домашнаяя страница базируется на шаблоне Colorlib. ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/ru/about/","title":"Подробнее о CP Editor"},{"body":" [v-cloak] { display: none; } Установи и попробуй CP Editor! Скорее всего вам нужна последняя стабильная версия для {{ userPlatform }} . Выберите платформу и версию, которую вы хотите скачать Инструкции для установки Все версии Загрузка... Необходимый файл не найден Платформа {{ platformOption }} Версия v{{ release.tag_name }} (Последняя стабильная) (Последняя бета) Файл {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) Скачать ","excerpt":" [v-cloak] { display: none; } Установи и попробуй CP Editor! …","ref":"/ru/download/","title":"Скачать CP Editor"},{"body":" Попросить помощь / Поделиться идеями GitHub Discussions Поблагодарить Say thanks to CP Editor! Пожаловаться CP Editor sucks Чат с остальными пользователями Telegram Group ","excerpt":" Попросить помощь / Поделиться идеями GitHub Discussions …","ref":"/ru/community/","title":"Вступай в сообщество CP Editor"},{"body":" [v-cloak] { display: none; } 立即安裝並體驗 CP Editor 您可能想找適用於 {{ userPlatform }} 系統的最新穩定版 。 選擇您的作業系統及想要下載的版本 安裝說明 所有版本 載入中... 未取得可用的檔案清單 作業系統 {{ platformOption }} 版本 v{{ release.tag_name }} (最新穩定版) (最新 Beta 版) 檔案 {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) 下載 ","excerpt":" [v-cloak] { display: none; } 立即安裝並體驗 CP Editor 您可能想找適用於 {{ …","ref":"/zh_tw/download/","title":"下載 CP Editor"},{"body":" [v-cloak] { display: none; } 在你的计算机上获取 CP Editor,然后试一试! 你可能想要使用 在 {{ userPlatform }} 上的最新稳定版本 。 选择你使用的平台和想要下载的版本 安装说明 所有版本 Gitee 镜像 FastGit 镜像 加载中... 找不到可下载的文件 平台 {{ platformOption }} 版本 v{{ release.tag_name }} (最新稳定版) (最新测试版) 下载项 {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) 下载 ","excerpt":" [v-cloak] { display: none; } 在你的计算机上获取 CP Editor,然后试一试! 你可能想要使用 …","ref":"/zh/download/","title":"下载 CP Editor"},{"body":" #td-cover-block-0 { background-image: url(/zh/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/zh/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } 关于 CP Editor 专为算法竞赛而设计的 IDE\n CP Editor 是基于 Qt 的轻量级跨平台 IDE,专门为算法竞赛而设计。\n它是以 GPL-3.0 协议发布的自由软件。源代码可以在 GitHub 获取。\n 你可以: 了解 特性 下载 并尝试一下 阅读 文档 加入 社区 成为 赞助者 该网站使用 Hugo 以及 Docsy 主题构建。 主页 基于 Colorlib 模板制作。 ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/zh/about/","title":"关于 CP Editor"},{"body":"","excerpt":"","ref":"/zh_tw/need-translation-list/","title":"待翻譯清單"},{"body":"","excerpt":"","ref":"/zh/need-translation-list/","title":"待翻译列表"},{"body":" 提问 / 分享想法 GitHub Discussions(英文) 中文社区 表示感谢 Say thanks to CP Editor! 吐槽 CP Editor sucks 和其它用户聊天 Telegram 群组(英文) QQ 群 (1081647997) ","excerpt":" 提问 / 分享想法 GitHub Discussions(英文) 中文社区 表示感谢 Say thanks to …","ref":"/zh/community/","title":"加入 CP Editor 社区"},{"body":" 尋求協助 / 分享點子 GitHub Discussions 說聲感謝 對 CP Editor 說聲謝謝! 抱怨專區 我覺得 CP Editor 爛透了 與其他使用者交流 Telegram 群組 ","excerpt":" 尋求協助 / 分享點子 GitHub Discussions 說聲感謝 對 CP Editor 說聲謝謝! …","ref":"/zh_tw/community/","title":"加入 CP Editor 社群"},{"body":" #td-cover-block-0 { background-image: url(/zh_tw/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/zh_tw/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } 關於 CP Editor 專為競程打造的整合式開發環境\n CP Editor 是一款採用 Qt 的輕巧型跨平台 IDE,特別為競賽程式用途設計。\n它也是遵循 GPL-3.0 授權規範散發的自由軟體。您可以在 GitHub 取得原始碼。\n 您可以: 了解它的特色 下載來試試看 閱讀說明文件 加入社群 成為我們的贊助者 本網站的建置係採用 Hugo 以及 Docsy 佈景。 首頁使用了 Colorlib 範本。 ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/zh_tw/about/","title":"關於 CP Editor"}]
\ No newline at end of file
diff --git a/offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json b/offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json
new file mode 100644
index 00000000..7804c75a
--- /dev/null
+++ b/offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json
@@ -0,0 +1 @@
+[{"body":"Tab Width The width (number of characters) of an indent. It is used when displaying the tab characters. It is also used in Auto Indent and Replace tabs by spaces .\nCursor Width The width of the text cursor in pixels.\nAuto Indent When you start a new line, the new line will have the same indent (i.e. white spaces at the beginning of the line) as the old line. If the old line ends with {, an extra indent (a tab character or Tab Width spaces, depending on whether Replace tabs by spaces is enabled) will be inserted at the beginning of the new line. Wrap Text If a line is too long to fit in a single line, the line will be separated into several lines.\nAuto Complete Parentheses Automatically add the right parenthesis when you type the left one. For example, when you type (, ) will be added.\nWhen the character next to the cursor is a right parenthesis and you type this parenthesis, instead of typing this parenthesis, the cursor will jump out of the parenthesis.\nYou can choose the parentheses to auto-complete in the Parentheses settings.\nAuto Remove Parentheses When you delete a left parenthesis, if a corresponding right parenthesis is next to it, the right parenthesis will also be deleted.\nYou can choose the parentheses to auto-remove in the Parentheses settings.\nJump out of a parenthesis by pressing Tab When the cursor is next to a right parenthesis, you can use the Tab key to jump out of it. If Auto Complete Parentheses is enabled, this is an alternative of typing the right parenthesis.\nYou can choose the parentheses to jump out by Tab in the Parentheses settings.\nReplace tabs by spaces When you insert an indent, insert spaces instead of a tab character. The number of spaces is equal to the Tab Width .\nNote that this won’t replace the existing tab characters. In Auto Indent , the tab characters in the old line will remain in the new line (however, the new indent inserted after { will be spaces).\n","excerpt":"Tab Width The width (number of characters) of an indent. It is used …","ref":"/docs/preferences/code-edit/","title":"Code Edit"},{"body":"Tab Width The width (number of characters) of an indent. It is used when displaying the tab characters. It is also used in Auto Indent and Replace tabs by spaces .\nCursor Width The width of the text cursor in pixels.\nAuto Indent When you start a new line, the new line will have the same indent (i.e. white spaces at the beginning of the line) as the old line. If the old line ends with {, an extra indent (a tab character or Tab Width spaces, depending on whether Replace tabs by spaces is enabled) will be inserted at the beginning of the new line. Wrap Text If a line is too long to fit in a single line, the line will be separated into several lines.\nAuto Complete Parentheses Automatically add the right parenthesis when you type the left one. For example, when you type (, ) will be added.\nWhen the character next to the cursor is a right parenthesis and you type this parenthesis, instead of typing this parenthesis, the cursor will jump out of the parenthesis.\nYou can choose the parentheses to auto-complete in the Parentheses settings.\nAuto Remove Parentheses When you delete a left parenthesis, if a corresponding right parenthesis is next to it, the right parenthesis will also be deleted.\nYou can choose the parentheses to auto-remove in the Parentheses settings.\nJump out of a parenthesis by pressing Tab When the cursor is next to a right parenthesis, you can use the Tab key to jump out of it. If Auto Complete Parentheses is enabled, this is an alternative of typing the right parenthesis.\nYou can choose the parentheses to jump out by Tab in the Parentheses settings.\nReplace tabs by spaces When you insert an indent, insert spaces instead of a tab character. The number of spaces is equal to the Tab Width .\nNote that this won’t replace the existing tab characters. In Auto Indent , the tab characters in the old line will remain in the new line (however, the new indent inserted after { will be spaces).\n","excerpt":"Tab Width The width (number of characters) of an indent. It is used …","ref":"/ru/docs/preferences/code-edit/","title":"Code Edit"},{"body":"Tab 寬度 The width (number of characters) of an indent. It is used when displaying the tab characters. It is also used in 自動縮排 and 以空白代替 Tab .\n游標寬度 游標的像素寬度。\n自動縮排 When you start a new line, the new line will have the same indent (i.e. white spaces at the beginning of the line) as the old line. If the old line ends with {, an extra indent (a tab character or Tab 寬度 spaces, depending on whether 以空白代替 Tab is enabled) will be inserted at the beginning of the new line. 自動換行 一行文字過長時,將其換行顯示。\n自動完成括號 Automatically add the right parenthesis when you type the left one. For example, when you type (, ) will be added.\nWhen the character next to the cursor is a right parenthesis and you type this parenthesis, instead of typing this parenthesis, the cursor will jump out of the parenthesis.\nYou can choose the parentheses to auto-complete in the Parentheses settings.\n自動刪除括號 When you delete a left parenthesis, if a corresponding right parenthesis is next to it, the right parenthesis will also be deleted.\nYou can choose the parentheses to auto-remove in the Parentheses settings.\n按下 Tab 時從一對括號跳出 When the cursor is next to a right parenthesis, you can use the Tab key to jump out of it. If 自動完成括號 is enabled, this is an alternative of typing the right parenthesis.\nYou can choose the parentheses to jump out by Tab in the Parentheses settings.\n以空白代替 Tab 縮排時使用空白字元(' ')代替 Tab 字元('\\t')。啟用時,縮排的寬度同為 Tab 寬度 。\n請注意,開啟此選項並不會替換已有的 Tab 字元。此設定對於 自動縮排 需換行後才會生效。\n","excerpt":"Tab 寬度 The width (number of characters) of an indent. It is used when …","ref":"/zh_tw/docs/preferences/code-edit/","title":"Code Edit"},{"body":"You need to choose a version in the Releases , then download an asset according to your OS and install it.\nWindows Setup Version The setup version needs to be installed on your machine. The setting files will be stored in the config directory on your system, and it will be visible in the list of installed programs on your system.\nDownload the setup.exe in the assets and install it.\nPortable Version The portable version can be executed without installation. The setting files will be stored in the same directory as the executable file, and you won’t see it in the list of installed programs on your system.\nDownload the portable.zip in the assets and unzip it to any directory you like.\nMost Linux Distros Download the AppImage in the assets, add execute permission to it (chmod +x \u003cAppImagePath\u003e), then run it.\nDebian-based Linux Distros On Debian-based Linux distributions (Ubuntu, Linux Mint, etc.) you can download the .deb package in the assets and run the command in the terminal:\nsudo apt install \u003cpath to .deb package\u003e Then type your root password and agree with the installation. You can also use Gdebi or other graphical tools to install the deb package. Supported: Debian 10 Buster, Ubuntu 18.04 Bionic Beaver, Linux Mint 19 Tara, and newer versions of these distributions or the ones based on them.\nmacOS Download the .dmg file in the assets and install it.\nYou may need to click “Yes” to access Filesystem several times. Apple may report that this application does not come from a recognized developer and prevent you from launching the app. Please add an exception to CP Editor from System Preferences -\u003e Security \u0026 Privacy -\u003e General, and allow CP Editor to run anyways\n","excerpt":"You need to choose a version in the Releases , then download an asset …","ref":"/docs/installation/download-from-releases/","title":"Download from Releases"},{"body":"You need to choose a version in the Releases , then download an asset according to your OS and install it.\nWindows Setup Version The setup version needs to be installed on your machine. The setting files will be stored in the config directory on your system, and it will be visible in the list of installed programs on your system.\nDownload the setup.exe in the assets and install it.\nPortable Version The portable version can be executed without installation. The setting files will be stored in the same directory as the executable file, and you won’t see it in the list of installed programs on your system.\nDownload the portable.zip in the assets and unzip it to any directory you like.\nMost Linux Distros Download the AppImage in the assets, add execute permission to it (chmod +x \u003cAppImagePath\u003e), then run it.\nDebian-based Linux Distros On Debian-based Linux distributions (Ubuntu, Linux Mint, etc.) you can download the .deb package in the assets and run the command in the terminal:\nsudo apt install \u003cpath to .deb package\u003e Then type your root password and agree with the installation. You can also use Gdebi or other graphical tools to install the deb package. Supported: Debian 10 Buster, Ubuntu 18.04 Bionic Beaver, Linux Mint 19 Tara, and newer versions of these distributions or the ones based on them.\nmacOS Download the .dmg file in the assets and install it.\nYou may need to click “Yes” to access Filesystem several times. Apple may report that this application does not come from a recognized developer and prevent you from launching the app. Please add an exception to CP Editor from System Preferences -\u003e Security \u0026 Privacy -\u003e General, and allow CP Editor to run anyways\n","excerpt":"You need to choose a version in the Releases , then download an asset …","ref":"/ru/docs/installation/download-from-releases/","title":"Download from Releases"},{"body":"You can choose one of the following installation methods.\nIf you are not sure which one to choose, just go with Download from Releases .\n","excerpt":"You can choose one of the following installation methods.\nIf you are …","ref":"/docs/installation/","title":"Installation"},{"body":"You can choose one of the following installation methods.\nIf you are not sure which one to choose, just go with Download from Releases .\n","excerpt":"You can choose one of the following installation methods.\nIf you are …","ref":"/ru/docs/installation/","title":"Installation"},{"body":"缩进宽度 设置制表符的宽度或缩进的空格个数。该选项设置的值将同时对 自动缩进 和 将制表符替换为空格 产生影响。\n光标宽度 以像素计算的光标宽度。\n自动缩进 当代码另起一行时,该行将和上一行拥有相同的缩进。 如果上一行以 { 结束,该行将会插入一个额外的缩进(一个制表符或 缩进宽度 个空格,取决于 将制表符替换为空格 选项是否开启)。 文本自动换行 如果某一行的字符数超出了屏幕的宽度,则该行的内容将会折成多行显示。\n自动补全括号 在输入左括号时自动插入右括号。例如,当你输入一个 ( 时,将会自动加入一个 )。\n如果光标处右边的第一个字符是右括号,而你输入了一个右括号,光标将会自动跳到该右括号后面,而不再输入右括号。\n你可以在各语言的 括号 设置中设置各语言自动补全的括号类型。\n自动删除括号 在删除一个左括号时,如果其右侧有一个右括号相邻,则该右括号也会被自动删除。\n你可以在各语言的 括号 设置中设置各语言自动删除的括号类型。\n在按下 Tab 键时跳出括号 如果光标处右边的第一个字符是右括号,你可以通过按下 Tab 键来自动跳出这对括号。如果 自动补全括号 选项被启用,这种方式可以作为输入右括号的另一种方式。\n你可以在各语言的 括号 设置中设置各语言按下 Tab 时自动跳出的括号类型。\n将制表符替换为空格 当插入一个缩进时,插入与 缩进宽度 数目相等的空格来代替制表符。\n该设置不会影响文件中已经存在的空格。在 自动缩进 选项中,如果上一行使用了制表符作为缩进,新的一行仍然会使用制表符缩进。但如果上一行以 { 结束,新的一行插入的额外缩进将会使用空格。\n","excerpt":"缩进宽度 设置制表符的宽度或缩进的空格个数。该选项设置的值将同时对 自动缩进 和 将制表符替换为空格 产生影响。\n光标宽度 以像素计算的光标 …","ref":"/zh/docs/preferences/code-edit/","title":"代码编辑"},{"body":"你需要在 Releases 頁面找到你需要的版本,然後根據你的作業系統選擇相應的檔案並下載安裝。\nWindows 安裝版 安裝版需要將本軟體安裝在您的電腦。設定組態將儲存於系統的設定目錄中,且 CP Editor 會出現在系統的已安裝程式清單上。\n下載檔案列表中的 setup.exe 並安裝它。\n免安裝版 免安裝版無需安裝即可執行。其設定組態將與 CP Editor 的可執行檔置於同一目錄,CP Editor 不會出現在系統的已安裝程式清單上。\n下載檔案列表中的 portable.zip 並解壓縮到您喜歡的地方。\n大多數 Linux 發行版 下載檔案列表中的 AppImage,並賦予其執行權限(chmod +x \u003cAppImagePath\u003e),再執行它。\nDebian 衍生的 Linux 發行版 在一些由 Debian 衍生的 Linux 發行版(如 Ubuntu, Linux Mint)您可以下載 .deb 套件並在終端機執行這行命令:\nsudo apt install \u003cpath to .deb package\u003e 接著輸入 root 使用者的密碼並同意安裝。如果您習慣操作圖形介面,亦可使用像 Gdebi 這樣的工具來安裝 deb 套件。\n支援的發行版:Debian 10 Buster、Ubuntu 18.04 Bionic Beaver、Linux Mint 19 Tara 以及更新的版本(或其他由前述版本再衍生的發行版)。\nmacOS 下載檔案列表中的 .dmg 檔案並安裝它。\n在安裝過程中,您可能需要按幾次「好」以存取檔案系統。Apple 可能會警告您這個應用程式是來自未識別開發者的 Mac App。參考 Apple 的 macOS 使用手冊 將 CP Editor 授予例外。\n","excerpt":"你需要在 Releases 頁面找到你需要的版本,然後根據你的作業系統選擇相應的檔案並下載安裝。\nWindows 安裝版 安裝版需要將本軟體 …","ref":"/zh_tw/docs/installation/download-from-releases/","title":"在 Releases 中下載"},{"body":"你需要在 Releases 页面找到你需要的版本,然后根据你的操作系统选择相应的文件并下载安装。\n如果你访问 GitHub 的速度较慢,你还可以尝试 Gitee 镜像 或者 FastGit 镜像 。\nWindows 使用安装包安装 使用安装包在你的电脑上进行安装。配置文件将会存储在你的系统的配置目录下,CP Editor 将会出现在你的系统的已安装程序列表中。\n下载 setup.exe 以进行安装。\n便携式版本 使用便携式版本,无需安装即可使用 CP Editor。这意味着你可以将 CP Editor 存储在 U 盘等可移动介质中。\n配置文件将存储在可执行文件所在的文件夹,CP Editor 将不会出现在你的系统的已安装程序列表中。\n下载 portable.zip,将其解压到任意一个你想要存放的位置。\n绝大部分 Linux 发行版 下载 AppImage,执行 chmod +x \u003cAppImagePath\u003e 给其添加执行权限,随后运行该文件。\nDebian 系 Linux 发行版 如果你使用的是 Debian 系的 Linux 发行版(Ubuntu,Linux Mint 等),可以下载 .deb 包,并在终端中执行如下命令:\nsudo apt install \u003cpath to .deb package\u003e 接下来输入密码,确认安装。你也可以使用 Gdebi 等图形化工具安装 deb 包,要求系统版本不低于 Debian 10 Buster,Ubuntu 18.04 Bionic Beaver,Linux Mint 19 Tara 或其他基于前述发行版的系统的相应版本。\nmacOS 下载 .dmg 文件然后安装。如果出现“未识别的开发者”等提示消息,请依然允许 CP Editor 运行。可以在 System Preferences -\u003e Security \u0026 Privacy -\u003e General 中将 CP Editor 添加到白名单里。\n","excerpt":"你需要在 Releases 页面找到你需要的版本,然后根据你的操作系统选择相应的文件并下载安装。\n如果你访问 GitHub 的速度较慢,你还 …","ref":"/zh/docs/installation/download-from-releases/","title":"在 Releases 中下载"},{"body":"你可以从下列安装方法中选择一个。\n如果你不确定要选择什么,请选择 在 Releases 中下载 。\n","excerpt":"你可以从下列安装方法中选择一个。\n如果你不确定要选择什么,请选择 在 Releases 中下载 。\n","ref":"/zh/docs/installation/","title":"安装"},{"body":"你可以從下列安裝方法中選擇一個。\n如果你不確定要選擇什麼,請選擇 在 Releases 中下載 。\n","excerpt":"你可以從下列安裝方法中選擇一個。\n如果你不確定要選擇什麼,請選擇 在 Releases 中下載 。\n","ref":"/zh_tw/docs/installation/","title":"安裝"},{"body":"Packaging status Some of the packages are officially maintained while most of them are maintained by the community.\nHowever, at present, CP Editor is not available in many package repositories. Package maintainers can contact us if any help is needed. For example, we may add some scripts in our CI/CD workflow.\nHere are a few guidelines to install the packages.\nSnapcraft You can use Snapcraft to install cpeditor , which is available on most Linux distros.\nThere are two channels available: latest/stable and latest/edge.\nDue to technical reasons, it was published using classic confinement, so you’ll need the --classic option to install it.\nTo install the latest stable version: sudo snap install cpeditor --classic\nTo install the latest alpha version: sudo snap install cpeditor --classic --channel=latest/edge\nAUR If you are using Arch Linux , it’s recommended to install CP Editor via AUR . AUR usually also works on Arch-based distros like Manjaro, but it sometimes fails due to reasons like different main repositories.\nThere are two AUR packages for CP Editor: cpeditor for the stable version and cpeditor-git for the alpha version.\nIf you are unfamiliar with AUR, it’s recommended to install paru and use paru -S cpeditor to install. You can also read the wiki on how to manually install an AUR package or AUR helpers .\nAfter the installation, you’ll be able to run CP Editor by cpeditor in your terminal or launch from the start menu like other apps.\n","excerpt":"Packaging status Some of the packages are officially maintained …","ref":"/docs/installation/use-package-managers/","title":"Use package managers"},{"body":"Packaging status Some of the packages are officially maintained while most of them are maintained by the community.\nHowever, at present, CP Editor is not available in many package repositories. Package maintainers can contact us if any help is needed. For example, we may add some scripts in our CI/CD workflow.\nHere are a few guidelines to install the packages.\nSnapcraft You can use Snapcraft to install cpeditor , which is available on most Linux distros.\nThere are two channels available: latest/stable and latest/edge.\nDue to technical reasons, it was published using classic confinement, so you’ll need the --classic option to install it.\nTo install the latest stable version: sudo snap install cpeditor --classic\nTo install the latest alpha version: sudo snap install cpeditor --classic --channel=latest/edge\nAUR If you are using Arch Linux , it’s recommended to install CP Editor via AUR . AUR usually also works on Arch-based distros like Manjaro, but it sometimes fails due to reasons like different main repositories.\nThere are two AUR packages for CP Editor: cpeditor for the stable version and cpeditor-git for the alpha version.\nIf you are unfamiliar with AUR, it’s recommended to install paru and use paru -S cpeditor to install. You can also read the wiki on how to manually install an AUR package or AUR helpers .\nAfter the installation, you’ll be able to run CP Editor by cpeditor in your terminal or launch from the start menu like other apps.\n","excerpt":"Packaging status Some of the packages are officially maintained …","ref":"/ru/docs/installation/use-package-managers/","title":"Use package managers"},{"body":"Packaging status Some of the packages are officially maintained while most of them are maintained by the community.\nHowever, at present, CP Editor is not available in many package repositories. Package maintainers can contact us if any help is needed. For example, we may add some scripts in our CI/CD workflow.\nHere are a few guidelines to install the packages.\nSnapcraft You can use Snapcraft to install cpeditor , which is available on most Linux distros.\nThere are two channels available: latest/stable and latest/edge.\nDue to technical reasons, it was published using classic confinement, so you’ll need the --classic option to install it.\nTo install the latest stable version: sudo snap install cpeditor --classic\nTo install the latest alpha version: sudo snap install cpeditor --classic --channel=latest/edge\nAUR If you are using Arch Linux , it’s recommended to install CP Editor via AUR . AUR usually also works on Arch-based distros like Manjaro, but it sometimes fails due to reasons like different main repositories.\nThere are two AUR packages for CP Editor: cpeditor for the stable version and cpeditor-git for the alpha version.\nIf you are unfamiliar with AUR, it’s recommended to install paru and use paru -S cpeditor to install. You can also read the wiki on how to manually install an AUR package or AUR helpers .\nAfter the installation, you’ll be able to run CP Editor by cpeditor in your terminal or launch from the start menu like other apps.\n","excerpt":"Packaging status Some of the packages are officially maintained …","ref":"/zh_tw/docs/installation/use-package-managers/","title":"Use package managers"},{"body":"打包情况 其中有的包是官方维护的,而大多数的包是由社区维护的。\n然而,目前很多软件包仓库都没有包含 CP Editor。如果需要帮助,软件包维护者可以联系我们。例如,我们可以在我们的 CI/CD 工作流中加入一些脚本。\n下面是一些安装软件包的指导。\nSnapcraft 你可以使用 Snapcraft 来安装 cpeditor ,它在大多数 Linux 发行版上都可用。\n有两个 channel 可供选择:latest/stable 和 latest/edge。\n由于技术原因,它以 classic confinement 发布,所以你需要 --classic 选项来安装它。\n安装最新的稳定版本:sudo snap install cpeditor --classic\n安装最新的测试(alpha)版本: sudo snap install cpeditor --classic --channel=latest/edge\nAUR 如果你使用的是 Arch Linux ,你可以从 AUR 安装 CP Editor。AUR 通常情况下也在 Manjaro 等基于 Arch 的发行版可用,但偶尔会因为主仓库不同等原因而出错。\nCP Editor 在 AUR 上有两个包:稳定版 cpeditor 和 alpha 版 cpeditor-git 。\n如果你对 AUR 不熟悉,你可以安装 paru 并使用 paru -S cpeditor 来安装。你也可以阅读关于 手动安装 AUR 包 或者 AUR 工具 的 wiki。\n安装完成后,你就可以在终端中运行 cpeditor 或在开始菜单中运行 CP Editor 了。\n","excerpt":"打包情况 其中有的包是官方维护的,而大多数的包是由社区维护的。\n然而,目前很多软件包仓库都没有包含 CP Editor。如果需要帮助,软 …","ref":"/zh/docs/installation/use-package-managers/","title":"使用包管理器"},{"body":"Preparation Clone this repo and submodules:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git # or alternatively in two separate commands # git clone https://github.com/cpeditor/cpeditor.git # git submodule update --init --recursive cd cpeditor Install Qt (5.15), CMake (3.12 or higher) and Python3 .\n On some Linux distributions and macOS, you can install from your package manager. For example, sudo pacman -S qt5-base on Arch Linux, brew install qt@5 on macOS. You can also use aqtinstall to install Qt. If CMake can’t find the Qt installation path, you should set the environment variable: CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake. For example, on macOS, you can run something like export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.2\".\n Install KDE (kf5) Syntax Highlighting.\n On some Linux distributions and macOS, you can install from your package manager. For example, sudo pacman -S syntax-highlighting5 on Arch Linux, Homebrew KDE and then brew install kde-mac/kde/kf5-syntax-highlighting on macOS.\n Otherwise, you can use CMake to build and install Extra CMake Modules first and then KSH:\ncd third_party/extra-cmake-modules cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install # may require sudo cd ../syntax-highlighting cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install Build Linux/macOS:\ncmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build Windows:\ncmake -S . -B build cmake --build build --config Release On Linux, you will get build/cpeditor.\nOn macOS, you will get build/cpeditor.app.\nOn Windows, you will get build\\cpeditor.exe, or build\\Release\\cpeditor.exe. If DLLs are missing, you can add %QtPath%\\%QtVersion%\\%Compiler%\\bin (for example, D:\\Qt\\5.15.2\\msvc2019_64\\bin) to the PATH environmental variable.\n","excerpt":"Preparation Clone this repo and submodules:\ngit clone …","ref":"/docs/installation/build-from-source/","title":"Build from source"},{"body":" Clone this repo and submodules:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git cd cpeditor Install Qt (5.15 or higher), CMake (3.12 or higher) and Python3 .\n On some Linux distributions and macOS, you can install from your package manager. For example, sudo pacman -S qt5 on Arch Linux, brew install qt5 on macOS. You can also use aqtinstall to install Qt. If CMake can’t find the Qt installation path, you should set the environment variable: CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake. For example, on macOS, you can run something like export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.1\".\n Run the following commands:\n Linux/macOS:\nmkdir build cd build cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . Windows:\nmkdir build cd build cmake .. cmake --build . --config Release On Linux, you will get build/cpeditor.\nOn macOS, you will get build/cpeditor.app.\nOn Windows, you will get build\\cpeditor.exe, or build\\Release\\cpeditor.exe. If DLLs are missing, you can add %QtPath%\\%QtVersion%\\%Compiler%\\bin (for example, D:\\Qt\\5.15.1\\msvc2019_64\\bin) to the PATH environmental variable.\n","excerpt":" Clone this repo and submodules:\ngit clone --recurse-submodules …","ref":"/ru/docs/installation/build-from-source/","title":"Build from source"},{"body":"","excerpt":"","ref":"/docs/","title":"Documentation"},{"body":"","excerpt":"","ref":"/ru/docs/","title":"Documentation"},{"body":"General Default Language The default programming language. It’s used when opening a new tab and some other places.\nCommands C++ Commands C++ Compile Command The compilation command for C++. For example: g++ -Wall.\nThe command shouldn’t contain the source file and the output file, CP Editor automatically adds them.\nFor compilation flags, please refer to the manual of the compiler. For example, you may want to add -std=c++14 in the compile command to use C++14.\nC++ Executable File Path The path of the executable file, i.e. the argument of the -o option of the compiler.\nIf this path is relative, then it’s relative to the source file (if it’s an untitled tab, then relative to the Temporary Directory ).\nYou can use some place holders for this setting:\n ${filename}: The complete name of the source file. If it’s an untitled tab (i.e. an unsaved file), the complete file name is sol.cpp. ${basename}: ${filename} without the suffix (i.e. without .cpp, etc.). ${tmpdir} or ${tempdir}: The path of the Temporary Directory . For example, you can use ${tmpdir}/${basename} if you don’t want to keep the executable files, or executables/${basename} if you want to keep all executable files in the executables directory under the directory of the source file.\nC++ Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nC++ Compiler Output Codec The text codec of the compiler output (warnings, errors, etc.), used to display the messages from the compiler in CP Editor.\nIt could be useful if you are using locales for your compiler and the compiler messages are not English.\nJava Commands Java Compile Command The compilation command for Java. For example: javac.\nThe command shouldn’t contain the source file and the class path, CP Editor automatically adds them.\nJava Class Path The path to save the class files.\nPlease refer to C++ Executable File Path for the details.\nJava Class Name The name of the main class of your solution.\nYou can use an arbitrary name for your source file. When compiling, CP Editor automatically saves your code to a file with the class name.\nJava Run Command The command to run your solution. For example java.\nThis command shouldn’t contain the class path or the class name, CP Editor automatically adds them.\nJava Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nJava Compiler Output Codec Please refer to C++ Compiler Output Codec .\nPython Commands Python Run Command The command to run a python code. It’s usually one of python/python2/python3.\nPython Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nTemplate The code template is a file. When opening a new tab, the content of the template will be the initial content in the code editor.\nTemplate Path The path to the code template.\nTemplate Cursor Position The initial position of the text cursor when opening the template.\nIt contains three parts:\n Regex Offset type: start or end. Offset characters: a number, could be negative. It works as below:\n Find the first match of the regex in the template. If nothing matches the regex, the cursor will be at the end of the template. Otherwise, depending on the offset type, the cursor will be at the start/end of the first match, and then moved to the right by the number of the offset characters. For example, if your template contains the following snippet:\nint main() { } Then you can use int main as the regex, end as the offset type, and 9 as the offset characters. After that, when opening a new tab, the cursor will be at the first line in the main function.\nSnippets Manage Snippets You can add/delete/rename snippets in “Language-\u003eXXX-\u003eXXX Snippet”. You can use Ctrl+N for “Add”, Ctrl+W for “Del” and F2 for “Rename”.\nYou can also import snippets from files or extract your snippets to files in the “More” menu on the snippet page.\nUse Snippets You can insert a snippet into the code editor by either clicking “Actions-\u003eUse Snippets” or pressing Ctrl+T.\nWhen choosing a snippet, you can enter the first few characters of the snippet name, and it will be auto-completed.\nParentheses You can set the parentheses settings for each language and each parenthesis.\nEach setting has three states: enable, disable and default. If it’s default, it uses the settings in the Code Edit page. Otherwise, it overwrites the settings in the Code Edit page.\nAuto Complete See Code Edit/Auto Complete Parentheses .\nAuto Remove See Code Edit/Auto Remove Parentheses .\nTab Jump Out See Code Edit/Jump out of a parenthesis by pressing Tab .\n","excerpt":"General Default Language The default programming language. It’s used …","ref":"/docs/preferences/language/","title":"Language"},{"body":"General Default Language The default programming language. It’s used when opening a new tab and some other places.\nCommands C++ Commands C++ Compile Command The compilation command for C++. For example: g++ -Wall.\nThe command shouldn’t contain the source file and the output file, CP Editor automatically adds them.\nFor compilation flags, please refer to the manual of the compiler. For example, you may want to add -std=c++14 in the compile command to use C++14.\nC++ Executable File Path The path of the executable file, i.e. the argument of the -o option of the compiler.\nIf this path is relative, then it’s relative to the source file (if it’s an untitled tab, then relative to the Temporary Directory ).\nYou can use some place holders for this setting:\n ${filename}: The complete name of the source file. If it’s an untitled tab (i.e. an unsaved file), the complete file name is sol.cpp. ${basename}: ${filename} without the suffix (i.e. without .cpp, etc.). ${tmpdir} or ${tempdir}: The path of the Temporary Directory . For example, you can use ${tmpdir}/${basename} if you don’t want to keep the executable files, or executables/${basename} if you want to keep all executable files in the executables directory under the directory of the source file.\nC++ Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nC++ Compiler Output Codec The text codec of the compiler output (warnings, errors, etc.), used to display the messages from the compiler in CP Editor.\nIt could be useful if you are using locales for your compiler and the compiler messages are not English.\nJava Commands Java Compile Command The compilation command for Java. For example: javac.\nThe command shouldn’t contain the source file and the class path, CP Editor automatically adds them.\nJava Class Path The path to save the class files.\nPlease refer to C++ Executable File Path for the details.\nJava Class Name The name of the main class of your solution.\nYou can use an arbitrary name for your source file. When compiling, CP Editor automatically saves your code to a file with the class name.\nJava Run Command The command to run your solution. For example java.\nThis command shouldn’t contain the class path or the class name, CP Editor automatically adds them.\nJava Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nJava Compiler Output Codec Please refer to C++ Compiler Output Codec .\nPython Commands Python Run Command The command to run a python code. It’s usually one of python/python2/python3.\nPython Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nTemplate The code template is a file. When opening a new tab, the content of the template will be the initial content in the code editor.\nTemplate Path The path to the code template.\nTemplate Cursor Position The initial position of the text cursor when opening the template.\nIt contains three parts:\n Regex Offset type: start or end. Offset characters: a number, could be negative. It works as below:\n Find the first match of the regex in the template. If nothing matches the regex, the cursor will be at the end of the template. Otherwise, depending on the offset type, the cursor will be at the start/end of the first match, and then moved to the right by the number of the offset characters. For example, if your template contains the following snippet:\nint main() { } Then you can use int main as the regex, end as the offset type, and 9 as the offset characters. After that, when opening a new tab, the cursor will be at the first line in the main function.\nSnippets Manage Snippets You can add/delete/rename snippets in “Language-\u003eXXX-\u003eXXX Snippet”. You can use Ctrl+N for “Add”, Ctrl+W for “Del” and F2 for “Rename”.\nYou can also import snippets from files or extract your snippets to files in the “More” menu on the snippet page.\nUse Snippets You can insert a snippet into the code editor by either clicking “Actions-\u003eUse Snippets” or pressing Ctrl+T.\nWhen choosing a snippet, you can enter the first few characters of the snippet name, and it will be auto-completed.\nParentheses You can set the parentheses settings for each language and each parenthesis.\nEach setting has three states: enable, disable and default. If it’s default, it uses the settings in the Code Edit page. Otherwise, it overwrites the settings in the Code Edit page.\nAuto Complete See Code Edit/Auto Complete Parentheses .\nAuto Remove See Code Edit/Auto Remove Parentheses .\nTab Jump Out See Code Edit/Jump out of a parenthesis by pressing Tab .\n","excerpt":"General Default Language The default programming language. It’s used …","ref":"/ru/docs/preferences/language/","title":"Language"},{"body":"General Default Language The default programming language. It’s used when opening a new tab and some other places.\nCommands C++ Commands C++ Compile Command The compilation command for C++. For example: g++ -Wall.\nThe command shouldn’t contain the source file and the output file, CP Editor automatically adds them.\nFor compilation flags, please refer to the manual of the compiler. For example, you may want to add -std=c++14 in the compile command to use C++14.\nC++ Executable File Path The path of the executable file, i.e. the argument of the -o option of the compiler.\nIf this path is relative, then it’s relative to the source file (if it’s an untitled tab, then relative to the 暫存目錄 ).\nYou can use some place holders for this setting:\n ${filename}: The complete name of the source file. If it’s an untitled tab (i.e. an unsaved file), the complete file name is sol.cpp. ${basename}: ${filename} without the suffix (i.e. without .cpp, etc.). ${tmpdir} or ${tempdir}: The path of the 暫存目錄 . For example, you can use ${tmpdir}/${basename} if you don’t want to keep the executable files, or executables/${basename} if you want to keep all executable files in the executables directory under the directory of the source file.\nC++ Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nC++ Compiler Output Codec The text codec of the compiler output (warnings, errors, etc.), used to display the messages from the compiler in CP Editor.\nIt could be useful if you are using locales for your compiler and the compiler messages are not English.\nJava Commands Java Compile Command The compilation command for Java. For example: javac.\nThe command shouldn’t contain the source file and the class path, CP Editor automatically adds them.\nJava Class Path The path to save the class files.\nPlease refer to C++ Executable File Path for the details.\nJava Class Name The name of the main class of your solution.\nYou can use an arbitrary name for your source file. When compiling, CP Editor automatically saves your code to a file with the class name.\nJava Run Command The command to run your solution. For example java.\nThis command shouldn’t contain the class path or the class name, CP Editor automatically adds them.\nJava Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nJava Compiler Output Codec Please refer to C++ Compiler Output Codec .\nPython Commands Python Run Command The command to run a python code. It’s usually one of python/python2/python3.\nPython Run Arguments The arguments passed to the program when executing it. It’s usually not needed in competitive programming.\nTemplate The code template is a file. When opening a new tab, the content of the template will be the initial content in the code editor.\nTemplate Path The path to the code template.\nTemplate Cursor Position The initial position of the text cursor when opening the template.\nIt contains three parts:\n Regex Offset type: start or end. Offset characters: a number, could be negative. It works as below:\n Find the first match of the regex in the template. If nothing matches the regex, the cursor will be at the end of the template. Otherwise, depending on the offset type, the cursor will be at the start/end of the first match, and then moved to the right by the number of the offset characters. For example, if your template contains the following snippet:\nint main() { } Then you can use int main as the regex, end as the offset type, and 9 as the offset characters. After that, when opening a new tab, the cursor will be at the first line in the main function.\nSnippets Manage Snippets You can add/delete/rename snippets in “Language-\u003eXXX-\u003eXXX Snippet”. You can use Ctrl+N for “Add”, Ctrl+W for “Del” and F2 for “Rename”.\nYou can also import snippets from files or extract your snippets to files in the “More” menu on the snippet page.\nUse Snippets You can insert a snippet into the code editor by either clicking “Actions-\u003eUse Snippets” or pressing Ctrl+T.\nWhen choosing a snippet, you can enter the first few characters of the snippet name, and it will be auto-completed.\nParentheses You can set the parentheses settings for each language and each parenthesis.\nEach setting has three states: enable, disable and default. If it’s default, it uses the settings in the Code Edit page. Otherwise, it overwrites the settings in the Code Edit page.\nAuto Complete See Code Edit/Auto Complete Parentheses .\nAuto Remove See Code Edit/Auto Remove Parentheses .\nTab Jump Out See Code Edit/Jump out of a parenthesis by pressing Tab .\n","excerpt":"General Default Language The default programming language. It’s used …","ref":"/zh_tw/docs/preferences/language/","title":"Language"},{"body":"准备工作 克隆源代码仓库以及子组件:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git # 或者分成两条命令 # git clone https://github.com/cpeditor/cpeditor.git # git submodule update --init --recursive cd cpeditor 安装 Qt (5.15), CMake (3.12 或更高版本)以及 Python3 。\n 在一些 Linux 发行版和 macOS 系统上,你可以直接使用包管理器安装 Qt。例如,在 Arch Linux 上可以使用 sudo pacman -S qt5-base,在 macOS 上可以使用 brew install qt@5。 你还可以使用 aqtinstall 来下载并安装。 如果 CMake 提示找不到 Qt 路径,你应该设置环境变量:CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake。例如,在 macOS 上,你可以运行 export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.2\"。\n 安装 KDE (kf5) Extra CMake Modules。\n 在一些 Linux 发行版和 macOS 系统上,你可以直接使用包管理器安装它们。例如,在 Arch Linux 上可以使用 sudo pacman -S syntax-highlighting5,在 macOS 上可以使用 Homebrew KDE 然后 brew install kde-mac/kde/kf5-syntax-highlighting。\n 否则,你需要使用 CMake 先构建并安装 Extra CMake Modules 然后再是 KSH:\ncd third_party/extra-cmake-modules cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install # 可能需要 sudo cd ../syntax-highlighting cmake -B build -S . -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_QTHELP_DOCS=OFF -DBUILD_TESTING=OFF cmake --build build --config Release --target install 构建 Linux/macOS:\ncmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build Windows:\ncmake -S . -B build cmake --build build --config Release 在 Linux 上,你会得到 build/cpeditor。\n在 macOS 上,你会得到 build/cpeditor.app。\n在 Windows 上,你会得到 build/cpeditor.exe 或 build/Release/cpeditor.exe。如果打开时提示 DLL 缺失,你可以将 %QtPath%\\%QtVersion%\\%Compiler%\\bin(例如:D:\\Qt\\5.15.2\\msvc2019_64\\bin)加入 PATH 环境变量。\n","excerpt":"准备工作 克隆源代码仓库以及子组件:\ngit clone --recurse-submodules …","ref":"/zh/docs/installation/build-from-source/","title":"从源代码构建"},{"body":"","excerpt":"","ref":"/zh/docs/","title":"文档"},{"body":" Clone 儲存庫及 submodules:\ngit clone --recurse-submodules https://github.com/cpeditor/cpeditor.git cd cpeditor 安裝 Qt (5.15 or higher), CMake (3.12 or higher) 及 Python3 。\n 在 macOS 及某些 Linux 發行版,您可以透過套件管理系統來安裝。例如在 Arch Linux 上使用 sudo pacman -S qt5,在 macOS 上使用brew install qt5。 您也可以用 aqtinstall 安裝 Qt。 若 CMake 找不到 Qt 的安裝路徑,需要設定環境變數:CMAKE_PREFIX_PATH=%QtPath%/%QtVersion%/%Compiler%/lib/cmake。以 macOS 而言,執行這個命令 export CMAKE_PREFIX_PATH=\"/usr/local/Cellar/qt/5.15.1\"。\n 執行下列命令。\n Linux/macOS:\nmkdir build cd build cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . Windows:\nmkdir build cd build cmake .. cmake --build . --config Release 依據不同的系統,建置的檔案位於\nLinux:build/cpeditor\nmacOS:build/cpeditor.app\nWindows:build\\cpeditor.exe 或 build\\Release\\cpeditor.exe 若執行時發生缺少 DLL 的錯誤,您可以在 PATH 環境變數加上%QtPath%\\%QtVersion%\\%Compiler%\\bin (例如: D:\\Qt\\5.15.1\\msvc2019_64\\bin)。\n","excerpt":" Clone 儲存庫及 submodules:\ngit clone --recurse-submodules …","ref":"/zh_tw/docs/installation/build-from-source/","title":"編譯原始碼"},{"body":"","excerpt":"","ref":"/zh_tw/docs/","title":"說明文件"},{"body":"通用 默认编程语言 设置打开新标签时使用的默认编程语言。\n命令 C++ 命令 C++ 编译命令 设置编译 C++ 时的编译命令,例如 g++ -Wall。\n该命令中不应包含源代码和输出文件的名称,CP Editor 将会自动添加它们。\n详细的编译选项请参考编译器的文档。\nC++ 可执行文件路径 设置可执行文件的路径,即编译命令中 -o 选项后的参数。\n如果使用了相对路径,则可执行文件的位置将和源代码位置有关(如果当前标签是未命名标签,则可执行文件位置将和 临时文件夹 的位置有关)。\n该设置中,你可以使用如下参数:\n ${filename}:源代码的完整文件名。如果当前标签是未命名标签,则完整文件名是 sol.cpp。 ${basename}:将 ${filename} 去掉扩展名(.cpp 等)后的文件名。 ${tmpdir} 或 ${tempdir}: 临时文件夹 的路径。 例如,使用 ${tmpdir}/${basename} 将会把可执行文件存储在临时文件夹下。如果你不想要存储可执行文件的话,可以这样设定路径。而 executables/${basename} 将会把可执行文件存储在源代码所在目录的下的 executables 文件夹。\nC++ 运行参数 设置执行 C++ 程序需要的参数。在算法竞赛中一般留空即可。\nC++ 编译器输出编码 设置当编译器输出警告,错误等消息时使用的编码。\n如果输出的警告和错误信息不是英文,合理配置该设置可以避免输出信息出现乱码。\nJava 命令 Java 编译命令 设置编译 Java 源代码的编译命令,例如 javac。\n该命令中不应包含源代码和类路径,CP Editor 将会自动添加它们。\nJava 类路径 设置编译后存储 Java 类文件的位置。\n更多细节详见 C++ 可执行文件路径 。\nJava 类名称 设置你的源代码中主类的名字。\n源代码的名字不必与主类名相同。当编译时,CP Editor 将会自动将源代码保存在一个与主类名称相同的文件中。\nJava 运行命令 设置执行 Java 程序时的命令。例如 java。\n该命令中不应出现类路径或类名,CP Editor 会自动添加它们。\nJava 运行参数 设置执行 Java 程序需要的参数。在算法竞赛中一般留空即可。\nJava 编译器输出源码 详见 C++ 编译器输出编码 。\nPython 命令 Python 运行命令 设置运行 Python 源代码的命令。一般为 python,python2 或 python3。\nPython 运行命令 设置执行 Python 程序需要的参数。在算法竞赛中一般留空即可。\n模板 如果设置了模板,在创建新标签时,将会用设置的模板自动填充内容。\n模板路径 设置模板所在的路径。\n使用模板时的光标初始位置 设置使用模板时光标所在的初始位置。\n该设置包含三部分。\n 正则表达式 偏移类型:开头或末尾。 偏移量:一个数字,可以为负值。 光标位置将会通过如下步骤确定:\n 找到模板中匹配正则表达式的第一个位置。 如果模板中不存在匹配正则表达式的位置,光标将会在模板末尾。 否则,光标将会在第一个匹配位置的开头或末尾(取决于设置的偏移类型),并会在该位置基础上向右移动偏移量个位置(如果是负数,就会向左移动)。 例如,如果你的模板中包含下列代码片段:\nint main() { } 则可以用 int main 作为匹配的正则表达式,end 作为偏移类型,9 作为偏移量,则在打开一个新标签时,光标将会停在 main 函数的第一行。\n代码片段 管理代码片段 你可以在 “语言-\u003eXXX-\u003eXXX 代码片段中” 添加,删除,重命名代码片段。你可以使用 Ctrl+N 作为添加的快捷键,Ctrl+W 作为删除的快捷键,F2 作为重命名的快捷键。\n你也可以在 “更多” 菜单中导入或导出代码片段。\n使用代码片段 你可以通过 “动作-\u003e使用代码片段” 或按下 Ctrl+T 来使用代码片段。\n当你在挑选代码片段时,你可以在搜索框中输入代码片段名的前几个字符,以更快找到相应的片段。\n括号 你可以为各编程语言设置相应的括号补全选项。\n每个设置有三种状态:开启,关闭或默认。如果处于默认状态,将应用 代码编辑 中的设置,否则将会使用这里的设置。\n自动补全 详见 代码编辑/自动补全括号 。\n自动删除 详见 代码编辑/自动删除括号 。\n按 Tab 键跳出 详见 代码编辑/在按下 Tab 键时跳出括号 。\n","excerpt":"通用 默认编程语言 设置打开新标签时使用的默认编程语言。\n命令 C++ 命令 C++ 编译命令 设置编译 C++ 时的编译命令,例如 g++ …","ref":"/zh/docs/preferences/language/","title":"语言"},{"body":"General UI Language The natural language used in the UI.\nUI Style The style used for the UI. The available options are different on different platforms.\nThe “default” style is either the most appropriate style on your platform or the style specified by the --style command-line option.\nOn Windows, there’s an extra option “Auto Fusion”. “Auto Fusion” is either dark or light depending on the system theme (i.e. whether the Windows application theme is dark or light).\nIf there’s anything wrong after you change the UI style, you can try restarting CP Editor.\nEditor Theme The syntax highlighting theme for the code editor.\nOpacity The opacity of the main window.\nTest Case Maximum Height The maximum height of a test case before the scrollbar occurs.\nShow Compile And Run Only Hide the compile only and run only buttons.\nIt can be useful if you don’t care about the time used on compilation.\nDisplay EOLN in Diff Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).\nAdd extra margin at the bottom of the code editor Add an extra margin at the bottom of the code editor, so that you can scroll less.\nFont Show only Monospaced Font When checked the font picker dialog shows only monospaced fonts.\nEditor Font The font for the code editor.\nTest Cases Font The font for the test cases.\nMessage Logger Font The font for the messages.\nCustom Application Font Use a custom font for the UI (except for code editor, test cases, messages, etc.), instead of the system font.\n","excerpt":"General UI Language The natural language used in the UI.\nUI Style The …","ref":"/docs/preferences/appearance/","title":"Appearance"},{"body":"General UI Language The natural language used in the UI.\nUI Style The style used for the UI. The available options are different on different platforms.\nThe “default” style is either the most appropriate style on your platform or the style specified by the --style command-line option.\nOn Windows, there’s an extra option “Auto Fusion”. “Auto Fusion” is either dark or light depending on the system theme (i.e. whether the Windows application theme is dark or light).\nIf there’s anything wrong after you change the UI style, you can try restarting CP Editor.\nEditor Theme The syntax highlighting theme for the code editor.\nOpacity The opacity of the main window.\nTest Case Maximum Height The maximum height of a test case before the scrollbar occurs.\nShow Compile And Run Only Hide the compile only and run only buttons.\nIt can be useful if you don’t care about the time used on compilation.\nDisplay EOLN in Diff Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).\nAdd extra margin at the bottom of the code editor Add an extra margin at the bottom of the code editor, so that you can scroll less.\nFont Show only Monospaced Font When checked the font picker dialog shows only monospaced fonts.\nEditor Font The font for the code editor.\nTest Cases Font The font for the test cases.\nMessage Logger Font The font for the messages.\nCustom Application Font Use a custom font for the UI (except for code editor, test cases, messages, etc.), instead of the system font.\n","excerpt":"General UI Language The natural language used in the UI.\nUI Style The …","ref":"/ru/docs/preferences/appearance/","title":"Appearance"},{"body":"Change UI Language Now CP Editor is available in multiple languages, including English and Chinese.\nYou can change the UI language in Preferences-\u003eAppearance-\u003eGeneral-\u003eUI Language . Note that you need to restart CP Editor to apply the change.\nSet Compile and Run Commands You need to install g++ / python / java depending on which language you are using. You need to add them to system PATH to have them found by CP Editor.\nThen you can set the Compile and Run Commands in the preferences. For example, you can set C++ Commands in Preferences-\u003eLanguages-\u003eC++-\u003eC++ Commands .\nSetup CF Tool To submit Codeforces problems in CP Editor, you need to install CF Tool .\nYou can add it to your system PATH to use it directly, or you can set the path to it in Preferences-\u003eExtensions-\u003eCF Tool .\nYou need to configure the tool by running the command cf config in the command line before using it.\nSetup Competitive Companion Competitive Companion is used to parse problems/contests from online judges. After you install it, you can parse sample test cases with a single click, instead of copying them manually.\nYou can install it from the addon/extension markets:\n Chrome Extension Firefox Addon Setup WakaTime You can use WakaTime to track your time usage.\nIf you are a Linux/macOS user and your distro provides the WakaTime CLI, it’s recommended to use it.\nOtherwise, there are two options:\n The deprecated Python version. You can install it via pip install wakatime. The new Go version. You can download it at https://github.com/wakatime/wakatime-cli/releases. Setup Code Formatter Setup Clang Format CP Editor uses Clang Format to format your C/C++ and Java code.\nYou need to add it to your system PATH, or set the path to it at Preferences-\u003eExtensions-\u003eClang Format .\nSetup YAPF CP Editor uses YAPF to format your Python code.\nIt should work after installation . If not, set the program and arguments in Preferences-\u003eExtensions-\u003eCode Formatting-\u003eYAPF .\nSetup Language Server You can use Language Server to lint your codes and get errors, warnings, etc.\nYou can install any language server program and set suitable settings in Preferences-\u003eExtensions-\u003eLanguage Server .\nThough you can use any language server program you like, here are some suggestions if you are not sure which to use.\nC++ Server If you have installed LLVM, you already have clangd, because it comes with the clang compiler. If you haven’t, please install LLVM prebuild binaries for Windows. On Linux and macOS you can install it from your package manager. You need to set the start command of clangd in Preferences -\u003e Extensions -\u003e Language Server -\u003e C++ Server -\u003e Path, where the command can be the path to the executable file or just clangd if it’s in the PATH.\nJava Server You need to have java installed and added to PATH. Download Eclipse.JDT.ls , extract it to any location (in a new directory), We call the path to that directory \u003cINSTALL_PATH\u003e (Something like C://Users/Myname/Desktop/EclipseJDT.ls/). In CP Editor, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Java Server. Set “Path” to java and set “Arguments” to something like -jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac). For example, on Windows, the arguments should be something like -configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win.\nThe full name of the jar file above, org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar, may change incrementally as the project version of JDT changes. If java complains about “jar not found”, then look for the latest version of the org.eclipse.equinox.launcher_* jar in \u003cINSTALL_PATH\u003e/plugins and replace it in the command after -jar.\nPython Server You need to have python and pip installed and added to PATH. Install python-language-server pip module by running pip install 'python-language-server[all]'. After the installation is done, open CP Editor settings, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Python Server. Set “Path” to python and set “Arguments” to -m pyls. Save the changes and you will have linting for Python.\n","excerpt":"Change UI Language Now CP Editor is available in multiple languages, …","ref":"/docs/setup/","title":"Setup"},{"body":"Change UI Language Now CP Editor is available in multiple languages, including English and Chinese.\nYou can change the UI language in Preferences-\u003eAppearance-\u003eGeneral-\u003eUI Language . Note that you need to restart CP Editor to apply the change.\nSet Compile and Run Commands You need to install g++ / python / java depending on which language you are using. You need to add them to system PATH to have them found by CP Editor.\nThen you can set the Compile and Run Commands in the preferences. For example, you can set C++ Commands in Preferences-\u003eLanguages-\u003eC++-\u003eC++ Commands .\nSetup CF Tool To submit Codeforces problems in CP Editor, you need to install CF Tool .\nYou can add it to your system PATH to use it directly, or you can set the path to it in Preferences-\u003eExtensions-\u003eCF Tool .\nYou need to configure the tool by running the command cf config in the command line before using it.\nSetup Competitive Companion Competitive Companion is used to parse problems/contests from online judges. After you install it, you can parse sample test cases with a single click, instead of copying them manually.\nYou can install it from the addon/extension markets:\n Chrome Extension Firefox Addon Setup WakaTime You can use WakaTime to track your time usage.\nIf you are a Linux/macOS user and your distro provides the WakaTime CLI, it’s recommended to use it.\nOtherwise, there are two options:\n The deprecated Python version. You can install it via pip install wakatime. The new Go version. You can download it at https://github.com/wakatime/wakatime-cli/releases. Setup Code Formatter Setup Clang Format CP Editor uses Clang Format to format your C/C++ and Java code.\nYou need to add it to your system PATH, or set the path to it at Preferences-\u003eExtensions-\u003eClang Format .\nSetup YAPF CP Editor uses YAPF to format your Python code.\nIt should work after installation . If not, set the program and arguments in Preferences-\u003eExtensions-\u003eCode Formatting-\u003eYAPF .\nSetup Language Server You can use Language Server to lint your codes and get errors, warnings, etc.\nYou can install any language server program and set suitable settings in Preferences-\u003eExtensions-\u003eLanguage Server .\nThough you can use any language server program you like, here are some suggestions if you are not sure which to use.\nC++ Server If you have installed LLVM, you already have clangd, because it comes with the clang compiler. If you haven’t, please install LLVM prebuild binaries for Windows. On Linux and macOS you can install it from your package manager. You need to set the start command of clangd in Preferences -\u003e Extensions -\u003e Language Server -\u003e C++ Server -\u003e Path, where the command can be the path to the executable file or just clangd if it’s in the PATH.\nJava Server You need to have java installed and added to PATH. Download Eclipse.JDT.ls , extract it to any location (in a new directory), We call the path to that directory \u003cINSTALL_PATH\u003e (Something like C://Users/Myname/Desktop/EclipseJDT.ls/). In CP Editor, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Java Server. Set “Path” to java and set “Arguments” to something like -jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac). For example, on Windows, the arguments should be something like -configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win.\nThe full name of the jar file above, org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar, may change incrementally as the project version of JDT changes. If java complains about “jar not found”, then look for the latest version of the org.eclipse.equinox.launcher_* jar in \u003cINSTALL_PATH\u003e/plugins and replace it in the command after -jar.\nPython Server You need to have python and pip installed and added to PATH. Install python-language-server pip module by running pip install 'python-language-server[all]'. After the installation is done, open CP Editor settings, go to Preferences -\u003e Extensions -\u003e Language Server -\u003e Python Server. Set “Path” to python and set “Arguments” to -m pyls. Save the changes and you will have linting for Python.\n","excerpt":"Change UI Language Now CP Editor is available in multiple languages, …","ref":"/ru/docs/setup/","title":"Setup"},{"body":"If you want to use the latest version (even later than the beta release), but don’t want to build from source, you can download Artifacts from GitHub Actions .\nHowever, it’s not recommended to use Artifacts, they are more unstable than beta releases, and could be a work in progress. You should read the commit logs and even the source codes before using Artifacts.\nTo run it on Windows/macOS, you should install from Releases first (usually any version is OK unless something like DLL missing happens). On Windows, replace cpeditor.exe in your install folder with the Artifact. On macOS, run cp path/to/Artifact cpeditor.app/Contents/MacOs, where cpeditor.app is the one already installed on your machine.\nTo run it on Ubuntu 18.04, you need to install Qt. Other Linux distributions may not support binaries compiled on Ubuntu 18.04.\n","excerpt":"If you want to use the latest version (even later than the beta …","ref":"/docs/installation/use-artifacts/","title":"Use Artifacts"},{"body":"If you want to use the latest version (even later than the beta release), but don’t want to build from source, you can download Artifacts from GitHub Actions .\nHowever, it’s not recommended to use Artifacts, they are more unstable than beta releases, and could be a work in progress. You should read the commit logs and even the source codes before using Artifacts.\nTo run it on Windows/macOS, you should install from Releases first (usually any version is OK unless something like DLL missing happens). On Windows, replace cpeditor.exe in your install folder with the Artifact. On macOS, run cp path/to/Artifact cpeditor.app/Contents/MacOs, where cpeditor.app is the one already installed on your machine.\nTo run it on Ubuntu 18.04, you need to install Qt. Other Linux distributions may not support binaries compiled on Ubuntu 18.04.\n","excerpt":"If you want to use the latest version (even later than the beta …","ref":"/ru/docs/installation/use-artifacts/","title":"Use Artifacts"},{"body":"If you want to use the latest version (even later than the beta release), but don’t want to build from source, you can download Artifacts from GitHub Actions .\nHowever, it’s not recommended to use Artifacts, they are more unstable than beta releases, and could be a work in progress. You should read the commit logs and even the source codes before using Artifacts.\nTo run it on Windows/macOS, you should install from Releases first (usually any version is OK unless something like DLL missing happens). On Windows, replace cpeditor.exe in your install folder with the Artifact. On macOS, run cp path/to/Artifact cpeditor.app/Contents/MacOs, where cpeditor.app is the one already installed on your machine.\nTo run it on Ubuntu 18.04, you need to install Qt. Other Linux distributions may not support binaries compiled on Ubuntu 18.04.\n","excerpt":"If you want to use the latest version (even later than the beta …","ref":"/zh_tw/docs/installation/use-artifacts/","title":"Use Artifacts"},{"body":"一般 介面語言 用於顯示使用者介面的語言。\n介面樣式 依據不同的平台,可用的選項也不同。\n「預設」樣式會套用適合目前平台的樣式,或者您在命令列中以 --style 指定的樣式。\n在 Windows 上,還有一個「Auto Fusion」選項。這個選項會跟隨系統設定使用淺色、深色佈景。\n若變更 UI 樣式後有什麼問題,可以試著重開 CP Editor。\n編輯器色彩佈景主題 程式碼編輯器中語法標示的色彩佈景主題。\n不透明度 控制主視窗的不透明度。\n測資顯示最大高度 在捲軸不出現的情況下,可允許顯示的最大高度。\n僅顯示「編譯並執行」按鈕 隱藏「編譯」及「執行」按鈕。\n這是個好用的功能,只要您不在意編譯的時間。\n在 Diff 中顯示 EOLN 在 Diff 檢視器中將 EOF 顯示為「¶」。這功能在需要檢查 EOL 的差異時(比如看看是否多了換行)尤為有用。\n在程式碼編輯器的底部加上額外邊距 在程式碼編輯器的底部加上額外邊距,這可以改善來回滾動的困擾。\n字型 只顯示等寬字型 在選取字型的對話窗中,僅列出等寬字型。\n編輯器字型 在程式碼編輯器中使用的字型。\n測資字型 在測資區塊中使用的字型。\n訊息字型 在訊息區塊中使用的字型。\n自訂全域字型 在呈現使用者介面時,不使用系統的預設字型。生效的範圍排除了程式碼編輯器、測資、訊息等處……。\n","excerpt":"一般 介面語言 用於顯示使用者介面的語言。\n介面樣式 依據不同的平台,可用的選項也不同。\n「預設」樣式會套用適合目前平台的樣式,或者您在命令 …","ref":"/zh_tw/docs/preferences/appearance/","title":"介面"},{"body":"如果你想要使用最新版本(比 beta 还要新),但是不想从源代码构建,你可以从 GitHub Actions 下载 Artifacts。\n然而,我们不建议你使用 Artifacts,因为它们比 beta 版本更加不稳定,可能正在开发中。在使用 Artifacts 之前,你应该阅读 commit 日志甚至源代码。\n为了在 Windows/macOS 上运行它,你应该首先从 Releases 安装(通常任何版本都可以,除非出现了 DLL 丢失等问题)。在 Windows 上,将安装文件夹中的 cpeditor.exe 替换为 Artifact 版本的。在 macOS 上,运行 cp path/to/Artifact cpeditor.app/Contents/MacOs,其中 cpeditor.app 是你的计算机上已安装的那个。\n为了在 Ubuntu 18.04 上运行它,你需要安装 Qt。其他 Linux 发行版可能不支持在 Ubuntu 18.04 上编译的二进制文件。\n","excerpt":"如果你想要使用最新版本(比 beta 还要新),但是不想从源代码构建,你可以从 GitHub Actions 下载 Artifacts。\n然 …","ref":"/zh/docs/installation/use-artifacts/","title":"使用 Artifacts"},{"body":"更改界面语言 现在 CP Editor 支持多种语言,包括英文,中文和俄语。\n在默认情况下 CP Editor 的界面语言与系统设置一致。如果你需要对界面语言进行更改,可以在 设置-\u003e外观-\u003e通用-\u003e界面语言 中进行更改。注意你需要重启 CP Editor 以使更改生效。\n设置编译与运行命令 根据你使用的编程语言,你需要安装 g++ / python / java 等环境。你需要将它们加入 PATH 环境变量以使 CP Editor 能找到它们。\n接下来在设置页面设置编译与运行命令。例如,你可以在 设置-\u003e语言-\u003eC++-\u003eC++ 命令 中设置 C++ 的相关命令。\n安装 CF Tool 如果你需要在 CP Editor 中提交 Codeforces 题目,你需要安装 CF Tool 。\n你可以将其加入 PATH 环境变量,或是在 设置-\u003e扩展-\u003eCF Tool 中设置其路径。\n在使用 CF Tool 之前,你需要在终端运行 cf config 命令完成相关配置。\n安装 Competitive Companion Competitive Companion 用于从在线评测系统中解析题目/比赛的信息。在安装它后,你只需点击一下即可从题目中获取测试样例,免除了手动复制的麻烦。\n你可以通过安装浏览器扩展的方式来安装 Competitive Companion。\n Chrome Firefox 安装 WakaTime WakaTime 可以帮助你进行工作量的统计。\n如果你正在使用 Linux/macOS 提供 WakaTime CLI 的发行版,我们建议直接通过你的操作系统的软件包管理器安装。\n否则,有两种方式安装 WakaTime:\n 已被弃用的 Python 版本。 可以通过 pip install wakatime 安装。 Go 版本。 可在 https://github.com/wakatime/wakatime-cli/releases 下载。 安装代码格式化程序 安装 Clang Format CP Editor 使用 Clang Format 来格式化 C/C++ 以及 Java 代码。\n你需要将其加入 PATH 环境变量,或是在 设置-\u003e扩展-\u003eClang Format 中设置其路径。\n安装 YAPF CP Editor 使用 YAPF 来格式化 Python 代码。\n 安装 后应该就可以使用了。如果不能,请在 设置-\u003e扩展-\u003e代码格式化-\u003eYAPF 进行设置。\n安装 Language Server 你可以使用 Language Server 来获得你代码中的错误或警告信息。\n要使用 Language Server,你需要安装 Language Server 程序 并在 设置-\u003e扩展-\u003eLanguage Server 中完成相关设置。\n如果你不熟悉 Language Server 的话,下面是一些可能有用的建议。\nC++ Server LLVM 提供了 clangd 程序。在 Windows 下,你需要下载 LLVM 的二进制安装包;而在 Linux 和 macOS 下,你可以通过包管理器进行安装。你需要在 设置-\u003e扩展-\u003eLanguage Server-\u003eC++ Server 中设置 clangd 路径,该路径应被设置为可执行文件的路径。如果它已经在 PATH 中,直接设置为 clangd 即可。\nJava Server 你需要安装 java 并将其加入 PATH 环境变量中。接下来下载 Eclipse.JDT.ls ,将其解压至你想要解压的位置(需要在一个新目录下),我们下面称该目录为 \u003cINSTALL_PATH\u003e。接下来在 设置-\u003e扩展-\u003eLanguage Server-\u003eJava Server 中,将路径设置为 java,将参数设置为 -jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac)。例如,在 Windows 下,参数可以这样设置:-configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win。\n上述 jar 文件的完整文件名,org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar,可能会随 JDT 的版本改变而改变。如果 Java 提示 “jar 未找到”,请在 \u003cINSTALL_PATH\u003e/plugins 下找到 org.eclipse.equinox.launcher_* jar 文件的最新版本,并用相应的文件名替换 -jar 后面的命令参数。\nPython Server 你需要安装 python 和 pip 并将其加入 PATH 中。执行命令 pip install 'python-language-server[all] 安装 python-language-server。在安装完成后,打开 CP Editor,在 设置-\u003e扩展-\u003eLanguage Server-\u003ePython Server 中,将路径设置为 python,将参数设置为 -m pyls,即可完成 Python 下 Language Server 程序的配置。\n","excerpt":"更改界面语言 现在 CP Editor 支持多种语言,包括英文,中文和俄语。\n在默认情况下 CP Editor 的界面语言与系统设置一致。如 …","ref":"/zh/docs/setup/","title":"初始化"},{"body":"通用 界面语言 (UI Language) UI 中使用的自然语言。\n界面风格 用户界面使用的样式。可用选项在不同平台上有所不同。\n“默认”样式要么是在你的平台上最合适的样式,要么是 --style 命令行选项指定的样式。\n在 Windows 上,还有一个附加选项 “Auto Fusion”。“Auto Fusion” 是深色还是浅色取决于系统主题(即 Windows 应用程序主题是深色还是浅色)。\n更改 UI 样式后,如果有任何问题,可以尝试重新启动 CP Editor。\n编辑器主题 代码编辑器的语法高亮显示主题。\n不透明度 主窗口的不透明度。\n测试用例最大高度 滚动条出现之前测试用例的最大高度。\n只显示编译并运行 隐藏仅编译、仅运行这两个按钮。\n如果你不在乎编译所用的时间,这或许会有用。\n在差异查看器中显示行尾字符 使用字符 “¶” 在差异查看器中可视化行尾。如果你要查看行尾的差异(即末尾多余的空行),这将很有用。\n在代码编辑器底部添加额外的边距 在代码编辑器的底部添加一个额外的边距,让你可以更少地滚动。\n字体 仅显示等宽字体 在为下面的设置选择字体时只显示等宽字体。\n编辑器字体 代码编辑器的字体。\n测试用例字体 测试用例的字体。\n消息字体 消息的字体。\n使用自定义的全局字体 对 UI 用自定义字体(代码编辑器,测试用例,消息等除外)来替代系统字体。\n","excerpt":"通用 界面语言 (UI Language) UI 中使用的自然语言。\n界面风格 用户界面使用的样式。可用选项在不同平台上有所不同。\n“默认” …","ref":"/zh/docs/preferences/appearance/","title":"外观"},{"body":"調整 UI 語言 CP Editor 支援多種語言,包括英文及俄文。\n您可以在 偏好設定-\u003e介面-\u003e一般-\u003eUI 語言 調整介面的顯示語言。需要重開 CP Editor 以生效。\n設定編譯及執行指令 依據您使用的程式語言,需要安裝 g++、python、java 等軟體。為了讓 CP Editor 可以順利找到它們,可能需要將其加到系統的 PATH 環境變數。\n接下來可以在偏好設定畫面中設定輸入編譯及執行的指令。例如在 偏好設定-\u003e程式語言-\u003eC++-\u003eC++ 指令 設定 C++ 指令。\n設定 CF Tool 需要安裝 CF Tool 才能在 CP Editor 裡繳交答案至 Codeforces。\n接著將 CF Tool 加入系統 PATH 環境變數,或者在 偏好設定-\u003e擴充功能-\u003eCF Tool 設定其路徑。\n此外在使用之前,還需要在命令列中輸入 cf config 以調整其組態。\n設定 Competitive Companion Competitive Companion 是用來剖析線上評測系統(Online Judge)的題目。安裝了它,您就可以單鍵取得範例測資,跟手動複製貼上說掰掰。\n您可以在這些瀏覽器外掛元件商店安裝:\n Firefox 附加元件 Chrome 擴充功能 Setup WakaTime You can use WakaTime to track your time usage.\nIf you are a Linux/macOS user and your distro provides the WakaTime CLI, it’s recommended to use it.\nOtherwise, there are two options:\n The deprecated Python version. You can install it via pip install wakatime. The new Go version. You can download it at https://github.com/wakatime/wakatime-cli/releases. 安裝程式碼排版工具 設定 Clang Format CP Editor 使用 Clang Format 排版 C/C++、Java 程式碼。\n您需要將 Clang Format 加入系統 PATH 環境變數,或者在 偏好設定-\u003e擴充功能-\u003eClang Format 設定其路徑。\n設定 YAPF CP Editor 使用 YAPF 排版 Python 程式碼。\n請依照 安裝指示 操作,在完成之後應該就能運作。若沒有,請在 偏好設定-\u003e擴充功能-\u003e程式碼排版-\u003eYAPF 中設定其路徑及引數。\n設定 Language Server Language Server 可以來梳理(Lint)程式碼,並顯示錯誤、警告訊息。\n您可以安裝 Language Server 程式 並在 偏好設定-\u003e擴充功能-\u003eLanguage Server 調整設定值。\n若您不知道該安裝哪個,以下是一些建議。\nC++ Server 如果您已經安裝了 LLVM,那麼 clangd 就會與 clang 編譯器一同安裝。\n根據不同作業系統,安裝方法如下:\n Windows:到 LLVM 的網站 下載並安裝編譯好的檔案 Linux/macOS:使用套件管理系統安裝 接著必須讓 CP Editor 找到 Language Server 程式,在 偏好設定-\u003e擴充功能-\u003eLanguage Server-\u003eC++ Server-\u003e路徑 中設定 clangd 的命令,視情況為:\n clangd 已在 PATH 環境變數中時,值為 clangd clangd 的可執行檔路徑 Java Server 首先,您的電腦需要安裝 java 並將其加入 PATH 環境變數。接著下載 Eclipse.JDT.ls 並將其解壓縮到您喜歡的位置,此小節將以 \u003cINSTALL_PATH\u003e 來稱呼該位置。在 Windows 上 \u003cINSTALL_PATH\u003e 可能會長這樣:C://Users/Myname/Desktop/EclipseJDT.ls/)。\n接著進到 CP Editor,在 偏好設定-\u003e擴充功能-\u003eLanguage Server-\u003eJava Server 將「路徑」的值填入 java 並在「引數」填入像這樣的值:\n-jar $INSTALL_PATH/plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar -configuration \u003cINSTALL_PATH\u003e/config_(linux|win|mac)。\n以 Windows 而言,引數的值類似:\n-configuration C://Users/Myname/Desktop/Eclipse.JDT.ls/config_win。\n請注意,您的 jar 檔案名稱可能不會與此處的例子相同,會隨著 JDT 版本更迭而變。若 java 出現「jar not found」的錯誤,請在 \u003cINSTALL_PATH\u003e/plugins 中找到 org.eclipse.equinox.launcher_* jar 檔案的最新版本,並將該檔名替代引數中 -jar 後面的內容。\nPython Server 首先,您的系統需有 python 及 pip,且將其加入 PATH 環境變數。接著以 pip install 'python-language-server[all]' 命令安裝 python-language-server pip 模組,在安裝完成後開啟 CP Editor 進到 偏好設定-\u003e擴充功能-\u003eLanguage Server-\u003ePython Server。\n在「路徑」填入 python,並將「引數」設為-m pyls。儲存設定後,您就可以使用 Python 的 Linting 功能了。\n","excerpt":"調整 UI 語言 CP Editor 支援多種語言,包括英文及俄文。\n您可以在 偏好設定-\u003e介面-\u003e一般-\u003eUI 語言 調整介面的顯示語言。 …","ref":"/zh_tw/docs/setup/","title":"首次設定"},{"body":"Save Save Files Faster Use QFile instead of QSaveFile to save files.\nThis is slightly unsafer but notably faster.\nSave File On Compilation Save your code when compiling it.\nSave File On Execution Save your code when executing it.\nSave Testcases on Save Save the test cases on the disk when saving the code.\nYou can choose where to save the test cases in File Path/Testcases .\nAuto Save Auto Save Interval Type It is easier to describe if we explain a little bit about the internal implementation: There is a countdown timer. When we “reset” it, it will be “running” in the next Auto Save Interval milliseconds, and after Auto Save Interval milliseconds, the timer will “timeout” and the code is auto-saved.\nAfter the last modification The timer is reset whenever you modify the code. i.e. Your codes will be saved if you haven’t modified it for Auto Save Interval milliseconds.\nThis mode is suitable for a small Auto Save Interval so that your codes will be auto-saved every time you take a short break from typing. If the interval is too long, likely, your codes will never be auto-saved.\nAfter the first modification The timer is reset when you modify the code if the timer is not running. i.e. Your codes will be saved if you modified it Auto Save Interval milliseconds ago.\nThis mode is suitable for a long Auto Save Interval, otherwise, it’s likely that the save happens when you are typing, which could affect your typing experience.\nWithout modification The timer is reset when it timeouts. i.e. Your codes will be saved every Auto Save Interval milliseconds, no matter you have modified it or not.\nThis mode is suitable for saving test cases, etc. In the other modes, the test cases are not auto-saved if you don’t modify the codes.\nDetached Execution Terminal Program Terminal Arguments This setting is only available on Linux.\nThe terminal program is the name/path of the terminal emulator you want to use.\nThe arguments are used to execute a given command. i.e. \u003cTerminal Program\u003e \u003cTerminal Arguments\u003e \u003ccommand\u003e can be used to execute \u003ccommand\u003e in the terminal emulator.\nIn most terminal emulators including konsole, xterm and xfce-terminal, the argument is -e.\nIn gnome-terminal, it is --.\nYou can read the manual of your terminal emulator to get the suitable arguments.\nSave Session Restore last session at startup Save the status of the editor, and restore most status from the last session when you start CP Editor.\nYou can use the --no-restore-session command-line option to temporarily disable this, in case that the last session is too big and the application hangs.\nAuto-save the current session periodically Save the current session periodically instead of only when exiting the application.\nThis is useful if you don’t want to lose your codes after abnormal terminations, such as power outage, forced shutdown, killing CP Editor, etc. However, if the files and test cases are too large, the editor hangs each time the auto-save happens.\nBind file and problem Restore the problem URL when opening a file If a problem URL was set for a file, when you open that file again, the problem URL will be restored.\nOpen the old file when parsing an old problem URL If a problem URL was set for a file, when parsing that problem from Competitive Companion again, the old file will be opened.\nTest Cases Run your codes on empty test cases Run your code on all non-hidden test cases even if the input is empty.\nCheck your answer on test cases with empty output Check your answer even if your output or the expected output is empty.\nAuto Uncheck Accepted Testcases After the code is executed, the accepted test cases will be automatically unchecked. When test cases are unchecked, they are collapsed and won’t be tested on when you execute your code.\nLoad External File Changes Auto-load external file changes if there’s no unsaved modification If the file on the disk and the code in CP Editor was the same, and then the file is changed outside of CP Editor, load the external change without confirmation.\nAsk whether to load external file changes If the file is changed outside of CP Editor, ask whether to load the change or not.\nIf this setting is disabled, external changes won’t be loaded.\n Auto-load external file changes if there’s no unsaved modification overrides this setting. i.e. if Auto-load external file changes if there’s no unsaved modification is enabled, external file changes will be loaded without confirmation regardless of Ask whether to load external file changes ; if Auto-load external file changes if there’s no unsaved modification is disabled, the user will be asked whether to load the changes only when Ask whether to load external file changes is enabled, otherwise the changes won’t be loaded.\nStopwatch Display Stopwatch Show a stopwatch in the UI. You can use it to track your time spent on solving a problem.\nStart/Stop stopwatch on tab switch When switching to a different tab, automatically start the stopwatch on the current tab and pause the stopwatch on the previous tab.\nIf you switch to the correct tab when solving a problem, with this setting enabled, you won’t need to manually start/stop the stopwatch.\nShow stopwatch result only when the button is pressed Hide the time of the stopwatch and only show the time when the “Show” button is pressed.\nThis may reduce distractions caused by stopwatch updates.\n","excerpt":"Save Save Files Faster Use QFile instead of QSaveFile to save files. …","ref":"/docs/preferences/actions/","title":"Actions"},{"body":"Save Save Files Faster Use QFile instead of QSaveFile to save files.\nThis is slightly unsafer but notably faster.\nSave File On Compilation Save your code when compiling it.\nSave File On Execution Save your code when executing it.\nSave Testcases on Save Save the test cases on the disk when saving the code.\nYou can choose where to save the test cases in File Path/Testcases .\nAuto Save Auto Save Interval Type It is easier to describe if we explain a little bit about the internal implementation: There is a countdown timer. When we “reset” it, it will be “running” in the next Auto Save Interval milliseconds, and after Auto Save Interval milliseconds, the timer will “timeout” and the code is auto-saved.\nAfter the last modification The timer is reset whenever you modify the code. i.e. Your codes will be saved if you haven’t modified it for Auto Save Interval milliseconds.\nThis mode is suitable for a small Auto Save Interval so that your codes will be auto-saved every time you take a short break from typing. If the interval is too long, likely, your codes will never be auto-saved.\nAfter the first modification The timer is reset when you modify the code if the timer is not running. i.e. Your codes will be saved if you modified it Auto Save Interval milliseconds ago.\nThis mode is suitable for a long Auto Save Interval, otherwise, it’s likely that the save happens when you are typing, which could affect your typing experience.\nWithout modification The timer is reset when it timeouts. i.e. Your codes will be saved every Auto Save Interval milliseconds, no matter you have modified it or not.\nThis mode is suitable for saving test cases, etc. In the other modes, the test cases are not auto-saved if you don’t modify the codes.\nDetached Execution Terminal Program Terminal Arguments This setting is only available on Linux.\nThe terminal program is the name/path of the terminal emulator you want to use.\nThe arguments are used to execute a given command. i.e. \u003cTerminal Program\u003e \u003cTerminal Arguments\u003e \u003ccommand\u003e can be used to execute \u003ccommand\u003e in the terminal emulator.\nIn most terminal emulators including konsole, xterm and xfce-terminal, the argument is -e.\nIn gnome-terminal, it is --.\nYou can read the manual of your terminal emulator to get the suitable arguments.\nSave Session Restore last session at startup Save the status of the editor, and restore most status from the last session when you start CP Editor.\nYou can use the --no-restore-session command-line option to temporarily disable this, in case that the last session is too big and the application hangs.\nAuto-save the current session periodically Save the current session periodically instead of only when exiting the application.\nThis is useful if you don’t want to lose your codes after abnormal terminations, such as power outage, forced shutdown, killing CP Editor, etc. However, if the files and test cases are too large, the editor hangs each time the auto-save happens.\nBind file and problem Restore the problem URL when opening a file If a problem URL was set for a file, when you open that file again, the problem URL will be restored.\nOpen the old file when parsing an old problem URL If a problem URL was set for a file, when parsing that problem from Competitive Companion again, the old file will be opened.\nTest Cases Run your codes on empty test cases Run your code on all non-hidden test cases even if the input is empty.\nCheck your answer on test cases with empty output Check your answer even if your output or the expected output is empty.\nAuto Uncheck Accepted Testcases After the code is executed, the accepted test cases will be automatically unchecked. When test cases are unchecked, they are collapsed and won’t be tested on when you execute your code.\nLoad External File Changes Auto-load external file changes if there’s no unsaved modification If the file on the disk and the code in CP Editor was the same, and then the file is changed outside of CP Editor, load the external change without confirmation.\nAsk whether to load external file changes If the file is changed outside of CP Editor, ask whether to load the change or not.\nIf this setting is disabled, external changes won’t be loaded.\n Auto-load external file changes if there’s no unsaved modification overrides this setting. i.e. if Auto-load external file changes if there’s no unsaved modification is enabled, external file changes will be loaded without confirmation regardless of Ask whether to load external file changes ; if Auto-load external file changes if there’s no unsaved modification is disabled, the user will be asked whether to load the changes only when Ask whether to load external file changes is enabled, otherwise the changes won’t be loaded.\nStopwatch Display Stopwatch Show a stopwatch in the UI. You can use it to track your time spent on solving a problem.\nStart/Stop stopwatch on tab switch When switching to a different tab, automatically start the stopwatch on the current tab and pause the stopwatch on the previous tab.\nIf you switch to the correct tab when solving a problem, with this setting enabled, you won’t need to manually start/stop the stopwatch.\nShow stopwatch result only when the button is pressed Hide the time of the stopwatch and only show the time when the “Show” button is pressed.\nThis may reduce distractions caused by stopwatch updates.\n","excerpt":"Save Save Files Faster Use QFile instead of QSaveFile to save files. …","ref":"/ru/docs/preferences/actions/","title":"Actions"},{"body":"Save Save Files Faster Use QFile instead of QSaveFile to save files.\nThis is slightly unsafer but notably faster.\nSave File On Compilation Save your code when compiling it.\nSave File On Execution Save your code when executing it.\nSave Testcases on Save Save the test cases on the disk when saving the code.\nYou can choose where to save the test cases in File Path/Testcases .\nAuto Save Auto Save Interval Type It is easier to describe if we explain a little bit about the internal implementation: There is a countdown timer. When we “reset” it, it will be “running” in the next Auto Save Interval milliseconds, and after Auto Save Interval milliseconds, the timer will “timeout” and the code is auto-saved.\nAfter the last modification The timer is reset whenever you modify the code. i.e. Your codes will be saved if you haven’t modified it for Auto Save Interval milliseconds.\nThis mode is suitable for a small Auto Save Interval so that your codes will be auto-saved every time you take a short break from typing. If the interval is too long, likely, your codes will never be auto-saved.\nAfter the first modification The timer is reset when you modify the code if the timer is not running. i.e. Your codes will be saved if you modified it Auto Save Interval milliseconds ago.\nThis mode is suitable for a long Auto Save Interval, otherwise, it’s likely that the save happens when you are typing, which could affect your typing experience.\nWithout modification The timer is reset when it timeouts. i.e. Your codes will be saved every Auto Save Interval milliseconds, no matter you have modified it or not.\nThis mode is suitable for saving test cases, etc. In the other modes, the test cases are not auto-saved if you don’t modify the codes.\nDetached Execution Terminal Program Terminal Arguments This setting is only available on Linux.\nThe terminal program is the name/path of the terminal emulator you want to use.\nThe arguments are used to execute a given command. i.e. \u003cTerminal Program\u003e \u003cTerminal Arguments\u003e \u003ccommand\u003e can be used to execute \u003ccommand\u003e in the terminal emulator.\nIn most terminal emulators including konsole, xterm and xfce-terminal, the argument is -e.\nIn gnome-terminal, it is --.\nYou can read the manual of your terminal emulator to get the suitable arguments.\nSave Session Restore last session at startup Save the status of the editor, and restore most status from the last session when you start CP Editor.\nYou can use the --no-restore-session command-line option to temporarily disable this, in case that the last session is too big and the application hangs.\nAuto-save the current session periodically Save the current session periodically instead of only when exiting the application.\nThis is useful if you don’t want to lose your codes after abnormal terminations, such as power outage, forced shutdown, killing CP Editor, etc. However, if the files and test cases are too large, the editor hangs each time the auto-save happens.\nBind file and problem Restore the problem URL when opening a file If a problem URL was set for a file, when you open that file again, the problem URL will be restored.\nOpen the old file when parsing an old problem URL If a problem URL was set for a file, when parsing that problem from Competitive Companion again, the old file will be opened.\nTest Cases Run your codes on empty test cases Run your code on all non-hidden test cases even if the input is empty.\nCheck your answer on test cases with empty output Check your answer even if your output or the expected output is empty.\nAuto Uncheck Accepted Testcases After the code is executed, the accepted test cases will be automatically unchecked. When test cases are unchecked, they are collapsed and won’t be tested on when you execute your code.\nLoad External File Changes Auto-load external file changes if there’s no unsaved modification If the file on the disk and the code in CP Editor was the same, and then the file is changed outside of CP Editor, load the external change without confirmation.\nAsk whether to load external file changes If the file is changed outside of CP Editor, ask whether to load the change or not.\nIf this setting is disabled, external changes won’t be loaded.\n Auto-load external file changes if there’s no unsaved modification overrides this setting. i.e. if Auto-load external file changes if there’s no unsaved modification is enabled, external file changes will be loaded without confirmation regardless of Ask whether to load external file changes ; if Auto-load external file changes if there’s no unsaved modification is disabled, the user will be asked whether to load the changes only when Ask whether to load external file changes is enabled, otherwise the changes won’t be loaded.\nStopwatch Display Stopwatch Show a stopwatch in the UI. You can use it to track your time spent on solving a problem.\nStart/Stop stopwatch on tab switch When switching to a different tab, automatically start the stopwatch on the current tab and pause the stopwatch on the previous tab.\nIf you switch to the correct tab when solving a problem, with this setting enabled, you won’t need to manually start/stop the stopwatch.\nShow stopwatch result only when the button is pressed Hide the time of the stopwatch and only show the time when the “Show” button is pressed.\nThis may reduce distractions caused by stopwatch updates.\n","excerpt":"Save Save Files Faster Use QFile instead of QSaveFile to save files. …","ref":"/zh_tw/docs/preferences/actions/","title":"Actions"},{"body":"You can set the preferences by either clicking Options-\u003ePreferences or pressing Ctrl+P.\nYou can hover over the settings to see the tooltips. Usually, the tooltips are clear enough, but if you want a more detailed explanation, you can read the documentation.\n","excerpt":"You can set the preferences by either clicking Options-\u003ePreferences or …","ref":"/docs/preferences/","title":"Preferences"},{"body":"You can set the preferences by either clicking Options-\u003ePreferences or pressing Ctrl+P.\nYou can hover over the settings to see the tooltips. Usually, the tooltips are clear enough, but if you want a more detailed explanation, you can read the documentation.\n","excerpt":"You can set the preferences by either clicking Options-\u003ePreferences or …","ref":"/ru/docs/preferences/","title":"Preferences"},{"body":"用滑鼠點按 選項-\u003e偏好設定 或按下 Ctrl+P 打開偏好設定視窗。\n滑鼠暫留於設定值時,會顯示其描述。通常描述已清晰易懂,但如果需要更詳細的解釋,請閱讀我們的說明文件。\n","excerpt":"用滑鼠點按 選項-\u003e偏好設定 或按下 Ctrl+P 打開偏好設定視窗。\n滑鼠暫留於設定值時,會顯示其描述。通常描述已清晰易懂,但如果需要更詳 …","ref":"/zh_tw/docs/preferences/","title":"偏好設定"},{"body":"保存 更快地保存文件 使用 QFile 而非 QSaveFile 来保存文件。\n启用该选项会有可忽略不计的丢失文件风险,但会显著提高保存文件的速度。\n编译时保存文件 在编译前保存你的代码。\n执行时保存文件 在运行前保存你的代码。\n保存文件时保存测试用例 在保存代码时将测试用例一并保存。\n你可以在 文件路径/测试点 中设置测试用例保存的位置。\n自动保存 自动保存间隔类型 自动保存机制以如下的方式运作:有一个计时器,每当它被“重置”,它就会“运行” 自动保存时间间隔 毫秒,当计时器“运行”了 自动保存时间间隔 毫秒后,当前代码就会被自动保存。\nAfter the last modification 计时器在每次修改代码后被重置。即,如果你在 自动保存时间间隔 毫秒内没有修改你的代码,则计时器完成了倒计时,同时你的代码会被自动保存。\n该模式适合使用较短的 自动保存时间间隔,以使代码能在你两次输入的间歇间被自动保存。如果设置的间隔时间过长,则难以让代码被自动保存。\nAfter the first modification 在计时器未运行时,若你修改了代码,则计时器将被重置。即,你的代码将在第一次修改后 自动保存时间间隔 毫秒被自动保存。\n该模式适合使用较长的 自动保存时间间隔。如果设置的时间过短,代码会在你输入的时候被自动保存,这可能会影响你的输入体验。\nWithout modification 每当计时器完成倒计时,计时器会被重置。即,无论你是否修改了你的代码,你的代码都会以恒定的 自动保存时间间隔 被自动保存。\n该模式适合保存测试用例。在其他模式下,如果你不修改你的代码,测试用例不会被自动保存。\n终端中运行 终端程序 终端参数 本设置仅在 Linux 系统中可用。\n终端程序是你想要使用的终端模拟器的名称或路径。\n终端参数是终端模拟器中用于运行给定命令的参数。即,命令 \u003c终端程序\u003e \u003c终端参数\u003e \u003c命令\u003e 可在指定的终端模拟器中运行 \u003c命令\u003e。\n在大多数终端模拟器,如 konsole, xterm 和 xfce-terminal,终端参数为 -e,在 gnome-terminal 中,该参数为 --。\n你可以阅读你使用的终端模拟器的手册,以获取关于终端参数的相关信息。\n保存会话 在启动时恢复上一次会话 在退出 CP Editor 时保存当前状态,并在启动时恢复上一次会话。\n在终端下,你可以使用 --no-restore-session 命令以暂时禁用该选项。如果上一次会话过大导致 CP Editor 卡死,该命令将会解决这一问题。\n定期自动保存当前会话 每隔一段时间就保存当前会话,而不是仅在退出时保存会话。\n启用该选项会避免因为非正常退出(如断电,强行终止 CP Editor 等)导致代码丢失的情况发生。然而,如果代码和测试用例过大,每次自动保存时 CP Editor 会卡顿较长时间。\n关联文件和题目 打开文件时加载对应题目 如果一个文件已经设置了题目链接,当该文件被再次打开时,将会使用原来的题目链接。\n加载以前的题目时打开以前的文件 如果一个文件已经设置了题目链接,当使用 Competitive Companion 解析同样的题目时,将会直接打开以前的文件。\n测试点 在空测试点上运行你的代码 在所有未被隐藏的测试点上运行你的代码,即使输入为空。\n在输出为空的测试点上检查输出的正确性 即使程序输出或答案为空,也检查该测试点输出的正确性。\n自动取消选中已通过的测试点 在运行代码后,自动将通过了的测试点取消选中。当测试点未被选中时,它们会被折叠,并且在你运行代码时不会在这些测试点上进行测试。\n加载外部文件修改 若没有未保存的修改,自动加载外部文件修改 若硬盘上的文件和 CP Editor 中的文件相同,该文件在 CP Editor 外部被修改,无需确认,自动加载外部文件修改。\n询问是否加载外部文件修改 若文件在 CP Editor 外部被修改,询问是否加载这些修改。\n如果该选项被禁用,外部文件修改不会被加载。\n 若没有未保存的修改,自动加载外部文件修改 会覆盖该选项的设置。即,若选项 若没有未保存的修改,自动加载外部文件修改 被启用,无论 询问是否加载外部文件修改 是否启用,外部文件修改将会在无确认的情况下被自动加载。若选项 若没有未保存的修改,自动加载外部文件修改 被禁用,且 询问是否加载外部文件修改 被启用,CP Editor 将会询问用户是否加载这些修改。而在两个选项都被禁用的情况下,外部文件修改将不会被加载。\n计时器 显示计时器 在 UI 中显示计时器。你可以用它来记录做题用时。\n切换标签页时启动/暂停计时器 切换标签页后,暂停原来那个标签页的计时器并启动当前标签页的计时器。\n启用了这个设置,如果你在做一道题时切换到正确的标签页,你就不需要手动启动/停止计时器了。\n只在按钮按下时显示计时结果 隐藏计时结果,只在“显示”按钮按下时显示。\n这或许可以避免计时结果更新使人分心。\n","excerpt":"保存 更快地保存文件 使用 QFile 而非 QSaveFile 来保存文件。\n启用该选项会有可忽略不计的丢失文件风险,但会显著提高保存文件 …","ref":"/zh/docs/preferences/actions/","title":"动作"},{"body":"你可以通过点击 选项-\u003e设置 或者键入 Ctrl+P 设定设置。\n你可以将鼠标悬停在设置上以查看工具提示。通常,工具提示足够清晰,但是如果你需要更详细的说明,可以阅读文档。\n","excerpt":"你可以通过点击 选项-\u003e设置 或者键入 Ctrl+P 设定设置。\n你可以将鼠标悬停在设置上以查看工具提示。通常,工具提示足够清晰,但是如果你 …","ref":"/zh/docs/preferences/","title":"设置"},{"body":"Code Formatting Clang Format Clang Format is used to format the C/C++ and Java codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only the selection (and its necessary adjacent codes) will be formatted.\nSee also Setup Clang Format .\nProgram The path to the clang-format executable, or simply clang-format if it’s in the PATH environment variable.\nArguments The arguments passed to clang-format. It should NOT contain -i (the in-place modification option).\nStyle The Clang Format style. The content here is the same as the content of a .clang-format file.\nYou can read Clang-Format Style Options documentation or search for other materials to learn how to write the styles.\nYAPF YAPF is used to format the Python codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only these lines will be formatted.\nSee also Setup YAPF .\nProgram The program of YAPF. It could be one of:\n yapf: You should be able to run yapf in the command line. The arguments can be empty. A Python interpreter, i.e. python, python2, etc. or the path to an interpreter. The arguments should be -m yapf. Note that you need to use Python 2 to format Python 2, use Python 3 to format Python 3 . So you may need to choose the correct Python interpreter.\nArguments The arguments passed to the YAPF program. This should be -m yapf if the program is a Python interpreter. It should NOT contain -i (the in-place modification option).\nStyle The YAPF Format style. The content here is the same as the content of a .style.yapf file. You can check all possible configurations by running yapf --style-help, read the documentation or search for other materials to learn how to write the styles.\nLanguage Server See also Setup Language Server .\nUse Linting with Language Server Use language server to lint errors, warnings, hints, etc.\nYou can hover over the squiggles to see the tooltips for the explanation of the errors/warnings.\nDelay in Linting Update linting if you haven’t been typing for delay milliseconds.\nPath to LSP executable The path to the language server program, or the name if it’s in the PATH environment variable.\nArguments for Language Server Additional arguments for the language server program. See the documentation of the language server program you are using for more information.\nFor example, if you are using pyls for Python, you probably want to use python as the language server program, and use -m pyls as the arguments.\nCompetitive Companion See also Setup Competitive Companion .\nOpen New Tabs Open a new tab when a problem is parsed.\nIf this is disabled, when parsing a problem, the test cases in the current tab will be replaced by the new test cases.\nConnection Port Usually, you don’t have to modify this setting. The default port 10045 is supported by Competitive Companion, so if you are using the default port, you don’t have to add custom ports in Competitive Companion. However, in case of port conflicts, etc., you can change the port and add custom ports in Competitive Companion.\nUse the time limit from Competitive Companion Use the time limit parsed by Competitive Companion as the time limit of the corresponding tab.\nHead Comments The head comments are added at the head of the code when parsing a problem.\nContent of the head comments The content of the head comments. You can use the following place holders:\n ${time}: The time when the problem was parsed. The time format can be set in Time format for the head comments . ${json.X.Y}: An attribute of the data provided by Competitive Companion. You can read more about the attributes in the documentation of Competitive Companion . For example, ${json.name} is the name of the problem. Time format for the head comments The format of the ${time} place holder in the head comments. You can read the Qt documentation for available expressions:\n Date Format Time Format CF Tool You can use CF Tool to submit your solutions to Codeforces .\nTo submit a solution, you have to either parse a problem by Competitive Companion from Codeforces or manually set the problem URL of a tab in the context menu of it.\nSee also Setup CF Tool .\nPath The path to the cf executable file, or simply cf if it’s in the PATH environment variable.\nShow toast messages for submission verdicts Show a toast message when the verdict of a submission is determined.\nA toast message is a “system notification”, which is visible outside of CP Editor.\nThis is useful if you want to get the verdict of the previous problem when reading/solving the next problem.\nWakaTime WakaTime can help you to track your time usage.\nSee also Setup WakaTime .\nEnable WakaTime Use WakaTime to track your time usage.\nPath The path to the wakatime executable file, or simply wakatime if it’s in the PATH environment variable.\nApi Key Can be found at WakaTime Settings .\nIt can be empty if you have the global wakatime config file ~/.wakatime.cfg.\nUse Proxy Use Network Proxy to send data to WakaTime.\n","excerpt":"Code Formatting Clang Format Clang Format is used to format the C/C++ …","ref":"/docs/preferences/extensions/","title":"Extensions"},{"body":"Code Formatting Clang Format Clang Format is used to format the C/C++ and Java codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only the selection (and its necessary adjacent codes) will be formatted.\nSee also Setup Clang Format .\nProgram The path to the clang-format executable, or simply clang-format if it’s in the PATH environment variable.\nArguments The arguments passed to clang-format. It should NOT contain -i (the in-place modification option).\nStyle The Clang Format style. The content here is the same as the content of a .clang-format file.\nYou can read Clang-Format Style Options documentation or search for other materials to learn how to write the styles.\nYAPF YAPF is used to format the Python codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only these lines will be formatted.\nSee also Setup YAPF .\nProgram The program of YAPF. It could be one of:\n yapf: You should be able to run yapf in the command line. The arguments can be empty. A Python interpreter, i.e. python, python2, etc. or the path to an interpreter. The arguments should be -m yapf. Note that you need to use Python 2 to format Python 2, use Python 3 to format Python 3 . So you may need to choose the correct Python interpreter.\nArguments The arguments passed to the YAPF program. This should be -m yapf if the program is a Python interpreter. It should NOT contain -i (the in-place modification option).\nStyle The YAPF Format style. The content here is the same as the content of a .style.yapf file. You can check all possible configurations by running yapf --style-help, read the documentation or search for other materials to learn how to write the styles.\nLanguage Server See also Setup Language Server .\nUse Linting with Language Server Use language server to lint errors, warnings, hints, etc.\nYou can hover over the squiggles to see the tooltips for the explanation of the errors/warnings.\nDelay in Linting Update linting if you haven’t been typing for delay milliseconds.\nPath to LSP executable The path to the language server program, or the name if it’s in the PATH environment variable.\nArguments for Language Server Additional arguments for the language server program. See the documentation of the language server program you are using for more information.\nFor example, if you are using pyls for Python, you probably want to use python as the language server program, and use -m pyls as the arguments.\nCompetitive Companion See also Setup Competitive Companion .\nOpen New Tabs Open a new tab when a problem is parsed.\nIf this is disabled, when parsing a problem, the test cases in the current tab will be replaced by the new test cases.\nConnection Port Usually, you don’t have to modify this setting. The default port 10045 is supported by Competitive Companion, so if you are using the default port, you don’t have to add custom ports in Competitive Companion. However, in case of port conflicts, etc., you can change the port and add custom ports in Competitive Companion.\nUse the time limit from Competitive Companion Use the time limit parsed by Competitive Companion as the time limit of the corresponding tab.\nHead Comments The head comments are added at the head of the code when parsing a problem.\nContent of the head comments The content of the head comments. You can use the following place holders:\n ${time}: The time when the problem was parsed. The time format can be set in Time format for the head comments . ${json.X.Y}: An attribute of the data provided by Competitive Companion. You can read more about the attributes in the documentation of Competitive Companion . For example, ${json.name} is the name of the problem. Time format for the head comments The format of the ${time} place holder in the head comments. You can read the Qt documentation for available expressions:\n Date Format Time Format CF Tool You can use CF Tool to submit your solutions to Codeforces .\nTo submit a solution, you have to either parse a problem by Competitive Companion from Codeforces or manually set the problem URL of a tab in the context menu of it.\nSee also Setup CF Tool .\nPath The path to the cf executable file, or simply cf if it’s in the PATH environment variable.\nShow toast messages for submission verdicts Show a toast message when the verdict of a submission is determined.\nA toast message is a “system notification”, which is visible outside of CP Editor.\nThis is useful if you want to get the verdict of the previous problem when reading/solving the next problem.\nWakaTime WakaTime can help you to track your time usage.\nSee also Setup WakaTime .\nEnable WakaTime Use WakaTime to track your time usage.\nPath The path to the wakatime executable file, or simply wakatime if it’s in the PATH environment variable.\nApi Key Can be found at WakaTime Settings .\nIt can be empty if you have the global wakatime config file ~/.wakatime.cfg.\nUse Proxy Use Network Proxy to send data to WakaTime.\n","excerpt":"Code Formatting Clang Format Clang Format is used to format the C/C++ …","ref":"/ru/docs/preferences/extensions/","title":"Extensions"},{"body":"程式碼排版 Clang Format Clang Format is used to format the C/C++ and Java codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only the selection (and its necessary adjacent codes) will be formatted.\nSee also 設定 Clang Format .\nProgram The path to the clang-format executable, or simply clang-format if it’s in the PATH environment variable.\nArguments The arguments passed to clang-format. It should NOT contain -i (the in-place modification option).\nStyle The Clang Format style. The content here is the same as the content of a .clang-format file.\nYou can read Clang-Format Style Options documentation or search for other materials to learn how to write the styles.\nYAPF YAPF is used to format the Python codes. You can click Actions-\u003eFormat Code or press the shortcut Ctrl+Shift+I to format the codes. If you have selected a part of the code, only these lines will be formatted.\nSee also 設定 YAPF .\nProgram The program of YAPF. It could be one of:\n yapf: You should be able to run yapf in the command line. The arguments can be empty. A Python interpreter, i.e. python, python2, etc. or the path to an interpreter. The arguments should be -m yapf. Note that you need to use Python 2 to format Python 2, use Python 3 to format Python 3 . So you may need to choose the correct Python interpreter.\nArguments The arguments passed to the YAPF program. This should be -m yapf if the program is a Python interpreter. It should NOT contain -i (the in-place modification option).\nStyle The YAPF Format style. The content here is the same as the content of a .style.yapf file. You can check all possible configurations by running yapf --style-help, read the documentation or search for other materials to learn how to write the styles.\nLanguage Server See also 設定 Language Server .\nUse Linting with Language Server Use language server to lint errors, warnings, hints, etc.\nYou can hover over the squiggles to see the tooltips for the explanation of the errors/warnings.\nDelay in Linting Update linting if you haven’t been typing for delay milliseconds.\nPath to LSP executable The path to the language server program, or the name if it’s in the PATH environment variable.\nArguments for Language Server Additional arguments for the language server program. See the documentation of the language server program you are using for more information.\nFor example, if you are using pyls for Python, you probably want to use python as the language server program, and use -m pyls as the arguments.\nCompetitive Companion See also 設定 Competitive Companion .\nOpen New Tabs Open a new tab when a problem is parsed.\nIf this is disabled, when parsing a problem, the test cases in the current tab will be replaced by the new test cases.\nConnection Port Usually, you don’t have to modify this setting. The default port 10045 is supported by Competitive Companion, so if you are using the default port, you don’t have to add custom ports in Competitive Companion. However, in case of port conflicts, etc., you can change the port and add custom ports in Competitive Companion.\nUse the time limit from Competitive Companion Use the time limit parsed by Competitive Companion as the time limit of the corresponding tab.\nHead Comments The head comments are added at the head of the code when parsing a problem.\nContent of the head comments The content of the head comments. You can use the following place holders:\n ${time}: The time when the problem was parsed. The time format can be set in Time format for the head comments . ${json.X.Y}: An attribute of the data provided by Competitive Companion. You can read more about the attributes in the documentation of Competitive Companion . For example, ${json.name} is the name of the problem. Time format for the head comments The format of the ${time} place holder in the head comments. You can read the Qt documentation for available expressions:\n Date Format Time Format CF Tool You can use CF Tool to submit your solutions to Codeforces .\nTo submit a solution, you have to either parse a problem by Competitive Companion from Codeforces or manually set the problem URL of a tab in the context menu of it.\nSee also 設定 CF Tool .\nPath The path to the cf executable file, or simply cf if it’s in the PATH environment variable.\nShow toast messages for submission verdicts Show a toast message when the verdict of a submission is determined.\nA toast message is a “system notification”, which is visible outside of CP Editor.\nThis is useful if you want to get the verdict of the previous problem when reading/solving the next problem.\nWakaTime WakaTime can help you to track your time usage.\nSee also Setup WakaTime .\nEnable WakaTime Use WakaTime to track your time usage.\nPath The path to the wakatime executable file, or simply wakatime if it’s in the PATH environment variable.\nApi Key Can be found at WakaTime Settings .\nIt can be empty if you have the global wakatime config file ~/.wakatime.cfg.\nUse Proxy Use Network Proxy to send data to WakaTime.\n","excerpt":"程式碼排版 Clang Format Clang Format is used to format the C/C++ and Java …","ref":"/zh_tw/docs/preferences/extensions/","title":"Extensions"},{"body":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI debugger, but this doesn’t mean it’s hard to debug codes using CP Editor.\nBesides single-stepping, the most used debugging approach is to output some variables. Do you remember the times you tried hard to distinguish the debugged variables from the normal outputs? You don’t have to do this in CP Editor.\nThe key is: Use stderr to output debug information. In C++, this means to use cerr instead of cout to output. CP Editor will show the stderr of your program in the Messages section.\nRun on only selected test cases In CP Editor, you don’t have to always run on all test cases.\nTo tell CP Editor not to run on a certain test case, just uncheck the checkbox of that test case. You can also use the “More” menu to manage the checks: you can Check All, Uncheck All, Uncheck Accepted (very useful when you passed most test cases and want to debug on the unaccepted ones) and Invert.\nIf you want to run on a single test case, you can simply click the “Run” button of that test case.\nCopy output to expected for problems with multiple correct answers Sometimes you are solving a problem that has more than one correct answer. The online judge has a checker, but you don’t, and you don’t have the time to write one. Leaving them in the “WA” verdict could be annoying, or even inconvenient because you have to manually check again after modifying your codes.\nCP Editor provides a solution: Copy Output to Expected. This could be done in either the right-click menu of the Expected section for a single test case or in the “More” menu for all selected test cases. With this function, you can easily copy the accepted outputs to expected, and they will be in the AC verdict as long as their outputs are not changed.\nLoad, edit and save test cases You can load test cases from files, edit test cases in bigger windows and save a test case in a file in the right-click menu of the test cases.\nTestlib checkers are compiled at runtime Testlib checkers are compiled when changing the checker or changing the preferences, so you may have to wait for it after the execution is finished.\nDrag and drop files You can drag files and drop them into the main editor or the input/expected part of test cases.\nShortcuts in the code editor Besides the shortcuts in the menu, you can use the Read-only Key Bindings and the Editing Key Bindings . There are also some hidden shortcuts: Tab (when there’s a selection) and Shift+Tab for indent and unindent, Ctrl+Enter and Ctrl+Shift+Enter for inserting line after and before, Shift+Delete for deleting the current line.\nSwitching between tabs You can use Ctrl+Tab and Ctrl+Shift+Tab to switch to the next/previous tab.\nThe right-click menu of the tabs You can right-click on the tabs to get a useful context menu, including:\n Manage tabs: Close Others, Close to the Right, etc. Duplicate tab. Very useful when you want to make experimental changes with the original code untouched or use different approaches to solve a problem without parsing it twice. Set compile command/time limit for a single tab. If you are solving a special problem. Reveal source/executable file. To easily find your code and the executable file. Manage the problem URL: Open Problem in Browser, Set Codeforces URL, etc. Shortcuts in the preferences window You can use Ctlr+D, Ctrl+R and Ctrl+S for “Default”, “Reset” and “Apply” respectively.\nYou can use Ctlr+Tab and Ctlr+Shift+Tab to go through the preferences pages.\nChange the view mode Editor mode: You can focus on your codes. IO mode: You can investigate the outputs and errors. Split mode: You can see both the codes and the test cases. You can set a hotkey for switching view modes in Preferences .\nLaunch CP Editor in the command line CP Editor supports some command-line options, run cpeditor --help for more information.\nOn Windows, it’s better to use UNIX-like shells like git bash.\nIn the command line, you can open a non-existing file as a tab by cpeditor \u003cpath\u003e (and you can save to this path later), open all C++ files in a directory recursively by cpeditor --cpp \u003cdirectory\u003e or temporarily disable Restore last session at startup by cpeditor --no-restore-session.\nCP Editor normally closes when receiving SIGINT and SIGHUP, so if you start CP Editor in the command line, you can safely press Ctrl+C to quit.\n","excerpt":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI …","ref":"/docs/tips/","title":"Tips"},{"body":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI debugger, but this doesn’t mean it’s hard to debug codes using CP Editor.\nBesides single-stepping, the most used debugging approach is to output some variables. Do you remember the times you tried hard to distinguish the debugged variables from the normal outputs? You don’t have to do this in CP Editor.\nThe key is: Use stderr to output debug information. In C++, this means to use cerr instead of cout to output. CP Editor will show the stderr of your program in the Messages section.\nRun on only selected test cases In CP Editor, you don’t have to always run on all test cases.\nTo tell CP Editor not to run on a certain test case, just uncheck the checkbox of that test case. You can also use the “More” menu to manage the checks: you can Check All, Uncheck All, Uncheck Accepted (very useful when you passed most test cases and want to debug on the unaccepted ones) and Invert.\nIf you want to run on a single test case, you can simply click the “Run” button of that test case.\nCopy output to expected for problems with multiple correct answers Sometimes you are solving a problem that has more than one correct answer. The online judge has a checker, but you don’t, and you don’t have the time to write one. Leaving them in the “WA” verdict could be annoying, or even inconvenient because you have to manually check again after modifying your codes.\nCP Editor provides a solution: Copy Output to Expected. This could be done in either the right-click menu of the Expected section for a single test case or in the “More” menu for all selected test cases. With this function, you can easily copy the accepted outputs to expected, and they will be in the AC verdict as long as their outputs are not changed.\nLoad, edit and save test cases You can load test cases from files, edit test cases in bigger windows and save a test case in a file in the right-click menu of the test cases.\nTestlib checkers are compiled at runtime Testlib checkers are compiled when changing the checker or changing the preferences, so you may have to wait for it after the execution is finished.\nDrag and drop files You can drag files and drop them into the main editor or the input/expected part of test cases.\nShortcuts in the code editor Besides the shortcuts in the menu, you can use the Read-only Key Bindings and the Editing Key Bindings . There are also some hidden shortcuts: Tab (when there’s a selection) and Shift+Tab for indent and unindent, Ctrl+Enter and Ctrl+Shift+Enter for inserting line after and before, Shift+Delete for deleting the current line.\nSwitching between tabs You can use Ctrl+Tab and Ctrl+Shift+Tab to switch to the next/previous tab.\nThe right-click menu of the tabs You can right-click on the tabs to get a useful context menu, including:\n Manage tabs: Close Others, Close to the Right, etc. Duplicate tab. Very useful when you want to make experimental changes with the original code untouched or use different approaches to solve a problem without parsing it twice. Set compile command/time limit for a single tab. If you are solving a special problem. Reveal source/executable file. To easily find your code and the executable file. Manage the problem URL: Open Problem in Browser, Set Codeforces URL, etc. Shortcuts in the preferences window You can use Ctlr+D, Ctrl+R and Ctrl+S for “Default”, “Reset” and “Apply” respectively.\nYou can use Ctlr+Tab and Ctlr+Shift+Tab to go through the preferences pages.\nChange the view mode Editor mode: You can focus on your codes. IO mode: You can investigate the outputs and errors. Split mode: You can see both the codes and the test cases. You can set a hotkey for switching view modes in Preferences .\nLaunch CP Editor in the command line CP Editor supports some command-line options, run cpeditor --help for more information.\nOn Windows, it’s better to use UNIX-like shells like git bash.\nIn the command line, you can open a non-existing file as a tab by cpeditor \u003cpath\u003e (and you can save to this path later), open all C++ files in a directory recursively by cpeditor --cpp \u003cdirectory\u003e or temporarily disable Restore last session at startup by cpeditor --no-restore-session.\nCP Editor normally closes when receiving SIGINT and SIGHUP, so if you start CP Editor in the command line, you can safely press Ctrl+C to quit.\n","excerpt":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI …","ref":"/ru/docs/tips/","title":"Tips"},{"body":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI debugger, but this doesn’t mean it’s hard to debug codes using CP Editor.\nBesides single-stepping, the most used debugging approach is to output some variables. Do you remember the times you tried hard to distinguish the debugged variables from the normal outputs? You don’t have to do this in CP Editor.\nThe key is: Use stderr to output debug information. In C++, this means to use cerr instead of cout to output. CP Editor will show the stderr of your program in the Messages section.\nRun on only selected test cases In CP Editor, you don’t have to always run on all test cases.\nTo tell CP Editor not to run on a certain test case, just uncheck the checkbox of that test case. You can also use the “More” menu to manage the checks: you can Check All, Uncheck All, Uncheck Accepted (very useful when you passed most test cases and want to debug on the unaccepted ones) and Invert.\nIf you want to run on a single test case, you can simply click the “Run” button of that test case.\nCopy output to expected for problems with multiple correct answers Sometimes you are solving a problem that has more than one correct answer. The online judge has a checker, but you don’t, and you don’t have the time to write one. Leaving them in the “WA” verdict could be annoying, or even inconvenient because you have to manually check again after modifying your codes.\nCP Editor provides a solution: Copy Output to Expected. This could be done in either the right-click menu of the Expected section for a single test case or in the “More” menu for all selected test cases. With this function, you can easily copy the accepted outputs to expected, and they will be in the AC verdict as long as their outputs are not changed.\nLoad, edit and save test cases You can load test cases from files, edit test cases in bigger windows and save a test case in a file in the right-click menu of the test cases.\nTestlib checkers are compiled at runtime Testlib checkers are compiled when changing the checker or changing the preferences, so you may have to wait for it after the execution is finished.\nDrag and drop files You can drag files and drop them into the main editor or the input/expected part of test cases.\nShortcuts in the code editor Besides the shortcuts in the menu, you can use the Read-only Key Bindings and the Editing Key Bindings . There are also some hidden shortcuts: Tab (when there’s a selection) and Shift+Tab for indent and unindent, Ctrl+Enter and Ctrl+Shift+Enter for inserting line after and before, Shift+Delete for deleting the current line.\nSwitching between tabs You can use Ctrl+Tab and Ctrl+Shift+Tab to switch to the next/previous tab.\nThe right-click menu of the tabs You can right-click on the tabs to get a useful context menu, including:\n Manage tabs: Close Others, Close to the Right, etc. Duplicate tab. Very useful when you want to make experimental changes with the original code untouched or use different approaches to solve a problem without parsing it twice. Set compile command/time limit for a single tab. If you are solving a special problem. Reveal source/executable file. To easily find your code and the executable file. Manage the problem URL: Open Problem in Browser, Set Codeforces URL, etc. Shortcuts in the preferences window You can use Ctlr+D, Ctrl+R and Ctrl+S for “Default”, “Reset” and “Apply” respectively.\nYou can use Ctlr+Tab and Ctlr+Shift+Tab to go through the preferences pages.\nChange the view mode Editor mode: You can focus on your codes. IO mode: You can investigate the outputs and errors. Split mode: You can see both the codes and the test cases. You can set a hotkey for switching view modes in Preferences .\nLaunch CP Editor in the command line CP Editor supports some command-line options, run cpeditor --help for more information.\nOn Windows, it’s better to use UNIX-like shells like git bash.\nIn the command line, you can open a non-existing file as a tab by cpeditor \u003cpath\u003e (and you can save to this path later), open all C++ files in a directory recursively by cpeditor --cpp \u003cdirectory\u003e or temporarily disable Restore last session at startup by cpeditor --no-restore-session.\nCP Editor normally closes when receiving SIGINT and SIGHUP, so if you start CP Editor in the command line, you can safely press Ctrl+C to quit.\n","excerpt":"Use stderr to debug Currently, CP Editor doesn’t have a built-in GUI …","ref":"/zh_tw/docs/tips/","title":"Tips"},{"body":"代码格式化 Clang Format Clang Format 是格式化 C/C++ 和 Java 代码的工具。你可以点击 动作-\u003e格式化代码 或按快捷键 Ctrl+Shift+I 来格式化代码。如果你选择了代码的一部分,只有被选择的部分(以及必要的相邻部分)会被格式化。\n参见 安装 Clang Format 。\n程序 clang-format 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写 clang-format 即可。\n参数 向 clang-format 传递的参数。它不应包含 -i(就地修改选项)。\n风格 Clang Format 格式化代码的风格。这里的内容和 .clang-format 的内容一致。\n你可以查看 Clang-Format Style Options 或其他资料以获取关于代码格式化风格的相关信息。\nYAPF YAPF 是格式化 Python 代码的工具。你可以点击 动作-\u003e格式化代码 或按快捷键 Ctrl+Shift+I 来格式化代码。如果你选择了代码的一部分,只有被选择的行会被格式化。\n参见 安装 YAPF 。\n程序 YAPF 的程序,它可以是如下两项之一:\n yapf:需要能在命令行下执行 yapf 命令。参数可以为空。 Python 解释器的程序名,如 python,python2 等。参数应该为 -m yapf。 注意,你需要 使用 Python 2 来格式化 Python 2 代码,使用 Python 3 来格式化 Python 3 代码 。因此你需要选择正确的 Python 解释器程序。\n参数 传递给 YAPF 程序的参数。如果在程序一栏里填写的是 Python 解释器,这里的参数应该是 -m yapf。参数中不应包含 -i(就地修改选项)。\n风格 YAPF 格式化代码的风格,这里的内容和 .style.yapf 的内容一致。你可以运行 yapf --style-help,查看 文档 或其他资料以获取关于代码格式化风格的相关信息。\nLanguage Server 参见 安装 Language Server .\n利用 Language Server 获取提示信息 使用 Language Server 以获取错误,警告,提示等信息。\n你可以将鼠标移动到提示错误的下划线上以获取错误或警告的相关信息。\n提示延迟 若距离最近一次修改的时间达到了 延迟 毫秒,更新提示信息。\nLanguage Server 可执行文件路径 Language Server 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写相应的可执行文件的文件名即可。\nLanguage Server 参数 为 Language Server 程序传递的额外参数。你可以阅读相应的 Language Server 程序的文档以了解更多信息。\n例如,如果你使用 pyls 作为 Python 的 Language Server 程序,你可以填写 python 作为 Language Server 程序,-m pyls 作为参数。\nCompetitive Companion 参见 安装 Competitive Companion .\n打开新标签页 当一个问题被解析时,打开一个新标签页。\n如果该选项被禁用,当一个问题被解析时,当前页面的测试用例将会被新的测试用例覆盖。\n连接端口 从 Competitive Companion 接收数据使用的端口。\n默认情况下该端口为 10045,在大多数情况下不用更改。在遇到端口冲突等情况时,你可以在 Competitive Companion 里设置自定义端口,并在这里更改数据接收端口。\n使用从 Competitive Companion 处获取的时间限制 在解析一道题目后,为对应的标签页使用从 Competitive Companion 获取的时间限制。\n头部注释 在获取一道题目后在代码开头添加的注释。\n头部注释的内容 你可以在头部注释中使用如下占位符:\n ${time}:题目被解析的时间,相应的时间格式可以在 头部注释的时间格式 中设置。 ${json.X.Y}:由 Competitive Companion 提供的数据的一个属性。你可以在 Competitive Companion 的文档 中获得更多信息。例如,${json.name} 代表题目名。 头部注释的时间格式 ${time} 占位符对应的时间的格式。你可以阅读如下 Qt 文档以获得更多信息:\n Date Format Time Format CF Tool 你可以使用 CF Tool 向 Codeforces 提交你的代码。\n为了提交你的代码,你需要使用 Competitive Companion 解析题目,或是手动设置标签页的题目链接。\n参见 安装 CF Tool .\n路径 CF Tool 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写 cf 即可。\n为评测结果显示气泡信息 在收到一次提交的结果后,显示一条气泡信息。\n气泡信息是系统通知,在 CP Editor 外仍然可见。在你忙于解决下一个问题时,气泡信息可以让你得知前一个问题的解决情况。\nWakaTime WakaTime 可以帮助你进行工作量的统计。\n参见 安装 WakaTime 。\n启用 WakaTime 是否启用 WakaTime。\n路径 WakaTime 可执行文件的路径。如果它已经在 PATH 环境变量中,只需填写 wakatime 即可。\nApi 密钥 可以在 WakaTime 设置 查看。\n如果有 WakaTime 的全局配置文件 ~/.wakatime.cfg 则可以留空。\n使用代理 使用 网络代理 将数据发送给 WakaTime。\n","excerpt":"代码格式化 Clang Format Clang Format 是格式化 C/C++ 和 Java 代码的工具。你可以点击 动作-\u003e格式化代 …","ref":"/zh/docs/preferences/extensions/","title":"扩展"},{"body":"使用 stderr 进行调试 目前,CP Editor 并没有一个内置的 GUI 调试器,但这不意味着使用 CP Editor 就难以调试了。\n除了单步调试,最常用的调试方法就是输出一些变量。你还记得你试图分辨调试输出和正常输出的那些日子吗?使用 CP Editor,你就不需要这样做了。\n关键在于:使用 stderr 来输出调试信息。在 C++ 中,这意味着在输出时使用 cerr 而不是 cout。CP Editor 会将你的程序的 stderr 展示在“消息”区域。\n只在选中的测试点上运行 在 CP Editor 中,你不需要总是在所有测试点上运行。\n为了告诉 CP Editor 你不想在某个测试点上运行,你只需要取消选中这个测试点。你还可以使用“更多”菜单来管理勾选情况:全选,取消全选,取消选择已通过的(当你通过了大多数测试点,而只想在少数未通过的测试点上调试时,这非常有用)以及反选。\n如果你想在单个测试点上运行,你还可以点击位于测试点的“运行”按钮。\n解决有多解的题目时,将输出复制到答案 有时你会解决一些有多个正确答案的题目。OJ 有 Special Judge,但你没有 Special Judge,也没有时间自己写一个。让这些测试点保持 WA 状态可能让人看着不爽,甚至带来不便,因为你在修改代码后需要再次检查它们是否正确。\nCP Editor 提供了一个解决方法:将输出复制到答案。这可以在答案编辑框的右键菜单中为单个测试点进行,也可以在“更多”菜单中为所有选中的测试点进行。有了这个功能,你就能够轻松地将已通过的输出复制到答案,这样只要它们不改变就一直会是 AC 状态。\n加载,编辑以及保存测试点 你可以右键单击测试数据框,从而实现从文件中加载测试数据,在更大的窗口中编辑测试点,或者将测试点保存为文件。\ntestlib 评测器在运行时编译 testlib 评测器在切换评测器或设置变更时会重新编译,所以使用 testlib 评测器时运行后未能及时反馈结果是正常现象。\n将文件拖入 你可以直接将文件拖入编辑器或测试数据框中。\n将文件拖入编辑器中会打开该文件,而将文件拖入测试数据框的输入/答案框中,会自动用该文件填充该框。\n代码编辑器中的快捷键 除了菜单中提及的快捷键之外,你还可以使用 Qt 中的 只读快捷键 和 修改快捷键 。\nCP Editor 还提供一些隐藏的快捷键:Tab(当有文本被选中时)和 Shift+Tab 用于缩进和取消缩进,Ctrl+Enter 和 Ctrl+Shift+Enter 分别用于在当前行之前和之后插入空行,Shift+Delete 用于删除当前行。\n切换标签页 你可以使用 Ctrl+Tab 和 Ctrl+Shift+Tab 以切换到下一个/上一个标签。\n标签栏的右键菜单 你可以通过右键点击标签调出一个菜单,包括:\n 管理标签页:关闭其它标签页,关闭右侧标签页,等等。 复制标签页。当你想要在不影响当前代码的同时做一些实验性的改动,或者用不同的方法解决一道题目而不想重新获取样例时,这非常有用。 为单个标签页设置编译命令/时间限制。也许在你解决一道奇特的题目时可以用到。 在文件管理器中查看源文件/可执行文件。轻松地找到你的代码和可执行文件。 管理题目链接:在浏览器中打开题目,设置 Codeforces 链接,等等。 设置页面中的快捷键 在设置页面中,你可以使用 Ctlr+D,Ctrl+R 和 Ctrl+S 作为 “默认”,“重置” 和 “应用” 的快捷键。\n你还可以使用 Ctlr+Tab 和 Ctlr+Shift+Tab 以实现各设置页面间的快捷切换。\n切换视图模式 编辑器模式:你可以专注于你的代码。 IO 模式:你可以仔细检查输出和错误。 分屏模式:你可以同时看到代码和测试用例。 你可以在 设置 中设置一个快捷键来快速切换到编辑器模式。\n从命令行启动 CP Editor CP Editor 支持在命令行下启动,可以通过执行 cpeditor --help 命令获得更多详情。\n在 Windows 下,更推荐使用类 UNIX 的终端(如 Git Bash)。\n在命令行下,你可以通过 cpeditor \u003cpath\u003e 来在指定的位置创建新文件,或是用 cpeditor --cpp \u003cdirectory\u003e 打开一个目录下的所有 C++ 源代码,还可以通过 cpeditor --no-restore-session 暂时禁用 在启动时恢复上一次会话 。\nCP Editor 在接收到 SIGINT 和 SIGHUP 命令时会正常关闭,因此如果你在命令行下启动 CP Editor,你可以通过按下 Ctrl+C 退出,而不必担心丢失任何工作。\n","excerpt":"使用 stderr 进行调试 目前,CP Editor 并没有一个内置的 GUI 调试器,但这不意味着使用 CP Editor 就难以调试 …","ref":"/zh/docs/tips/","title":"提示"},{"body":"Testcases Input File Save Path Answer File Save Path The path where the test cases are saved . If it is a relative path, it is relative to the source file.\nYou can use the following place holders:\n ${filename}: the complete filename ${basename}: the base file name without the suffix ${0-index}: the index of the test case started from 0 ${1-index}: the index of the test case started from 1 For example, a test case is the 3-rd test case of the source file /a/b/c.cpp, the place holders are:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 If the path is testcases/${basename}-${1-index}.in, the input of this test case will be saved in /a/b/testcases/c-3.in.\nTestcases Matching Rules The rules used to match test cases when loading pairs of test cases.\nEach rule is a pair of regular expression patterns . The first regex matches the whole input file name, and the second pattern is a replacement pattern which is the name of the answer file.\nFor example, you can use (.+)\\.in and \\1.out to match test-1.in and test-1.out, or use (.+)\\.in\\.(\\d+) and \\1.ans.\\2 to match test.in.3 and test.ans.3.\nWhen loading pairs of test cases, each rule which matches an input file will be used to try to find the corresponding answer file to the input file.\nProblem URL Default File Path For Problem URLs The default path when choosing where to save an untitled tab with problem URL.\nEach rule is a pair of regular expression patterns . The first regex matches a part of the problem URL, and the second pattern is a replacement pattern which is the default save path.\nWhen saving a file with a problem URL, if the problem URL matches at least one regex in the rules, the default save path will be the replacement of the first matching regex.\nHere’s an example of a rule:\nThe problem URL regex: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)\nThe file path: /home/username/Codeforces/\\1/\\2\nDefault Paths The default path used when the user is asked for a file path.\nThere are several actions, different actions can use different default paths.\nThe user can set multiple default paths, each default path has a name. A default path can be used as a place holder in the default path of an action. When the user chooses a path for an action, several default paths can be set to this path.\nFor example:\n The default path for the action “Save File” is ${file}, and “Save File” changes file and testcase. The default path for the action “Load Single Test Case” is ${testcase}, and “Load Single Test Case” only changes testcase. At the beginning, file is /a/b and testcase is /a/c. You are asked to choose the path for “Load Single Test Case”. The default path is /a/c, and you choose /a/d as the path. Now file is still /a/b, but testcase is changed to /a/d. You are asked to choose the path for “Save File”. The default path is /a/b, and you choose /a/e as the path. Now both file and testcase are /a/e. You are asked to choose the path for “Load Single Test Case”. The default path is /a/e because testcase was modified by choosing /a/e for “Save File”. In the preferences window, the default paths changed by an action is a comma-separated list.\n","excerpt":"Testcases Input File Save Path Answer File Save Path The path where …","ref":"/docs/preferences/file-path/","title":"File Path"},{"body":"Testcases Input File Save Path Answer File Save Path The path where the test cases are saved . If it is a relative path, it is relative to the source file.\nYou can use the following place holders:\n ${filename}: the complete filename ${basename}: the base file name without the suffix ${0-index}: the index of the test case started from 0 ${1-index}: the index of the test case started from 1 For example, a test case is the 3-rd test case of the source file /a/b/c.cpp, the place holders are:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 If the path is testcases/${basename}-${1-index}.in, the input of this test case will be saved in /a/b/testcases/c-3.in.\nTestcases Matching Rules The rules used to match test cases when loading pairs of test cases.\nEach rule is a pair of regular expression patterns . The first regex matches the whole input file name, and the second pattern is a replacement pattern which is the name of the answer file.\nFor example, you can use (.+)\\.in and \\1.out to match test-1.in and test-1.out, or use (.+)\\.in\\.(\\d+) and \\1.ans.\\2 to match test.in.3 and test.ans.3.\nWhen loading pairs of test cases, each rule which matches an input file will be used to try to find the corresponding answer file to the input file.\nProblem URL Default File Path For Problem URLs The default path when choosing where to save an untitled tab with problem URL.\nEach rule is a pair of regular expression patterns . The first regex matches a part of the problem URL, and the second pattern is a replacement pattern which is the default save path.\nWhen saving a file with a problem URL, if the problem URL matches at least one regex in the rules, the default save path will be the replacement of the first matching regex.\nHere’s an example of a rule:\nThe problem URL regex: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)\nThe file path: /home/username/Codeforces/\\1/\\2\nDefault Paths The default path used when the user is asked for a file path.\nThere are several actions, different actions can use different default paths.\nThe user can set multiple default paths, each default path has a name. A default path can be used as a place holder in the default path of an action. When the user chooses a path for an action, several default paths can be set to this path.\nFor example:\n The default path for the action “Save File” is ${file}, and “Save File” changes file and testcase. The default path for the action “Load Single Test Case” is ${testcase}, and “Load Single Test Case” only changes testcase. At the beginning, file is /a/b and testcase is /a/c. You are asked to choose the path for “Load Single Test Case”. The default path is /a/c, and you choose /a/d as the path. Now file is still /a/b, but testcase is changed to /a/d. You are asked to choose the path for “Save File”. The default path is /a/b, and you choose /a/e as the path. Now both file and testcase are /a/e. You are asked to choose the path for “Load Single Test Case”. The default path is /a/e because testcase was modified by choosing /a/e for “Save File”. In the preferences window, the default paths changed by an action is a comma-separated list.\n","excerpt":"Testcases Input File Save Path Answer File Save Path The path where …","ref":"/ru/docs/preferences/file-path/","title":"File Path"},{"body":"Testcases Input File Save Path Answer File Save Path The path where the test cases are saved . If it is a relative path, it is relative to the source file.\nYou can use the following place holders:\n ${filename}: the complete filename ${basename}: the base file name without the suffix ${0-index}: the index of the test case started from 0 ${1-index}: the index of the test case started from 1 For example, a test case is the 3-rd test case of the source file /a/b/c.cpp, the place holders are:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 If the path is testcases/${basename}-${1-index}.in, the input of this test case will be saved in /a/b/testcases/c-3.in.\nTestcases Matching Rules The rules used to match test cases when loading pairs of test cases.\nEach rule is a pair of regular expression patterns . The first regex matches the whole input file name, and the second pattern is a replacement pattern which is the name of the answer file.\nFor example, you can use (.+)\\.in and \\1.out to match test-1.in and test-1.out, or use (.+)\\.in\\.(\\d+) and \\1.ans.\\2 to match test.in.3 and test.ans.3.\nWhen loading pairs of test cases, each rule which matches an input file will be used to try to find the corresponding answer file to the input file.\nProblem URL Default File Path For Problem URLs The default path when choosing where to save an untitled tab with problem URL.\nEach rule is a pair of regular expression patterns . The first regex matches a part of the problem URL, and the second pattern is a replacement pattern which is the default save path.\nWhen saving a file with a problem URL, if the problem URL matches at least one regex in the rules, the default save path will be the replacement of the first matching regex.\nHere’s an example of a rule:\nThe problem URL regex: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)\nThe file path: /home/username/Codeforces/\\1/\\2\nDefault Paths The default path used when the user is asked for a file path.\nThere are several actions, different actions can use different default paths.\nThe user can set multiple default paths, each default path has a name. A default path can be used as a place holder in the default path of an action. When the user chooses a path for an action, several default paths can be set to this path.\nFor example:\n The default path for the action “Save File” is ${file}, and “Save File” changes file and testcase. The default path for the action “Load Single Test Case” is ${testcase}, and “Load Single Test Case” only changes testcase. At the beginning, file is /a/b and testcase is /a/c. You are asked to choose the path for “Load Single Test Case”. The default path is /a/c, and you choose /a/d as the path. Now file is still /a/b, but testcase is changed to /a/d. You are asked to choose the path for “Save File”. The default path is /a/b, and you choose /a/e as the path. Now both file and testcase are /a/e. You are asked to choose the path for “Load Single Test Case”. The default path is /a/e because testcase was modified by choosing /a/e for “Save File”. In the preferences window, the default paths changed by an action is a comma-separated list.\n","excerpt":"Testcases Input File Save Path Answer File Save Path The path where …","ref":"/zh_tw/docs/preferences/file-path/","title":"File Path"},{"body":"测试点 输入文件/答案文件保存路径 设置测试数据 保存 的位置。如果设置的路径是相对路径,则实际路径将基于源代码所在路径。\n你可以使用如下占位符:\n ${filename}:完整的文件名。 ${basename}:将 ${filename} 去掉扩展名后的文件名。 ${0-index}:从 0 开始的测试点编号。 ${1-index}:从 1 开始的测试点编号。 例如,某个输入文件是源代码 /a/b/c.cpp 的第三个测试点的输入文件,此时各占位符将会以如下方式被替换:\n ${filename}: c.cpp ${basename}: c ${0-index}: 2 ${1-index}: 3 如果输入文件的保存路径被设定为 testcases/${basename}-${1-index}.in,则该测试数据的输入文件将会被保存在 /a/b/testcases/c-3.in 下。\n测试数据匹配规则 在加载成对的测试点时,输入文件和答案文件的匹配规则。\n每条规则是一对 正则表达式 。其中第一个正则表达式用于匹配完整输入文件名,第二个正则表达式用于匹配相应的答案文件名。\n例如,你可以使用 (.+)\\.in 和 \\1.out 匹配 test-1.in 和 test-1.out,或者使用 (.+)\\.in\\.(\\d+) 和 \\1.ans.\\2 匹配 test.in.3 和 test.ans.3。\n在加载成对的测试点时,每一条与输入文件匹配的规则都会被用于尝试寻找相应的答案文件。\n题目链接 针对题目链接的默认保存路径 保存一个有题目链接的新文件时,使用的默认保存路径。\n每条规则是一对 正则表达式 。其中第一个正则表达式用于匹配题目链接的一部分,第二个正则表达式用于设置相应的保存路径。\n当保存一个有题目链接的新文件时,如果题目链接与至少一个规则匹配,将使用第一个匹配的规则对应的保存路径。\n下面是一个例子:\n 题目链接: codeforces.com/contest/([1-9]\\d*)/problem/([A-Z][1-9]?)。 相应的文件路径: /home/username/Codeforces/\\1/\\2。 默认路径 在各种需要用户选择文件路径的情况下,默认的文件路径。对于不同的操作,可以设置不同的默认路径。\n用户可以设置多种默认路径,每条默认路径都有一个名称。设置的默认路径名称可以作为占位符在其他默认路径中使用。当用户为某个操作设定新的路径,其他路径的值也可能会发生变化。\n例如:\n 操作“保存文件”的默认路径是 ${file},而“保存文件”会修改 file 和 testcase。 操作“加载单个测试用例”的默认路径是 ${testcase},而“加载单个测试用例”会修改 testcase。 刚开始时,file 是 /a/b,testcase 是 /a/c。 在执行“加载单个测试用例”操作时,默认路径为 /a/c,而你操作时将路径设置为 /a/d。现在 file 代表的路径仍然是 /a/b,而 testcase 代表的路径变成了 /a/d。 在执行“保存文件”操作时,默认路径为 /a/b,而你操作时将路径设置为 /a/e。现在 file 和 testcase 代表的路径都变成了 /a/e。 在执行“加载单个测试用例”操作时,默认路径已经变成了 /a/e,因为在执行“保存文件”操作时,testcase 代表的路径被修改了。 在设置中,可以设置执行每个操作后,被改变的路径的列表,列表中相邻两项之间用逗号隔开。\n","excerpt":"测试点 输入文件/答案文件保存路径 设置测试数据 保存 的位置。如果设置的路径是相对路径,则实际路径将基于源代码所在路径。\n你可以使用如下占 …","ref":"/zh/docs/preferences/file-path/","title":"文件路径"},{"body":"How to fetch test cases from the websites? You have to install Competitive Companion on your browser, and use it on the website while CP Editor is running. Here is a youtube video demonstrating this setup.\nHow to submit to CF inside CP Editor? You have to either parse the problem from Competitive Companion, or set the problem URL in the right-click menu of the tabs. Then you’ll see the submit button.\nI am using it on Codeforces but the submit button is not clickable. It’s because CP Editor can’t run the cf command. Please make sure it’s in the PATH or set the path to it in the Preferences.\nWhen I click the Submit button, I get some message saying template is required? CF-Tool requires you to configure it before you use it. Please run cf config in the terminal to set the username \u0026 password and add a template.\nHow to enable error linting in the code editor? You need to install a Language Server program and set the settings in Preferences -\u003e Extensions -\u003e Language Server. You can learn about more details here .\nMy code gets TLE on every first execution after compilation. It’s probably because your anti-virus software is scanning your program. A possible solution is to set the output directory of the executable files (for example, you can set it to D:/cpeditor-executables/${basename}), and add that directory (D:/cpeditor-executables in the example) in the whitelist of your anti-virus software.\n","excerpt":"How to fetch test cases from the websites? You have to install …","ref":"/docs/faq/","title":"FAQ"},{"body":"Как получить тестовые примеры с веб-сайта? Вам следует установить Competitive Companion в ваш браузер и использовать его при запущенном CP Editor. Видео на YouTube , демонстрирующее эту настройку.\nКак отправлять решения на проверку в CF прямо из CP Editor? Вы должны либо скопировать проблему из Competitive Companion, либо задать URL-адрес проблемы в контекстном меню вкладок. Затем вы увидите кнопку отправки.\nЯ использую CP Editor на Codeforces, но кнопка отправки отключена. CP Editor не может выполнить команду cf. Пожалуйста, убедитесь, что команда указана в PATH, или укажите путь к ней в настройках.\nКогда я нажимаю кнопку отправки, я получаю сообщение о том, что требуется шаблон. Настройте CF-Tool перед использованием. Пожалуйста, запустите cf config в терминале для установки имя пользователя с паролем, затем добавьте шаблон.\nКак включить подсветку ошибок в редакторе кода? Вам необходимо установить протокол языкового сервера и добавить его в Настройки -\u003e Расширения -\u003e Language Server. Более подробную информацию вы можете узнать здесь .\nМой код получает TLE (превышение лимита времени) при каждом выполнении после компиляции. Вероятно, это связано с тем, что ваш антивирус сканирует вашу программу. Возможным решением является установка output директории для исполняемых файлов (например, вы можете установить его на D:/cpeditor-executables/${basename}), и добавить эту директорию (D:/cpeditor-executables в примере) в белый список вашего антивируса.\n","excerpt":"Как получить тестовые примеры с веб-сайта? Вам следует установить …","ref":"/ru/docs/faq/","title":"FAQ"},{"body":"如何从网站上抓取测试数据? 你需要在浏览器上安装 Competitive Companion ,并在 CP Editor 运行时使用它。 这个 youtube 视频 演示了安装过程。\n如何在 CP Editor 里将代码提交到 CF? 你需要使用 Competitive Companion 获取题目,或是右击标签栏后在右键菜单中设置题目链接。之后你就可以看到提交按钮了。\n我不能点击提交按钮。 这是因为 CP Editor 无法执行 cf 命令。请确保它在 PATH 环境变量中,或是在设置中设置了它的路径。\n当我点击提交按钮时,提示“template is required”。 CF Tool 需要在使用前进行配置。请在终端中执行 cf config 以完成用户名和密码设置,并添加模板。\n如何在代码编辑框中启用错误提示? 你需要安装 Language Server 程序 并在 设置-\u003e扩展-\u003eLanguage Server 中完成有关配置。更多细节详见 初始化 页面。\n我的代码每次首次运行时都超时。 这很可能是因为你的杀毒软件在扫描你的程序。一个可能的解决方法是, 设置可执行文件的输出目录 (例如,你可以将其设置为 D:/cpeditor-executables/${basename}),然后将这个目录(在上面的例子中,即 D:/cpeditor-executables)加到杀毒软件的白名单中。\n","excerpt":"如何从网站上抓取测试数据? 你需要在浏览器上安装 Competitive Companion ,并在 CP Editor 运行时使用它。 这 …","ref":"/zh/docs/faq/","title":"FAQ"},{"body":"How to fetch test cases from the websites? You have to install Competitive Companion on your browser, and use it on the website while CP Editor is running. Here is a youtube video demonstrating this setup.\nHow to submit to CF inside CP Editor? You have to either parse the problem from Competitive Companion, or set the problem URL in the right-click menu of the tabs. Then you’ll see the submit button.\nI am using it on Codeforces but the submit button is not clickable. It’s because CP Editor can’t run the cf command. Please make sure it’s in the PATH or set the path to it in the Preferences.\nWhen I click the Submit button, I get some message saying template is required? CF-Tool requires you to configure it before you use it. Please run cf config in the terminal to set the username \u0026 password and add a template.\nHow to enable error linting in the code editor? You need to install a Language Server program and set the settings in Preferences -\u003e Extensions -\u003e Language Server. You can learn about more details here .\nMy code gets TLE on every first execution after compilation. It’s probably because your anti-virus software is scanning your program. A possible solution is to set the output directory of the executable files (for example, you can set it to D:/cpeditor-executables/${basename}), and add that directory (D:/cpeditor-executables in the example) in the whitelist of your anti-virus software.\n","excerpt":"How to fetch test cases from the websites? You have to install …","ref":"/zh_tw/docs/faq/","title":"FAQ"},{"body":"You can set custom key bindings for many actions. You can change the key by clicking the edit and press the key you want. You can delete a custom key binding by clicking the button on the right.\n","excerpt":"You can set custom key bindings for many actions. You can change the …","ref":"/docs/preferences/key-bindings/","title":"Key Bindings"},{"body":"You can set custom key bindings for many actions. You can change the key by clicking the edit and press the key you want. You can delete a custom key binding by clicking the button on the right.\n","excerpt":"You can set custom key bindings for many actions. You can change the …","ref":"/ru/docs/preferences/key-bindings/","title":"Key Bindings"},{"body":"您可以針對許多動作自訂快捷鍵。點一下「編輯」會開始紀錄鍵盤按鍵,也可以按下「刪除」來清除自訂的快捷鍵組合。\n","excerpt":"您可以針對許多動作自訂快捷鍵。點一下「編輯」會開始紀錄鍵盤按鍵,也可以按下「刪除」來清除自訂的快捷鍵組合。\n","ref":"/zh_tw/docs/preferences/key-bindings/","title":"快捷鍵"},{"body":"你可以设置不同操作的自定义热键。你可以通过点击某个热键的编辑框,并按下你想要设置的热键,来设置某个操作的热键。你还可以按下相应热键右侧的删除按钮来清除自定义热键。\n","excerpt":"你可以设置不同操作的自定义热键。你可以通过点击某个热键的编辑框,并按下你想要设置的热键,来设置某个操作的热键。你还可以按下相应热键右侧的删除 …","ref":"/zh/docs/preferences/key-bindings/","title":"热键"},{"body":"Update Check for updates on startup When CP Editor starts, checks whether there are new versions of CP Editor.\nIf there are new versions, a pop-up window will ask you whether to update or not.\nUse the beta version When checking for updates, check for beta versions. The beta versions usually have more features and improvements, but they are not as stable as the stable versions.\nLimits Default Time Limit The default time limit when executing programs.\nThe program will be killed if it doesn’t terminate within the time limit.\nOutput Length Limit The maximum number of characters in the output of the program.\nThe program will be killed if either of its stdout or stderr is too long.\nOutput Display Length Limit The maximum number of characters to be displayed for the output of the program.\nIf the output is too long, it will be elided.\nMessage Length Limit The maximum number of characters in each message in the top-right corner of the main window.\nThe message will be elided if it’s too long.\nHTML Diff Viewer Length Limit The maximum number of characters in the HTML Diff Viewer.\nThe Diff Viewer will fall back to plain text if either of the output or the expected output is too long.\nOpen File Length Limit The maximum number of characters in a source file to open.\nA source file won’t be opened if it’s too long.\nDisplay Test Case Length Limit The maximum number of characters in a test case to be displayed.\nA test case will be elided and read-only if it’s too long.\nNetwork Proxy The proxy server used to check for updates.\n","excerpt":"Update Check for updates on startup When CP Editor starts, checks …","ref":"/docs/preferences/advanced/","title":"Advanced"},{"body":"Update Check for updates on startup When CP Editor starts, checks whether there are new versions of CP Editor.\nIf there are new versions, a pop-up window will ask you whether to update or not.\nUse the beta version When checking for updates, check for beta versions. The beta versions usually have more features and improvements, but they are not as stable as the stable versions.\nLimits Default Time Limit The default time limit when executing programs.\nThe program will be killed if it doesn’t terminate within the time limit.\nOutput Length Limit The maximum number of characters in the output of the program.\nThe program will be killed if either of its stdout or stderr is too long.\nOutput Display Length Limit The maximum number of characters to be displayed for the output of the program.\nIf the output is too long, it will be elided.\nMessage Length Limit The maximum number of characters in each message in the top-right corner of the main window.\nThe message will be elided if it’s too long.\nHTML Diff Viewer Length Limit The maximum number of characters in the HTML Diff Viewer.\nThe Diff Viewer will fall back to plain text if either of the output or the expected output is too long.\nOpen File Length Limit The maximum number of characters in a source file to open.\nA source file won’t be opened if it’s too long.\nDisplay Test Case Length Limit The maximum number of characters in a test case to be displayed.\nA test case will be elided and read-only if it’s too long.\nNetwork Proxy The proxy server used to check for updates.\n","excerpt":"Update Check for updates on startup When CP Editor starts, checks …","ref":"/ru/docs/preferences/advanced/","title":"Advanced"},{"body":"Update Check for updates on startup When CP Editor starts, checks whether there are new versions of CP Editor.\nIf there are new versions, a pop-up window will ask you whether to update or not.\nUse the beta version When checking for updates, check for beta versions. The beta versions usually have more features and improvements, but they are not as stable as the stable versions.\nLimits Default Time Limit The default time limit when executing programs.\nThe program will be killed if it doesn’t terminate within the time limit.\nOutput Length Limit The maximum number of characters in the output of the program.\nThe program will be killed if either of its stdout or stderr is too long.\nOutput Display Length Limit The maximum number of characters to be displayed for the output of the program.\nIf the output is too long, it will be elided.\nMessage Length Limit The maximum number of characters in each message in the top-right corner of the main window.\nThe message will be elided if it’s too long.\nHTML Diff Viewer Length Limit The maximum number of characters in the HTML Diff Viewer.\nThe Diff Viewer will fall back to plain text if either of the output or the expected output is too long.\nOpen File Length Limit The maximum number of characters in a source file to open.\nA source file won’t be opened if it’s too long.\nDisplay Test Case Length Limit The maximum number of characters in a test case to be displayed.\nA test case will be elided and read-only if it’s too long.\nNetwork Proxy The proxy server used to check for updates.\n","excerpt":"Update Check for updates on startup When CP Editor starts, checks …","ref":"/zh_tw/docs/preferences/advanced/","title":"Advanced"},{"body":"更新 启动时检查更新 在 CP Editor 启动时,检查是否有新版本的 CP Editor。\n如果有新版本,则会弹出一个窗口询问你是否进行更新。\n使用测试版本 检查更新时,检查 Beta 版本。 Beta 版通常具有更多功能和改进,但不如稳定版稳定。\n限制 默认时间限制 执行程序的默认时间限制。\n超时的程序会被终止。\n输出长度限制 程序的最大输出字符数。\nstdout 或 stderr 过长的程序将会被终止。\n输出显示长度限制 会显示出来的程序输出的最大字符数。\n如果输出过长,超长部分会被省略。\n消息长度限制 主窗口右上角内每条信息的最大长度。\n超长部分将会被省略。\nHTML 差异查看器长度限制 HTML 差异查看器中的最大字符数。\n如果输出或答案太长,差异查看器将以纯文本显示。\n打开文件长度限制 允许打开的文件的最大字符数。\n如果文件超长,将不会被打开。\n显示测试用例长度限制 会显示出来的测试用例的最大字符数。\n如果测试用例过长,超长部分会被省略,且测试用例会变得只读。\n网络代理 用于检查更新的代理服务器。\n","excerpt":"更新 启动时检查更新 在 CP Editor 启动时,检查是否有新版本的 CP Editor。\n如果有新版本,则会弹出一个窗口询问你是否进行 …","ref":"/zh/docs/preferences/advanced/","title":"高级"},{"body":"Temporary Directory In CP Editor, each file has a temporary directory, it can be used to save the executable files, etc.\nYou can treat it as a place to safely save something for each tab (i.e. each file) without affecting other files on your disk, and it will be automatically deleted when the tab is closed.\nOn Linux, it’s /tmp/cpeditor-XXXXXX. On Windows, it’s C:\\Users\\\u003cusername\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX.\nRegular Expression The regular expression is used to match patterns in a string and find and replace substrings.\nYou can find many online regex courses, for example https://regexone.com/.\nIn CP Editor, you can use \\1, \\2, etc. for the content of the first/second capture group in the replacement patterns.\n","excerpt":"Temporary Directory In CP Editor, each file has a temporary directory, …","ref":"/docs/preferences/general/","title":"General"},{"body":"Temporary Directory In CP Editor, each file has a temporary directory, it can be used to save the executable files, etc.\nYou can treat it as a place to safely save something for each tab (i.e. each file) without affecting other files on your disk, and it will be automatically deleted when the tab is closed.\nOn Linux, it’s /tmp/cpeditor-XXXXXX. On Windows, it’s C:\\Users\\\u003cusername\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX.\nRegular Expression The regular expression is used to match patterns in a string and find and replace substrings.\nYou can find many online regex courses, for example https://regexone.com/.\nIn CP Editor, you can use \\1, \\2, etc. for the content of the first/second capture group in the replacement patterns.\n","excerpt":"Temporary Directory In CP Editor, each file has a temporary directory, …","ref":"/ru/docs/preferences/general/","title":"General"},{"body":"暫存目錄 CP Editor 中,每個檔案都位於各自的臨時目錄,用來存放可執行檔及其它檔案。\n您可以將其看做每個分頁(每個檔案)都有一個安全存放資料的地方,以避免影響硬碟上的其他檔案。暫存目錄會在分頁關閉時被自動刪除。\n暫存目錄的位置因不同系統而異:\n Linux:/tmp/cpeditor-XXXXXX Windows:C:\\Users\\\u003c您的使用者名稱\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX 正規表達式 正規表達式 可以用來比對字串中符合給定規則的內容,並用來尋找及取代它們。\n您可以在網路上找到許多關於正規表達式的課程,例如 https://regexone.com/。\n在 CP Editor 中,您可以使用 \\\u003c數字\u003e 來表示符合取代規則的第幾個組別。例如:\\1、\\2 表示符合取代規則的第一、第二個組別。\n","excerpt":"暫存目錄 CP Editor 中,每個檔案都位於各自的臨時目錄,用來存放可執行檔及其它檔案。\n您可以將其看做每個分頁(每個檔案)都有一個安全 …","ref":"/zh_tw/docs/preferences/general/","title":"一般"},{"body":"临时文件夹 在 CP Editor 中,每个文件都有一个临时目录,可用于保存可执行文件等等。\n你可以将其视为一个能够安全地为每个标签页(即每个文件)保存内容而不影响磁盘上其他文件的地方,并且在关闭标签页时它会被自动删除。\n在 Linux 上,它位于 /tmp/cpeditor-XXXXXX。在 Windows 上,它位于 C:\\Users\\\u003cusername\u003e\\AppData\\Local\\Temp\\cpeditor-XXXXXX。\n正则表达式 正则表达式 用于匹配字符串中的模式以及查找和替换子字符串。\n你可以找到许多在线正则表达式课程,例如: 正则表达式 30 分钟入门教程 。\n在 CP Editor 中,你可以使用 \\1, \\2 等用于替换模式中的第一个/第二个捕获组的内容。\n","excerpt":"临时文件夹 在 CP Editor 中,每个文件都有一个临时目录,可用于保存可执行文件等等。\n你可以将其视为一个能够安全地为每个标签页(即每 …","ref":"/zh/docs/preferences/general/","title":"通用"},{"body":" #td-cover-block-0 { background-image: url(/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } About CP Editor An IDE specially designed for competitive programming\n CP Editor is a Qt-based, lightweight and cross-platform IDE specially designed for competitive programming.\nIt’s free software distributed under GPL-3.0. The source code is available on GitHub.\n You can: Learn about the Features Download and have a try Read the Documentation Join the Community Become a Sponsor This website is built by Hugo with the Docsy theme. The home page is based on the Colorlib template. ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/about/","title":"About CP Editor"},{"body":" Ask for help / Share ideas GitHub Discussions Say thanks Say thanks to CP Editor! Make complaints CP Editor sucks Chat with other users Telegram Group ","excerpt":" Ask for help / Share ideas GitHub Discussions Say thanks Say …","ref":"/community/","title":"Join the CP Editor community"},{"body":" The Missing Editor for Competitive Programmers CP Editor is designed for competitive programming. It helps you focus on your algorithms and automates compilation, execution and testing of your code. It can fetch test cases from different platforms and submit solutions to Codeforces.\nView on GitHub Download What it does It automates all that's reasonably possible and allows you to purely focus on your code. Say no to manual efforts of running and testing your code against expected outputs.\n Get the testcases It can fetch testcases automatically from almost all competitive programming sites. No more copy-pasting!\n Test your solution With a single click you can run your code on multiple test cases and get verdicts.\n Submit to CF Thanks to CF tools, It can submit your solution directly to codeforces and show you verdict without leaving the editor.\n Run without Saving Variety of Themes Code Linting Submit to Codeforces Run your code\nwithout saving We know that you want to test something quickly. You can run your code with one click without saving and the hot exit feature makes it easy to restore your code from the last session.\nGet Started Now Dark themes? We've got you covered Our lives are colorful, why not our coding editor We have added five different themes for you to choose from: Light, Drakula, Monkai, Solarized Light and Solarized Dark. More themes are coming in the near future.\nGet Started Now Errors and Warnings?\nWe lint them while you are coding Save your precious contest time with code linting Using Language Servers, we provide real-time linting for errors and warnings in your code. You can see squiggles under the code and hover over them to get useful tooltips.\nGet Started Now We can submit your Solutions to Codeforces All thanks to Competitive Programming Community We have gathered the best tools in competitive programming and merged them into one editor. One such tool is called CF Tool. We have added it so you can submit and get verdicts in the editor.\nGet Started Now Simple and Adaptive User Interface We have made a simple UI with lots of flexibility and customisation and seamlessly adapts to your existing environment. Everything you need is always in front of your eyes\n Feedback from Community Our Community support us and keep us alive. We would love to hear your feedback too!\nSee what other Competitive Programmers have to say about our editor\n Easy to use and lightweight. It's very fast in terms of compiling and also provides the feature to parse testcases from competitive websites. It is the best editor I have ever used.\nYatharth Varma This is exactly what I was looking for. An Editor that automates all redundant tasks and helps me in focusing on the Algorithm. Give a try, you are gonna love me.\nNitish Kumar Singh Full support for\nC/C++, Java and Python Use the language you like We officially support three languages in the editor. You can set your own compilation commands and pass runtime arguments to your code. It really gets exciting when you have the opportunity to use different languages in different tabs with one-click options.\nGet Started Now Impressed by our features? We are excited that you have chosen to try out this editor. We hope that our Editor will fulfill all your needs in Competitive Programming. CP Editor is, \"by competitive programmers, to competitive programmers, for competitive programmers\".\nTry it now ","excerpt":" The Missing Editor for Competitive Programmers CP Editor is designed …","ref":"/","title":"CP Editor"},{"body":" Редактор, которого не хватало спортивным программистам CP Editor специально разработан для спортивного программирования. Он помогает вам сконцентрироваться на алгоритмах и автоматизирует компиляцию, выполнение и тестирование кода, а также умеет отображать тесты с различных платформ и может отправлять решения на Codeforces!\nСмотреть на GitHub Скачать Как это работает? CP Editor избавляет вас от написания рутинного кода пока идёт соревнование. Он автоматизирует большинство процессов, позволяя сосредоточиться на решении задачи.\n Захват тестов CP Editor способен получать примеры автоматически почти с любого сайта соревнований. Можете попрощаться с ошибками при копировании тестов.\n Быстрая печать Пишите быстрее, используя крутые возможности шаблонов. Буквально за две секунды вы можете вставить целый DFS в свой код.\n Получение вердикта Вы можете получить ответ на ваши примеры в один клик при помощи встроенной проверки или же из testlib. Если они вам не подходят, то добавьте свои варианты.\n Запуск без сохранения Множество тем Проверка кода Отправка на Codeforces Запускайте свой код\nВ любое время Мы знаем, что вы хотите протестировать свой код без временного файла Вы можете запустить свой код в один клик без сохранения, а особенность быстрого выхода сделает возможным восстановить ваш код с прошлой сессии.\nПрисоединяйтесь сейчас Темная тема? Пожалуйста Наши жизни полны красок, что мешает сделать таким же редактор? Мы добавили пять различных тем: Light, Drakula, Monkai, Solarized Light и Solarized Dark. Если этого вам недостаточно, попросите нас на странице сообщества и мы добавим больше.\nПрисоединяйтесь сейчас Ошибки и предупреждения?\nМы отмечаем их пока вы пишите Сохраните своё драгоценное время на контесте при помощи проверки кода Используя Языковые Сервера, мы предоставляем проверку вашему коду в реальном времени, прямо как Intellisense в VSCode и Atom. Вы можете увидеть стрелку у предупреждения и навести курсор, чтобы получить подсказку.\nПрисоединяйтесь сейчас Мы можем отправить ваши Решения на Codeforces Благодарность Сообществу Спортивного Программирования Мы собрали лучшие инструменты из спортивного программирования и объединили их в единое целое. Одним из таких средств является CF Tool. Мы добавили его, чтобы вы могли отправлять задачу и получать ответ сразу в редакторе.\nПрисоединяйтесь сейчас Разделяй и влавствуй Мы сделали простой, но мощный UI, который не будет мешать в процессе решения контеста Все, что вам нужно, всегда перед вашими глазами\n Отзывы от Сообщества Наше Сообщество помогает нам и поддерживает нас. Мы будем рады узнать и ваше мнение тоже!\nСмотрите, что другие спортивные программисты говорят о нашем редакторе:\n Простой в использовании и маловесящий. Очень быстро компилирует код, а также позволяет перенести тесты с сайтов соревнований. Это лучший редактор, который я когда-либо использовал.\nYatharth Varma Это именно то, что я искал. Редактор, который делает за меня всю простую работу и помогает мне сфокусироваться на алгоритме задачи. Попробуйте, вам понравится.\nNitish Kumar Singh Полная поддержка\nC/C++, Java и Python Используйте тот язык, который вам нравится Официально мы поддерживаем три языка программирования в редакторе. Для них вы можете установить свои собственные команды компиляции и передавать аргументы в свой код. Это правда удивляет, когда у вас есть возможность использовать разные языки программирования, просто переключаясь между вкладками.\nПопробуйте сейчас Впечатлены нашими возможностями? Мы рады, что вы выбрали наш редактор. Надеемся, он сможет покрыть все ваши потребности в Спортивном Программировании. CP Editor - это \"от спортивных программистов, для спортивных программистов\".\nПопробуйте сейчас ","excerpt":" Редактор, которого не хватало спортивным программистам CP Editor …","ref":"/ru/","title":"CP Editor"},{"body":" 算法竞赛选手们\n所需要的 IDE CP Editor 专为算法竞赛设计,不像其它 IDE 主要是为了开发设计的。它可以帮助你自动化编译、运行、测试,从而让你专注于算法设计。它甚至可以从各种算法竞赛网站上获取样例,将代码提交到 Codeforces 上!\n在 GitHub 上查看 下载 它如何为你工作 CP Editor 解决了算法竞赛中重复和无聊的任务。它会尽可能地将操作自动化,让你完全专注于代码。\n 获取测试用例 CP Editor 可以从几乎所有的算法竞赛网站上自动获取样例。你再也不用手动进行麻烦的复制粘贴。\n 更快地编程 强大的可自定义代码片段功能可加快编程速度。在短短两秒钟内,你可以将整个 DFS 代码插入编辑器。\n 获取评测结果 你可以通过内置检查器或来自 testlib 的检查器一键获取样例的评测结果。你也可以添加自己的 SPJ。\n 运行而无需保存 多种主题 代码检查 提交至 Codeforces 在任何时候\n运行任何代码 我们知道你想要无需临时文件就能进行测试 你可以一键运行代码而无需保存,热退出功能使你可以轻松地从上一个会话中还原代码。\n即刻开始 想要暗色模式?\n我们提供了 我们的生活是丰富多彩的,难道代码编辑器就不吗? 我们提供了五个不同的主题供你选择:Light, Drakula, Monkai, Solarized Light 以及 Solarized Dark。如果你不满意,请告诉我们,我们将为你提供更多。\n即刻开始 错误和警告?\n我们会在你打字的过程中指出 用代码检查节省宝贵的比赛时间 就像 VS Code 和 Atom 中的 Intellisense 那样,使用 Language Server,我们可以为代码中的错误和警告提供实时更新。你可以在警告下方看到波浪线,并将鼠标悬停在它们上方以获取提示。\n即刻开始 我们可以将你的代码提交到 Codeforces 多亏了算法竞赛编程社区 我们收集了算法竞赛编程中最好的工具,并将它们合并为一个 IDE。其中一种这样的工具称为 CF Tool。我们已经添加了它,因此,你可以在 CP Editor 中提交并获取评测结果。\n即刻开始 独特的屏幕,完美地工作 我们已经创建了一个简洁而功能强大的 UI,在解决问题时不会让你感到困惑 你所需的一切始终在你的眼前\n 来自社区的反馈 我们的社区支持我们并让我们保持活力。我们也很想听听你的反馈!\n看看其他算法竞赛选手们对 CP Editor 有什么看法\n Easy to use and lightweight. It's very fast in terms of compiling and also provides the feature to parse testcases from competitive websites. It is the best editor I have ever used.\nYatharth Varma This is exactly what I was looking for. An Editor that automates all redundant tasks and helps me in focusing on the Algorithm. Give a try, you are gonna love me.\nNitish Kumar Singh 全面支持\nC/C++, Java 和 Python 使用你喜欢的语言 我们支持三种编程语言。你可以设置自己的编译命令,并将运行时参数传递给代码。令人兴奋的是,你有机会在带有一键式选项的不同选项卡中使用不同的语言。\n即刻开始 被 CP Editor 的强大功能所吸引了? 很高兴你选择尝试 CP Editor。\n我们希望 CP Editor 能够满足你在算法竞赛编程中的所有需求。\nCP Editor 由算法竞赛选手创建,给算法竞赛选手使用,为算法竞赛选手着想。\n现在就试试 ","excerpt":" 算法竞赛选手们\n所需要的 IDE CP Editor 专为算法竞赛设计,不像其它 IDE 主要是为了开发设计的。它可以帮助你自动化编译、运 …","ref":"/zh/","title":"CP Editor"},{"body":" 讓你的競程之旅\n如虎添翼! The Missing Editor for Competitive Programmers -- CP Editor 是專為競程用途開發的程式碼編輯器。藉由自動化編譯、執行、測試的過程,讓您得以專注於設計演算法。它甚至可以從不同的平台取得測資,並繳交答案至 Codeforces!\n看看我們的 GitHub 下載軟體 厲害之處 How it works for you -- CP Editor 將競賽過程中大部分的重複又乏味的工作自動化,省略了繁複的程序,讓您可以全然專注於撰寫程式碼。\n 取得測資 CP Editor 可以從大部分的競賽網站取得測資,別再煩惱複製貼上時出差錯了。\n 寫得更快 您可以自訂各種常用的程式碼片段,節省撰寫重複程式碼的時間。在兩秒內變出 DFS 也不是難事了。\n 評判結果 使用內建或自 testlib 取得的評判程式來驗證範例測資,過程簡單快速。您也可以加入自己的評判程式。\n 免存檔執行 多種佈景 問題標註 提交至 Codeforces 想隨時執行程式\n沒問題 存檔很麻煩,我們都知道 我們讓存檔變得不再必要。僅需一步,您就可以立即執行您的程式;關閉視窗前不必猶豫,CP Editor 幫你記住工作階段。\n立即開始 盯著螢幕讓眼睛很不舒服嗎?\n沒問題,我們準備好暗色模式了。 生活多采多姿,程式碼編輯器也要一樣 我們準備了五種配色任君挑選:Light、Drakula、Monkai、Solarized Light 及 Solarized Dark。還是不滿意?歡迎到我們的社群網頁提出需求,我們可能就會在下次的更新加入。\n立即開始 編譯過不了?\n現在問題都無所遁形 不用再慢慢找哪裡拼錯了,Linter 都幫你標示出來 有了 Language Server 的協助,我們可以在程式碼即時顯示錯誤及警告,就像在 Atom 或 VS Code 中的 IntelliSense 那樣。您會見到警告訊息下方的波浪線,將滑鼠暫留在上方以檢視提示。\n立即開始 為您提交答案至Codeforces We can submit your Solutions to Codeforces -- 多虧了競賽程式的社群 我們蒐集了最棒的工具並將其整合在編輯器裡。CF Tool 讓您不用離開編輯器,就能繳交程式碼、讀取評判結果。\nGet Started Now 獨特又好用的介面 簡潔又強大的 UI 讓解題過程更加順暢\n需要的功能都在眼前,一目瞭然\nWe have made a simple yet powerful UI that shouldn't confuse you when solving problems Everything you need is always in front of your eyes\n-- 看看社群怎麼說 社群的力量支持我們的發展,我們也很樂意聽取您的回饋意見!\n來看看其他使用者對 CP Editor 的感想\n Easy to use and lightweight. It's very fast in terms of compiling and also provides the feature to parse testcases from competitive websites. It is the best editor I have ever used.\nYatharth Varma This is exactly what I was looking for. An Editor that automates all redundant tasks and helps me in focusing on the Algorithm. Give a try, you are gonna love me.\nNitish Kumar Singh 完整支援\nC/C++、Java 及 Python 使用您喜歡的程式語言 可以自訂編譯命令及執行引數,在不同分頁撰寫不同語言的程式碼。\n立即開始 喜歡這些功能嗎? 很高興您決定試用。\nCP Editor 是由競程選手開發,為競程選手考量,給競程選手使用。\n我們希望它能提供您於競賽中的一切所需。\nWe are excited that you have chosen to try out this editor. We hope that our Editor will fulfill all your needs in Competitive Programming. CP Editor is, \"by competitive programmers, to competitive programmers, for competitive programmers\".\n-- 立刻嘗試 ","excerpt":" 讓你的競程之旅\n如虎添翼! The Missing Editor for Competitive Programmers -- CP …","ref":"/zh_tw/","title":"CP Editor"},{"body":" [v-cloak] { display: none; } Get CP Editor on your machine and have a try! You probably want to use the latest stable version on {{ userPlatform }} . Choose your platform and the version you want to download Installation instructions All versions Loading... No available asset found Platform {{ platformOption }} Version v{{ release.tag_name }} (Latest Stable) (Latest Beta) Asset {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) Download ","excerpt":" [v-cloak] { display: none; } Get CP Editor on your machine and …","ref":"/download/","title":"Download CP Editor"},{"body":"","excerpt":"","ref":"/ru/need-translation-list/","title":"Need Translation List"},{"body":" #td-cover-block-0 { background-image: url(/ru/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/ru/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } Подробнее о CP Editor Редактор, созданный специально для спортивного программирования\n CP Editor - легковесная, основанная на Qt, кроссплатформенная среда разработки.\nЭто бесплатное ПО, распространяемое под лицензией GPL-3.0. Исходный код доступен на GitHub.\n Вы можете: Изучить Особенности Скачать и попробовать Прочитать Документацию Вступить в Сообщество Стать Спонсором Этот сайт сконструирован при помощи Hugo и использует Docsy тему. Домашнаяя страница базируется на шаблоне Colorlib. ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/ru/about/","title":"Подробнее о CP Editor"},{"body":" [v-cloak] { display: none; } Установи и попробуй CP Editor! Скорее всего вам нужна последняя стабильная версия для {{ userPlatform }} . Выберите платформу и версию, которую вы хотите скачать Инструкции для установки Все версии Загрузка... Необходимый файл не найден Платформа {{ platformOption }} Версия v{{ release.tag_name }} (Последняя стабильная) (Последняя бета) Файл {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) Скачать ","excerpt":" [v-cloak] { display: none; } Установи и попробуй CP Editor! …","ref":"/ru/download/","title":"Скачать CP Editor"},{"body":" Попросить помощь / Поделиться идеями GitHub Discussions Поблагодарить Say thanks to CP Editor! Пожаловаться CP Editor sucks Чат с остальными пользователями Telegram Group ","excerpt":" Попросить помощь / Поделиться идеями GitHub Discussions …","ref":"/ru/community/","title":"Вступай в сообщество CP Editor"},{"body":" [v-cloak] { display: none; } 立即安裝並體驗 CP Editor 您可能想找適用於 {{ userPlatform }} 系統的最新穩定版 。 選擇您的作業系統及想要下載的版本 安裝說明 所有版本 載入中... 未取得可用的檔案清單 作業系統 {{ platformOption }} 版本 v{{ release.tag_name }} (最新穩定版) (最新 Beta 版) 檔案 {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) 下載 ","excerpt":" [v-cloak] { display: none; } 立即安裝並體驗 CP Editor 您可能想找適用於 {{ …","ref":"/zh_tw/download/","title":"下載 CP Editor"},{"body":" [v-cloak] { display: none; } 在你的计算机上获取 CP Editor,然后试一试! 你可能想要使用 在 {{ userPlatform }} 上的最新稳定版本 。 选择你使用的平台和想要下载的版本 安装说明 所有版本 Gitee 镜像 FastGit 镜像 加载中... 找不到可下载的文件 平台 {{ platformOption }} 版本 v{{ release.tag_name }} (最新稳定版) (最新测试版) 下载项 {{ asset.name }} ({{ filesize(asset.size, { precision: 3 }) }}) 下载 ","excerpt":" [v-cloak] { display: none; } 在你的计算机上获取 CP Editor,然后试一试! 你可能想要使用 …","ref":"/zh/download/","title":"下载 CP Editor"},{"body":" #td-cover-block-0 { background-image: url(/zh/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/zh/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } 关于 CP Editor 专为算法竞赛而设计的 IDE\n CP Editor 是基于 Qt 的轻量级跨平台 IDE,专门为算法竞赛而设计。\n它是以 GPL-3.0 协议发布的自由软件。源代码可以在 GitHub 获取。\n 你可以: 了解 特性 下载 并尝试一下 阅读 文档 加入 社区 成为 赞助者 该网站使用 Hugo 以及 Docsy 主题构建。 主页 基于 Colorlib 模板制作。 ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/zh/about/","title":"关于 CP Editor"},{"body":"","excerpt":"","ref":"/zh_tw/need-translation-list/","title":"待翻譯清單"},{"body":"","excerpt":"","ref":"/zh/need-translation-list/","title":"待翻译列表"},{"body":" 提问 / 分享想法 GitHub Discussions(英文) 中文社区 表示感谢 Say thanks to CP Editor! 吐槽 CP Editor sucks 和其它用户聊天 Telegram 群组(英文) QQ 群 (1081647997) ","excerpt":" 提问 / 分享想法 GitHub Discussions(英文) 中文社区 表示感谢 Say thanks to …","ref":"/zh/community/","title":"加入 CP Editor 社区"},{"body":" 尋求協助 / 分享點子 GitHub Discussions 說聲感謝 對 CP Editor 說聲謝謝! 抱怨專區 我覺得 CP Editor 爛透了 與其他使用者交流 Telegram 群組 ","excerpt":" 尋求協助 / 分享點子 GitHub Discussions 說聲感謝 對 CP Editor 說聲謝謝! …","ref":"/zh_tw/community/","title":"加入 CP Editor 社群"},{"body":" #td-cover-block-0 { background-image: url(/zh_tw/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_960x540_fill_q75_catmullrom_bottom.jpg); } @media only screen and (min-width: 1200px) { #td-cover-block-0 { background-image: url(/zh_tw/about/featured-background_hu3d03a01dcc18bc5be0e67db3d8d209a6_725403_1920x1080_fill_q75_catmullrom_bottom.jpg); } } 關於 CP Editor 專為競程打造的整合式開發環境\n CP Editor 是一款採用 Qt 的輕巧型跨平台 IDE,特別為競賽程式用途設計。\n它也是遵循 GPL-3.0 授權規範散發的自由軟體。您可以在 GitHub 取得原始碼。\n 您可以: 了解它的特色 下載來試試看 閱讀說明文件 加入社群 成為我們的贊助者 本網站的建置係採用 Hugo 以及 Docsy 佈景。 首頁使用了 Colorlib 範本。 ","excerpt":" #td-cover-block-0 { background-image: …","ref":"/zh_tw/about/","title":"關於 CP Editor"}]
\ No newline at end of file
diff --git a/ru/404.html b/ru/404.html
index 98bea44c..78b455c0 100644
--- a/ru/404.html
+++ b/ru/404.html
@@ -158,7 +158,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../"
data-offline-search-max-results="10"
>
diff --git a/ru/about/index.html b/ru/about/index.html
index 14cfc9e6..c0181696 100644
--- a/ru/about/index.html
+++ b/ru/about/index.html
@@ -160,7 +160,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/ru/community/index.html b/ru/community/index.html
index bf9fc90b..9becde23 100644
--- a/ru/community/index.html
+++ b/ru/community/index.html
@@ -159,7 +159,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/faq/index.html b/ru/docs/faq/index.html
index e920662f..ec7416e6 100644
--- a/ru/docs/faq/index.html
+++ b/ru/docs/faq/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/index.html b/ru/docs/index.html
index ac10d1ec..be0f9739 100644
--- a/ru/docs/index.html
+++ b/ru/docs/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/installation/build-from-source/index.html b/ru/docs/installation/build-from-source/index.html
index 36f398ab..19091aa8 100644
--- a/ru/docs/installation/build-from-source/index.html
+++ b/ru/docs/installation/build-from-source/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/installation/download-from-releases/index.html b/ru/docs/installation/download-from-releases/index.html
index 559718f4..12fdf083 100644
--- a/ru/docs/installation/download-from-releases/index.html
+++ b/ru/docs/installation/download-from-releases/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/installation/index.html b/ru/docs/installation/index.html
index f80db6c2..8abcab6f 100644
--- a/ru/docs/installation/index.html
+++ b/ru/docs/installation/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/installation/use-artifacts/index.html b/ru/docs/installation/use-artifacts/index.html
index f17c7c4a..d3329bc2 100644
--- a/ru/docs/installation/use-artifacts/index.html
+++ b/ru/docs/installation/use-artifacts/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/installation/use-package-managers/index.html b/ru/docs/installation/use-package-managers/index.html
index 9d162598..457402c5 100644
--- a/ru/docs/installation/use-package-managers/index.html
+++ b/ru/docs/installation/use-package-managers/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/actions/index.html b/ru/docs/preferences/actions/index.html
index 0c4ec35a..dd0bb3f2 100644
--- a/ru/docs/preferences/actions/index.html
+++ b/ru/docs/preferences/actions/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/advanced/index.html b/ru/docs/preferences/advanced/index.html
index 46a53acc..94413c71 100644
--- a/ru/docs/preferences/advanced/index.html
+++ b/ru/docs/preferences/advanced/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/appearance/index.html b/ru/docs/preferences/appearance/index.html
index ad165017..f0c97182 100644
--- a/ru/docs/preferences/appearance/index.html
+++ b/ru/docs/preferences/appearance/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -845,7 +845,6 @@ Display EOLN in Diff
Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).
Add an extra margin at the bottom of the code editor, so that you can scroll less.
-Due to technical reasons, it could slightly affect the operation history, i.e. you might be able undo the margin change by Ctrl+Z.
Font
Show only Monospaced Font
When checked the font picker dialog shows only monospaced fonts.
@@ -909,7 +908,7 @@ Custom Application Font
-
diff --git a/ru/docs/preferences/code-edit/index.html b/ru/docs/preferences/code-edit/index.html
index 9309d4ce..4a891273 100644
--- a/ru/docs/preferences/code-edit/index.html
+++ b/ru/docs/preferences/code-edit/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/extensions/index.html b/ru/docs/preferences/extensions/index.html
index 0179883d..cb11e2a7 100644
--- a/ru/docs/preferences/extensions/index.html
+++ b/ru/docs/preferences/extensions/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/file-path/index.html b/ru/docs/preferences/file-path/index.html
index da717b85..31552a09 100644
--- a/ru/docs/preferences/file-path/index.html
+++ b/ru/docs/preferences/file-path/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/general/index.html b/ru/docs/preferences/general/index.html
index 1255387d..629d5c9f 100644
--- a/ru/docs/preferences/general/index.html
+++ b/ru/docs/preferences/general/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/index.html b/ru/docs/preferences/index.html
index 7cb77b3f..b1d2f363 100644
--- a/ru/docs/preferences/index.html
+++ b/ru/docs/preferences/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/index.xml b/ru/docs/preferences/index.xml
index 65a53ef1..e8d81a5e 100644
--- a/ru/docs/preferences/index.xml
+++ b/ru/docs/preferences/index.xml
@@ -169,7 +169,6 @@ page.</p>
<p>Use “¶” to visualize the end-of-line in the diff viewer. It is useful if you want to see differences of the end-of-line (i.e. extra empty lines at the end).</p>
<h3 id="add-extra-margin-at-the-bottom-of-the-code-editor">Add extra margin at the bottom of the code editor</h3>
<p>Add an extra margin at the bottom of the code editor, so that you can scroll less.</p>
-<p>Due to technical reasons, it could slightly affect the operation history, i.e. you might be able undo the margin change by <kbd>Ctrl+Z</kbd>.</p>
<h2 id="font">Font</h2>
<h3 id="show-only-monospaced-font">Show only Monospaced Font</h3>
<p>When checked the font picker dialog shows only monospaced fonts.</p>
diff --git a/ru/docs/preferences/key-bindings/index.html b/ru/docs/preferences/key-bindings/index.html
index e7950b6b..f10dcf67 100644
--- a/ru/docs/preferences/key-bindings/index.html
+++ b/ru/docs/preferences/key-bindings/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/preferences/language/index.html b/ru/docs/preferences/language/index.html
index 58f003f2..905184b1 100644
--- a/ru/docs/preferences/language/index.html
+++ b/ru/docs/preferences/language/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/setup/index.html b/ru/docs/setup/index.html
index a6f2ace0..732dfc92 100644
--- a/ru/docs/setup/index.html
+++ b/ru/docs/setup/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/docs/tips/index.html b/ru/docs/tips/index.html
index e9bc447e..dfa9c042 100644
--- a/ru/docs/tips/index.html
+++ b/ru/docs/tips/index.html
@@ -161,7 +161,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
@@ -193,7 +193,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../../"
data-offline-search-max-results="10"
>
diff --git a/ru/download/index.html b/ru/download/index.html
index 167957a2..7d726ac3 100644
--- a/ru/download/index.html
+++ b/ru/download/index.html
@@ -159,7 +159,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/ru/index.html b/ru/index.html
index c3351216..2eecaf7e 100644
--- a/ru/index.html
+++ b/ru/index.html
@@ -159,7 +159,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../"
data-offline-search-max-results="10"
>
diff --git a/ru/need-translation-list/index.html b/ru/need-translation-list/index.html
index 733a7c82..bc2db9ba 100644
--- a/ru/need-translation-list/index.html
+++ b/ru/need-translation-list/index.html
@@ -157,7 +157,7 @@
aria-label="Поиск по сайту…"
autocomplete="off"
- data-offline-search-index-json-src="../../offline-search-index.2cbf8c87eb4c14c5398ee09e63f4ae72.json"
+ data-offline-search-index-json-src="../../offline-search-index.b14bfadff44b9f3fd47a325fe55dd5b9.json"
data-offline-search-base-href="../../"
data-offline-search-max-results="10"
>
diff --git a/ru/sitemap.xml b/ru/sitemap.xml
index 4f3a84e6..409bdd31 100644
--- a/ru/sitemap.xml
+++ b/ru/sitemap.xml
@@ -1 +1 @@
-/ru/docs/preferences/code-edit/2021-05-23T22:19:00+08:00/ru/docs/installation/download-from-releases/2021-12-08T22:24:16+08:00/ru/docs/installation/2021-12-08T22:24:16+08:00/ru/docs/installation/use-package-managers/2022-12-30T12:55:26+08:00/ru/docs/installation/build-from-source/2021-01-31T19:11:52+08:00/ru/docs/2020-10-18T15:54:00+08:00/ru/docs/preferences/language/2021-05-23T22:19:00+08:00/ru/docs/preferences/appearance/2021-01-31T19:11:52+08:00/ru/docs/setup/2021-09-19T12:29:14+08:00/ru/docs/installation/use-artifacts/2021-01-31T19:11:52+08:00/ru/docs/preferences/actions/2024-02-14T19:40:57+08:00/ru/docs/preferences/2021-01-31T19:11:52+08:00/ru/docs/preferences/extensions/2021-09-19T12:29:14+08:00/ru/docs/tips/2024-02-14T19:40:57+08:00/ru/docs/preferences/file-path/2021-05-23T22:19:00+08:00/ru/docs/faq/2022-07-09T14:42:04+08:00/ru/docs/preferences/key-bindings/2020-12-06T14:00:35+08:00/ru/docs/preferences/advanced/2021-01-31T19:11:52+08:00/ru/docs/preferences/general/2024-02-13T15:47:01+08:00/ru/2022-02-14T11:46:06+05:30/ru/need-translation-list/2020-11-01T23:48:38+08:00/ru/about/2021-06-14T14:33:40+03:00/ru/download/2022-06-04T21:37:40+08:00/ru/community/2021-09-19T07:28:53+03:00
\ No newline at end of file
+/ru/docs/preferences/code-edit/2021-05-23T22:19:00+08:00/ru/docs/installation/download-from-releases/2021-12-08T22:24:16+08:00/ru/docs/installation/2021-12-08T22:24:16+08:00/ru/docs/installation/use-package-managers/2022-12-30T12:55:26+08:00/ru/docs/installation/build-from-source/2021-01-31T19:11:52+08:00/ru/docs/2020-10-18T15:54:00+08:00/ru/docs/preferences/language/2021-05-23T22:19:00+08:00/ru/docs/preferences/appearance/2024-02-14T20:49:31+08:00/ru/docs/setup/2021-09-19T12:29:14+08:00/ru/docs/installation/use-artifacts/2021-01-31T19:11:52+08:00/ru/docs/preferences/actions/2024-02-14T19:40:57+08:00/ru/docs/preferences/2021-01-31T19:11:52+08:00/ru/docs/preferences/extensions/2021-09-19T12:29:14+08:00/ru/docs/tips/2024-02-14T19:40:57+08:00/ru/docs/preferences/file-path/2021-05-23T22:19:00+08:00/ru/docs/faq/2022-07-09T14:42:04+08:00/ru/docs/preferences/key-bindings/2020-12-06T14:00:35+08:00/ru/docs/preferences/advanced/2021-01-31T19:11:52+08:00/ru/docs/preferences/general/2024-02-13T15:47:01+08:00/ru/2022-02-14T11:46:06+05:30/ru/need-translation-list/2020-11-01T23:48:38+08:00/ru/about/2021-06-14T14:33:40+03:00/ru/download/2022-06-04T21:37:40+08:00/ru/community/2021-09-19T07:28:53+03:00
\ No newline at end of file
diff --git a/sitemap.xml b/sitemap.xml
index 4f4f9d70..336b7734 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -1 +1 @@
-/en/sitemap.xml2024-02-14T19:40:57+08:00/ru/sitemap.xml2024-02-14T19:40:57+08:00/zh/sitemap.xml2024-02-14T19:40:57+08:00/zh_tw/sitemap.xml2024-02-14T19:40:57+08:00
\ No newline at end of file
+/en/sitemap.xml2024-02-14T20:49:31+08:00/ru/sitemap.xml2024-02-14T20:49:31+08:00/zh/sitemap.xml2024-02-14T20:49:31+08:00/zh_tw/sitemap.xml2024-02-14T20:49:31+08:00
\ No newline at end of file
diff --git a/v7.0/docs/preferences/actions/index.html b/v7.0/docs/preferences/actions/index.html
index d2e7ac6f..6765eff2 100644
--- a/v7.0/docs/preferences/actions/index.html
+++ b/v7.0/docs/preferences/actions/index.html
@@ -1060,7 +1060,7 @@