Merge pull request #133 from UberWriter/ft.tidying

Ft.tidying
ft.librem5
somas95 2019-04-02 20:17:49 +02:00 committed by GitHub
commit 37a8eb1cd1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
117 changed files with 4896 additions and 5207 deletions

View File

@ -1 +0,0 @@
recursive-include po *

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop-application">
<id>de.wolfvollprecht.UberWriter</id>
<launchable type="desktop-id">de.wolfvollprecht.UberWriter.desktop</launchable>
<name>UberWriter</name>
<summary>An elegant, free distraction GTK+ markdown editor</summary>
<description>
<p>Uberwriter is a GTK+ based distraction free Markdown editor, mainly developed by Wolf Vollprecht and Manuel Genovés. It uses pandoc as backend for markdown parsing and offers a very clean and sleek user interface.</p>
<p>You can install the recommended TexLive extension with the command:</p>
<p>flatpak install flathub de.wolfvollprecht.UberWriter.Plugin.TexLive</p>
<p>or from Gnome-Software</p>
</description>
<screenshots>
<screenshot type="default">
<image type="source">https://raw.githubusercontent.com/UberWriter/uberwriter/master/screenshots/main.png</image>
</screenshot>
<screenshot>
<image type="source">https://raw.githubusercontent.com/UberWriter/uberwriter/master/screenshots/main-dark.png</image>
</screenshot>
<screenshot>
<image type="source">https://raw.githubusercontent.com/UberWriter/uberwriter/master/screenshots/formula.png</image>
</screenshot>
<screenshot>
<image type="source">https://raw.githubusercontent.com/UberWriter/uberwriter/master/screenshots/preview.png</image>
</screenshot>
<screenshot>
<image type="source">https://raw.githubusercontent.com/UberWriter/uberwriter/master/screenshots/focus.png</image>
</screenshot>
</screenshots>
<releases>
<release date="2019-03-10" version="2.1.5">
<description>
<ul>
<li>Added italian language</li>
<li>Initial themes support: now uberwriter adapts his colors to the current GTK theme</li>
<li>Disabled scroll gradient, can be enabled in the preferences dialog</li>
<li>Allow to disable headerbar autohidding in Dconf</li>
<li>Now a single click is enough to open files in the recent files popover</li>
<li>Spellchecking status is now saved between sessions</li>
<li>Minor UI fixes</li>
<li>Added -d flag to enable webdev tools</li>
</ul>
</description>
</release>
<release date="2018-12-06" version="2.1.4">
<description>
<p>Updated css styles.</p>
</description>
</release>
<release date="2018-11-28" version="2.1.3">
<description>
<p>This release features a new logo, polishes the Appmenu, fixes usability bugs and flatpak related bugs.</p>
</description>
</release>
<release date="2018-07-27" version="2.1.2">
<description>
<p>This release provides a fix to a bug that caused Uberwriter to not mark properly **bold**, *cursive*, and ***bold and cursive*** words.</p>
</description>
</release>
<release date="2018-07-26" version="2.1.1">
<description>
<p>This release solves two minor bugs:</p>
<ul>
<li>One on focus mode which caused the lines to be highlighted on edit rather than on click</li>
<li>Non symbolic icons on the searchbar</li>
</ul>
</description>
</release>
<release date="2018-07-18" version="2.1.0">
<description>
<p>This release features a ton of UX/UI improvements, like:</p>
<ul>
<li>Drop AppMenu support</li>
<li>HeaderBar and menus redesign, with a new unified menu and quick access buttons on the headerbar</li>
<li>Now the fullscreen view shows a headerbar when the cursor approaches the top of the screen</li>
<li>A new unified export dialog, with updated options, and quick access to pdf, odt and html export</li>
<li>Bugfixes.</li>
</ul>
</description>
</release>
<release date="2018-06-24" version="2.0.4">
<description>
<p>Now the menu is a Popover instead a regular menu.</p>
<p>The headerbar matches the theme selected for the application.</p>
<p>Updated translations.</p>
</description>
</release>
<release date="2018-06-14" version="2.0.3">
<description>
<p>Small bug fixes, updated links.</p>
</description>
</release>
<release date="2018-05-16" version="2.0.2">
<description>
<p>Fix a bug with the preview mode.</p>
</description>
</release>
<release date="2018-05-14" version="2.0.1">
<description>
<p>Don't use env variable to check if in flatpak.</p>
</description>
</release>
<release date="2018-05-12" version="2.0.0">
<description>
<p>First re-release</p>
</description>
</release>
</releases>
<metadata_license>CC0-1.0</metadata_license>
<project_license>GPL-3.0+</project_license>
<url type="homepage">http://uberwriter.github.io/uberwriter</url>
<content_rating type="oars-1.1"/>
<developer_name>Wolf V., Manuel G.</developer_name>
<url type="bugtracker">https://github.com/UberWriter/uberwriter/issues</url>
<url type="donation">https://liberapay.com/UberWriter/donate</url>
<url type="help">http://uberwriter.github.io/uberwriter</url>
<url type="translate">https://poeditor.com/join/project/gxVzFyXb2x</url>
<update_contact>manuel.genoves_at_gmail.com</update_contact>
<translation type="gettext">uberwriter</translation>
</component>

View File

@ -1,7 +1,7 @@
[Desktop Entry]
Name=UberWriter
Comment=UberWriter, a simple and distraction free Markdown Editor
Categories=GNOME;Office;
Categories=GNOME;GTK;Office;
Exec=uberwriter %U
Icon=de.wolfvollprecht.UberWriter
Terminal=false

View File

@ -13,8 +13,15 @@
asked to install them manually.
</description>
</key>
<key name='gradient-overlay' type='b'>
<key name='spellcheck' type='b'>
<default>true</default>
<summary>Spellcheck</summary>
<description>
Enable/disable spellchecking in the application.
</description>
</key>
<key name='gradient-overlay' type='b'>
<default>false</default>
<summary>Show gradient overlay</summary>
<description>
Show a gradient overlay over the text at the top anf bottom of the window.

View File

@ -87,7 +87,7 @@ end
--- Replace the todo marker in the given block, if any.
function M.replace_todo_markers (blk, format)
if blk.t ~= 'Para' and blk.t ~= 'Plain' then
if not blk or blk.t ~= 'Para' and blk.t ~= 'Plain' then
return blk
end
local inlines = blk.content

View File

@ -4,9 +4,6 @@
inclusion in templates
*/
@define-color dark_bg #31373D;
@define-color light_bg #EDEDED;
@binding-set window-bindings {
bind "<ctl>w" { "close-window" () };
bind "<ctl><shift>b" { "toggle-bibtex" () };
@ -30,19 +27,8 @@
.uberwriter_window {
-gtk-key-bindings: window-bindings;
/*border-radius: 7px 7px 3px 3px;*/
background: @light_bg;
caret-color: @dark_bg;
}
.uberwriter_window.dark_mode {
background: @dark_bg;
caret-color: @light_bg;
}
.uberwriter_window.dark_mode .uberwriter-editor text{
background: @dark_bg;
caret-color: @light_bg;
color: @light_bg;
background: @background_color;
caret-color: @foreground_color;
}
.uberwriter_window.small .uberwriter-editor {
@ -50,12 +36,7 @@
font-size: 12px;
}
.uberwriter_window grid {
background-color: @light_bg;
}
.uberwriter_window.dark_mode grid,
.uberwriter_window.dark_mode scrolledwindow {
background-color: @dark_bg;
background-color: @background_color;
}
#UberwriterWindow.medium .uberwriter-editor {
@ -78,25 +59,22 @@
}
#titlebar_container {
background: @light_bg;
}
#titlebar_container.dark_mode {
background: @dark_bg;
background: @background_color;
}
.uberwriter-editor {
border: none;
background-color: transparent;
color: #222;
text-decoration-color: #ff0000;
/*-GtkWidget-cursor-color: shade(#4D9FCE, 0.9);*/
/*-GtkWidget-cursor-aspect-ratio: 0.1;*/
-gtk-key-bindings: editor-bindings;
}
.uberwriter-editor text {
background-color: @light_bg;
color: #222;
background-color: @background_color;
color: @foreground_color;
caret-color: @foreground_color;
}
.uberwriter-editor:selected {
@ -123,7 +101,7 @@
.status_bar_box button {
/* finding reset */
background-color: @light_bg;
background-color: @background_color;
text-shadow: inherit;
/*icon-shadow: inherit;*/
box-shadow: initial;
@ -149,13 +127,13 @@
.status_bar_box button:hover,
.status_bar_box button:checked {
transition: 0s ease-in;
color: @light_bg;
color: @background_color;
background-color: #666;
}
.status_bar_box button:hover label,
.status_bar_box button:checked label {
color: @light_bg;
color: @background_color;
}
.status_bar_box button:active {
@ -164,22 +142,7 @@
background-image: none;
box-shadow: 0 0 2px rgba(0,0,0,0.4)
}
.dark_mode .status_bar_box button {
background-color: @dark_bg;
}
.dark_mode .status_bar_box label {
color: @light_bg;
}
.dark_mode .status_bar_box button:hover,
.dark_mode .status_bar_box button:checked {
background-color: @light_bg;
color: #666;
}
.dark_mode .status_bar_box button:hover label,
.dark_mode .status_bar_box button:checked label{
color: #666;
}
.status_bar_box separator {
border-color: #999;
border-right: none;
@ -201,9 +164,9 @@
/*font: serif 10;*/
font-family: serif;
font-size: 10px;
background: @light_bg;
background: @background_color;
border-radius: 4px;
border-color: @light_bg;
border-color: @background_color;
margin: 5px;
padding: 5px;
}
@ -214,7 +177,7 @@
border: 1px solid #333;
background: @ligth_bg;
border-radius: 3px;
border-color: @light_bg;
border-color: @background_color;
} */
#LexikonBubble label {
@ -222,9 +185,8 @@
}
#LexikonBubble {
background-color: @light_bg;
border: 5px solid @light_bg;
border-color: @light_bg
background-color: @background_color;
border: 5px solid @background_color;
}
#LexikonBubble .lexikon_heading {
@ -243,15 +205,15 @@
}
.QuickPreviewPopup {
background-color: @light_bg;
background-color: @background_color;
}
.QuickPreviewPopup grid {
background-color: @light_bg;
color: @dark_bg;
border-color: @light_bg;
background-color: @background_color;
color: @foreground_color;
border-color: @background_color;
}
.QuickPreviewPopup label {
color: @dark_bg;
}
color: @foreground_color;
}

View File

@ -0,0 +1,501 @@
@font-face {
font-family: fira-sans;
src: url("../fonts/fira-sans-v9-vietnamese_latin_cyrillic-ext_cyrillic_greek-ext_latin-ext_greek-regular.woff2") format("woff2");
}
@font-face {
font-family: fira-mono;
src: url("../fonts/fira-mono-v7-latin_cyrillic-ext_cyrillic_greek-ext_latin-ext_greek-regular.woff2") format("woff2");
}
@font-face {
font-family: color-emoji;
src: local("Noto Color Emoji"), local("Apple Color Emoji"), local("Segoe UI Emoji"), local("Segoe UI Symbol");
}
:root {
/* This is GitHub's default color scheme, which should be overridden per theme. */
--text-color: #24292e;
--background-color: #ffffff;
--alt-background-color: #f6f8fa;
--link-color: #0366d6;
--blockquote-text-color: #6a737d;
--blockquote-border-color: #dfe2e5;
--header-border-color: #eaecef;
--hr-background-color: #e1e4e8;
--table-tr-border-color: #c6cbd1;
--table-td-border-color: #dfe2e5;
--kbd-text-color: #444d56;
--kbd-background-color: #fafbfc;
--kbd-border-color: #c6cbd1;
--kbd-shadow-color: #959da5;
}
* {
box-sizing: border-box;
}
html {
font-size: 16px;
}
@media screen and (max-width: 799px) {
html {
font-size: 14px;
}
}
@media screen and (min-width: 1000px) {
html {
font-size: 18px;
}
}
body {
color: var(--text-color);
background-color: var(--background-color);
font-family: "Fira Sans", fira-sans, sans-serif, color-emoji;
line-height: 1.5;
text-size-adjust: 100%;
word-wrap: break-word;
padding: 2em;
}
a {
background-color: transparent;
color: var(--link-color);
text-decoration: none;
}
a:active,
a:hover {
outline-width: 0;
}
a:hover {
text-decoration: underline;
}
strong {
font-weight: 600;
}
img {
border-style: none;
}
hr {
box-sizing: content-box;
height: 0.25em;
padding: 0;
margin: 1.5em 0;
overflow: hidden;
background-color: var(--hr-background-color);
border: 0;
}
hr::before {
display: table;
content: "";
}
hr::after {
display: table;
clear: both;
content: "";
}
input {
font-family: inherit;
font-size: inherit;
line-height: inherit;
margin: 0;
overflow: visible;
}
[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
table {
border-spacing: 0;
border-collapse: collapse;
}
td,
th {
padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: 600;
margin: 0;
}
h1 {
font-size: 2em;
}
h2 {
font-size: 1.5em;
}
h3 {
font-size: 1.25em;
}
h4 {
font-size: 1em;
}
h5 {
font-size: 0.875em;
}
h6 {
font-size: 0.85em;
}
p {
margin-top: 0;
margin-bottom: 0.625em;
}
blockquote {
margin: 0;
}
ul,
ol {
padding-left: 0;
margin-top: 0;
margin-bottom: 0;
}
ol ol,
ul ol {
list-style-type: lower-roman;
}
ul ul ol,
ul ol ol,
ol ul ol,
ol ol ol {
list-style-type: lower-alpha;
}
dd {
margin-left: 0;
}
code,
kbd,
pre {
font-family: "Fira Mono", fira-mono, monospace, color-emoji;
font-size: 1em;
word-wrap: normal;
}
code {
border-radius: 0.1875em;
font-size: 0.85em;
padding: 0.2em 0.4em;
margin: 0;
}
pre {
margin-top: 0;
margin-bottom: 0;
font-size: 0.75em;
}
pre>code {
padding: 0;
margin: 0;
font-size: 1em;
word-break: normal;
white-space: pre;
background: transparent;
border: 0;
}
.highlight {
margin-bottom: 1em;
}
.highlight pre {
margin-bottom: 0;
word-break: normal;
}
.highlight pre,
pre {
padding: 1em;
overflow: auto;
font-size: 0.85em;
line-height: 1.5;
background-color: var(--alt-background-color);
border-radius: 0.1875em;
}
pre code {
background-color: transparent;
border: 0;
display: inline;
padding: 0;
margin: 0;
overflow: visible;
line-height: inherit;
word-wrap: normal;
}
.pl-0 {
padding-left: 0 !important;
}
.pl-1 {
padding-left: 0.25em !important;
}
.pl-2 {
padding-left: 0.5em !important;
}
.pl-3 {
padding-left: 1em !important;
}
.pl-4 {
padding-left: 1.5em !important;
}
.pl-5 {
padding-left: 2em !important;
}
.pl-6 {
padding-left: 2.5em !important;
}
.markdown-body::before {
display: table;
content: "";
}
.markdown-body::after {
display: table;
clear: both;
content: "";
}
.markdown-body>*:first-child {
margin-top: 0 !important;
}
.markdown-body>*:last-child {
margin-bottom: 0 !important;
}
a:not([href]) {
color: inherit;
text-decoration: none;
}
.anchor {
float: left;
padding-right: 0.25em;
margin-left: -1.25em;
line-height: 1;
}
.anchor:focus {
outline: none;
}
p,
blockquote,
ul,
ol,
dl,
table,
pre {
margin-top: 0;
margin-bottom: 1em;
}
blockquote {
padding: 0 1em;
color: var(--blockquote-text-color);
border-left: 0.25em solid var(--blockquote-border-color);
}
blockquote>:first-child {
margin-top: 0;
}
blockquote>:last-child {
margin-bottom: 0;
}
kbd {
display: inline-block;
padding: 0.1875em 0.3125em;
font-size: 0.6875em;
line-height: 1;
color: var(--kbd-text-color);
vertical-align: middle;
background-color: var(--kbd-background-color);
border: solid 1px var(--kbd-border-color);
border-bottom-color: var(--kbd-shadow-color);
border-radius: 3px;
box-shadow: inset 0 -1px 0 var(--kbd-shadow-color);;
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin-top: 1.5em;
margin-bottom: 1em;
font-weight: 600;
line-height: 1.25;
}
h1:hover .anchor,
h2:hover .anchor,
h3:hover .anchor,
h4:hover .anchor,
h5:hover .anchor,
h6:hover .anchor {
text-decoration: none;
}
h1 {
padding-bottom: 0.3em;
font-size: 2em;
border-bottom: 1px solid var(--header-border-color);
}
h2 {
padding-bottom: 0.3em;
font-size: 1.5em;
border-bottom: 1px solid var(--header-border-color);
}
h3 {
font-size: 1.25em;
}
h4 {
font-size: 1em;
}
h5 {
font-size: 0.875em;
}
h6 {
font-size: 0.85em;
opacity: 0.67;
}
ul,
ol {
padding-left: 2em;
}
ul ul,
ul ol,
ol ol,
ol ul {
margin-top: 0;
margin-bottom: 0;
}
li {
overflow-wrap: break-word;
}
li>p {
margin-top: 1em;
}
li+li {
margin-top: 0.25em;
}
dl {
padding: 0;
}
dl dt {
padding: 0;
margin-top: 1em;
font-size: 1em;
font-style: italic;
font-weight: 600;
}
dl dd {
padding: 0 1em;
margin-bottom: 1em;
}
table {
display: block;
width: 100%;
overflow: auto;
}
table th {
font-weight: 600;
}
table th,
table td {
padding: 0.375em 0.8125em;
border: 1px solid var(--table-td-border-color);
}
table tr {
background-color: var(--background-color);
border-top: 1px solid var(--table-tr-border-color);
}
table tr:nth-child(2n) {
background-color: var(--alt-background-color);
}
img {
max-width: 100%;
box-sizing: content-box;
}
img[align=right] {
padding-left: 1.25em;
}
img[align=left] {
padding-right: 1.25em;
}
.task-list-item {
list-style-type: none;
}
.task-list-item+.task-list-item {
margin-top: 0.1875em;
}
.task-list-item input {
margin: 0 0.2em 0.25em -1.6em;
vertical-align: middle;
}

View File

@ -0,0 +1,5 @@
@define-color foreground_color #2e3436;
@define-color background_color #f6f5f4;
@define-color math_text_color #00364c;
@import url("_gtk_base.css");

View File

@ -0,0 +1,5 @@
@define-color foreground_color #eeeeec;
@define-color background_color #353535;
@define-color math_text_color #ffc9b3;
@import url("_gtk_base.css");

View File

@ -0,0 +1,5 @@
@define-color foreground_color #3b3e45;
@define-color background_color #f5f6f7;
@define-color math_text_color #00364c;
@import url("_gtk_base.css");

View File

@ -0,0 +1,5 @@
@define-color foreground_color #d3dae3;
@define-color background_color #383c4a;
@define-color math_text_color #ffc9b3;
@import url("_gtk_base.css");

View File

@ -0,0 +1,5 @@
@define-color foreground_color #3b3e45;
@define-color background_color #f5f6f7;
@define-color math_text_color #00364C;
@import url("_gtk_base.css");

View File

@ -0,0 +1,5 @@
@define-color foreground_color #000000;
@define-color background_color #ffffff;
@define-color math_text_color #000000;
@import url("_gtk_base.css");

View File

@ -0,0 +1,5 @@
@define-color foreground_color #ffffff;
@define-color background_color #000000;
@define-color math_text_color #ffffff;
@import url("_gtk_base.css");

View File

@ -0,0 +1,19 @@
@import url("_web_base.css");
:root {
--text-color: #2e3436;
--background-color: #f6f5f4;
--alt-background-color: #edeeef;
--link-color: #0d71de;
--blockquote-text-color: #747e85;
--blockquote-border-color: #d6d8da;
--header-border-color: #e1e2e4;
--hr-background-color: #d8dadd;
--table-tr-border-color: #bdc1c6;
--table-td-border-color: #d6d8da;
--kbd-text-color: #4e585e;
--kbd-background-color: #f1f1f1;
--kbd-border-color: #bdc1c6;
--kbd-shadow-color: #8c939a;
}

View File

@ -0,0 +1,18 @@
@import url("_web_base.css");
:root {
--text-color: #eeeeec;
--background-color: #353535;
--alt-background-color: #3a3a3a;
--link-color: #b5daff;
--blockquote-text-color: #a8a8a6;
--blockquote-border-color: #525252;
--header-border-color: #474747;
--hr-background-color: #505050;
--table-tr-border-color: #696969;
--table-td-border-color: #525252;
--kbd-text-color: #cececc;
--kbd-background-color: #3c3c3c;
--kbd-border-color: #696969;
--kbd-shadow-color: #979797;
}

View File

@ -0,0 +1,18 @@
@import url("_web_base.css");
:root {
--text-color: #3b3e45;
--background-color: #f5f6f7;
--alt-background-color: #eceff2;
--link-color: #1a7bed;
--blockquote-text-color: #818894;
--blockquote-border-color: #d5d9dd;
--header-border-color: #e0e3e7;
--hr-background-color: #d7dbe0;
--table-tr-border-color: #bcc2c9;
--table-td-border-color: #d5d9dd;
--kbd-text-color: #5b626d;
--kbd-background-color: #f0f2f4;
--kbd-border-color: #bcc2c9;
--kbd-shadow-color: #8b949d;
}

View File

@ -0,0 +1,18 @@
@import url("_web_base.css");
:root {
--text-color: #d3dae3;
--background-color: #383c4a;
--alt-background-color: #3d414f;
--link-color: #9ac6ff;
--blockquote-text-color: #8d949d;
--blockquote-border-color: #555967;
--header-border-color: #4a4e5c;
--hr-background-color: #535765;
--table-tr-border-color: #6c707e;
--table-td-border-color: #555967;
--kbd-text-color: #b3bac3;
--kbd-background-color: #3f4351;
--kbd-border-color: #6c707e;
--kbd-shadow-color: #9a9eac;
}

View File

@ -0,0 +1 @@
@import url("web_arc.css");

View File

@ -0,0 +1,26 @@
@import url("_web_base.css");
a {
text-decoration: underline;
}
pre {
border: 1px solid;
}
:root {
--text-color: #000000;
--background-color: #ffffff;
--alt-background-color: #ffffff;
--link-color: #000000;
--blockquote-text-color: #000000;
--blockquote-border-color: #000000;
--header-border-color: #000000;
--hr-background-color: #000000;
--table-tr-border-color: #000000;
--table-td-border-color: #000000;
--kbd-text-color: #000000;
--kbd-background-color: #ffffff;
--kbd-border-color: #000000;
--kbd-shadow-color: #000000;
}

View File

@ -0,0 +1,26 @@
@import url("_web_base.css");
a {
text-decoration: underline;
}
pre {
border: 1px solid;
}
:root {
--text-color: #ffffff;
--background-color: #000000;
--alt-background-color: #000000;
--link-color: #ffffff;
--blockquote-text-color: #ffffff;
--blockquote-border-color: #ffffff;
--header-border-color: #ffffff;
--hr-background-color: #ffffff;
--table-tr-border-color: #ffffff;
--table-td-border-color: #ffffff;
--kbd-text-color: #ffffff;
--kbd-background-color: #000000;
--kbd-border-color: #ffffff;
--kbd-shadow-color: #ffffff;
}

View File

@ -1,567 +0,0 @@
@font-face {
font-family: octicons-link;
src: url(data:font/woff;charset=utf-8;base64,d09GRgABAAAAAAZwABAAAAAACFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEU0lHAAAGaAAAAAgAAAAIAAAAAUdTVUIAAAZcAAAACgAAAAoAAQAAT1MvMgAAAyQAAABJAAAAYFYEU3RjbWFwAAADcAAAAEUAAACAAJThvmN2dCAAAATkAAAABAAAAAQAAAAAZnBnbQAAA7gAAACyAAABCUM+8IhnYXNwAAAGTAAAABAAAAAQABoAI2dseWYAAAFsAAABPAAAAZwcEq9taGVhZAAAAsgAAAA0AAAANgh4a91oaGVhAAADCAAAABoAAAAkCA8DRGhtdHgAAAL8AAAADAAAAAwGAACfbG9jYQAAAsAAAAAIAAAACABiATBtYXhwAAACqAAAABgAAAAgAA8ASm5hbWUAAAToAAABQgAAAlXu73sOcG9zdAAABiwAAAAeAAAAME3QpOBwcmVwAAAEbAAAAHYAAAB/aFGpk3jaTY6xa8JAGMW/O62BDi0tJLYQincXEypYIiGJjSgHniQ6umTsUEyLm5BV6NDBP8Tpts6F0v+k/0an2i+itHDw3v2+9+DBKTzsJNnWJNTgHEy4BgG3EMI9DCEDOGEXzDADU5hBKMIgNPZqoD3SilVaXZCER3/I7AtxEJLtzzuZfI+VVkprxTlXShWKb3TBecG11rwoNlmmn1P2WYcJczl32etSpKnziC7lQyWe1smVPy/Lt7Kc+0vWY/gAgIIEqAN9we0pwKXreiMasxvabDQMM4riO+qxM2ogwDGOZTXxwxDiycQIcoYFBLj5K3EIaSctAq2kTYiw+ymhce7vwM9jSqO8JyVd5RH9gyTt2+J/yUmYlIR0s04n6+7Vm1ozezUeLEaUjhaDSuXHwVRgvLJn1tQ7xiuVv/ocTRF42mNgZGBgYGbwZOBiAAFGJBIMAAizAFoAAABiAGIAznjaY2BkYGAA4in8zwXi+W2+MjCzMIDApSwvXzC97Z4Ig8N/BxYGZgcgl52BCSQKAA3jCV8CAABfAAAAAAQAAEB42mNgZGBg4f3vACQZQABIMjKgAmYAKEgBXgAAeNpjYGY6wTiBgZWBg2kmUxoDA4MPhGZMYzBi1AHygVLYQUCaawqDA4PChxhmh/8ODDEsvAwHgMKMIDnGL0x7gJQCAwMAJd4MFwAAAHjaY2BgYGaA4DAGRgYQkAHyGMF8NgYrIM3JIAGVYYDT+AEjAwuDFpBmA9KMDEwMCh9i/v8H8sH0/4dQc1iAmAkALaUKLgAAAHjaTY9LDsIgEIbtgqHUPpDi3gPoBVyRTmTddOmqTXThEXqrob2gQ1FjwpDvfwCBdmdXC5AVKFu3e5MfNFJ29KTQT48Ob9/lqYwOGZxeUelN2U2R6+cArgtCJpauW7UQBqnFkUsjAY/kOU1cP+DAgvxwn1chZDwUbd6CFimGXwzwF6tPbFIcjEl+vvmM/byA48e6tWrKArm4ZJlCbdsrxksL1AwWn/yBSJKpYbq8AXaaTb8AAHja28jAwOC00ZrBeQNDQOWO//sdBBgYGRiYWYAEELEwMTE4uzo5Zzo5b2BxdnFOcALxNjA6b2ByTswC8jYwg0VlNuoCTWAMqNzMzsoK1rEhNqByEyerg5PMJlYuVueETKcd/89uBpnpvIEVomeHLoMsAAe1Id4AAAAAAAB42oWQT07CQBTGv0JBhagk7HQzKxca2sJCE1hDt4QF+9JOS0nbaaYDCQfwCJ7Au3AHj+LO13FMmm6cl7785vven0kBjHCBhfpYuNa5Ph1c0e2Xu3jEvWG7UdPDLZ4N92nOm+EBXuAbHmIMSRMs+4aUEd4Nd3CHD8NdvOLTsA2GL8M9PODbcL+hD7C1xoaHeLJSEao0FEW14ckxC+TU8TxvsY6X0eLPmRhry2WVioLpkrbp84LLQPGI7c6sOiUzpWIWS5GzlSgUzzLBSikOPFTOXqly7rqx0Z1Q5BAIoZBSFihQYQOOBEdkCOgXTOHA07HAGjGWiIjaPZNW13/+lm6S9FT7rLHFJ6fQbkATOG1j2OFMucKJJsxIVfQORl+9Jyda6Sl1dUYhSCm1dyClfoeDve4qMYdLEbfqHf3O/AdDumsjAAB42mNgYoAAZQYjBmyAGYQZmdhL8zLdDEydARfoAqIAAAABAAMABwAKABMAB///AA8AAQAAAAAAAAAAAAAAAAABAAAAAA==) format('woff');
}
body {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
line-height: 1.5;
color: #EDEDED;
background-color: #31373D;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 16px;
line-height: 1.5;
word-wrap: break-word;
}
a {
background-color: transparent;
}
a:active,
a:hover {
outline-width: 0;
}
strong {
font-weight: inherit;
}
strong {
font-weight: bolder;
}
h1 {
font-size: 2em;
margin: 0.67em 0;
}
img {
border-style: none;
}
code,
kbd,
pre {
font-family: monospace, monospace;
font-size: 1em;
}
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
input {
font: inherit;
margin: 0;
}
input {
overflow: visible;
}
[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
* {
box-sizing: border-box;
}
input {
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
a {
color: #0366d6;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
strong {
font-weight: 600;
}
hr {
height: 0;
margin: 15px 0;
overflow: hidden;
background: transparent;
border: 0;
border-bottom: 1px solid #dfe2e5;
}
hr::before {
display: table;
content: "";
}
hr::after {
display: table;
clear: both;
content: "";
}
table {
border-spacing: 0;
border-collapse: collapse;
}
td,
th {
padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin-top: 0;
margin-bottom: 0;
}
h1 {
font-size: 32px;
font-weight: 600;
}
h2 {
font-size: 24px;
font-weight: 600;
}
h3 {
font-size: 20px;
font-weight: 600;
}
h4 {
font-size: 16px;
font-weight: 600;
}
h5 {
font-size: 14px;
font-weight: 600;
}
h6 {
font-size: 12px;
font-weight: 600;
}
p {
margin-top: 0;
margin-bottom: 10px;
}
blockquote {
margin: 0;
}
ul,
ol {
padding-left: 0;
margin-top: 0;
margin-bottom: 0;
}
ol ol,
ul ol {
list-style-type: lower-roman;
}
ul ul ol,
ul ol ol,
ol ul ol,
ol ol ol {
list-style-type: lower-alpha;
}
dd {
margin-left: 0;
}
code {
font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 12px;
}
pre {
margin-top: 0;
margin-bottom: 0;
font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 12px;
}
.octicon {
vertical-align: text-bottom;
}
.pl-0 {
padding-left: 0 !important;
}
.pl-1 {
padding-left: 4px !important;
}
.pl-2 {
padding-left: 8px !important;
}
.pl-3 {
padding-left: 16px !important;
}
.pl-4 {
padding-left: 24px !important;
}
.pl-5 {
padding-left: 32px !important;
}
.pl-6 {
padding-left: 40px !important;
}
.markdown-body::before {
display: table;
content: "";
}
.markdown-body::after {
display: table;
clear: both;
content: "";
}
.markdown-body>*:first-child {
margin-top: 0 !important;
}
.markdown-body>*:last-child {
margin-bottom: 0 !important;
}
a:not([href]) {
color: inherit;
text-decoration: none;
}
.anchor {
float: left;
padding-right: 4px;
margin-left: -20px;
line-height: 1;
}
.anchor:focus {
outline: none;
}
p,
blockquote,
ul,
ol,
dl,
table,
pre {
margin-top: 0;
margin-bottom: 16px;
}
hr {
height: 0.25em;
padding: 0;
margin: 24px 0;
background-color: #e1e4e8;
border: 0;
}
blockquote {
padding: 0 1em;
color: #6a737d;
border-left: 0.25em solid #dfe2e5;
}
blockquote>:first-child {
margin-top: 0;
}
blockquote>:last-child {
margin-bottom: 0;
}
kbd {
display: inline-block;
padding: 3px 5px;
font-size: 11px;
line-height: 10px;
color: #444d56;
vertical-align: middle;
background-color: #fafbfc;
border: solid 1px #c6cbd1;
border-bottom-color: #959da5;
border-radius: 3px;
box-shadow: inset 0 -1px 0 #959da5;
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin-top: 24px;
margin-bottom: 16px;
font-weight: 600;
line-height: 1.25;
}
h1 .octicon-link,
h2 .octicon-link,
h3 .octicon-link,
h4 .octicon-link,
h5 .octicon-link,
h6 .octicon-link {
color: #1b1f23;
vertical-align: middle;
visibility: hidden;
}
h1:hover .anchor,
h2:hover .anchor,
h3:hover .anchor,
h4:hover .anchor,
h5:hover .anchor,
h6:hover .anchor {
text-decoration: none;
}
h1:hover .anchor .octicon-link,
h2:hover .anchor .octicon-link,
h3:hover .anchor .octicon-link,
h4:hover .anchor .octicon-link,
h5:hover .anchor .octicon-link,
h6:hover .anchor .octicon-link {
visibility: visible;
}
h1 {
padding-bottom: 0.3em;
font-size: 2em;
border-bottom: 1px solid #eaecef;
}
h2 {
padding-bottom: 0.3em;
font-size: 1.5em;
border-bottom: 1px solid #eaecef;
}
h3 {
font-size: 1.25em;
}
h4 {
font-size: 1em;
}
h5 {
font-size: 0.875em;
}
h6 {
font-size: 0.85em;
color: #6a737d;
}
ul,
ol {
padding-left: 2em;
}
ul ul,
ul ol,
ol ol,
ol ul {
margin-top: 0;
margin-bottom: 0;
}
li {
word-wrap: break-all;
}
li>p {
margin-top: 16px;
}
li+li {
margin-top: 0.25em;
}
dl {
padding: 0;
}
dl dt {
padding: 0;
margin-top: 16px;
font-size: 1em;
font-style: italic;
font-weight: 600;
}
dl dd {
padding: 0 16px;
margin-bottom: 16px;
}
table {
display: block;
width: 100%;
overflow: auto;
}
table th {
font-weight: 600;
}
table th,
table td {
padding: 6px 13px;
border: 1px solid #dfe2e5;
}
table tr {
background-color: #fff;
border-top: 1px solid #c6cbd1;
}
table tr:nth-child(2n) {
background-color: #f6f8fa;
}
img {
max-width: 100%;
box-sizing: content-box;
background-color: #fff;
}
img[align=right] {
padding-left: 20px;
}
img[align=left] {
padding-right: 20px;
}
code {
padding: 0.2em 0.4em;
margin: 0;
font-size: 85%;
background-color: rgba(27,31,35,0.05);
color: #1b1f23;
border-radius: 3px;
}
pre {
word-wrap: normal;
}
pre>code {
padding: 0;
margin: 0;
font-size: 100%;
word-break: normal;
white-space: pre;
background: transparent;
border: 0;
}
.highlight {
margin-bottom: 16px;
}
.highlight pre {
margin-bottom: 0;
word-break: normal;
}
.highlight pre,
pre {
padding: 16px;
overflow: auto;
font-size: 85%;
line-height: 1.45;
background-color: #f6f8fa;
border-radius: 3px;
}
pre code {
display: inline;
max-width: auto;
padding: 0;
margin: 0;
overflow: visible;
line-height: inherit;
word-wrap: normal;
background-color: transparent;
border: 0;
}
.full-commit .btn-outline:not(:disabled):hover {
color: #005cc5;
border-color: #005cc5;
}
kbd {
display: inline-block;
padding: 3px 5px;
font: 11px "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
line-height: 10px;
color: #444d56;
vertical-align: middle;
background-color: #fafbfc;
border: solid 1px #d1d5da;
border-bottom-color: #c6cbd1;
border-radius: 3px;
box-shadow: inset 0 -1px 0 #c6cbd1;
}
:checked+.radio-label {
position: relative;
z-index: 1;
border-color: #0366d6;
}
.task-list-item {
list-style-type: none;
}
.task-list-item+.task-list-item {
margin-top: 3px;
}
.task-list-item input {
margin: 0 0.2em 0.25em -1.6em;
vertical-align: middle;
}
hr {
border-bottom-color: #eee;
}

View File

@ -1,566 +0,0 @@
@font-face {
font-family: octicons-link;
src: url(data:font/woff;charset=utf-8;base64,d09GRgABAAAAAAZwABAAAAAACFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEU0lHAAAGaAAAAAgAAAAIAAAAAUdTVUIAAAZcAAAACgAAAAoAAQAAT1MvMgAAAyQAAABJAAAAYFYEU3RjbWFwAAADcAAAAEUAAACAAJThvmN2dCAAAATkAAAABAAAAAQAAAAAZnBnbQAAA7gAAACyAAABCUM+8IhnYXNwAAAGTAAAABAAAAAQABoAI2dseWYAAAFsAAABPAAAAZwcEq9taGVhZAAAAsgAAAA0AAAANgh4a91oaGVhAAADCAAAABoAAAAkCA8DRGhtdHgAAAL8AAAADAAAAAwGAACfbG9jYQAAAsAAAAAIAAAACABiATBtYXhwAAACqAAAABgAAAAgAA8ASm5hbWUAAAToAAABQgAAAlXu73sOcG9zdAAABiwAAAAeAAAAME3QpOBwcmVwAAAEbAAAAHYAAAB/aFGpk3jaTY6xa8JAGMW/O62BDi0tJLYQincXEypYIiGJjSgHniQ6umTsUEyLm5BV6NDBP8Tpts6F0v+k/0an2i+itHDw3v2+9+DBKTzsJNnWJNTgHEy4BgG3EMI9DCEDOGEXzDADU5hBKMIgNPZqoD3SilVaXZCER3/I7AtxEJLtzzuZfI+VVkprxTlXShWKb3TBecG11rwoNlmmn1P2WYcJczl32etSpKnziC7lQyWe1smVPy/Lt7Kc+0vWY/gAgIIEqAN9we0pwKXreiMasxvabDQMM4riO+qxM2ogwDGOZTXxwxDiycQIcoYFBLj5K3EIaSctAq2kTYiw+ymhce7vwM9jSqO8JyVd5RH9gyTt2+J/yUmYlIR0s04n6+7Vm1ozezUeLEaUjhaDSuXHwVRgvLJn1tQ7xiuVv/ocTRF42mNgZGBgYGbwZOBiAAFGJBIMAAizAFoAAABiAGIAznjaY2BkYGAA4in8zwXi+W2+MjCzMIDApSwvXzC97Z4Ig8N/BxYGZgcgl52BCSQKAA3jCV8CAABfAAAAAAQAAEB42mNgZGBg4f3vACQZQABIMjKgAmYAKEgBXgAAeNpjYGY6wTiBgZWBg2kmUxoDA4MPhGZMYzBi1AHygVLYQUCaawqDA4PChxhmh/8ODDEsvAwHgMKMIDnGL0x7gJQCAwMAJd4MFwAAAHjaY2BgYGaA4DAGRgYQkAHyGMF8NgYrIM3JIAGVYYDT+AEjAwuDFpBmA9KMDEwMCh9i/v8H8sH0/4dQc1iAmAkALaUKLgAAAHjaTY9LDsIgEIbtgqHUPpDi3gPoBVyRTmTddOmqTXThEXqrob2gQ1FjwpDvfwCBdmdXC5AVKFu3e5MfNFJ29KTQT48Ob9/lqYwOGZxeUelN2U2R6+cArgtCJpauW7UQBqnFkUsjAY/kOU1cP+DAgvxwn1chZDwUbd6CFimGXwzwF6tPbFIcjEl+vvmM/byA48e6tWrKArm4ZJlCbdsrxksL1AwWn/yBSJKpYbq8AXaaTb8AAHja28jAwOC00ZrBeQNDQOWO//sdBBgYGRiYWYAEELEwMTE4uzo5Zzo5b2BxdnFOcALxNjA6b2ByTswC8jYwg0VlNuoCTWAMqNzMzsoK1rEhNqByEyerg5PMJlYuVueETKcd/89uBpnpvIEVomeHLoMsAAe1Id4AAAAAAAB42oWQT07CQBTGv0JBhagk7HQzKxca2sJCE1hDt4QF+9JOS0nbaaYDCQfwCJ7Au3AHj+LO13FMmm6cl7785vven0kBjHCBhfpYuNa5Ph1c0e2Xu3jEvWG7UdPDLZ4N92nOm+EBXuAbHmIMSRMs+4aUEd4Nd3CHD8NdvOLTsA2GL8M9PODbcL+hD7C1xoaHeLJSEao0FEW14ckxC+TU8TxvsY6X0eLPmRhry2WVioLpkrbp84LLQPGI7c6sOiUzpWIWS5GzlSgUzzLBSikOPFTOXqly7rqx0Z1Q5BAIoZBSFihQYQOOBEdkCOgXTOHA07HAGjGWiIjaPZNW13/+lm6S9FT7rLHFJ6fQbkATOG1j2OFMucKJJsxIVfQORl+9Jyda6Sl1dUYhSCm1dyClfoeDve4qMYdLEbfqHf3O/AdDumsjAAB42mNgYoAAZQYjBmyAGYQZmdhL8zLdDEydARfoAqIAAAABAAMABwAKABMAB///AA8AAQAAAAAAAAAAAAAAAAABAAAAAA==) format('woff');
}
body {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
line-height: 1.5;
color: #31373D;
background-color: #EDEDED;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 16px;
line-height: 1.5;
word-wrap: break-word;
}
a {
background-color: transparent;
}
a:active,
a:hover {
outline-width: 0;
}
strong {
font-weight: inherit;
}
strong {
font-weight: bolder;
}
h1 {
font-size: 2em;
margin: 0.67em 0;
}
img {
border-style: none;
}
code,
kbd,
pre {
font-family: monospace, monospace;
font-size: 1em;
}
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
input {
font: inherit;
margin: 0;
}
input {
overflow: visible;
}
[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
* {
box-sizing: border-box;
}
input {
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
a {
color: #0366d6;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
strong {
font-weight: 600;
}
hr {
height: 0;
margin: 15px 0;
overflow: hidden;
background: transparent;
border: 0;
border-bottom: 1px solid #dfe2e5;
}
hr::before {
display: table;
content: "";
}
hr::after {
display: table;
clear: both;
content: "";
}
table {
border-spacing: 0;
border-collapse: collapse;
}
td,
th {
padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin-top: 0;
margin-bottom: 0;
}
h1 {
font-size: 32px;
font-weight: 600;
}
h2 {
font-size: 24px;
font-weight: 600;
}
h3 {
font-size: 20px;
font-weight: 600;
}
h4 {
font-size: 16px;
font-weight: 600;
}
h5 {
font-size: 14px;
font-weight: 600;
}
h6 {
font-size: 12px;
font-weight: 600;
}
p {
margin-top: 0;
margin-bottom: 10px;
}
blockquote {
margin: 0;
}
ul,
ol {
padding-left: 0;
margin-top: 0;
margin-bottom: 0;
}
ol ol,
ul ol {
list-style-type: lower-roman;
}
ul ul ol,
ul ol ol,
ol ul ol,
ol ol ol {
list-style-type: lower-alpha;
}
dd {
margin-left: 0;
}
code {
font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 12px;
}
pre {
margin-top: 0;
margin-bottom: 0;
font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 12px;
}
.octicon {
vertical-align: text-bottom;
}
.pl-0 {
padding-left: 0 !important;
}
.pl-1 {
padding-left: 4px !important;
}
.pl-2 {
padding-left: 8px !important;
}
.pl-3 {
padding-left: 16px !important;
}
.pl-4 {
padding-left: 24px !important;
}
.pl-5 {
padding-left: 32px !important;
}
.pl-6 {
padding-left: 40px !important;
}
.markdown-body::before {
display: table;
content: "";
}
.markdown-body::after {
display: table;
clear: both;
content: "";
}
.markdown-body>*:first-child {
margin-top: 0 !important;
}
.markdown-body>*:last-child {
margin-bottom: 0 !important;
}
a:not([href]) {
color: inherit;
text-decoration: none;
}
.anchor {
float: left;
padding-right: 4px;
margin-left: -20px;
line-height: 1;
}
.anchor:focus {
outline: none;
}
p,
blockquote,
ul,
ol,
dl,
table,
pre {
margin-top: 0;
margin-bottom: 16px;
}
hr {
height: 0.25em;
padding: 0;
margin: 24px 0;
background-color: #e1e4e8;
border: 0;
}
blockquote {
padding: 0 1em;
color: #6a737d;
border-left: 0.25em solid #dfe2e5;
}
blockquote>:first-child {
margin-top: 0;
}
blockquote>:last-child {
margin-bottom: 0;
}
kbd {
display: inline-block;
padding: 3px 5px;
font-size: 11px;
line-height: 10px;
color: #444d56;
vertical-align: middle;
background-color: #fafbfc;
border: solid 1px #c6cbd1;
border-bottom-color: #959da5;
border-radius: 3px;
box-shadow: inset 0 -1px 0 #959da5;
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin-top: 24px;
margin-bottom: 16px;
font-weight: 600;
line-height: 1.25;
}
h1 .octicon-link,
h2 .octicon-link,
h3 .octicon-link,
h4 .octicon-link,
h5 .octicon-link,
h6 .octicon-link {
color: #1b1f23;
vertical-align: middle;
visibility: hidden;
}
h1:hover .anchor,
h2:hover .anchor,
h3:hover .anchor,
h4:hover .anchor,
h5:hover .anchor,
h6:hover .anchor {
text-decoration: none;
}
h1:hover .anchor .octicon-link,
h2:hover .anchor .octicon-link,
h3:hover .anchor .octicon-link,
h4:hover .anchor .octicon-link,
h5:hover .anchor .octicon-link,
h6:hover .anchor .octicon-link {
visibility: visible;
}
h1 {
padding-bottom: 0.3em;
font-size: 2em;
border-bottom: 1px solid #eaecef;
}
h2 {
padding-bottom: 0.3em;
font-size: 1.5em;
border-bottom: 1px solid #eaecef;
}
h3 {
font-size: 1.25em;
}
h4 {
font-size: 1em;
}
h5 {
font-size: 0.875em;
}
h6 {
font-size: 0.85em;
color: #6a737d;
}
ul,
ol {
padding-left: 2em;
}
ul ul,
ul ol,
ol ol,
ol ul {
margin-top: 0;
margin-bottom: 0;
}
li {
word-wrap: break-all;
}
li>p {
margin-top: 16px;
}
li+li {
margin-top: 0.25em;
}
dl {
padding: 0;
}
dl dt {
padding: 0;
margin-top: 16px;
font-size: 1em;
font-style: italic;
font-weight: 600;
}
dl dd {
padding: 0 16px;
margin-bottom: 16px;
}
table {
display: block;
width: 100%;
overflow: auto;
}
table th {
font-weight: 600;
}
table th,
table td {
padding: 6px 13px;
border: 1px solid #dfe2e5;
}
table tr {
background-color: #fff;
border-top: 1px solid #c6cbd1;
}
table tr:nth-child(2n) {
background-color: #f6f8fa;
}
img {
max-width: 100%;
box-sizing: content-box;
background-color: #fff;
}
img[align=right] {
padding-left: 20px;
}
img[align=left] {
padding-right: 20px;
}
code {
padding: 0.2em 0.4em;
margin: 0;
font-size: 85%;
background-color: rgba(27,31,35,0.05);
border-radius: 3px;
}
pre {
word-wrap: normal;
}
pre>code {
padding: 0;
margin: 0;
font-size: 100%;
word-break: normal;
white-space: pre;
background: transparent;
border: 0;
}
.highlight {
margin-bottom: 16px;
}
.highlight pre {
margin-bottom: 0;
word-break: normal;
}
.highlight pre,
pre {
padding: 16px;
overflow: auto;
font-size: 85%;
line-height: 1.45;
background-color: #f6f8fa;
border-radius: 3px;
}
pre code {
display: inline;
max-width: auto;
padding: 0;
margin: 0;
overflow: visible;
line-height: inherit;
word-wrap: normal;
background-color: transparent;
border: 0;
}
.full-commit .btn-outline:not(:disabled):hover {
color: #005cc5;
border-color: #005cc5;
}
kbd {
display: inline-block;
padding: 3px 5px;
font: 11px "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
line-height: 10px;
color: #444d56;
vertical-align: middle;
background-color: #fafbfc;
border: solid 1px #d1d5da;
border-bottom-color: #c6cbd1;
border-radius: 3px;
box-shadow: inset 0 -1px 0 #c6cbd1;
}
:checked+.radio-label {
position: relative;
z-index: 1;
border-color: #0366d6;
}
.task-list-item {
list-style-type: none;
}
.task-list-item+.task-list-item {
margin-top: 3px;
}
.task-list-item input {
margin: 0 0.2em 0.25em -1.6em;
vertical-align: middle;
}
hr {
border-bottom-color: #eee;
}

Binary file not shown.

Binary file not shown.

View File

@ -8,15 +8,20 @@
<property name="window_position">center</property>
<property name="type_hint">dialog</property>
<property name="program_name">Uberwriter</property>
<property name="version">2.1.3</property>
<property name="version">2.1.5</property>
<property name="copyright" translatable="yes">Copyright (C) 2018, Wolf Vollprecht</property>
<property name="website">http://uberwriter.github.io/uberwriter</property>
<property name="website_label" translatable="yes">Uberwriter website</property>
<property name="authors">Wolf Vollprecht &lt;w.vollprecht@gmail.com&gt;
Manuel Genovés &lt;manuel.genoves@gmail.com&gt;</property>
<property name="translator_credits">Daniel Artfors (Swedish)
<property name="translator_credits">
Andrea Somaini (Italian)
Daniel Artfors (Swedish)
shorez (German)
TomBoss (French)
Adolfo Jayme Barrientos (Catalan)
Maxence Dubois (French)
naxuroqa (German)
Wolf
Manuel (Spanish, Catalan)</property>
<property name="artists">Tobias Bernard &lt;hi@tobiasbernard.com&gt;</property>

View File

@ -6,6 +6,10 @@
<attribute name="label" translatable="yes">Focus Mode</attribute>
<attribute name="action">app.focus_mode</attribute>
</item>
<item>
<attribute name="label" translatable="yes">Hemingway Mode</attribute>
<attribute name="action">app.hemingway_mode</attribute>
</item>
<item>
<attribute name="label" translatable="yes">Preview</attribute>
<attribute name="action">app.preview</attribute>

View File

@ -40,9 +40,10 @@
<object class="GtkLabel" id="Dark_mode_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">start</property>
<property name="halign">end</property>
<property name="valign">start</property>
<property name="label" translatable="yes">Use dark mode</property>
<property name="justify">right</property>
</object>
<packing>
<property name="left_attach">0</property>
@ -53,13 +54,28 @@
<object class="GtkLabel" id="Spellcheck_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Autospellcheck</property>
<property name="justify">right</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="Gradient_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Draw scroll gradient</property>
<property name="justify">right</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">2</property>
</packing>
</child>
<child>
<object class="GtkSwitch" id="Dark_mode_switch">
<property name="visible">True</property>
@ -76,13 +92,24 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="action_name">app.spellcheck</property>
<property name="active">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="top_attach">1</property>
</packing>
</child>
<child>
<object class="GtkSwitch" id="Gradient_switch">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="valign">start</property>
<property name="action_name">app.draw_gradient</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="top_attach">2</property>
</packing>
</child>
</object>
<packing>
<property name="tab_expand">True</property>

View File

@ -55,20 +55,27 @@
</child>
<child>
<object class="GtkShortcutsShortcut" id="s1-7">
<property name="visible">True</property>
<property name="title" translatable="yes" context="shortcut window">Hemingway mode</property>
<property name="accelerator">&lt;Primary&gt;t</property>
</object>
</child>
<child>
<object class="GtkShortcutsShortcut" id="s1-8">
<property name="visible">True</property>
<property name="title" translatable="yes" context="shortcut window">Fullscreen</property>
<property name="accelerator">F11</property>
</object>
</child>
<child>
<object class="GtkShortcutsShortcut" id="s1-8">
<object class="GtkShortcutsShortcut" id="s1-9">
<property name="visible">True</property>
<property name="title" translatable="yes" context="shortcut window">Preview</property>
<property name="accelerator">&lt;Primary&gt;p</property>
</object>
</child>
<child>
<object class="GtkShortcutsShortcut" id="s1-9">
<object class="GtkShortcutsShortcut" id="s1-10">
<property name="visible">True</property>
<property name="title" translatable="yes" context="shortcut window">Search</property>
<property name="accelerator">&lt;Primary&gt;f</property>

View File

@ -1,40 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<application>
<id type="desktop">de.wolfvollprecht.UberWriter.desktop</id>
<name>UberWriter</name>
<summary>An elegant, free distraction GTK+ markdown editor</summary>
<description>
<p>Uberwriter is a GTK+ based distraction free Markdown editor, mainly developed by Wolf Vollprecht. It uses pandoc as backend for markdown parsing and offers a very clean and sleek user interface.</p>
</description>
<categories>
<category>Office</category>
<category>TextEditor</category>
<category>GTK</category>
</categories>
<screenshots>
<screenshot type="default">
<caption>The UberWriter main window</caption>
<image type="source">https://user-images.githubusercontent.com/8913975/39668441-37b97b9e-50ce-11e8-83b4-19f481c79468.png</image>
</screenshot>
<screenshot>
<caption>Dark theme available</caption>
<image type="source">https://user-images.githubusercontent.com/8913975/39668442-37ec83b8-50ce-11e8-9896-0d2f5876ebfb.png</image>
</screenshot>
<screenshot>
<caption>With inline preview for formulas, images, footnotes and definitions</caption>
<image type="source">https://user-images.githubusercontent.com/8913975/39668440-379c4236-50ce-11e8-8c89-3d03c639953e.png</image>
</screenshot>
<screenshot>
<caption>The preview mode shows a live preview of the rendered document</caption>
<image type="source">https://user-images.githubusercontent.com/8913975/39668443-380813f8-50ce-11e8-8bc1-b69f97fb6080.png</image>
</screenshot>
<screenshot>
<caption>The focus mode helps you providing a clear environment for writing</caption>
<image type="source">https://user-images.githubusercontent.com/8913975/39668438-375ffbb4-50ce-11e8-8abe-1109702f8656.png</image>
</screenshot>
</screenshots>
<metadata_license>CC0-1.0</metadata_license>
<project_license>GPL-3.0+</project_license>
<url type="homepage">http://uberwriter.github.io/uberwriter</url>
<!-- <icon type="remote" height="375" width="375"></icon> -->
</application>

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@ -1,58 +1,199 @@
msgid ""
msgstr ""
"Project-Id-Version: UberWriter\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-11-27 21:21+0100\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2\n"
"X-Generator: Poedit 2.2.1\n"
"Project-Id-Version: UberWriter\n"
"Language: es\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:9
msgid "Dark mode"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:487
msgid "(no suggestions)"
msgstr "(no hay sugerencias)"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:509
#: uberwriter_lib/gtkspellcheck/spellcheck.py:512
msgid "Add \"{}\" to Dictionary"
msgstr "Añadir «{}» al diccionario"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:516
#: uberwriter_lib/gtkspellcheck/spellcheck.py:518
msgid "Ignore All"
msgstr "Ignorar todo"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:533
#: uberwriter_lib/gtkspellcheck/spellcheck.py:535
msgid "Languages"
msgstr "Idiomas"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:551
#: uberwriter_lib/gtkspellcheck/spellcheck.py:554
msgid "Suggestions"
msgstr "Sugerencias"
#: ../uberwriter.desktop.in.h:1
msgid "UberWriter"
msgstr "UberWriter"
#: ../uberwriter.desktop.in.h:2
msgid "UberWriter, a simple and distraction free Markdown Editor"
msgstr "UberWriter, un editor Markdown simple y sin distracciones"
#: uberwriter/UberwriterInlinePreview.py:187
msgid "Website is not available"
msgstr "El sitio web no está disponible"
#: uberwriter/UberwriterInlinePreview.py:189
msgid "Website is available"
msgstr "El sitio web está disponible"
#: uberwriter/UberwriterInlinePreview.py:441
msgid "Open Link in Webbrowser"
msgstr "Abrir enlace en un navegador web"
#: uberwriter/UberwriterInlinePreview.py:503
msgid "No matching footnote found"
msgstr "No se encontró la nota al pie correspondiente"
#: data/ui/UberwriterWindow.ui:66
msgid "_File"
msgstr "_Archivo"
#: data/ui/UberwriterWindow.ui:96
msgid "Open Recent File"
msgstr "Abrir archivo reciente"
#: data/ui/UberwriterWindow.ui:175
msgid "Export as ODT"
msgstr "Exportar como ODT"
#: data/ui/UberwriterWindow.ui:186
msgid "Advanced Export..."
msgstr "Exportación avanzada…"
#: ../data/ui/UberwriterWindow.ui.h:5
msgid "Copy raw HTML to clipboard"
msgstr "Copiar código HTML al portapapeles"
#: ../data/ui/UberwriterWindow.ui.h:6
msgid "_Edit"
msgstr "_Editar"
#: data/ui/UberwriterWindow.ui:229
msgid "_View"
msgstr "_Ver"
#: data/ui/UberwriterWindow.ui:261
msgid "Light text on a dark background"
msgstr "Texto claro sobre un fondo oscuro"
#: data/ui/WindowMenu.ui:14
msgid "Dark Mode"
msgstr "Modo oscuro"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:10
msgid ""
"If enabled, the window will be dark themed If disabled, the window will be "
"light themed asked to install them manually."
msgstr ""
#: data/ui/UberwriterWindow.ui:261
msgid "Switch to preview mode"
msgstr "Cambiar a modo de previsualización"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:18
msgid "Open file base path"
msgstr ""
#: data/ui/Menu.ui:12
msgid "Preview"
msgstr "Previsualización"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:19
msgid "Open file paths of the current session"
msgstr ""
#: data/ui/UberwriterWindow.ui:298 data/ui/WindowMenu.ui:28
msgid "Auto _Spellcheck"
msgstr "_Corrección ortográfica automática"
#: data/ui/About.ui:12
msgid "Copyright (C) 2018, Wolf Vollprecht"
msgstr "Copyright (C) 2018, Wolf Vollprecht"
#: ../data/ui/UberwriterWindow.ui.h:13
msgid "F_ormat"
msgstr "F_ormato"
#: data/ui/About.ui:14
msgid "Uberwriter website"
msgstr "Web de Uberwriter"
#: ../data/ui/UberwriterWindow.ui.h:14
msgid "Unordered List Item"
msgstr "Elemento de lista no ordenada"
#: data/ui/About.ui:66
msgid "Donations:"
msgstr "Donaciones:"
#: ../data/ui/UberwriterWindow.ui.h:15
msgid "Horizontal Rule"
msgstr "Línea horizontal"
#: data/ui/About.ui:75
msgid "Liberapay"
msgstr "Liberapay"
#: uberwriter/FormatShortcuts.py:186
msgid "Heading"
msgstr "Título"
#: data/ui/About.ui:106
msgid "Help to translate:"
msgstr "Ayuda a traducir:"
#: data/ui/UberwriterWindow.ui:312
msgid "_Help"
msgstr "Ay_uda"
#: data/ui/About.ui:115
msgid "Poeditor"
msgstr "Poeditor"
#: data/ui/UberwriterWindow.ui:322
msgid "Contents"
msgstr "Contenido"
#: data/ui/UberwriterWindow.ui:335
msgid "Short Markdown Tutorial"
msgstr "Tutorial breve de Markdown"
#: data/ui/UberwriterWindow.ui:343
msgid "Open Pandoc Online Markdown Help ..."
msgstr "Abrir ayuda de Markdown Pandoc en línea…"
#: ../data/ui/UberwriterWindow.ui.h:21
msgid "Get Help Online..."
msgstr "Obtener ayuda en línea…"
#: data/ui/UberwriterWindow.ui:359
msgid "Translate This Application..."
msgstr "Traducir esta aplicación…"
#: data/ui/Menu.ui:7
msgid "Focus Mode"
msgstr "Modo de concentración"
#: data/ui/UberwriterWindow.ui:424 data/ui/UberwriterWindow.ui:425
msgid "Go into focus mode"
msgstr "Ir al modo de concentración"
#: data/ui/Menu.ui:17
msgid "Fullscreen"
msgstr "Pantalla completa"
#: data/ui/UberwriterWindow.ui:442 data/ui/UberwriterWindow.ui:443
msgid "Go into fullscreen mode"
msgstr "Ir al modo de pantalla completa"
#: data/ui/UberwriterWindow.ui:460 data/ui/UberwriterWindow.ui:461
msgid "Show HTML preview"
msgstr "Mostrar vista preliminar de HTML"
#: data/ui/UberwriterWindow.ui:112
msgid "Words:"
msgstr "Palabras:"
#: data/ui/UberwriterWindow.ui:155
msgid "Characters:"
msgstr "Caracteres:"
#: uberwriter_lib/AppWindow.py:246
msgid "Show debug messages (-vv debugs uberwriter_lib also)"
msgstr "Mostrar mensajes de depuración (-vv depura uberwriter_lib también)"
#: uberwriter/FormatShortcuts.py:87
msgid "emphasized text"
msgstr "texto destacado"
#: uberwriter/FormatShortcuts.py:89
msgid "strong text"
msgstr "texto en negrita"
#: uberwriter/FormatShortcuts.py:105
msgid "List item"
msgstr "Elemento de lista"
#: data/ui/Export.ui:517 data/ui/UberwriterAdvancedExportDialog.ui:36
msgid "Export"
msgstr "Exportar"
#: data/ui/Export.ui:38 data/ui/UberwriterAdvancedExportDialog.ui:98
msgid "Smart"
@ -62,6 +203,14 @@ msgstr "Inteligente"
msgid "Pandoc can automatically make \"--\" to a long dash and more"
msgstr "Pandoc puede convertir automáticamente «--» a una raya y más"
#: data/ui/UberwriterAdvancedExportDialog.ui:117
msgid "Normalize"
msgstr "Normalizar"
#: data/ui/UberwriterAdvancedExportDialog.ui:122
msgid "Removes things like double spaces or spaces at the beginning of a paragraph"
msgstr "Quita elementos como espacios o espacios dobles al comienzo de un párrafo"
#: data/ui/Export.ui:56 data/ui/UberwriterAdvancedExportDialog.ui:135
msgid "Table of Contents"
msgstr "Índice"
@ -71,12 +220,8 @@ msgid "Standalone"
msgstr "Independiente"
#: data/ui/Export.ui:77 data/ui/UberwriterAdvancedExportDialog.ui:157
msgid ""
"Use a header and footer to include things like stylesheets and meta "
"information"
msgstr ""
"Usar el encabezado y el pie para incluir cosas como hojas de estilo o "
"metainformación"
msgid "Use a header and footer to include things like stylesheets and meta information"
msgstr "Usar el encabezado y el pie para incluir cosas como hojas de estilo o metainformación"
#: data/ui/Export.ui:90 data/ui/UberwriterAdvancedExportDialog.ui:171
msgid "Number Sections"
@ -120,21 +265,13 @@ msgstr "Estilo de resaltado "
msgid "<b>Syntax highlighting</b> (HTML, LaTeX)"
msgstr "<b>Resaltado de sintaxis</b> (HTML, LaTeX)"
#: data/ui/Export.ui:289 data/ui/UberwriterAdvancedExportDialog.ui:491
msgid "<b>Bibliography File</b>"
msgstr "<b>Archivo de bibliografía</b>"
#: data/ui/Export.ui:329 data/ui/UberwriterAdvancedExportDialog.ui:371
msgid "Self Contained"
msgstr "Autocontenido"
#: data/ui/Export.ui:334 data/ui/UberwriterAdvancedExportDialog.ui:376
msgid ""
"Produces a HTML that has no external dependencies (all images and "
"stylesheets are included)"
msgstr ""
"Produce HTML sin dependencias externas (todas las imágenes y hojas de estilo "
"están incluidas)"
msgid "Produces a HTML that has no external dependencies (all images and stylesheets are included)"
msgstr "Produce HTML sin dependencias externas (todas las imágenes y hojas de estilo están incluidas)"
#: data/ui/Export.ui:346 data/ui/UberwriterAdvancedExportDialog.ui:389
msgid "HTML 5"
@ -158,96 +295,111 @@ msgstr "Archivo CSS"
msgid "<b>HTML Options</b>"
msgstr "<b>Opciones de HTML</b>"
#: data/ui/Export.ui:289 data/ui/UberwriterAdvancedExportDialog.ui:491
msgid "<b>Bibliography File</b>"
msgstr "<b>Archivo de bibliografía</b>"
#: data/ui/Export.ui:423 data/ui/UberwriterAdvancedExportDialog.ui:510
msgid "Commandline Reference"
msgstr "Referencia de línea de comandos"
msgstr "Referencia de consola"
#: data/ui/Export.ui:517 data/ui/UberwriterAdvancedExportDialog.ui:36
msgid "Export"
msgstr "Exportar"
#: ../data/ui/AboutUberwriterDialog.ui.h:1
msgid ""
"# Copyright (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>\n"
"# This program is free software: you can redistribute it and/or modify it \n"
"# under the terms of the GNU General Public License version 3, as published \n"
"# by the Free Software Foundation.\n"
"# \n"
"# This program is distributed in the hope that it will be useful, but \n"
"# WITHOUT ANY WARRANTY; without even the implied warranties of \n"
"# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR \n"
"# PURPOSE. See the GNU General Public License for more details.\n"
"# \n"
"# You should have received a copy of the GNU General Public License along \n"
"# with this program. If not, see <http://www.gnu.org/licenses/>.\n"
msgstr ""
#: data/ui/Export.ui:559 data/ui/Export.ui:569
msgid "PDF"
msgstr "PDF"
#: ../data/ui/AboutUberwriterDialog.ui.h:14
msgid "Copyright (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>"
msgstr "Derechos de autor © 2012 Wolf Vollprecht <w.vollprecht@gmail.com>"
#: data/ui/Export.ui:565 uberwriter/plugins/bibtex/bibtex_item.glade:18
#: uberwriter/plugins/bibtex/bibtex_item.glade:32
#: uberwriter/plugins/bibtex/bibtex_item.glade:45
msgid "label"
msgstr "etiqueta"
#: uberwriter/UberwriterWindow.py:347
msgid "Save your File"
msgstr "Guarde su archivo"
#: data/ui/Export.ui:582
msgid "HTML"
msgstr "HTML"
#: uberwriter/UberwriterWindow.py:490
msgid "You can not export to PDF."
msgstr "No puede exportar a PDF."
#: data/ui/Export.ui:595
msgid "ODT"
msgstr "ODT"
#: uberwriter/UberwriterWindow.py:492
msgid "Please install <a href=\"apt:texlive\">texlive</a> from the software center."
msgstr "Instale <a href=\"apt:texlive\">texlive</a> desde el centro de software."
#: data/ui/Export.ui:607
#, fuzzy
msgid "Advanced"
msgstr "Exportación avanzada…"
#: uberwriter/UberwriterWindow.py:448
msgid "MarkDown or Plain Text"
msgstr "Markdown o texto simple"
#: data/ui/Menu.ui:6
msgid "Focus Mode"
msgstr "Modo de concentración"
#: uberwriter/UberwriterWindow.py:451
msgid "Open a .md-File"
msgstr "Abrir un archivo .md"
#: data/ui/Menu.ui:10
msgid "Preview"
msgstr "Previsualización"
#: uberwriter/UberwriterWindow.py:473
msgid "You have not saved your changes."
msgstr "No ha guardado los cambios."
#: data/ui/Menu.ui:14
msgid "Fullscreen"
msgstr "Pantalla completa"
#: uberwriter/UberwriterWindow.py:475
msgid "Close without Saving"
msgstr "Cerrar sin guardar"
#: data/ui/Menu.ui:20
msgid "Save _As"
msgstr "Guardar como"
#: uberwriter/UberwriterWindow.py:476
msgid "Cancel"
msgstr "Cancelar"
#: data/ui/Menu.ui:24
msgid "_Export"
msgstr "_Exportar"
#: uberwriter/UberwriterWindow.py:477
msgid "Save now"
msgstr "Guardar ahora"
#: data/ui/Menu.ui:28
msgid "Copy HTML"
msgstr "Copiar HTML"
#: uberwriter/UberwriterWindow.py:478
msgid "Unsaved changes"
msgstr "Cambios sin guardar"
#: data/ui/Menu.ui:34
msgid "Open Tutorial"
msgstr "Abrir Tutorial"
#: uberwriter/UberwriterWindow.py:537
msgid "You can not enable the Spell Checker."
msgstr "No puede activar el corrector ortográfico."
#: data/ui/Menu.ui:39
#: uberwriter/UberwriterWindow.py:540
msgid "Please install 'hunspell' or 'aspell' dictionarys for your language from the software center."
msgstr "Instale los diccionarios de «hunspell» o «aspell» para su idioma desde el centro de software."
#: data/de.wolfvollprecht.UberWriter.gschema.xml:9
msgid "Dark mode"
msgstr "Modo oscuro"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:10
msgid "If enabled, the window will be dark themed If disabled, the window will be light themed asked to install them manually."
msgstr ""
#. <attribute name="action">win.change_label</attribute>
#. <attribute name="target">String 1</attribute>
#: data/ui/App_menu.ui:10
msgid "New window"
msgstr "Ventana nueva"
#: data/ui/Menu.ui:53
msgid "_Shortcuts"
msgstr "Atajo_s"
#: data/ui/Menu.ui:49
msgid "Pandoc _Help"
msgstr "Ayuda de Pandoc"
#: data/ui/Menu.ui:44 data/ui/Preferences.ui:14
msgid "Preferences"
msgstr "Preferencias"
#: data/ui/Menu.ui:59
msgid "_About"
msgstr "_Acerca de"
#: data/ui/Menu.ui:49
#, fuzzy
#| msgid "_Shortcuts"
msgid "_Keyboard Shortcuts"
msgstr "Atajo_s"
#: data/ui/Menu.ui:53
#, fuzzy
#| msgid "UberWriter"
msgid "_About UberWriter"
msgstr "UberWriter"
#: data/ui/Preferences.ui:45
msgid "Use dark mode"
msgstr "Modo oscuro"
#: data/ui/Preferences.ui:56
msgid "Autospellcheck"
msgstr "Corrección ortográfica automática"
#: data/ui/Preferences.ui:95
msgid "page 1"
msgstr "página 1"
#: data/ui/Menu.ui:62
msgid "_Quit"
msgstr "Salir"
#: data/ui/Shortcuts.ui:13
msgctxt "shortcut window"
@ -327,7 +479,7 @@ msgstr "Negita"
#: data/ui/Shortcuts.ui:114
msgctxt "shortcut window"
msgid "Header"
msgstr "Encabezado"
msgstr "Cabecera"
#: data/ui/Shortcuts.ui:121
msgctxt "shortcut window"
@ -349,354 +501,241 @@ msgctxt "shortcut window"
msgid "Select all"
msgstr "Seleccionar todo"
#: data/ui/UberwriterAdvancedExportDialog.ui:117
msgid "Normalize"
msgstr "Normalizar"
#: data/ui/UberwriterAdvancedExportDialog.ui:122
msgid ""
"Removes things like double spaces or spaces at the beginning of a paragraph"
msgstr ""
"Quita elementos como espacios o espacios dobles al comienzo de un párrafo"
#: data/ui/UberwriterWindow.ui:19
msgid "Next Match"
msgstr "Coincidencia siguiente"
#: data/ui/UberwriterWindow.ui:36
#: data/ui/UberwriterWindow.ui:41
msgid "Open Replace"
msgstr "Reemplazar"
msgstr "Abrir Reemplazar"
#: data/ui/UberwriterWindow.ui:96
msgid "Words:"
msgstr "Palabras:"
#: data/ui/UberwriterWindow.ui:52
msgid "Activate Regex"
msgstr "Expresiones regulares"
#: data/ui/UberwriterWindow.ui:139
msgid "Characters:"
msgstr "Caracteres:"
#: data/ui/UberwriterWindow.ui:74
msgid "_New"
msgstr "_Nuevo"
#: data/ui/UberwriterWindow.ui:279
#: data/ui/UberwriterWindow.ui:84
msgid "_Open"
msgstr "_Abrir"
#: data/ui/UberwriterWindow.ui:102
msgid "Open examples"
msgstr "Abrir ejemplos"
#: data/ui/UberwriterWindow.ui:114
msgid "_Quick markdown tutorial"
msgstr "_Tutorial breve de Markdown"
#: data/ui/UberwriterWindow.ui:131
msgid "_Save"
msgstr "_Guardar"
#: data/ui/Menu.ui:24
msgid "Save _As"
msgstr "Guardar _como"
#: data/ui/UberwriterWindow.ui:157
msgid "Export as HTML"
msgstr "Exportar como HTML"
#: data/ui/UberwriterWindow.ui:166
msgid "Export as PDF"
msgstr "Exportar como PDF"
#: data/ui/UberwriterWindow.ui:201
msgid "Copy Raw HTML to Clipboard"
msgstr "Copiar código HTML al portapapeles"
#: data/ui/UberwriterWindow.ui:254
msgid "Sidebar"
msgstr "Barra lateral"
#: data/ui/UberwriterWindow.ui:270
msgid "Open Search and Replace"
msgstr "Abrir Buscar y reemplazar"
#: data/ui/UberwriterWindow.ui:271
msgid "Search and Replace ..."
msgstr "Buscar y reemplazar…"
#: data/ui/UberwriterWindow.ui:295
msgid "Previous Match"
msgstr "Coincidencia anterior"
#: data/ui/UberwriterWindow.ui:320
msgid "aA"
msgstr ""
#: data/ui/UberwriterWindow.ui:324
#: data/ui/UberwriterWindow.ui:339
msgid "Case Sensitive"
msgstr "Coincidencia de mayúsculas y minúsculas"
msgstr "Distinguir mayúsculas y minúsculas"
#: data/ui/UberwriterWindow.ui:334
msgid "(.*)"
msgstr ""
#: data/ui/UberwriterWindow.ui:427
#: data/ui/UberwriterWindow.ui:443
msgid "Replace"
msgstr "Reemplazar"
#: data/ui/UberwriterWindow.ui:441
#: data/ui/UberwriterWindow.ui:457
msgid "Replace all"
msgstr "Reemplazar todo"
#: uberwriter/FormatShortcuts.py:99
msgid "emphasized text"
msgstr "texto destacado"
#: uberwriter/FormatShortcuts.py:101
msgid "strong text"
msgstr "texto en negrita"
#: uberwriter/FormatShortcuts.py:103
#: uberwriter/FormatShortcuts.py:91
msgid "striked out text"
msgstr "texto destacado"
msgstr "texto tachado"
#: uberwriter/FormatShortcuts.py:121
msgid "List item"
msgstr "Elemento de lista"
#: data/ui/Export.ui:565 uberwriter/plugins/bibtex/bibtex_item.glade:18
#: uberwriter/plugins/bibtex/bibtex_item.glade:32
#: uberwriter/plugins/bibtex/bibtex_item.glade:45
msgid "label"
msgstr "etiqueta"
#: uberwriter/FormatShortcuts.py:181
msgid "Heading"
msgstr "Encabezado"
#: uberwriter/UberwriterExportDialog.py:48
msgid "Untitled document.md"
msgstr "Sin Título.md"
#: uberwriter/UberwriterExportDialog.py:372
msgid "Please, install the TexLive extension from Gnome Software or running\n"
msgstr ""
"or favor, instala la extensión de TexLive desde Gnome Software o ejecutando\n"
#: uberwriter/UberwriterExportDialog.py:375
msgid "Please, install TexLive from your distribuiton repositories"
msgstr "Por favor, instala TexLive desde los repositorios de tu sistema"
#: uberwriter/UberwriterInlinePreview.py:183
msgid "Website is not available"
msgstr "El sitio web no está disponible"
#: uberwriter/UberwriterInlinePreview.py:185
msgid "Website is available"
msgstr "El sitio web está disponible"
#: uberwriter/UberwriterInlinePreview.py:435
msgid "Open Link in Webbrowser"
msgstr "Abrir enlace en un navegador web"
#: uberwriter/UberwriterInlinePreview.py:500
msgid "No matching footnote found"
msgstr "No se encontró la nota de pie correspondiente"
#: uberwriter/UberwriterWindow.py:572
msgid "Save your File"
msgstr "Guarde su archivo"
#: uberwriter/UberwriterWindow.py:678
msgid "MarkDown or Plain Text"
msgstr "Markdown o texto simple"
#: uberwriter/UberwriterWindow.py:681
msgid "Open a .md-File"
msgstr "Abrir un archivo .md"
#: uberwriter/UberwriterWindow.py:706
msgid "You have not saved your changes."
msgstr "No ha guardado los cambios."
#: uberwriter/UberwriterWindow.py:708
msgid "Close without Saving"
msgstr "Cerrar sin guardar"
#: uberwriter/UberwriterWindow.py:709
msgid "Cancel"
msgstr "Cancelar"
#: uberwriter/UberwriterWindow.py:710
msgid "Save now"
msgstr "Guardar ahora"
#: uberwriter/UberwriterWindow.py:711
msgid "Unsaved changes"
msgstr "Cambios sin guardar"
#: uberwriter/UberwriterWindow.py:742
#, fuzzy
#| msgid "CSS File"
msgid "New File"
msgstr "Archivo CSS"
#: uberwriter/UberwriterWindow.py:780
msgid "You can not enable the Spell Checker."
msgstr "No puede activar el corrector ortográfico."
#: uberwriter/UberwriterWindow.py:783
msgid ""
"Please install 'hunspell' or 'aspell' dictionarys for your language from the "
"software center."
msgstr ""
"Instale los diccionarios de «hunspell» o «aspell» para su idioma desde el "
"centro de software."
#: uberwriter/headerbars.py:76
msgid "Exit Fullscreen"
msgstr "Salir de pantalla completa"
#: uberwriter/headerbars.py:118
msgid "New"
msgstr "Nuevo"
#: uberwriter/headerbars.py:119
msgid "Open"
msgstr "Abrir"
#: uberwriter/headerbars.py:121
msgid "Save"
msgstr "Guardar"
#: uberwriter/headerbars.py:128
msgid "Open Recent"
msgstr "Abrir archivo reciente"
#: uberwriter/headerbars.py:130
msgid "Search and replace"
msgstr "Buscar y reemplazar"
#: uberwriter/headerbars.py:131
msgid "Menu"
msgstr "Menu"
#: uberwriter_lib/AppWindow.py:173
msgid "Show debug messages (-vv debugs uberwriter_lib also)"
msgstr "Mostrar mensajes de depuración (-vv depura uberwriter_lib también)"
#: uberwriter_lib/AppWindow.py:175
#: uberwriter_lib/AppWindow.py:248
msgid "Use experimental features"
msgstr "Usar características experimentales"
#: uberwriter_lib/gtkspellcheck/oxt_extract.py:259
msgid "extension \"{}\" is not a valid ZIP file"
msgstr "la extensión \"{}\" no es un formato de archivo ZIP válido"
msgstr "la extensión «{}» no es un archivo ZIP válido"
#: uberwriter_lib/gtkspellcheck/oxt_extract.py:265
msgid "extension \"{}\" has no valid XML dictionary registry"
msgstr ""
msgstr "la extensión «{}» no incluye un registro de diccionario XML válido"
#: uberwriter_lib/gtkspellcheck/oxt_extract.py:285
msgid "unable to move extension, file with same name exists within move_path"
msgstr ""
msgstr "no se puede mover la extensión; ya existe un archivo con el mismo nombre en move_path"
#: uberwriter_lib/gtkspellcheck/oxt_extract.py:293
msgid "unable to move extension, move_path is not a directory"
msgstr ""
msgstr "no se puede mover la extensión; move_path no es un directorio"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:105
msgid "Unknown"
msgstr "Desconocido"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:487
msgid "(no suggestions)"
msgstr "(no hay sugerencias)"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:18
msgid "Open file base path"
msgstr "Abrir ruta de base de archivo"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:509
#: uberwriter_lib/gtkspellcheck/spellcheck.py:512
msgid "Add \"{}\" to Dictionary"
msgstr "Añadir «{}» al diccionario"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:19
msgid "Open file paths of the current session"
msgstr "Abrir rutas de archivos de la sesión actual"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:516
#: uberwriter_lib/gtkspellcheck/spellcheck.py:518
msgid "Ignore All"
msgstr "Ignorar todo"
#: data/ui/App_menu.ui:36
msgid "Help to _translate"
msgstr "Ayudar a _traducir"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:533
#: uberwriter_lib/gtkspellcheck/spellcheck.py:535
msgid "Languages"
msgstr "Idiomas"
#: data/ui/App_menu.ui:40
msgid "Donate to the project"
msgstr "Donar al proyecto"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:551
#: uberwriter_lib/gtkspellcheck/spellcheck.py:554
msgid "Suggestions"
msgstr "Sugerencias"
#: data/ui/WindowMenu.ui:24
msgid "Search and Replace"
msgstr "Buscar y reemplazar"
#~ msgid "UberWriter, a simple and distraction free Markdown Editor"
#~ msgstr "UberWriter, un editor Markdown simple y sin distracciones"
#: data/ui/About.ui:12
msgid "Copyright (C) 2018, Wolf Vollprecht"
msgstr "Derechos de autor © 2018 Wolf Vollprecht"
#~ msgid "_File"
#~ msgstr "_Archivo"
#: data/ui/About.ui:14
msgid "Uberwriter website"
msgstr "Sitio web de Uberwriter"
#~ msgid "Open Recent File"
#~ msgstr "Abrir archivo reciente"
#: data/ui/About.ui:60
msgid "Donations:"
msgstr "Donaciones:"
#~ msgid "Export as ODT"
#~ msgstr "Exportar como ODT"
#: data/ui/About.ui:69
msgid "Liberapay"
msgstr "Liberapay"
#~ msgid "Advanced Export..."
#~ msgstr "Exportación avanzada…"
#: data/ui/About.ui:100
msgid "Help to translate:"
msgstr "Ayudar a traducir:"
#~ msgid "Copy raw HTML to clipboard"
#~ msgstr "Copiar código HTML al portapapeles"
#: data/ui/About.ui:109
msgid "Poeditor"
msgstr "Poeditor"
#~ msgid "_Edit"
#~ msgstr "_Editar"
#: data/ui/Export.ui:559 data/ui/Export.ui:569
msgid "PDF"
msgstr "PDF"
#~ msgid "_View"
#~ msgstr "_Ver"
#: data/ui/Export.ui:582
msgid "HTML"
msgstr "HTML"
#~ msgid "Light text on a dark background"
#~ msgstr "Texto claro sobre un fondo oscuro"
#: data/ui/Export.ui:595
msgid "ODT"
msgstr "ODT"
#~ msgid "Dark Mode"
#~ msgstr "Modo oscuro"
#: data/ui/Export.ui:607
msgid "Advanced"
msgstr "Avanzado"
#~ msgid "Switch to preview mode"
#~ msgstr "Cambiar a modo de previsualización"
#: data/ui/Menu.ui:28
msgid "_Export"
msgstr "_Exportar"
#~ msgid "Auto _Spellcheck"
#~ msgstr "_Corrección ortográfica automática"
#: data/ui/Menu.ui:32
msgid "Copy HTML"
msgstr "Copiar HTML"
#~ msgid "F_ormat"
#~ msgstr "F_ormato"
#: data/ui/Menu.ui:38 data/ui/Preferences.ui:14
msgid "Preferences"
msgstr "Preferencias"
#~ msgid "Horizontal Rule"
#~ msgstr "Línea horizontal"
#: data/ui/Menu.ui:44
msgid "Open Tutorial"
msgstr "Abrir tutorial"
#~ msgid "_Help"
#~ msgstr "Ay_uda"
#: data/ui/Preferences.ui:45
msgid "Use dark mode"
msgstr "Modo oscuro"
#~ msgid "Contents"
#~ msgstr "Contenido"
#: data/ui/Preferences.ui:56
msgid "Autospellcheck"
msgstr "Corrección ortográfica automática"
#~ msgid "Short Markdown Tutorial"
#~ msgstr "Tutorial breve de Markdown"
#: data/ui/Preferences.ui:95
msgid "page 1"
msgstr "página 1"
#~ msgid "Open Pandoc Online Markdown Help ..."
#~ msgstr "Abrir ayuda de Markdown Pandoc en línea…"
#: uberwriter/UberwriterExportDialog.py:48
msgid "Untitled document.md"
msgstr "Documento sin título.md"
#~ msgid "Get Help Online..."
#~ msgstr "Ver ayuda online..."
#: uberwriter/UberwriterExportDialog.py:372
msgid "Please, install the TexLive extension from Gnome Software or running\n"
msgstr "Instale la extensión de TexLive desde Software de GNOME o ejecutando\n"
#~ msgid "Translate This Application..."
#~ msgstr "Traducir esta aplicación…"
#: uberwriter/UberwriterExportDialog.py:375
msgid "Please, install TexLive from your distribuiton repositories"
msgstr "Instale TexLive desde los repositorios de la distribución"
#~ msgid "Go into focus mode"
#~ msgstr "Ir al modo de concentración"
#: uberwriter/UberwriterWindow.py:894 uberwriter/UberwriterWindow.py:943
msgid "New"
msgstr "Nuevo"
#~ msgid "Go into fullscreen mode"
#~ msgstr "Ir al modo de pantalla completa"
#: uberwriter/UberwriterWindow.py:895 uberwriter/UberwriterWindow.py:944
msgid "Open"
msgstr "Abrir"
#~ msgid "Show HTML preview"
#~ msgstr "Mostrar vista preliminar de HTML"
#: uberwriter/UberwriterWindow.py:899 uberwriter/UberwriterWindow.py:946
#: uberwriter/UberwriterWindow.py:949
msgid "Open Recent"
msgstr "Abrir recientes"
#~ msgid "You can not export to PDF."
#~ msgstr "No puede exportar a PDF."
#: uberwriter/UberwriterWindow.py:901 uberwriter/UberwriterWindow.py:951
msgid "Save"
msgstr "Guardar"
#~ msgid ""
#~ "Please install <a href=\"apt:texlive\">texlive</a> from the software "
#~ "center."
#~ msgstr ""
#~ "Instale <a href=\"apt:texlive\">texlive</a> desde el centro de software."
#: uberwriter/UberwriterWindow.py:904 uberwriter/UberwriterWindow.py:954
msgid "Search and replace"
msgstr "Buscar y reemplazar"
#~ msgid "New window"
#~ msgstr "Nueva ventana"
#: uberwriter/UberwriterWindow.py:906 uberwriter/UberwriterWindow.py:956
msgid "Menu"
msgstr "Menú"
#~ msgid "_About"
#~ msgstr "_Acerca de"
#~ msgid "_Quit"
#~ msgstr "Salir"
#~ msgid "Activate Regex"
#~ msgstr "Expresiones regulares"
#~ msgid "_New"
#~ msgstr "_Nuevo"
#~ msgid "_Open"
#~ msgstr "Abrir"
#~ msgid "Open examples"
#~ msgstr "Abrir ejemplos"
#~ msgid "_Quick markdown tutorial"
#~ msgstr "Tutorial breve de Markdown"
#~ msgid "_Save"
#~ msgstr "Guardar"
#~ msgid "Export as HTML"
#~ msgstr "Exportar como HTML"
#~ msgid "Export as PDF"
#~ msgstr "Exportar como PDF"
#~ msgid "Copy Raw HTML to Clipboard"
#~ msgstr "Copiar código HTML al portapapeles"
#~ msgid "Sidebar"
#~ msgstr "Barra lateral"
#~ msgid "Open Search and Replace"
#~ msgstr "Abrir \"buscar y reemplazar\""
#~ msgid "Search and Replace ..."
#~ msgstr "Buscar y reemplazar..."
#: uberwriter/UberwriterWindow.py:961
msgid "Exit Fullscreen"
msgstr "Salir de pantalla completa"

Binary file not shown.

Binary file not shown.

View File

@ -1,71 +1,211 @@
msgid ""
msgstr ""
"Project-Id-Version: UberWriter\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-11-27 21:21+0100\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: eu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2\n"
"X-Generator: POEditor.com\n"
"Project-Id-Version: UberWriter\n"
"Language: eu\n"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:9
#, fuzzy
msgid "Dark mode"
msgstr "Modu iluna"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:487
msgid "(no suggestions)"
msgstr "(iradokizunik ez)"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:10
msgid ""
"If enabled, the window will be dark themed If disabled, the window will be "
"light themed asked to install them manually."
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:509
#: uberwriter_lib/gtkspellcheck/spellcheck.py:512
msgid "Add \"{}\" to Dictionary"
msgstr "Gehitu \"{}\" hiztegira"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:18
msgid "Open file base path"
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:516
#: uberwriter_lib/gtkspellcheck/spellcheck.py:518
msgid "Ignore All"
msgstr "Ez ikusi egin guztiei"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:19
msgid "Open file paths of the current session"
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:533
#: uberwriter_lib/gtkspellcheck/spellcheck.py:535
msgid "Languages"
msgstr "Hizkuntzak"
#: data/ui/About.ui:12
#, fuzzy
msgid "Copyright (C) 2018, Wolf Vollprecht"
msgstr "Copyright-a (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>"
#: uberwriter_lib/gtkspellcheck/spellcheck.py:551
#: uberwriter_lib/gtkspellcheck/spellcheck.py:554
msgid "Suggestions"
msgstr "Iradokizunak"
#: data/ui/About.ui:14
#, fuzzy
msgid "Uberwriter website"
#: ../uberwriter.desktop.in.h:1
msgid "UberWriter"
msgstr "UberWriter"
#: data/ui/About.ui:66
msgid "Donations:"
#: ../uberwriter.desktop.in.h:2
msgid "UberWriter, a simple and distraction free Markdown Editor"
msgstr "UberWriter, markaketa-editore sinple eta arreta-galtzerik gabea"
#: uberwriter/UberwriterInlinePreview.py:187
msgid "Website is not available"
msgstr ""
#: data/ui/About.ui:75
msgid "Liberapay"
#: uberwriter/UberwriterInlinePreview.py:189
msgid "Website is available"
msgstr ""
#: data/ui/About.ui:106
msgid "Help to translate:"
#: uberwriter/UberwriterInlinePreview.py:441
msgid "Open Link in Webbrowser"
msgstr ""
#: data/ui/About.ui:115
#, fuzzy
msgid "Poeditor"
#: uberwriter/UberwriterInlinePreview.py:503
msgid "No matching footnote found"
msgstr ""
#: data/ui/UberwriterWindow.ui:66
msgid "_File"
msgstr "_Fitxategia"
#: data/ui/UberwriterWindow.ui:96
msgid "Open Recent File"
msgstr "Ireki oraintsuko fitxategia"
#: data/ui/UberwriterWindow.ui:175
msgid "Export as ODT"
msgstr "Esportatu ODT bezala"
#: data/ui/UberwriterWindow.ui:186
msgid "Advanced Export..."
msgstr "Esportatze aurreratua..."
#: ../data/ui/UberwriterWindow.ui.h:5
msgid "Copy raw HTML to clipboard"
msgstr "Kopiatu HTML gordina arbelera"
#: ../data/ui/UberwriterWindow.ui.h:6
msgid "_Edit"
msgstr "_Editatu"
#: data/ui/UberwriterWindow.ui:229
msgid "_View"
msgstr "_Ikusi"
#: data/ui/UberwriterWindow.ui:261
msgid "Light text on a dark background"
msgstr ""
#: data/ui/WindowMenu.ui:14
msgid "Dark Mode"
msgstr "Modu iluna"
#: data/ui/UberwriterWindow.ui:261
msgid "Switch to preview mode"
msgstr ""
#: data/ui/Menu.ui:12
msgid "Preview"
msgstr ""
#: data/ui/UberwriterWindow.ui:298 data/ui/WindowMenu.ui:28
msgid "Auto _Spellcheck"
msgstr "_Egiaztatu ortografia automatikoki"
#: ../data/ui/UberwriterWindow.ui.h:13
msgid "F_ormat"
msgstr "F_ormatua"
#: ../data/ui/UberwriterWindow.ui.h:14
msgid "Unordered List Item"
msgstr "Ordenatu gabeko zerrendako elementua"
#: ../data/ui/UberwriterWindow.ui.h:15
msgid "Horizontal Rule"
msgstr "Marra horizontala"
#: uberwriter/FormatShortcuts.py:186
msgid "Heading"
msgstr "Izenburua"
#: data/ui/UberwriterWindow.ui:312
msgid "_Help"
msgstr "_Laguntza"
#: data/ui/UberwriterWindow.ui:322
msgid "Contents"
msgstr "Edukiak"
#: data/ui/UberwriterWindow.ui:335
msgid "Short Markdown Tutorial"
msgstr ""
#: data/ui/UberwriterWindow.ui:343
msgid "Open Pandoc Online Markdown Help ..."
msgstr ""
#: ../data/ui/UberwriterWindow.ui.h:21
msgid "Get Help Online..."
msgstr "Lortu laguntza linean..."
#: data/ui/UberwriterWindow.ui:359
msgid "Translate This Application..."
msgstr "Itzuli aplikazio hau..."
#: data/ui/Menu.ui:7
msgid "Focus Mode"
msgstr "Fokuaren modua"
#: data/ui/UberwriterWindow.ui:424 data/ui/UberwriterWindow.ui:425
msgid "Go into focus mode"
msgstr "Joan fokuaren modura"
#: data/ui/Menu.ui:17
msgid "Fullscreen"
msgstr "Pantaila osoa"
#: data/ui/UberwriterWindow.ui:442 data/ui/UberwriterWindow.ui:443
msgid "Go into fullscreen mode"
msgstr "Joan pantaila osoko modura"
#: data/ui/UberwriterWindow.ui:460 data/ui/UberwriterWindow.ui:461
msgid "Show HTML preview"
msgstr ""
#: data/ui/UberwriterWindow.ui:112
msgid "Words:"
msgstr "Hitzak:"
#: data/ui/UberwriterWindow.ui:155
msgid "Characters:"
msgstr "Karaktereak:"
#: uberwriter_lib/AppWindow.py:246
msgid "Show debug messages (-vv debugs uberwriter_lib also)"
msgstr "Erakutsi arazketako mezuak (-vv erabiliz uberwriter_lib ere arazten da)"
#: uberwriter/FormatShortcuts.py:87
msgid "emphasized text"
msgstr "nabarmendutako testua"
#: uberwriter/FormatShortcuts.py:89
msgid "strong text"
msgstr "testu lodia"
#: uberwriter/FormatShortcuts.py:105
msgid "List item"
msgstr "Zerrendako elementua"
#: data/ui/Export.ui:517 data/ui/UberwriterAdvancedExportDialog.ui:36
msgid "Export"
msgstr "Esportatu"
#: data/ui/Export.ui:38 data/ui/UberwriterAdvancedExportDialog.ui:98
msgid "Smart"
msgstr "Adimentsua"
#: data/ui/Export.ui:43 data/ui/UberwriterAdvancedExportDialog.ui:103
msgid "Pandoc can automatically make \"--\" to a long dash and more"
msgstr ""
"Pandoc-ek automatikoki bihur dezake \"--\" marra luzean eta gauza gehiago"
msgstr "Pandoc-ek automatikoki bihur dezake \"--\" marra luzean eta gauza gehiago"
#: data/ui/UberwriterAdvancedExportDialog.ui:117
msgid "Normalize"
msgstr "Normalizatu"
#: data/ui/UberwriterAdvancedExportDialog.ui:122
msgid "Removes things like double spaces or spaces at the beginning of a paragraph"
msgstr "Zuriune bikoitzak edo paragrafo hasierako zuriuneak bezalako gauzak kentzen ditu"
#: data/ui/Export.ui:56 data/ui/UberwriterAdvancedExportDialog.ui:135
msgid "Table of Contents"
@ -76,12 +216,8 @@ msgid "Standalone"
msgstr "Autonomoa"
#: data/ui/Export.ui:77 data/ui/UberwriterAdvancedExportDialog.ui:157
msgid ""
"Use a header and footer to include things like stylesheets and meta "
"information"
msgstr ""
"Erabili goiburua eta orri-oina estilo-orriak eta meta-informazioa bezalako "
"gauzak gehitzeko"
msgid "Use a header and footer to include things like stylesheets and meta information"
msgstr "Erabili goiburua eta orri-oina estilo-orriak eta meta-informazioa bezalako gauzak gehitzeko"
#: data/ui/Export.ui:90 data/ui/UberwriterAdvancedExportDialog.ui:171
msgid "Number Sections"
@ -125,21 +261,13 @@ msgstr "Nabarmentze-estiloa "
msgid "<b>Syntax highlighting</b> (HTML, LaTeX)"
msgstr "<b>Sintaxiaren nabarmentzea</b> (HTML, LaTeX)"
#: data/ui/Export.ui:289 data/ui/UberwriterAdvancedExportDialog.ui:491
msgid "<b>Bibliography File</b>"
msgstr "<b>Bibliografia-fitxategia</b>"
#: data/ui/Export.ui:329 data/ui/UberwriterAdvancedExportDialog.ui:371
msgid "Self Contained"
msgstr "Beregaina"
#: data/ui/Export.ui:334 data/ui/UberwriterAdvancedExportDialog.ui:376
msgid ""
"Produces a HTML that has no external dependencies (all images and "
"stylesheets are included)"
msgstr ""
"Kanpoko menpekotasunik gabeko HTMLa sortzen du (irudi eta estilo-orri "
"guztiak erantsita daude)"
msgid "Produces a HTML that has no external dependencies (all images and stylesheets are included)"
msgstr "Kanpoko menpekotasunik gabeko HTMLa sortzen du (irudi eta estilo-orri guztiak erantsita daude)"
#: data/ui/Export.ui:346 data/ui/UberwriterAdvancedExportDialog.ui:389
msgid "HTML 5"
@ -163,98 +291,111 @@ msgstr "CSS fitxategia"
msgid "<b>HTML Options</b>"
msgstr "<b>HTML aukerak</b>"
#: data/ui/Export.ui:289 data/ui/UberwriterAdvancedExportDialog.ui:491
msgid "<b>Bibliography File</b>"
msgstr "<b>Bibliografia-fitxategia</b>"
#: data/ui/Export.ui:423 data/ui/UberwriterAdvancedExportDialog.ui:510
msgid "Commandline Reference"
msgstr "Komando-lerroko erreferentzia"
#: data/ui/Export.ui:517 data/ui/UberwriterAdvancedExportDialog.ui:36
msgid "Export"
msgstr "Esportatu"
#: data/ui/Export.ui:559 data/ui/Export.ui:569
msgid "PDF"
#: ../data/ui/AboutUberwriterDialog.ui.h:1
msgid "# Copyright (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>\n"
"# This program is free software: you can redistribute it and/or modify it \n"
"# under the terms of the GNU General Public License version 3, as published \n"
"# by the Free Software Foundation.\n"
"# \n"
"# This program is distributed in the hope that it will be useful, but \n"
"# WITHOUT ANY WARRANTY; without even the implied warranties of \n"
"# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR \n"
"# PURPOSE. See the GNU General Public License for more details.\n"
"# \n"
"# You should have received a copy of the GNU General Public License along \n"
"# with this program. If not, see <http://www.gnu.org/licenses/>.\n"
""
msgstr ""
#: data/ui/Export.ui:565 uberwriter/plugins/bibtex/bibtex_item.glade:18
#: uberwriter/plugins/bibtex/bibtex_item.glade:32
#: uberwriter/plugins/bibtex/bibtex_item.glade:45
msgid "label"
msgstr ""
#: ../data/ui/AboutUberwriterDialog.ui.h:14
msgid "Copyright (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>"
msgstr "Copyright-a (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>"
#: data/ui/Export.ui:582
#, fuzzy
msgid "HTML"
msgstr "HTML 5"
#: uberwriter/UberwriterWindow.py:347
msgid "Save your File"
msgstr "Gorde zure fitxategia"
#: data/ui/Export.ui:595
msgid "ODT"
msgstr ""
#: uberwriter/UberwriterWindow.py:490
msgid "You can not export to PDF."
msgstr "Ezin duzu PDFra esportatu."
#: data/ui/Export.ui:607
#, fuzzy
msgid "Advanced"
msgstr "Esportatze aurreratua..."
#: uberwriter/UberwriterWindow.py:492
msgid "Please install <a href=\"apt:texlive\">texlive</a> from the software center."
msgstr "Mesedez instalatu <a href=\"apt:texlive\">texlive</a> software-zentrotik."
#: data/ui/Menu.ui:6
msgid "Focus Mode"
msgstr "Fokuaren modua"
#: uberwriter/UberwriterWindow.py:448
msgid "MarkDown or Plain Text"
msgstr "Markaketa edo testu-laua"
#: data/ui/Menu.ui:10
msgid "Preview"
msgstr ""
#: uberwriter/UberwriterWindow.py:451
msgid "Open a .md-File"
msgstr "Ireki .md fitxategi bat"
#: data/ui/Menu.ui:14
msgid "Fullscreen"
msgstr "Pantaila osoa"
#: uberwriter/UberwriterWindow.py:473
msgid "You have not saved your changes."
msgstr "Ez dituzu gorde zure aldaketak."
#: data/ui/Menu.ui:20
#, fuzzy
msgid "Save _As"
#: uberwriter/UberwriterWindow.py:475
msgid "Close without Saving"
msgstr "Itxi gorde gabe"
#: uberwriter/UberwriterWindow.py:476
msgid "Cancel"
msgstr "Utzi"
#: uberwriter/UberwriterWindow.py:477
msgid "Save now"
msgstr "Gorde orain"
#: data/ui/Menu.ui:24
#: uberwriter/UberwriterWindow.py:478
msgid "Unsaved changes"
msgstr "Gorde gabeko aldaketak"
#: uberwriter/UberwriterWindow.py:537
msgid "You can not enable the Spell Checker."
msgstr "Ezin duzu zuzentzaile ortografikoa gaitu."
#: uberwriter/UberwriterWindow.py:540
msgid "Please install 'hunspell' or 'aspell' dictionarys for your language from the software center."
msgstr "Mesedez instalatu zure hizkuntzaren 'hunspell' edo 'aspell' hiztegiak software-zentrotik."
#: data/de.wolfvollprecht.UberWriter.gschema.xml:9
#, fuzzy
msgid "_Export"
msgstr "Esportatu"
msgid "Dark mode"
msgstr "Modu iluna"
#: data/ui/Menu.ui:28
msgid "Copy HTML"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:10
msgid "If enabled, the window will be dark themed If disabled, the window will be light themed asked to install them manually."
msgstr ""
#: data/ui/Menu.ui:34
msgid "Open Tutorial"
msgstr ""
#: data/ui/Menu.ui:39
msgid "Pandoc _Help"
msgstr ""
#: data/ui/Menu.ui:44 data/ui/Preferences.ui:14
msgid "Preferences"
msgstr ""
#: data/ui/Menu.ui:49
msgid "_Keyboard Shortcuts"
#. <attribute name="action">win.change_label</attribute>
#. <attribute name="target">String 1</attribute>
#: data/ui/App_menu.ui:10
msgid "New window"
msgstr ""
#: data/ui/Menu.ui:53
#, fuzzy
#| msgid "UberWriter"
msgid "_About UberWriter"
msgstr "UberWriter"
msgid "_Shortcuts"
msgstr ""
#: data/ui/Preferences.ui:45
#, fuzzy
msgid "Use dark mode"
msgstr "Modu iluna"
#: data/ui/Menu.ui:49
msgid "Pandoc _Help"
msgstr ""
#: data/ui/Preferences.ui:56
#, fuzzy
msgid "Autospellcheck"
msgstr "_Egiaztatu ortografia automatikoki"
#: data/ui/Menu.ui:59
msgid "_About"
msgstr ""
#: data/ui/Preferences.ui:95
msgid "page 1"
#: data/ui/Menu.ui:62
msgid "_Quit"
msgstr ""
#: data/ui/Shortcuts.ui:13
@ -364,195 +505,101 @@ msgctxt "shortcut window"
msgid "Select all"
msgstr ""
#: data/ui/UberwriterAdvancedExportDialog.ui:117
msgid "Normalize"
msgstr "Normalizatu"
#: data/ui/UberwriterAdvancedExportDialog.ui:122
msgid ""
"Removes things like double spaces or spaces at the beginning of a paragraph"
msgstr ""
"Zuriune bikoitzak edo paragrafo hasierako zuriuneak bezalako gauzak kentzen "
"ditu"
#: data/ui/UberwriterWindow.ui:19
msgid "Next Match"
msgstr ""
#: data/ui/UberwriterWindow.ui:36
#: data/ui/UberwriterWindow.ui:41
#, fuzzy
msgid "Open Replace"
msgstr "Ireki oraintsuko fitxategia"
#: data/ui/UberwriterWindow.ui:96
msgid "Words:"
msgstr "Hitzak:"
#: data/ui/UberwriterWindow.ui:52
msgid "Activate Regex"
msgstr ""
#: data/ui/UberwriterWindow.ui:139
msgid "Characters:"
msgstr "Karaktereak:"
#: data/ui/UberwriterWindow.ui:74
msgid "_New"
msgstr ""
#: data/ui/UberwriterWindow.ui:279
#: data/ui/UberwriterWindow.ui:84
msgid "_Open"
msgstr ""
#: data/ui/UberwriterWindow.ui:102
#, fuzzy
msgid "Open examples"
msgstr "Ireki .md fitxategi bat"
#: data/ui/UberwriterWindow.ui:114
msgid "_Quick markdown tutorial"
msgstr ""
#: data/ui/UberwriterWindow.ui:131
#, fuzzy
msgid "_Save"
msgstr "Gorde orain"
#: data/ui/Menu.ui:24
#, fuzzy
msgid "Save _As"
msgstr "Gorde orain"
#: data/ui/UberwriterWindow.ui:157
#, fuzzy
msgid "Export as HTML"
msgstr "Esportatu ODT bezala"
#: data/ui/UberwriterWindow.ui:166
#, fuzzy
msgid "Export as PDF"
msgstr "Esportatu ODT bezala"
#: data/ui/UberwriterWindow.ui:201
#, fuzzy
msgid "Copy Raw HTML to Clipboard"
msgstr "Kopiatu HTML gordina arbelera"
#: data/ui/UberwriterWindow.ui:254
msgid "Sidebar"
msgstr ""
#: data/ui/UberwriterWindow.ui:270
msgid "Open Search and Replace"
msgstr ""
#: data/ui/UberwriterWindow.ui:271
msgid "Search and Replace ..."
msgstr ""
#: data/ui/UberwriterWindow.ui:295
msgid "Previous Match"
msgstr ""
#: data/ui/UberwriterWindow.ui:320
msgid "aA"
msgstr ""
#: data/ui/UberwriterWindow.ui:324
#: data/ui/UberwriterWindow.ui:339
msgid "Case Sensitive"
msgstr ""
#: data/ui/UberwriterWindow.ui:334
msgid "(.*)"
msgstr ""
#: data/ui/UberwriterWindow.ui:427
#: data/ui/UberwriterWindow.ui:443
msgid "Replace"
msgstr ""
#: data/ui/UberwriterWindow.ui:441
#: data/ui/UberwriterWindow.ui:457
msgid "Replace all"
msgstr ""
#: uberwriter/FormatShortcuts.py:99
msgid "emphasized text"
msgstr "nabarmendutako testua"
#: uberwriter/FormatShortcuts.py:101
msgid "strong text"
msgstr "testu lodia"
#: uberwriter/FormatShortcuts.py:103
#: uberwriter/FormatShortcuts.py:91
#, fuzzy
msgid "striked out text"
msgstr "testu lodia"
#: uberwriter/FormatShortcuts.py:121
msgid "List item"
msgstr "Zerrendako elementua"
#: uberwriter/FormatShortcuts.py:181
msgid "Heading"
msgstr "Izenburua"
#: uberwriter/UberwriterExportDialog.py:48
msgid "Untitled document.md"
#: data/ui/Export.ui:565 uberwriter/plugins/bibtex/bibtex_item.glade:18
#: uberwriter/plugins/bibtex/bibtex_item.glade:32
#: uberwriter/plugins/bibtex/bibtex_item.glade:45
msgid "label"
msgstr ""
#: uberwriter/UberwriterExportDialog.py:372
msgid "Please, install the TexLive extension from Gnome Software or running\n"
msgstr ""
#: uberwriter/UberwriterExportDialog.py:375
msgid "Please, install TexLive from your distribuiton repositories"
msgstr ""
#: uberwriter/UberwriterInlinePreview.py:183
msgid "Website is not available"
msgstr ""
#: uberwriter/UberwriterInlinePreview.py:185
msgid "Website is available"
msgstr ""
#: uberwriter/UberwriterInlinePreview.py:435
msgid "Open Link in Webbrowser"
msgstr ""
#: uberwriter/UberwriterInlinePreview.py:500
msgid "No matching footnote found"
msgstr ""
#: uberwriter/UberwriterWindow.py:572
msgid "Save your File"
msgstr "Gorde zure fitxategia"
#: uberwriter/UberwriterWindow.py:678
msgid "MarkDown or Plain Text"
msgstr "Markaketa edo testu-laua"
#: uberwriter/UberwriterWindow.py:681
msgid "Open a .md-File"
msgstr "Ireki .md fitxategi bat"
#: uberwriter/UberwriterWindow.py:706
msgid "You have not saved your changes."
msgstr "Ez dituzu gorde zure aldaketak."
#: uberwriter/UberwriterWindow.py:708
msgid "Close without Saving"
msgstr "Itxi gorde gabe"
#: uberwriter/UberwriterWindow.py:709
msgid "Cancel"
msgstr "Utzi"
#: uberwriter/UberwriterWindow.py:710
msgid "Save now"
msgstr "Gorde orain"
#: uberwriter/UberwriterWindow.py:711
msgid "Unsaved changes"
msgstr "Gorde gabeko aldaketak"
#: uberwriter/UberwriterWindow.py:742
#, fuzzy
#| msgid "CSS File"
msgid "New File"
msgstr "CSS fitxategia"
#: uberwriter/UberwriterWindow.py:780
msgid "You can not enable the Spell Checker."
msgstr "Ezin duzu zuzentzaile ortografikoa gaitu."
#: uberwriter/UberwriterWindow.py:783
msgid ""
"Please install 'hunspell' or 'aspell' dictionarys for your language from the "
"software center."
msgstr ""
"Mesedez instalatu zure hizkuntzaren 'hunspell' edo 'aspell' hiztegiak "
"software-zentrotik."
#: uberwriter/headerbars.py:76
#, fuzzy
msgid "Exit Fullscreen"
msgstr "Pantaila osoa"
#: uberwriter/headerbars.py:118
msgid "New"
msgstr ""
#: uberwriter/headerbars.py:119
msgid "Open"
msgstr ""
#: uberwriter/headerbars.py:121
#, fuzzy
msgid "Save"
msgstr "Gorde orain"
#: uberwriter/headerbars.py:128
#, fuzzy
msgid "Open Recent"
msgstr "Ireki oraintsuko fitxategia"
#: uberwriter/headerbars.py:130
#, fuzzy
msgid "Search and replace"
msgstr "Ireki oraintsuko fitxategia"
#: uberwriter/headerbars.py:131
msgid "Menu"
msgstr ""
#: uberwriter_lib/AppWindow.py:173
msgid "Show debug messages (-vv debugs uberwriter_lib also)"
msgstr ""
"Erakutsi arazketako mezuak (-vv erabiliz uberwriter_lib ere arazten da)"
#: uberwriter_lib/AppWindow.py:175
#: uberwriter_lib/AppWindow.py:248
msgid "Use experimental features"
msgstr ""
@ -576,115 +623,145 @@ msgstr ""
msgid "Unknown"
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:487
msgid "(no suggestions)"
msgstr "(iradokizunik ez)"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:18
msgid "Open file base path"
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:509
#: uberwriter_lib/gtkspellcheck/spellcheck.py:512
msgid "Add \"{}\" to Dictionary"
msgstr "Gehitu \"{}\" hiztegira"
#: data/de.wolfvollprecht.UberWriter.gschema.xml:19
msgid "Open file paths of the current session"
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:516
#: uberwriter_lib/gtkspellcheck/spellcheck.py:518
msgid "Ignore All"
msgstr "Ez ikusi egin guztiei"
#: data/ui/App_menu.ui:36
msgid "Help to _translate"
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:533
#: uberwriter_lib/gtkspellcheck/spellcheck.py:535
msgid "Languages"
msgstr "Hizkuntzak"
#: data/ui/App_menu.ui:40
msgid "Donate to the project"
msgstr ""
#: uberwriter_lib/gtkspellcheck/spellcheck.py:551
#: uberwriter_lib/gtkspellcheck/spellcheck.py:554
msgid "Suggestions"
msgstr "Iradokizunak"
#~ msgid "UberWriter, a simple and distraction free Markdown Editor"
#~ msgstr "UberWriter, markaketa-editore sinple eta arreta-galtzerik gabea"
#~ msgid "_File"
#~ msgstr "_Fitxategia"
#~ msgid "Open Recent File"
#~ msgstr "Ireki oraintsuko fitxategia"
#~ msgid "Export as ODT"
#~ msgstr "Esportatu ODT bezala"
#~ msgid "Advanced Export..."
#~ msgstr "Esportatze aurreratua..."
#~ msgid "Copy raw HTML to clipboard"
#~ msgstr "Kopiatu HTML gordina arbelera"
#~ msgid "_Edit"
#~ msgstr "_Editatu"
#~ msgid "_View"
#~ msgstr "_Ikusi"
#~ msgid "Dark Mode"
#~ msgstr "Modu iluna"
#~ msgid "Auto _Spellcheck"
#~ msgstr "_Egiaztatu ortografia automatikoki"
#~ msgid "F_ormat"
#~ msgstr "F_ormatua"
#~ msgid "Unordered List Item"
#~ msgstr "Ordenatu gabeko zerrendako elementua"
#~ msgid "Horizontal Rule"
#~ msgstr "Marra horizontala"
#~ msgid "_Help"
#~ msgstr "_Laguntza"
#~ msgid "Contents"
#~ msgstr "Edukiak"
#~ msgid "Get Help Online..."
#~ msgstr "Lortu laguntza linean..."
#~ msgid "Translate This Application..."
#~ msgstr "Itzuli aplikazio hau..."
#~ msgid "Go into focus mode"
#~ msgstr "Joan fokuaren modura"
#~ msgid "Go into fullscreen mode"
#~ msgstr "Joan pantaila osoko modura"
#~ msgid "Copyright (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>"
#~ msgstr "Copyright-a (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>"
#~ msgid "You can not export to PDF."
#~ msgstr "Ezin duzu PDFra esportatu."
#~ msgid ""
#~ "Please install <a href=\"apt:texlive\">texlive</a> from the software "
#~ "center."
#~ msgstr ""
#~ "Mesedez instalatu <a href=\"apt:texlive\">texlive</a> software-zentrotik."
#: data/ui/WindowMenu.ui:24
msgid "Search and Replace"
msgstr ""
#: data/ui/About.ui:12
#, fuzzy
#~ msgid "Open examples"
#~ msgstr "Ireki .md fitxategi bat"
msgid "Copyright (C) 2018, Wolf Vollprecht"
msgstr "Copyright-a (C) 2012, Wolf Vollprecht <w.vollprecht@gmail.com>"
#: data/ui/About.ui:14
#, fuzzy
#~ msgid "_Save"
#~ msgstr "Gorde orain"
msgid "Uberwriter website"
msgstr "UberWriter"
#, fuzzy
#~ msgid "Export as HTML"
#~ msgstr "Esportatu ODT bezala"
#: data/ui/About.ui:60
msgid "Donations:"
msgstr ""
#, fuzzy
#~ msgid "Export as PDF"
#~ msgstr "Esportatu ODT bezala"
#: data/ui/About.ui:69
msgid "Liberapay"
msgstr ""
#: data/ui/About.ui:100
msgid "Help to translate:"
msgstr ""
#: data/ui/About.ui:109
#, fuzzy
#~ msgid "Copy Raw HTML to Clipboard"
#~ msgstr "Kopiatu HTML gordina arbelera"
msgid "Poeditor"
msgstr "_Editatu"
#: data/ui/Export.ui:559 data/ui/Export.ui:569
msgid "PDF"
msgstr ""
#: data/ui/Export.ui:582
#, fuzzy
msgid "HTML"
msgstr "HTML 5"
#: data/ui/Export.ui:595
msgid "ODT"
msgstr ""
#: data/ui/Export.ui:607
#, fuzzy
msgid "Advanced"
msgstr "Esportatze aurreratua..."
#: data/ui/Menu.ui:28
#, fuzzy
msgid "_Export"
msgstr "Esportatu"
#: data/ui/Menu.ui:32
msgid "Copy HTML"
msgstr ""
#: data/ui/Menu.ui:38 data/ui/Preferences.ui:14
msgid "Preferences"
msgstr ""
#: data/ui/Menu.ui:44
msgid "Open Tutorial"
msgstr ""
#: data/ui/Preferences.ui:45
#, fuzzy
msgid "Use dark mode"
msgstr "Modu iluna"
#: data/ui/Preferences.ui:56
#, fuzzy
msgid "Autospellcheck"
msgstr "_Egiaztatu ortografia automatikoki"
#: data/ui/Preferences.ui:95
msgid "page 1"
msgstr ""
#: uberwriter/UberwriterExportDialog.py:48
msgid "Untitled document.md"
msgstr ""
#: uberwriter/UberwriterExportDialog.py:372
msgid "Please, install the TexLive extension from Gnome Software or running\n"
""
msgstr ""
#: uberwriter/UberwriterExportDialog.py:375
msgid "Please, install TexLive from your distribuiton repositories"
msgstr ""
#: uberwriter/UberwriterWindow.py:894 uberwriter/UberwriterWindow.py:943
msgid "New"
msgstr ""
#: uberwriter/UberwriterWindow.py:895 uberwriter/UberwriterWindow.py:944
msgid "Open"
msgstr ""
#: uberwriter/UberwriterWindow.py:899 uberwriter/UberwriterWindow.py:946
#: uberwriter/UberwriterWindow.py:949
#, fuzzy
msgid "Open Recent"
msgstr "Ireki oraintsuko fitxategia"
#: uberwriter/UberwriterWindow.py:901 uberwriter/UberwriterWindow.py:951
#, fuzzy
msgid "Save"
msgstr "Gorde orain"
#: uberwriter/UberwriterWindow.py:904 uberwriter/UberwriterWindow.py:954
#, fuzzy
msgid "Search and replace"
msgstr "Ireki oraintsuko fitxategia"
#: uberwriter/UberwriterWindow.py:906 uberwriter/UberwriterWindow.py:956
msgid "Menu"
msgstr ""
#: uberwriter/UberwriterWindow.py:961
#, fuzzy
msgid "Exit Fullscreen"
msgstr "Pantaila osoa"

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,102 @@
#!/usr/bin/python3
#
# Generates color palettes based on the specified background/foreground colors.
#
# Usage: python color_palette_generator.py #fg_hex #bg_hex light|dark
#
# The light variant is based on GitHub's style, while the dark variant is based on pre-existing UberWriter styles.
#
# Accessibility is not accounted for, so make sure to verify contrast: https://webaim.org/resources/contrastchecker/
import operator
import os
import sys
def hex_to_tuple(h):
return tuple(int(h.lstrip('#')[i:i + 2], 16) for i in (0, 2, 4))
def tuple_to_hex(t):
(r, g, b) = t
if r < 0 or g < 0 or b < 0 or r > 255 or g > 255 or b > 255:
return '#%02x%02x%02x (clamped)' % tuple(map(lambda x: max(0, min(x, 255)), t))
else:
return '#%02x%02x%02x' % t
def sub_tuples(t1, t2):
return tuple(map(operator.sub, t1, t2))
if __name__ == '__main__':
if len(sys.argv) != 4:
print("Usage: {} foreground_color background_color light|dark\n" +
"Both colors must be in hexadecimal format, eg. #f6f5f4".format(os.path.basename(__file__)))
exit()
target_foreground_color = hex_to_tuple(sys.argv[1])
target_background_color = hex_to_tuple(sys.argv[2])
dark = sys.argv[3] == "dark"
gh_text_color = hex_to_tuple("#dbdbdb" if dark else "#24292e")
gh_background_color = hex_to_tuple("#353535" if dark else "#ffffff")
gh_alt_background_color = hex_to_tuple("#3a3a3a" if dark else "#f6f8fa")
gh_link_color = hex_to_tuple("#a2c7f8" if dark else "#0366d6")
gh_blockquote_text_color = hex_to_tuple("#959595" if dark else "#6a737d")
gh_blockquote_border_color = hex_to_tuple("#525252" if dark else "#dfe2e5")
gh_header_border_color = hex_to_tuple("#474747" if dark else "#eaecef")
gh_hr_background_color = hex_to_tuple("#505050" if dark else "#e1e4e8")
gh_table_tr_border_color = hex_to_tuple("#696969" if dark else "#c6cbd1")
gh_table_td_border_color = hex_to_tuple("#525252" if dark else "#dfe2e5")
gh_kbd_text_color = hex_to_tuple("#bbbbbb" if dark else "#444d56")
gh_kbd_background_color = hex_to_tuple("#3c3c3c" if dark else "#fafbfc")
gh_kbd_border_color = hex_to_tuple("#696969" if dark else "#c6cbd1")
gh_kbd_shadow_color = hex_to_tuple("#979797" if dark else "#959da5")
text_color_diff = sub_tuples(gh_text_color, target_foreground_color)
background_color_diff = sub_tuples(gh_background_color, target_background_color)
text_color = tuple_to_hex(target_foreground_color)
background_color = tuple_to_hex(target_background_color)
alt_background_color = tuple_to_hex(sub_tuples(gh_alt_background_color, background_color_diff))
link_color = tuple_to_hex(sub_tuples(gh_link_color, text_color_diff))
blockquote_text_color = tuple_to_hex(sub_tuples(gh_blockquote_text_color, text_color_diff))
blockquote_border_color = tuple_to_hex(sub_tuples(gh_blockquote_border_color, background_color_diff))
header_border_color = tuple_to_hex(sub_tuples(gh_header_border_color, background_color_diff))
hr_background_color = tuple_to_hex(sub_tuples(gh_hr_background_color, background_color_diff))
table_tr_border_color = tuple_to_hex(sub_tuples(gh_table_tr_border_color, background_color_diff))
table_td_border_color = tuple_to_hex(sub_tuples(gh_table_td_border_color, background_color_diff))
kbd_text_color = tuple_to_hex(sub_tuples(gh_kbd_text_color, text_color_diff))
kbd_background_color = tuple_to_hex(sub_tuples(gh_kbd_background_color, background_color_diff))
kbd_border_color = tuple_to_hex(sub_tuples(gh_kbd_border_color, background_color_diff))
kbd_shadow_color = tuple_to_hex(sub_tuples(gh_kbd_shadow_color, background_color_diff))
print(("--text-color: {};\n" +
"--background-color: {};\n" +
"--alt-background-color: {};\n" +
"--link-color: {};\n" +
"--blockquote-text-color: {};\n" +
"--blockquote-border-color: {};\n" +
"--header-border-color: {};\n" +
"--hr-background-color: {};\n" +
"--table-tr-border-color: {};\n" +
"--table-td-border-color: {};\n" +
"--kbd-text-color: {};\n" +
"--kbd-background-color: {};\n" +
"--kbd-border-color: {};\n" +
"--kbd-shadow-color: {};\n").format(
text_color,
background_color,
alt_background_color,
link_color,
blockquote_text_color,
blockquote_border_color,
header_border_color,
hr_background_color,
table_tr_border_color,
table_td_border_color,
kbd_text_color,
kbd_background_color,
kbd_border_color,
kbd_shadow_color))

View File

@ -60,10 +60,10 @@ setup(
# "": '/opt/uberwriter/'
},
packages=[
"uberwriter_lib.gtkspellcheck",
"uberwriter_lib.pylocales",
# "uberwriter_lib.pressagio",
"uberwriter_lib",
"uberwriter.gtkspellcheck",
"uberwriter.pylocales",
# "uberwriter.pressagio",
"uberwriter",
"uberwriter",
"po"
# "uberwriter.plugins"
@ -72,7 +72,7 @@ setup(
include_package_data=True,
package_data={
'uberwriter_lib.pylocales' : ['locales.db'],
'uberwriter.pylocales' : ['locales.db'],
},
data_files=[
(app_prefix + 'bin', ['bin/uberwriter']),

View File

@ -60,7 +60,7 @@ confidence=
# --enable=similarities". If you want to run only the classes checker, but have
# no Warning level messages displayed, use "--disable=all --enable=classes
# --disable=W".
# disable=print-statement,
disable=print-statement,
parameter-unpacking,
unpacking-in-except,
old-raise-syntax,

View File

@ -25,15 +25,18 @@ import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk # pylint: disable=E0611
from . import UberwriterWindow
from uberwriter_lib import AppWindow
from uberwriter import window
from uberwriter import application
from uberwriter.helpers import set_up_logging
from uberwriter.uberwriterconfig import get_version
def main():
'constructor for your class instances'
# (options, args) = parse_options()
# Run the application.
app = AppWindow.Application()
app = application.Application()
# ~ if args:
# ~ for arg in args:

View File

@ -15,14 +15,18 @@ import webbrowser
from gettext import gettext as _
import gi
gi.require_version('Gtk', '3.0') # pylint: disable=wrong-import-position
from gi.repository import GLib, Gio, Gtk, GdkPixbuf
from uberwriter import UberwriterWindow
from uberwriter.Settings import Settings
from uberwriter_lib import set_up_logging
from uberwriter_lib.PreferencesDialog import PreferencesDialog
from . helpers import get_builder, get_media_path
gi.require_version('Gtk', '3.0') # pylint: disable=wrong-import-position
from gi.repository import GLib, Gio, Gtk, Gdk, GdkPixbuf
from uberwriter import window
from uberwriter.theme import Theme
from uberwriter.settings import Settings
from uberwriter.helpers import set_up_logging
from uberwriter.preferences_dialog import PreferencesDialog
from uberwriter.helpers import get_builder, get_media_path
class Application(Gtk.Application):
@ -33,14 +37,6 @@ class Application(Gtk.Application):
self.window = None
self.settings = Settings.new()
def init(self):
"""Init main application"""
dark = self.settings.get_value("dark-mode")
Gtk.Settings.get_default().set_property("gtk-application-prefer-dark-theme", dark)
def do_startup(self, *args, **kwargs):
Gtk.Application.do_startup(self)
@ -76,6 +72,12 @@ class Application(Gtk.Application):
action.connect("change-state", self.on_focus_mode)
self.add_action(action)
action = Gio.SimpleAction.new_stateful("hemingway_mode",
None,
GLib.Variant.new_boolean(False))
action.connect("change-state", self.on_hemingway_mode)
self.add_action(action)
action = Gio.SimpleAction.new_stateful("fullscreen",
None,
GLib.Variant.new_boolean(False))
@ -92,12 +94,20 @@ class Application(Gtk.Application):
action.connect("activate", self.on_search)
self.add_action(action)
set_spellcheck = self.settings.get_value("spellcheck")
action = Gio.SimpleAction.new_stateful("spellcheck",
None,
GLib.Variant.new_boolean(True))
GLib.Variant.new_boolean(set_spellcheck))
action.connect("change-state", self.on_spellcheck)
self.add_action(action)
set_gradient_overlay = self.settings.get_value("gradient-overlay")
action = Gio.SimpleAction.new_stateful("draw_gradient",
None,
GLib.Variant.new_boolean(set_gradient_overlay))
action.connect("change-state", self.on_draw_gradient)
self.add_action(action)
# Menu Actions
action = Gio.SimpleAction.new("new", None)
@ -139,6 +149,7 @@ class Application(Gtk.Application):
# Shortcuts
self.set_accels_for_action("app.focus_mode", ["<Ctl>d"])
self.set_accels_for_action("app.hemingway_mode", ["<Ctl>t"])
self.set_accels_for_action("app.fullscreen", ["F11"])
self.set_accels_for_action("app.preview", ["<Ctl>p"])
self.set_accels_for_action("app.search", ["<Ctl>f"])
@ -149,7 +160,7 @@ class Application(Gtk.Application):
self.set_accels_for_action("app.save", ["<Ctl>s"])
self.set_accels_for_action("app.save_as", ["<Ctl><shift>s"])
self.init()
self.apply_current_theme()
def do_activate(self, *args, **kwargs):
# We only allow a single window and raise any existing ones
@ -157,7 +168,7 @@ class Application(Gtk.Application):
# Windows are associated with the application
# when the last one is closed the application shuts down
# self.window = Window(application=self, title="UberWriter")
self.window = UberwriterWindow.UberwriterWindow(self)
self.window = window.Window(self)
if self.args:
self.window.load_file(self.args[0])
if self.options.experimental_features:
@ -170,7 +181,7 @@ class Application(Gtk.Application):
parser = argparse.ArgumentParser()
parser.add_argument(
"-v", "--verbose", action="count", dest="verbose",
help=_("Show debug messages (-vv debugs uberwriter_lib also)"))
help=_("Show debug messages (-vv debugs uberwriter also)"))
parser.add_argument(
"-e", "--experimental-features", help=_("Use experimental features"),
action='store_true'
@ -182,6 +193,23 @@ class Application(Gtk.Application):
self.activate()
return 0
def apply_current_theme(self):
# get current theme
theme = Theme.get_current()
# set theme variant (dark/light)
Gtk.Settings.get_default().set_property(
"gtk-application-prefer-dark-theme",
GLib.Variant("b", theme.is_dark))
# set theme css
style_provider = Gtk.CssProvider()
style_provider.load_from_path(theme.gtk_css_path)
Gtk.StyleContext.add_provider_for_screen(
Gdk.Screen.get_default(), style_provider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION
)
def on_about(self, _action, _param):
builder = get_builder('About')
about_dialog = builder.get_object("AboutDialog")
@ -207,22 +235,25 @@ class Application(Gtk.Application):
def on_dark_mode(self, action, value):
action.set_state(value)
self.settings.set_value("dark-mode",
GLib.Variant("b", value))
self.window.toggle_dark_mode(value)
self.settings.set_value("dark-mode", GLib.Variant("b", value))
# this changes the headerbar theme accordingly
self.dark_setting = Gtk.Settings.get_default()
self.dark_setting.set_property(
"gtk-application-prefer-dark-theme", value)
self.apply_current_theme()
# adjust window for theme
self.window.apply_current_theme()
def on_focus_mode(self, action, value):
action.set_state(value)
self.window.set_focusmode(value)
self.window.set_focus_mode(value)
def on_hemingway_mode(self, action, value):
action.set_state(value)
self.window.set_hemingway_mode(value)
def on_fullscreen(self, action, value):
action.set_state(value)
self.window.toggle_fullscreen(value)
self.window.set_fullscreen(value)
def on_preview(self, action, value):
action.set_state(value)
@ -233,8 +264,20 @@ class Application(Gtk.Application):
def on_spellcheck(self, action, value):
action.set_state(value)
self.settings.set_value("spellcheck",
GLib.Variant("b", value))
self.window.toggle_spellcheck(value)
def on_draw_gradient(self, action, value):
action.set_state(value)
self.settings.set_value("gradient-overlay",
GLib.Variant("b", value))
if value:
self.window.overlay = self.window.scrolled_window.connect_after(
"draw", self.window.draw_gradient)
else:
self.window.scrolled_window.disconnect(self.window.overlay)
def on_new(self, _action, _value):
self.window.new_document()
@ -260,10 +303,10 @@ class Application(Gtk.Application):
self.window.copy_html_to_clipboard()
def on_preferences(self, _action, _value):
PreferencesWindow = PreferencesDialog()
PreferencesWindow.set_application(self)
PreferencesWindow.set_transient_for(self.window)
PreferencesWindow.show()
preferences_window = PreferencesDialog()
preferences_window.set_application(self)
preferences_window.set_transient_for(self.window)
preferences_window.show()
def on_quit(self, _action, _param):
self.quit()

View File

@ -13,16 +13,16 @@ from gi.repository import Gtk, Gdk
import enchant
from uberwriter_lib import pressagio
# import uberwriter_lib.pressagio.predictor
# import uberwriter_lib.pressagio.tokenizer
# import uberwriter_lib.pressagio.dbconnector
# import uberwriter_lib.pressagio.context_tracker
# import uberwriter_lib.pressagio.callback
from uberwriter import pressagio
# import uberwriter.pressagio.predictor
# import uberwriter.pressagio.tokenizer
# import uberwriter.pressagio.dbconnector
# import uberwriter.pressagio.context_tracker
# import uberwriter.pressagio.callback
# from Levenshtein import distance
from uberwriter_lib.helpers import get_media_path
from uberwriter.helpers import get_media_path
# Define and create PresageCallback object
class PressagioCallback(pressagio.callback.Callback):
@ -36,7 +36,7 @@ class PressagioCallback(pressagio.callback.Callback):
def future_stream(self):
return ''
class UberwriterAutoCorrect:
class AutoCorrect:
def show_bubble(self, iterator, suggestion):
self.suggestion = suggestion

View File

@ -28,7 +28,7 @@ import gi
gi.require_version('Gtk', '3.0') # pylint: disable=wrong-import-position
from gi.repository import GObject, Gtk # pylint: disable=E0611
LOGGER = logging.getLogger('uberwriter_lib')
LOGGER = logging.getLogger('uberwriter')
# this module is big so uses some conventional prefixes and postfixes
# *s list, except self.widgets is a dictionary

View File

@ -23,10 +23,15 @@ import logging
# import gettext
from gettext import gettext as _
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
from uberwriter_lib import helpers
from uberwriter_lib.helpers import get_builder
from uberwriter import helpers
from uberwriter.theme import Theme
from uberwriter.helpers import get_builder
LOGGER = logging.getLogger('uberwriter')
@ -35,7 +40,7 @@ class Export:
Manages all the export operations and dialogs
"""
__gtype_name__ = "UberwriterExportDialog"
__gtype_name__ = "export_dialog"
def __init__(self, filename):
"""Set up the about dialog"""
@ -213,7 +218,7 @@ class Export:
args.append("-o%s.odt" % basename)
elif export_format == "html":
css = helpers.get_media_file('github-md.css')
css = Theme.ADWAITA.get_gtk_css_file()
relativize = helpers.get_script_path('relative_to_absolute.lua')
task_list = helpers.get_script_path('task-list.lua')
args.append("-c%s" % css)

View File

@ -1,4 +1,6 @@
import re
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
import logging

View File

@ -17,7 +17,7 @@
from gettext import gettext as _
from . MarkupBuffer import MarkupBuffer
from uberwriter.markup_buffer import MarkupBuffer
class FormatShortcuts():

View File

@ -29,8 +29,8 @@ import logging
import re
import sys
from uberwriter_lib.pylocales import code_to_name as _code_to_name
from uberwriter_lib.pylocales import LanguageNotFound, CountryNotFound
from uberwriter.pylocales import code_to_name as _code_to_name
from uberwriter.pylocales import LanguageNotFound, CountryNotFound
# public objects
__all__ = ['SpellChecker', 'NoDictionariesFound', 'NoGtkBindingFound']
@ -56,6 +56,8 @@ else:
if _py3k:
# there is only the gi binding for Python 3
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk as gtk
_pygobject = True
else:

View File

@ -18,10 +18,14 @@
from collections import namedtuple
from gettext import gettext as _
from gi.repository import Gtk
from uberwriter_lib.helpers import get_builder
from uberwriter_lib.AppWindow import Application as app
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
from uberwriter.helpers import get_builder
from uberwriter.helpers import get_descendant
from uberwriter.application import Application as app
class MainHeaderbar: #pylint: disable=too-few-public-methods
"""Sets up the main application headerbar
@ -45,11 +49,8 @@ class MainHeaderbar: #pylint: disable=too-few-public-methods
self.hb_container.show()
self.btns = buttons(app)
self.rec = self.btns.recent
pack_buttons(self.hb, self.btns)
# btns.recent.set_popup(self.generate_recent_files_menu())
self.hb.show_all()
@ -107,26 +108,39 @@ def buttons(app):
[NamedTupple] -- tupple of Gtk.Buttons
"""
builder_window_menu = get_builder('Menu')
model = builder_window_menu.get_object("Menu")
recents_builder = get_builder('Recents')
recents = recents_builder.get_object("recent_md_popover")
recents_wd = recents_builder.get_object("recent_md_widget")
recents_wd.connect('item-activated', app.on_open_recent)
Button = namedtuple("Button", "new open recent save search menu")
Button = namedtuple("Button", "new open_recent save search menu")
btn = Button(Gtk.Button().new_with_label(_("New")),
Gtk.Button().new_with_label(_("Open")),
Gtk.MenuButton().new(),
Gtk.Box().new(0, 0),
Gtk.Button().new_with_label(_("Save")),
Gtk.Button().new_from_icon_name("system-search-symbolic",
Gtk.IconSize.BUTTON),
Gtk.MenuButton().new())
btn.recent.set_image(Gtk.Image.new_from_icon_name("go-down-symbolic",
Gtk.IconSize.BUTTON))
btn.recent.set_tooltip_text(_("Open Recent"))
btn.recent.set_popover(recents)
builder_window_menu = get_builder('Menu')
model = builder_window_menu.get_object("Menu")
open_button = Gtk.Button().new_with_label(_("Open"))
open_button.set_action_name("app.open")
recents_builder = get_builder('Recents')
recents = recents_builder.get_object("recent_md_popover")
recents_treeview = get_descendant(recents, "recent_view", level=0)
recents_treeview.set_activate_on_single_click(True)
recents_wd = recents_builder.get_object("recent_md_widget")
recents_wd.connect('item-activated', app.on_open_recent)
recents_button = Gtk.MenuButton().new()
recents_button.set_image(Gtk.Image.new_from_icon_name("pan-down-symbolic",
Gtk.IconSize.BUTTON))
recents_button.set_tooltip_text(_("Open Recent"))
recents_button.set_popover(recents)
btn.open_recent.get_style_context().add_class("linked")
btn.open_recent.pack_start(open_button, False, False, 0)
btn.open_recent.pack_end(recents_button, False, False, 0)
btn.search.set_tooltip_text(_("Search and replace"))
btn.menu.set_tooltip_text(_("Menu"))
btn.menu.set_image(Gtk.Image.new_from_icon_name("open-menu-symbolic",
@ -134,7 +148,6 @@ def buttons(app):
btn.menu.set_use_popover(True)
btn.menu.set_menu_model(model)
btn.new.set_action_name("app.new")
btn.open.set_action_name("app.open")
btn.save.set_action_name("app.save")
btn.search.set_action_name("app.search")
@ -152,8 +165,7 @@ def pack_buttons(headerbar, btn, btn_exit=None):
"""
headerbar.pack_start(btn.new)
headerbar.pack_start(btn.open)
headerbar.pack_start(btn.recent)
headerbar.pack_start(btn.open_recent)
if btn_exit:
headerbar.pack_end(btn_exit)
headerbar.pack_end(btn.menu)

View File

@ -21,8 +21,13 @@ import logging
import os
import shutil
from . uberwriterconfig import get_data_file
from . Builder import Builder
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk # pylint: disable=E0611
from uberwriter.uberwriterconfig import get_data_file
from uberwriter.builder import Builder
def get_builder(builder_file_name):
@ -44,16 +49,12 @@ def get_builder(builder_file_name):
# Owais Lone : To get quick access to icons and stuff.
def get_media_file(media_file_name):
def get_media_file(media_file_path):
"""Return the full path of a given filename under the media dir
(starts with file:///)
"""
media_filename = get_data_file('media', '%s' % (media_file_name,))
if not os.path.exists(media_filename):
media_filename = None
return "file:///" + media_filename
return "file:///" + get_media_path(media_file_path)
def get_media_path(media_file_name):
@ -61,19 +62,26 @@ def get_media_path(media_file_name):
(doesn't start with file:///)
"""
media_filename = get_data_file('media', '%s' % (media_file_name,))
if not os.path.exists(media_filename):
media_filename = None
return media_filename
media_path = get_data_file('media', '%s' % (media_file_name,))
if not os.path.exists(media_path):
media_path = None
return media_path
def get_css_path(css_file_name):
"""Return the full path of a given filename under the css dir
(doesn't start with file:///)
"""
return get_media_path("css/{}".format(css_file_name))
def get_script_path(script_file_name):
"""Return the full path of a given filename under the script dir
"""
script_filename = get_data_file('lua', '%s' % (script_file_name,))
if not os.path.exists(script_filename):
script_filename = None
return script_filename
script_path = get_data_file('lua', '%s' % (script_file_name,))
if not os.path.exists(script_path):
script_path = None
return script_path
class NullHandler(logging.Handler):
@ -95,7 +103,7 @@ def set_up_logging(opts):
logger_sh.setFormatter(formatter)
logger.addHandler(logger_sh)
lib_logger = logging.getLogger('uberwriter_lib')
lib_logger = logging.getLogger('uberwriter')
lib_logger_sh = logging.StreamHandler()
lib_logger_sh.setFormatter(formatter)
lib_logger.addHandler(lib_logger_sh)
@ -125,7 +133,6 @@ def get_help_uri(page=None):
def show_uri(parent, link):
from gi.repository import Gtk # pylint: disable=E0611
screen = parent.get_screen()
Gtk.show_uri(screen, link, Gtk.get_current_event_time())
@ -152,3 +159,32 @@ def exist_executable(command):
"""
return shutil.which(command) is not None
def get_descendant(widget, child_name, level, doPrint=False):
if widget is not None:
if doPrint: print("-"*level + str(Gtk.Buildable.get_name(widget)) +
" :: " + widget.get_name())
else:
if doPrint: print("-"*level + "None")
return None
#/*** If it is what we are looking for ***/
if Gtk.Buildable.get_name(widget) == child_name: # not widget.get_name() !
return widget
#/*** If this widget has one child only search its child ***/
if (hasattr(widget, 'get_child') and
callable(getattr(widget, 'get_child')) and
child_name != ""):
child = widget.get_child()
if child is not None:
return get_descendant(child, child_name, level+1,doPrint)
# /*** Ity might have many children, so search them ***/
elif (hasattr(widget, 'get_children') and
callable(getattr(widget, 'get_children')) and
child_name != ""):
children = widget.get_children()
# /*** For each child ***/
found = None
for child in children:
if child is not None:
found = get_descendant(child, child_name, level+1, doPrint) # //search the child
if found: return found

View File

@ -26,13 +26,15 @@ import telnetlib
from gettext import gettext as _
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, Gdk, GdkPixbuf, GObject
from uberwriter_lib import LatexToPNG
from .Settings import Settings
from uberwriter import latex_to_PNG
from uberwriter.settings import Settings
from .FixTable import FixTable
from uberwriter.fix_table import FixTable
from .MarkupBuffer import MarkupBuffer
from uberwriter.markup_buffer import MarkupBuffer
LOGGER = logging.getLogger('uberwriter')
@ -262,12 +264,12 @@ def fill_lexikon_bubble(vocab, lexikon_dict):
return None
class UberwriterInlinePreview():
class InlinePreview():
def __init__(self, view, text_buffer):
self.text_view = view
self.text_buffer = text_buffer
self.latex_converter = LatexToPNG.LatexToPNG()
self.latex_converter = latex_to_PNG.LatexToPNG()
cursor_mark = self.text_buffer.get_insert()
cursor_iter = self.text_buffer.get_iter_at_mark(cursor_mark)
self.click_mark = self.text_buffer.create_mark('click', cursor_iter)

View File

@ -15,6 +15,9 @@
### END LICENSE
import re
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
from gi.repository import Pango
@ -44,14 +47,10 @@ class MarkupBuffer():
self.normal_indent = self.text_buffer.create_tag('normal_indent', indent=100)
self.green_text = self.text_buffer.create_tag("greentext",
foreground="#00364C")
self.math_text = self.text_buffer.create_tag('math_text')
self.grayfont = self.text_buffer.create_tag('graytag',
foreground="gray")
self.blackfont = self.text_buffer.create_tag('blacktag',
foreground="#222")
self.unfocused_text = self.text_buffer.create_tag('graytag',
foreground="gray")
self.underline = self.text_buffer.create_tag("underline",
underline=Pango.Underline.SINGLE)
@ -99,7 +98,8 @@ class MarkupBuffer():
self.table_env.set_property('pixels-above-lines', 0)
self.table_env.set_property('pixels-below-lines', 0)
# self.ftag = self.TextBuffer.create_tag("pix_front", pixels_above_lines = 100)
self.update_style()
regex = {
"ITALIC": re.compile(r"(\*|_)(.*?)\1", re.UNICODE), # *asdasd* // _asdasd asd asd_
"STRONG": re.compile(r"(\*\*|__)(.*?)\1", re.UNICODE), # **as das** // __asdasd asd ad a__
@ -118,6 +118,13 @@ class MarkupBuffer():
"LINK": re.compile(r"\(http(.+?)\)")
}
def update_style(self):
(found, color) = self.parent.get_style_context().lookup_color('math_text_color')
if not found:
(_, color) = self.parent.get_style_context().lookup_color('foreground_color')
self.math_text.set_property("foreground", color.to_string())
def markup_buffer(self, mode=0):
buf = self.text_buffer
@ -176,13 +183,13 @@ class MarkupBuffer():
end_iter = buf.get_iter_at_offset(context_offset + match.end())
self.text_buffer.apply_tag(self.strikethrough, start_iter, end_iter)
self.text_buffer.remove_tag(self.green_text, context_start, context_end)
self.text_buffer.remove_tag(self.math_text, context_start, context_end)
matches = re.finditer(self.regex["MATH"], text)
for match in matches:
start_iter = buf.get_iter_at_offset(context_offset + match.start())
end_iter = buf.get_iter_at_offset(context_offset + match.end())
self.text_buffer.apply_tag(self.green_text, start_iter, end_iter)
self.text_buffer.apply_tag(self.math_text, start_iter, end_iter)
for margin in self.rev_leftmargin:
self.text_buffer.remove_tag(margin, context_start, context_end)
@ -264,15 +271,13 @@ class MarkupBuffer():
self.focusmode_highlight()
def focusmode_highlight(self):
self.text_buffer.apply_tag(
self.grayfont,
self.text_buffer.get_start_iter(),
self.text_buffer.get_end_iter())
start_document = self.text_buffer.get_start_iter()
end_document = self.text_buffer.get_end_iter()
self.text_buffer.remove_tag(
self.blackfont,
self.text_buffer.get_start_iter(),
self.text_buffer.get_end_iter())
self.unfocused_text,
start_document,
end_document)
cursor = self.text_buffer.get_mark("insert")
cursor_iter = self.text_buffer.get_iter_at_mark(cursor)
@ -291,9 +296,14 @@ class MarkupBuffer():
start_sentence = cursor_iter.copy()
start_sentence.backward_sentence_start()
# grey out everything before
self.text_buffer.apply_tag(
self.blackfont,
start_sentence, end_sentence)
self.unfocused_text,
self.text_buffer.get_start_iter(), start_sentence)
self.text_buffer.apply_tag(
self.unfocused_text,
end_sentence, self.text_buffer.get_end_iter())
def set_multiplier(self, multiplier):
self.multiplier = multiplier
@ -309,13 +319,3 @@ class MarkupBuffer():
new_margin = (lm - multiplier) + multiplier + multiplier * (i + 1)
self.leftmargin[i].set_property("left-margin", 0 if new_margin < 0 else new_margin)
self.leftmargin[i].set_property("indent", - (multiplier - 1) * (i + 1) - multiplier)
def dark_mode(self, active=False):
if active:
self.green_text.set_property("foreground", "#FA5B0F")
self.grayfont.set_property("foreground", "#666")
self.blackfont.set_property("foreground", "#CCC")
else:
self.green_text.set_property("foreground", "#00364C")
self.grayfont.set_property("foreground", "gray")
self.blackfont.set_property("foreground", "#222")

View File

@ -18,12 +18,13 @@
"""this dialog adjusts values in gsettings
"""
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk # pylint: disable=E0611
import logging
logger = logging.getLogger('uberwriter_lib')
logger = logging.getLogger('uberwriter')
from . helpers import get_builder, show_uri, get_help_uri
from uberwriter.helpers import get_builder, show_uri, get_help_uri
class PreferencesDialog(Gtk.Window):
__gtype_name__ = "PreferencesDialog"

Some files were not shown because too many files have changed in this diff Show More