web-dev-qa-db-ja.com

14.04にgedit markdown-previewプラグインをインストールする方法は?

geditのマークダウンプレビュープラグインをインストールしたばかりで、プラグインタブでアクティブにしようとするとコンソールに次のエラーが表示されます。

トレースバック(最後の最後の呼び出し):ファイル「/home/aarold/.local/share/gedit/plugins/markdown-preview/init.py」、インポートの25行目マークダウンImportError:「markdown」というモジュールはありません

(gedit:20735):libpeas-WARNING **:プラグイン 'markdown-previewの読み込みエラー

これはgeditに関する他の質問と同じ問題ではないことに注意してください。その解決策は私にはうまくいきません。

/home/aarold/.local/share/gedit/plugins/markdown-preview.pluginファイルのLoaderパラメーターをpythonおよびpython3に設定しようとしましたが、いずれも機能しません。オプションの可能なすべての組み合わせでプラグインを再インストールしようとしましたが、インストールが成功したと表示されていますが、常にこのエラーが発生します。何が問題なのでしょうか?

.pyファイルを確認しましたが、できません

import markdown

追加のpythonモジュールをインストールする必要がありますか?

私はもう試した

pip install markdown

しかし、それにもかかわらず

マークダウンを正常にインストールしました

それでも同じエラーが発生します。

3
Adam Arold

このプラグインはPython 2用に作成されていますが、gedit 3.8以降では、Python 3プラグインのみがサポートされています。そのため、いくつかの小さな変更が必要です。

  1. インストーラー(gedit-markdown.sh)を変更して、python3マークダウンモジュールをインストールします。

    これは、既存のファイルに適用できるパッチです(または、利用可能な完全に変更されたバージョンをコピーするだけです here ):

    --- gedit-markdown_ori.sh   2014-05-14 16:14:58.386700310 +0200
    +++ gedit-markdown.sh   2014-05-14 15:42:21.038783248 +0200
    @@ -263,7 +263,9 @@
    
     # Note: sous Archlinux, «/usr/bin/python» correspond à Python 3. On teste donc les
     # chemins pour Python 2 en premier.
    -if type -p python2.7 > /dev/null; then
    +if type -p python3 > /dev/null; then
    +   binPython=$(type -p python3)
    +Elif type -p python2.7 > /dev/null; then
        binPython=$(type -p python2.7)
     Elif type -p python2.6 > /dev/null; then
        binPython=$(type -p python2.6)
    @@ -287,15 +289,15 @@
                cheminPythonMarkdown=python-markdown/python2
                cheminPythonSitePackages=$("$binPython" -m site --user-site)
            fi
    -#  Elif [[ ${versionPython:0:1} == 3 ]]; then
    -#      compareVersions "$versionPython" "3.1"
    -#      
    -#      if [[ $? == 2 ]]; then
    -#          bonneVersionPython=false
    -#      else
    -#          cheminPythonMarkdown=python-markdown/python3
    -#          cheminPythonSitePackages=$("$binPython" -m site --user-site)
    -#      fi
    +   Elif [[ ${versionPython:0:1} == 3 ]]; then
    +       compareVersions "$versionPython" "3.1"
    +       
    +       if [[ $? == 2 ]]; then
    +           bonneVersionPython=false
    +       else
    +           cheminPythonMarkdown=python-markdown/python3
    +           cheminPythonSitePackages=$("$binPython" -m site --user-site)
    +       fi
        else
            bonneVersionPython=false
        fi
    
  2. ./gedit-markdown.sh installを実行します

    2.7ではなくpython 3.4が表示されるはずです。

    ############################################################
    ##
    ## Installation of gedit-markdown
    ##
    ############################################################
    
    ## First step: check dependencies
    
    - gedit: 3.10.4
    - Python: 3.4
    
    [...]
    
  3. プラグインローダーをpython3に変更します

    /home/aarold/.local/share/gedit/plugins/markdown-preview.pluginを次のように置き換えます。

    [Plugin]
    Loader=python3
    Module=markdown-preview
    IAge=3
    Name=Markdown Preview
    Name[fr]=Aperçu Markdown
    Description=Show the HTML version of the Markdown text you're editing
    Description[fr]=Affiche l'aperçu en HTML du document Markdown en cours d'édition
    Authors=Michele Campeotto <[email protected]>\nJean-Philippe Fleury <[email protected]>
    Copyright=Copyright © 2005, 2006 Michele Campeotto\nCopyright © 2009, 2011-2012 Jean-Philippe Fleury
    Website=http://www.jpfleury.net/logiciels/gedit-markdown.php
    
  4. /home/aarold/.local/share/gedit/plugins/markdown-preview/__init__.pyをpython3に変換します。

    実行:

    2to3 -w /home/aarold/.local/share/gedit/plugins/markdown-preview/__init__.py
    

    最後にこのファイルを開き、行86を編集します(バイナリモード"wb"-> "w"を削除します):

    with open(confFile, "w") as confFile:
    
  5. Geditでプラグインを有効にします。

4
Sylvain Pineau