mirror of
https://github.com/QL-Win/QuickLook.git
synced 2026-05-07 02:00:21 +08:00
Add CSV/TSV/PSV rainbow highlighters (light/dark) support
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
// Copyright © 2017-2026 QL-Win Contributors
|
||||
//
|
||||
// This file is part of QuickLook program.
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
using QuickLook.Common.Commands;
|
||||
using QuickLook.Common.Controls;
|
||||
using QuickLook.Common.Helpers;
|
||||
using QuickLook.Common.Plugin;
|
||||
using QuickLook.Common.Plugin.MoreMenu;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
|
||||
namespace QuickLook.Plugin.CsvViewer;
|
||||
|
||||
public sealed partial class Plugin : IViewer, IMoreMenu
|
||||
{
|
||||
public IEnumerable<IMenuItem> MenuItems => GetMenuItems();
|
||||
|
||||
public IEnumerable<IMenuItem> GetMenuItems()
|
||||
{
|
||||
string translationFile = Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), "Translations.config");
|
||||
|
||||
yield return new MoreMenuItem()
|
||||
{
|
||||
Icon = FontSymbols.Code,
|
||||
Header = TranslationHelper.Get("MW_ReopenAsTextPreview", translationFile),
|
||||
Command = new RelayCommand(() => PluginHelper.InvokePluginPreview("QuickLook.Plugin.TextViewer", _currentPath)),
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -16,15 +16,17 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
using QuickLook.Common.Plugin;
|
||||
using QuickLook.Common.Plugin.MoreMenu;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Windows;
|
||||
|
||||
namespace QuickLook.Plugin.CsvViewer;
|
||||
|
||||
public sealed class Plugin : IViewer
|
||||
public sealed partial class Plugin : IViewer, IMoreMenu
|
||||
{
|
||||
private CsvViewerPanel _panel;
|
||||
private string _currentPath;
|
||||
|
||||
public int Priority => 0;
|
||||
|
||||
@@ -49,6 +51,8 @@ public sealed class Plugin : IViewer
|
||||
|
||||
public void View(string path, ContextObject context)
|
||||
{
|
||||
_currentPath = path;
|
||||
|
||||
_panel = new CsvViewerPanel();
|
||||
|
||||
context.ViewerContent = _panel;
|
||||
|
||||
@@ -83,6 +83,12 @@
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Include="Translations.config">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Include="..\..\GitVersion.cs">
|
||||
<Link>Properties\GitVersion.cs</Link>
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Translations>
|
||||
<ar>
|
||||
<MW_ReopenAsTextPreview>إعادة فتح كمعاينة نص</MW_ReopenAsTextPreview>
|
||||
</ar>
|
||||
<ca>
|
||||
<MW_ReopenAsTextPreview>Torna a obrir com a previsualització de text</MW_ReopenAsTextPreview>
|
||||
</ca>
|
||||
<de>
|
||||
<MW_ReopenAsTextPreview>Als Text-Vorschau erneut öffnen</MW_ReopenAsTextPreview>
|
||||
</de>
|
||||
<en>
|
||||
<MW_ReopenAsTextPreview>Reopen as text preview</MW_ReopenAsTextPreview>
|
||||
</en>
|
||||
<es>
|
||||
<MW_ReopenAsTextPreview>Reabrir como vista previa de texto</MW_ReopenAsTextPreview>
|
||||
</es>
|
||||
<fr>
|
||||
<MW_ReopenAsTextPreview>Rouvrir en aperçu texte</MW_ReopenAsTextPreview>
|
||||
</fr>
|
||||
<it>
|
||||
<MW_ReopenAsTextPreview>Riapri come anteprima testo</MW_ReopenAsTextPreview>
|
||||
</it>
|
||||
<ja-JP>
|
||||
<MW_ReopenAsTextPreview>テキストとして再度開く</MW_ReopenAsTextPreview>
|
||||
</ja-JP>
|
||||
<ko>
|
||||
<MW_ReopenAsTextPreview>텍스트 미리보기로 다시 열기</MW_ReopenAsTextPreview>
|
||||
</ko>
|
||||
<nb-NO>
|
||||
<MW_ReopenAsTextPreview>Åpne på nytt som tekst-forhåndsvisning</MW_ReopenAsTextPreview>
|
||||
</nb-NO>
|
||||
<nl-NL>
|
||||
<MW_ReopenAsTextPreview>Opnieuw openen als tekst-voorbeeld</MW_ReopenAsTextPreview>
|
||||
</nl-NL>
|
||||
<pl>
|
||||
<MW_ReopenAsTextPreview>Otwórz ponownie jako podgląd tekstu</MW_ReopenAsTextPreview>
|
||||
</pl>
|
||||
<pt-BR>
|
||||
<MW_ReopenAsTextPreview>Reabrir como visualização de texto</MW_ReopenAsTextPreview>
|
||||
</pt-BR>
|
||||
<pt-PT>
|
||||
<MW_ReopenAsTextPreview>Reabrir como pré-visualização de texto</MW_ReopenAsTextPreview>
|
||||
</pt-PT>
|
||||
<ro>
|
||||
<MW_ReopenAsTextPreview>Redeschideți ca previzualizare text</MW_ReopenAsTextPreview>
|
||||
</ro>
|
||||
<ru-RU>
|
||||
<MW_ReopenAsTextPreview>Переоткрыть как предварительный просмотр текста</MW_ReopenAsTextPreview>
|
||||
</ru-RU>
|
||||
<tr-TR>
|
||||
<MW_ReopenAsTextPreview>Metin önizlemesi olarak yeniden aç</MW_ReopenAsTextPreview>
|
||||
</tr-TR>
|
||||
<uk-UA>
|
||||
<MW_ReopenAsTextPreview>Перевідкрити як попередній перегляд тексту</MW_ReopenAsTextPreview>
|
||||
</uk-UA>
|
||||
<vi>
|
||||
<MW_ReopenAsTextPreview>Mở lại dưới dạng xem trước văn bản</MW_ReopenAsTextPreview>
|
||||
</vi>
|
||||
<zh-CN>
|
||||
<MW_ReopenAsTextPreview>重新作为文本预览打开</MW_ReopenAsTextPreview>
|
||||
</zh-CN>
|
||||
<zh-TW>
|
||||
<MW_ReopenAsTextPreview>重新作為文本預覽開啟</MW_ReopenAsTextPreview>
|
||||
</zh-TW>
|
||||
<mr>
|
||||
<MW_ReopenAsTextPreview>पुनः टेक्स्ट पूर्वावलोकन म्हणून उघडा</MW_ReopenAsTextPreview>
|
||||
</mr>
|
||||
<hi>
|
||||
<MW_ReopenAsTextPreview>टेक्स्ट पूर्वावलोकन के रूप में फिर से खोलें</MW_ReopenAsTextPreview>
|
||||
</hi>
|
||||
<he>
|
||||
<MW_ReopenAsTextPreview>פתח מחדש כתצוגת טקסט</MW_ReopenAsTextPreview>
|
||||
</he>
|
||||
<hu-HU>
|
||||
<MW_ReopenAsTextPreview>Újranyitás szöveg előnézetként</MW_ReopenAsTextPreview>
|
||||
</hu-HU>
|
||||
<id-ID>
|
||||
<MW_ReopenAsTextPreview>Buka ulang sebagai pratinjau teks</MW_ReopenAsTextPreview>
|
||||
</id-ID>
|
||||
<sk>
|
||||
<MW_ReopenAsTextPreview>Znova otvoriť ako náhľad textu</MW_ReopenAsTextPreview>
|
||||
</sk>
|
||||
<el>
|
||||
<MW_ReopenAsTextPreview>Επανανοίξτε ως προεπισκόπηση κειμένου</MW_ReopenAsTextPreview>
|
||||
</el>
|
||||
<sv>
|
||||
<MW_ReopenAsTextPreview>Öppna på nytt som textförhandsgranskning</MW_ReopenAsTextPreview>
|
||||
</sv>
|
||||
</Translations>
|
||||
@@ -19,6 +19,7 @@ using QuickLook.Common.Commands;
|
||||
using QuickLook.Common.Controls;
|
||||
using QuickLook.Common.Helpers;
|
||||
using QuickLook.Common.Plugin.MoreMenu;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
@@ -30,14 +31,16 @@ public sealed partial class Plugin
|
||||
public IEnumerable<IMenuItem> GetMenuItems()
|
||||
{
|
||||
string translationFile = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "Translations.config");
|
||||
string extension = "";
|
||||
string extension = string.Empty;
|
||||
|
||||
try
|
||||
{
|
||||
// Get the file extension in lowercase for comparison
|
||||
extension = Path.GetExtension(_currentPath).ToLower();
|
||||
} catch (System.Exception)
|
||||
{
|
||||
}
|
||||
|
||||
catch (Exception)
|
||||
{
|
||||
}
|
||||
|
||||
var reopen = extension switch
|
||||
{
|
||||
@@ -58,6 +61,14 @@ public sealed partial class Plugin
|
||||
Header = TranslationHelper.Get("MW_ReopenAsImagePreview", translationFile),
|
||||
Command = new RelayCommand(() => PluginHelper.InvokePluginPreview("QuickLook.Plugin.ImageViewer", _currentPath)),
|
||||
},
|
||||
|
||||
// CSV, TSV, PSV <=> CSV viewer
|
||||
".csv" or ".tsv" or ".psv" => new MoreMenuItem()
|
||||
{
|
||||
Icon = FontSymbols.Code,
|
||||
Header = TranslationHelper.Get("MW_ReopenAsCsvPreview", translationFile),
|
||||
Command = new RelayCommand(() => PluginHelper.InvokePluginPreview("QuickLook.Plugin.CsvViewer", _currentPath)),
|
||||
},
|
||||
_ => null,
|
||||
};
|
||||
|
||||
|
||||
+94
@@ -0,0 +1,94 @@
|
||||
using ICSharpCode.AvalonEdit.Document;
|
||||
using ICSharpCode.AvalonEdit.Rendering;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace QuickLook.Plugin.TextViewer.Themes.HighlightingDefinitions.Dark;
|
||||
|
||||
/// <summary>
|
||||
/// Rainbow CSV Highlighting Definition
|
||||
/// </summary>
|
||||
public class CSVHighlightingDefinition : DarkHighlightingDefinition
|
||||
{
|
||||
public override string Name => "CSV";
|
||||
|
||||
public override string Extension => ".csv";
|
||||
|
||||
public override DocumentColorizingTransformer[] LineTransformers { get; } = [new RainbowTransformer(',')];
|
||||
|
||||
public class RainbowTransformer(char sep) : DocumentColorizingTransformer
|
||||
{
|
||||
private readonly char _sep = sep;
|
||||
|
||||
private readonly Brush[] _brushes =
|
||||
[
|
||||
Colors.OrangeRed.ToBrush(),
|
||||
Colors.CornflowerBlue.ToBrush(),
|
||||
Colors.LimeGreen.ToBrush(),
|
||||
Colors.MediumVioletRed.ToBrush(),
|
||||
Colors.Peru.ToBrush(),
|
||||
Colors.CadetBlue.ToBrush(),
|
||||
Colors.Khaki.ToBrush(),
|
||||
Colors.MediumSlateBlue.ToBrush(),
|
||||
];
|
||||
|
||||
protected override void ColorizeLine(DocumentLine line)
|
||||
{
|
||||
var text = CurrentContext.Document.GetText(line);
|
||||
if (string.IsNullOrEmpty(text))
|
||||
return;
|
||||
|
||||
int offset = line.Offset;
|
||||
int i = 0;
|
||||
int col = 0;
|
||||
int len = text.Length;
|
||||
|
||||
while (i < len)
|
||||
{
|
||||
int contentStart = i;
|
||||
int contentEnd = i;
|
||||
|
||||
if (text[i] == '"')
|
||||
{
|
||||
contentStart = i + 1;
|
||||
i++;
|
||||
while (i < len)
|
||||
{
|
||||
if (text[i] == '"')
|
||||
{
|
||||
if (i + 1 < len && text[i + 1] == '"')
|
||||
{
|
||||
i += 2;
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
contentEnd = i;
|
||||
i++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
i++;
|
||||
}
|
||||
while (i < len && text[i] != _sep) i++;
|
||||
}
|
||||
else
|
||||
{
|
||||
contentStart = i;
|
||||
while (i < len && text[i] != _sep) i++;
|
||||
contentEnd = i;
|
||||
}
|
||||
|
||||
if (contentEnd > contentStart)
|
||||
{
|
||||
int a = offset + contentStart;
|
||||
int b = offset + contentEnd;
|
||||
var brush = _brushes[col % _brushes.Length];
|
||||
ChangeLinePart(a, b, el => el.TextRunProperties.SetForegroundBrush(brush));
|
||||
}
|
||||
|
||||
if (i < len && text[i] == _sep) i++;
|
||||
col++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
using ICSharpCode.AvalonEdit.Rendering;
|
||||
|
||||
namespace QuickLook.Plugin.TextViewer.Themes.HighlightingDefinitions.Dark;
|
||||
|
||||
/// <summary>
|
||||
/// Rainbow PSV Highlighting Definition
|
||||
/// </summary>
|
||||
public class PSVHighlightingDefinition : DarkHighlightingDefinition
|
||||
{
|
||||
public override string Name => "PSV";
|
||||
|
||||
public override string Extension => ".psv";
|
||||
|
||||
public override DocumentColorizingTransformer[] LineTransformers { get; } = [new CSVHighlightingDefinition.RainbowTransformer('|')];
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
using ICSharpCode.AvalonEdit.Rendering;
|
||||
|
||||
namespace QuickLook.Plugin.TextViewer.Themes.HighlightingDefinitions.Dark;
|
||||
|
||||
/// <summary>
|
||||
/// Rainbow TSV Highlighting Definition
|
||||
/// </summary>
|
||||
public class TSVHighlightingDefinition : DarkHighlightingDefinition
|
||||
{
|
||||
public override string Name => "TSV";
|
||||
|
||||
public override string Extension => ".tsv";
|
||||
|
||||
public override DocumentColorizingTransformer[] LineTransformers { get; } = [new CSVHighlightingDefinition.RainbowTransformer('\t')];
|
||||
}
|
||||
+102
@@ -0,0 +1,102 @@
|
||||
using ICSharpCode.AvalonEdit.Document;
|
||||
using ICSharpCode.AvalonEdit.Rendering;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace QuickLook.Plugin.TextViewer.Themes.HighlightingDefinitions.Light;
|
||||
|
||||
/// <summary>
|
||||
/// Rainbow CSV Highlighting Definition
|
||||
/// </summary>
|
||||
public class CSVHighlightingDefinition : LightHighlightingDefinition
|
||||
{
|
||||
public override string Name => "CSV";
|
||||
|
||||
public override string Extension => ".csv";
|
||||
|
||||
public override DocumentColorizingTransformer[] LineTransformers { get; } = [new RainbowTransformer(',')];
|
||||
|
||||
public class RainbowTransformer(char sep) : DocumentColorizingTransformer
|
||||
{
|
||||
private readonly char _sep = sep;
|
||||
|
||||
private readonly Brush[] _brushes =
|
||||
[
|
||||
Colors.DarkRed.ToBrush(),
|
||||
Colors.DarkBlue.ToBrush(),
|
||||
Colors.DarkGreen.ToBrush(),
|
||||
Colors.DarkMagenta.ToBrush(),
|
||||
Colors.SaddleBrown.ToBrush(),
|
||||
Colors.Teal.ToBrush(),
|
||||
Colors.Olive.ToBrush(),
|
||||
Colors.SlateBlue.ToBrush(),
|
||||
];
|
||||
|
||||
protected override void ColorizeLine(DocumentLine line)
|
||||
{
|
||||
var text = CurrentContext.Document.GetText(line);
|
||||
if (string.IsNullOrEmpty(text))
|
||||
return;
|
||||
|
||||
int offset = line.Offset;
|
||||
int i = 0;
|
||||
int col = 0;
|
||||
int len = text.Length;
|
||||
|
||||
while (i < len)
|
||||
{
|
||||
int fieldStart = i;
|
||||
int contentStart = i;
|
||||
int contentEnd = i;
|
||||
|
||||
if (text[i] == '"')
|
||||
{
|
||||
// quoted field
|
||||
contentStart = i + 1;
|
||||
i++;
|
||||
while (i < len)
|
||||
{
|
||||
if (text[i] == '"')
|
||||
{
|
||||
if (i + 1 < len && text[i + 1] == '"')
|
||||
{
|
||||
// escaped quote
|
||||
i += 2;
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
// end quote
|
||||
contentEnd = i;
|
||||
i++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
i++;
|
||||
}
|
||||
// skip to separator
|
||||
while (i < len && text[i] != _sep) i++;
|
||||
}
|
||||
else
|
||||
{
|
||||
// unquoted
|
||||
contentStart = i;
|
||||
while (i < len && text[i] != _sep) i++;
|
||||
contentEnd = i;
|
||||
}
|
||||
|
||||
// color content [contentStart, contentEnd)
|
||||
if (contentEnd > contentStart)
|
||||
{
|
||||
int a = offset + contentStart;
|
||||
int b = offset + contentEnd;
|
||||
var brush = _brushes[col % _brushes.Length];
|
||||
ChangeLinePart(a, b, el => el.TextRunProperties.SetForegroundBrush(brush));
|
||||
}
|
||||
|
||||
// advance past separator
|
||||
if (i < len && text[i] == _sep) i++;
|
||||
col++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
using ICSharpCode.AvalonEdit.Rendering;
|
||||
|
||||
namespace QuickLook.Plugin.TextViewer.Themes.HighlightingDefinitions.Light;
|
||||
|
||||
/// <summary>
|
||||
/// Rainbow PSV Highlighting Definition
|
||||
/// </summary>
|
||||
public class PSVHighlightingDefinition : LightHighlightingDefinition
|
||||
{
|
||||
public override string Name => "PSV";
|
||||
|
||||
public override string Extension => ".psv";
|
||||
|
||||
public override DocumentColorizingTransformer[] LineTransformers { get; } = [new CSVHighlightingDefinition.RainbowTransformer('|')];
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
using ICSharpCode.AvalonEdit.Rendering;
|
||||
|
||||
namespace QuickLook.Plugin.TextViewer.Themes.HighlightingDefinitions.Light;
|
||||
|
||||
/// <summary>
|
||||
/// Rainbow TSV Highlighting Definition
|
||||
/// </summary>
|
||||
public class TSVHighlightingDefinition : LightHighlightingDefinition
|
||||
{
|
||||
public override string Name => "TSV";
|
||||
|
||||
public override string Extension => ".tsv";
|
||||
|
||||
public override DocumentColorizingTransformer[] LineTransformers { get; } = [new CSVHighlightingDefinition.RainbowTransformer('\t')];
|
||||
}
|
||||
@@ -7,6 +7,7 @@
|
||||
<Editor_SelectAll>حدد الكل</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>إعادة فتح كمعاينة HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>إعادة فتح كمعاينة صورة</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>إعادة فتح كمعاينة CSV</MW_ReopenAsCsvPreview>
|
||||
</ar>
|
||||
<ca>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -14,6 +15,7 @@
|
||||
<Editor_SelectAll>Selecciona-ho tot</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Torna a obrir com a previsualització HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Torna a obrir com a previsualització d'imatge</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Torna a obrir com a previsualització CSV</MW_ReopenAsCsvPreview>
|
||||
</ca>
|
||||
<de>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -21,6 +23,7 @@
|
||||
<Editor_SelectAll>Alles markieren</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Als HTML-Vorschau erneut öffnen</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Als Bildvorschau erneut öffnen</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Als CSV-Vorschau erneut öffnen</MW_ReopenAsCsvPreview>
|
||||
</de>
|
||||
<en>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -28,6 +31,7 @@
|
||||
<Editor_SelectAll>Select All</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Reopen as HTML preview</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Reopen as image preview</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Reopen as CSV preview</MW_ReopenAsCsvPreview>
|
||||
</en>
|
||||
<es>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -35,6 +39,7 @@
|
||||
<Editor_SelectAll>Seleccionar Todo</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Reabrir como vista previa HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Reabrir como vista previa de imagen</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Reabrir como vista previa CSV</MW_ReopenAsCsvPreview>
|
||||
</es>
|
||||
<fr>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -42,6 +47,7 @@
|
||||
<Editor_SelectAll>Tout sélectionner</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Rouvrir en aperçu HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Rouvrir en aperçu d'image</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Rouvrir en aperçu CSV</MW_ReopenAsCsvPreview>
|
||||
</fr>
|
||||
<it>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -49,6 +55,7 @@
|
||||
<Editor_SelectAll>Seleziona tutto</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Riapri come anteprima HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Riapri come anteprima immagine</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Riapri come anteprima CSV</MW_ReopenAsCsvPreview>
|
||||
</it>
|
||||
<ja-JP>
|
||||
<Editor_FontFamily>Consolas,Meiryo UI,MS UI Gothic,MS Gothic</Editor_FontFamily>
|
||||
@@ -56,6 +63,7 @@
|
||||
<Editor_SelectAll>すべて選択</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>HTML プレビューとして再度開く</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>画像プレビューとして再度開く</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>CSV プレビューとして再度開く</MW_ReopenAsCsvPreview>
|
||||
</ja-JP>
|
||||
<ko>
|
||||
<Editor_FontFamily>Consolas,Malgun Gothic,Gulim</Editor_FontFamily>
|
||||
@@ -63,6 +71,7 @@
|
||||
<Editor_SelectAll>모두 선택</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>HTML 미리보기로 다시 열기</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>이미지 미리보기로 다시 열기</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>CSV 미리보기로 다시 열기</MW_ReopenAsCsvPreview>
|
||||
</ko>
|
||||
<nb-NO>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -70,6 +79,7 @@
|
||||
<Editor_SelectAll>Merk alt</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Åpne på nytt som HTML-forhåndsvisning</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Åpne på nytt som bilde-forhåndsvisning</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Åpne på nytt som CSV-forhåndsvisning</MW_ReopenAsCsvPreview>
|
||||
</nb-NO>
|
||||
<nl-NL>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -77,6 +87,7 @@
|
||||
<Editor_SelectAll>Alles selecteren</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Opnieuw openen als HTML-voorbeeld</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Opnieuw openen als afbeelding-voorbeeld</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Opnieuw openen als CSV-voorbeeld</MW_ReopenAsCsvPreview>
|
||||
</nl-NL>
|
||||
<pl>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -84,6 +95,7 @@
|
||||
<Editor_SelectAll>Zaznacz wszystko</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Otwórz ponownie jako podgląd HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Otwórz ponownie jako podgląd obrazu</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Otwórz ponownie jako podgląd CSV</MW_ReopenAsCsvPreview>
|
||||
</pl>
|
||||
<pt-BR>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -91,6 +103,7 @@
|
||||
<Editor_SelectAll>Selecionar tudo</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Reabrir como visualização HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Reabrir como visualização de imagem</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Reabrir como visualização CSV</MW_ReopenAsCsvPreview>
|
||||
</pt-BR>
|
||||
<pt-PT>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -98,6 +111,7 @@
|
||||
<Editor_SelectAll>Selecionar tudo</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Reabrir como pré-visualização HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Reabrir como pré-visualização de imagem</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Reabrir como pré-visualização CSV</MW_ReopenAsCsvPreview>
|
||||
</pt-PT>
|
||||
<ro>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -105,6 +119,7 @@
|
||||
<Editor_SelectAll>Selectați tot</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Redeschideți ca previzualizare HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Redeschideți ca previzualizare imagine</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Redeschideți ca previzualizare CSV</MW_ReopenAsCsvPreview>
|
||||
</ro>
|
||||
<ru-RU>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -112,6 +127,7 @@
|
||||
<Editor_SelectAll>Выделить всё</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Переоткрыть как предварительный просмотр HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Переоткрыть как предварительный просмотр изображения</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Переоткрыть как предварительный просмотр CSV</MW_ReopenAsCsvPreview>
|
||||
</ru-RU>
|
||||
<tr-TR>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -119,6 +135,7 @@
|
||||
<Editor_SelectAll>Tümünü seç</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>HTML önizlemesi olarak yeniden aç</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Resim önizlemesi olarak yeniden aç</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>CSV önizlemesi olarak yeniden aç</MW_ReopenAsCsvPreview>
|
||||
</tr-TR>
|
||||
<uk-UA>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -126,6 +143,7 @@
|
||||
<Editor_SelectAll>Виділити Все</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Перевідкрити як попередній перегляд HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Перевідкрити як попередній перегляд зображення</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Перевідкрити як попередній перегляд CSV</MW_ReopenAsCsvPreview>
|
||||
</uk-UA>
|
||||
<vi>
|
||||
<Editor_FontFamily>Consolas</Editor_FontFamily>
|
||||
@@ -133,6 +151,7 @@
|
||||
<Editor_SelectAll>Chọn tất cả</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>Mở lại dưới dạng xem trước HTML</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>Mở lại dưới dạng xem trước hình ảnh</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>Mở lại dưới dạng xem trước CSV</MW_ReopenAsCsvPreview>
|
||||
</vi>
|
||||
<zh-CN>
|
||||
<Editor_FontFamily>Consolas,Microsoft Yahei UI,Microsoft Yahei,SimSun</Editor_FontFamily>
|
||||
@@ -140,6 +159,7 @@
|
||||
<Editor_SelectAll>全选</Editor_SelectAll>
|
||||
<MW_ReopenAsHtmlPreview>重新作为 HTML 预览打开</MW_ReopenAsHtmlPreview>
|
||||
<MW_ReopenAsImagePreview>重新作为图像预览打开</MW_ReopenAsImagePreview>
|
||||
<MW_ReopenAsCsvPreview>重新作为 CSV 预览打开</MW_ReopenAsCsvPreview>
|
||||
</zh-CN>
|
||||
<zh-TW>
|
||||
<Editor_FontFamily>Consolas,Microsoft JhengHei UI,Microsoft JhengHei,MingLiU</Editor_FontFamily>
|
||||
|
||||
Reference in New Issue
Block a user