web-dev-qa-db-ja.com

Libre Officeライターのコードハイライト拡張機能

私は最近、多くのコードを含む学校向けのレポートを作成しました。私が見つけた唯一の方法は、それをSTRONGで強調表示することでしたが、これは非常にいものです。 libre office writerの拡張機能を強調するコードはありますか?

以下のように:

<insert code here>

異なる色の構文ハイライトも問題ありません。
プログラム全体を入力することはありませんので、コードだと思うものをハイライトできるようにする必要があります。

このような:echo "Hello World!";

クーダー

私はこのハイライトがテキストとその後に続くすべてのテキストをフォーマットするので、このハイライトが好きではありませんでした。テキストをマークして、ハイライトをクリックしたいだけです。
これは複雑すぎて使いにくいので、1つのレポートで約100回になると強調するたびにプログラミング言語を選択する必要があります。
サイトで使用しているものに似たものが欲しい。単純なコードを強調表示します。

コードカラライザーフォーマッター

それは私のためにインストールされますが、私はそれを動作させることができず、PHPまたはHTMLサポートがありません。

21
Alvar

プラグインではありませんが、構文を色付けするWebサイトにコードを配置します。私が使用しているサイトは tohtml です。 htmlで生成されたコードは使用しませんが、色付きで強調表示されたコードをブラウザーからコピーして、ドキュメントとWYSIWYGに貼り付けます。

15
Drake Clarris

更新2:LibreOffice拡張機能

以前のマクロスクリプトを拡張機能として公開しました: Code Highlighter LibreOffice Extensionsストアで利用可能です。

1.インストール方法

次の手順に従って、拡張機能をインストールします。

ステップ1:libreoffice-script-provider-pythonをインストールします:

Sudo apt-get install libreoffice-script-provider-python

ステップ2:Python 3のpygmentsをインストールします:

Sudo pip3 install pygments

ステップ3:codehighlighter.oxt 拡張機能をダウンロードしてLibre Officeに追加します

2.使用方法

  • LibreOffice Writer/Calc/Impressを開きます。
  • テキストボックスを挿入します(Insert->Text Box)。
  • コードスニペットをコピーして、そのテキストボックスに貼り付けます。
  • テキストボックスを選択します。
  • ハイライトツール->ハイライトコード-><言語名>

enter image description here

頻繁に使用する言語にキーボードショートカットを割り当てることができます。キーボードショートカットの割り当て方法を確認するには、Git Hubページにアクセスしてください。 libreoffice-code-highlighter


LO <= 5に対してまだ有効であるため、ここに元の回答を残します。

同じ要件があり、LibreOffice 5でこれらのソリューションのいずれも「Code Colorizer Formatter」を除いて機能しませんでした。ただし、Code Colorizer FormatterはWriterでのみ機能しました(Impressでも必要でした)。その後、LibreOffice 5でテストされているPythonマクロを使用した別のソリューションを見つけました。

Installation

ステップ1:libreoffice-script-provider-pythonをインストールします:

Sudo apt-get install libreoffice-script-provider-python

ステップ2:Python 3のpygmentsをインストールします:

Sudo pip3 install pygments

ステップ3:ダウンロード Highlight.py

ステップ4:Highlight.pyを/ usr/lib/libreoffice/share/Scripts/python /

Sudo cp Highlight.py /usr/lib/libreoffice/share/Scripts/python/

ステップ5:スクリプトに読み取り専用権限を設定します。

Sudo chmod 0444 /usr/lib/libreoffice/share/Scripts/python/Highlight.py

ステップ6:LibreOffice Writerを開き、ツール->カスタマイズ->キーボードに移動します

  • LibreOfficeオプションボタンを選択します(左上隅にあります)
  • 目的のショートカットを選択します
  • 関数カテゴリでshare/Highlight/Highlight_source_codeを選択します
  • 変更ボタンをクリックしてショートカットを設定します

使用法

LibreOffice Impress

  • LibreOffice Impressを開きます。
  • テキストボックスを挿入します([挿入]-> [テキストボックス])。
  • コードスニペットをコピーして、そのテキストボックスに貼り付けます。
  • 新しいスタイルを作成します(既存のスタイルを右クリック->新規...)
  • スタイルにcode-<language>という名前を付けます
  • スタイルをコードスニペットテキストボックスに適用します。
  • テキストボックスを選択します。
  • ショートカットキーを使用してマクロを実行します。

LibreOffice Writer/Calc

  • LibreOffice Writer/Calcを開きます。
  • テキストボックスを挿入します([挿入]-> [テキストボックス])。
  • コードスニペットをコピーして、そのテキストボックスに貼り付けます。
  • テキストボックスを右クリックして、[説明]を選択します。
  • 次の形式で説明を追加します。code-<language>
  • テキストボックスを選択
  • ショートカットキーを使用してマクロを実行します。

更新1:

この拡張機能にカスタムスタイルのサポートを追加しました。デフォルトのスタイルにはcode-<language>を、カスタムスタイルにはcode-<language>-<style>を使用します。使用可能なスタイルは、Git Hubページにリストされています。

たとえば、Code-Java-Emacsは、Emacsスタイルを使用してJavaコードに色を付けます。

11
Gobinath

クーダー

COOderは放棄されたようで、LibreOffice 4.2.8.2にはインストールできません。

コードカラライザーフォーマッター

Code Colorizer FormatterがLibreOfficeにインストールされ、正常に動作します。 Code Colorizer FormatterもPHPサポートを追加しましたが、HTMLサポートが完全に欠落しており、テストしたときにJavaScriptが機能しませんでした。 Code Colorizer FormatterのWebサイトで動作させる方法はうまくいきませんでしたが、LibreOfficeで動作するようにCode Colorizer Formatterを苦労してもらいました。

  1. Code Colorizer FormatterCode Colorizer Formatterプロジェクトホームページ からダウンロードし、他のLibreOffice拡張機能と同様にLibreOffice Writerにインストールします。

  2. LibreOffice Writerでコードファイルを開きます。 Code Colorizer Formatterは、Bash、Basic、C++、Java、Perl、PHP、Python、R、SQL、XML、C#、8085 Assembler、およびx86 Assemblerをサポートしています。

  3. 色付けするコードを選択します。

  4. ツール->マクロ->マクロの整理->LibreOffice Basic

  5. 新しいLibreOffice Basic Macrosウィンドウが開きます。 Macro from見出しの下で、My Macros->MacroFormatterADP->サポートされているプログラミング言語。以下のスクリーンショットでは、Javaが選択されています。

  6. 既存のマクロ...見出しの下で、HighlightSelLanguageを選択します。ステップ5で選択されたプログラミング言語。以下のスクリーンショットでは、HighlightSelJavaが選択されています。

  7. Runボタンをクリックして、選択したコードを色付けします。

enter image description here

4
karel

強調表示するたびにプログラミング言語を選択する必要がありますが、1つのレポートで約100回になります。

実際、特定の言語のカラーリングをホットキーにバインドする方法があります。次のサブを作成し、ホットキーにバインドします。

[ツール]→[マクロ]→[マクロの整理]→[LibreOffice Basic]に移動します。 Module1を選択し、編集を押します。

enter image description here

次に、このコードをコピーして貼り付けます。

Sub COOoderInPython
  ExecuteCOOoder("python")
End Sub

Sub ExecuteCOOoder(sLanguage As String)
  oLanguage = org.openoffice.coooder.theLanguagesManager.get(GetDefaultContext()).getLanguage(sLanguage)
  If NOT isNull(oLanguage) Then
    oHighlighter = CreateUnoService("org.openoffice.coooder.Highlighter")
    oHighlighter.Language = oLanguage
    oHighlighter.parse(Null)
  End If
End Sub

最後に、それをホットキーにバインドします。

enter image description here

1
Adobe

私が知っているが、放棄されているように見えるものは、 Code Colorizer Formatter です。

LO 4でまだ機能するかどうかはわかりませんが、試してみる(または救助して最新の状態にする)ことは価値があるかもしれません。

0
carnendil

オンラインページでコードをフォーマットするのにうんざりしていて、LibreOfficeまたはOpenOfficeライター内でコードをスタイル設定したかったのです。

インストールが失敗したように見えても(インストール中にLibreOffice 5. *が中断された場合でも)、拡張機能 "cooder"はLibreOffice 5. *で正常に動作することがわかりました。

Extension-ManagerでCooderをアクティブにし、LibreOffice/NeoOffice/OpenOfficeを再起動すると、LibreOffice内でソースコードをスタイルするために使用できる新しいシンボルが表示されます。

拡張機能は次の場所からダウンロードできます。 http://extensions.libreoffice.org/extension-center/coooder

0
Jo Canara