EclipseのBashスクリプトプラグイン?[閉まっている]


174

bashEclipse用の適切なプラグインはありますか?私の唯一の要件は構文の強調表示です。私はググってみましたが、「the」 bashプラグインのように見えるものは何も見つかりませんでした。


あなたのOSは何ですか?これをWindowsのシェルエミュレータとして実行しようとしていますか?Cygwinのようなもの
両生類2012

回答:


140

ShellEdは有望に見え、構文の強調表示を行い、肯定的なレビューがありますが、私自身は試していません。Redhatによってディストリビューションへの組み込みが承認されました。EclipseサイトのShellEdプラグインページにもう少し情報があり、それらのwikiにインストール手順があります。

Eclipseの最新バージョン(この記事の執筆時点ではJuno)を実行していない場合は、古いバージョンを使用する必要があります。たとえば、2.0.1はIndigoと互換性があります。


1
私はこのプラグインを使用しており、非常に便利です。
Romain Linsolas、2009

5
私が間違っていたら訂正してください。現在、殻を持つ任意のテキストエディタ構文強調表示し、スニペットをサポート..として、それはほぼ同じ作り、リファクタリング、またはデバッグ、AUDO-単語補完をサポートしていないようだ
kakyo

3
Eclipse 4では動作しません。他のプラグインを知っている人はいますか?
Pratik Khadloya 14年

7
ShellEdはEclipse 4.5と完全に連携します。インストールするには、Eclipseの[ヘルプ]メニューから「新規ソフトウェアのインストール...」と、このURLを入れて選択します。sourceforge.net/projects/shelled/files/shelled/update
fred727

6
最近はeclipse.org/dltk/install.phpにアクセスしてください。Eclipse内のEclipse標準更新サイトからインストールします(例http://download.eclipse.org/releases/neon/)次に、Programming languagesおよびを探しますDynamic Languages Toolkit - ShellEd
Torsten 2016

36

編集(2013年8月3日):最新バージョンはhttp://sourceforge.net/projects/shelled/files/shelled/update/を使用

編集(2013年2月25日):Eclipse 4.2.1にシェル2.0.2用のLinuxツールをインストールする必要はありません。また、zipファイルをダウンロードする必要もありません。シェル2.0.2の更新サイトは次のとおりです。http//sourceforge.net/projects/shelled/files/shelled/ShellEd%202.0.2/update/

古い投稿:

私も砲弾が好きです。今すぐインストールする場合は、zipファイルをダウンロードして、Eclipseの新しいソフトウェアのインストールウィザードでそれを指定する必要があります。また、以下からmanプラグインをインストールする必要があります。

http://download.eclipse.org/technology/linuxtools/update

zipファイルへの直接リンク:ppl.ug/tvjARs_cKQE/dl
AlikElzin-kilaka


+1これは、今日にとって最も価値のある情報です。Juno SR2のインストールを1時間前にねじ込む前にそれがあったら
良かったの

1
正確なShellEdダウンロードURLの+1。Eclipse MarketplaceでShellEdをダウンロードできなくなりました。ShellEdは非常にうまく機能します。
La-comadreja 2014年

2
ShellEdは、標準のEclipse Mars 更新サイト download.eclipse.org/releases/marsで入手できます ...エントリは、Programming Languages- > Dynamic Languages Toolkit-ShellEd IDEから入手できます。
Abdull

13

Bashバージョン3のデバッガー(Bourne again shell)。
Eclipseのプラグイン。シェルスクリプトエディターShellEdでのみ機能します。バシェクリプス


10

ShellEdのInstallGuideからの公式の指示に従ってください


私にとってはうまくいきませんでした:更新サイトに置くと、シェルのみが見つかり、UIモジュールが必要だったため、すぐにインストールを拒否しました。
Rob

3
彼らのドキュメント(sourceforge.net/apps/trac/shelled/wiki/Documentation/…)に記載されているように、このdownload.eclipse.org/technology/linuxtools/updateを利用可能なソフトウェアサイトに追加する必要があります。その後、問題なく動作するはずです!
pedromanoel

2014年7月:Eclipse用のlinuxtools URL / repoからshelledを利用できなくなりました。
woohoo 14

7

無料のEclipseColorer Editorは、bashスクリプトの構文強調表示を実行できます。

ただし、Eclipseの「アウトラインビュー」は使用されません。つまり、関数定義のリストが表示されません。構文の強調表示がスクリプトの途中で停止する場合があります。次に、スクリプトを再度開くと役立ちます。


1
私はしばらくの間ShellEdを使用していましたが、大きなファイルで途方に暮れてしまい、自動インデントの選択がイライラすることがわかりました。EclipseColorer Editorは私の目的のためにうまく機能しています。また、このプラグインに他のファイルタイプの大きなリストを用意しておくと便利です。
Demyn 2013年

1
私も2年間ShellEdを使用しましたが、インデントがめちゃくちゃになり続け、最初はすべてのコメントを折りたたむという非常に煩わしい癖があり(構成可能ではありません)、非常に遅いです。EclipseColorerに切り替えただけで、問題なく動作するようです。
Tw Bert

4

ShellEd

ShellEdをインストールする以下の解決策は私にとっては機能しません。依存関係に関する多くのエラー。私のために働く解決策を見つけました。

システム:

Linux Lubuntu 12.04

IDE:

Eclipseケプラー

Eclipseで、[ヘルプ]> [新しいソフトウェアのインストール]に移動します

[追加...]をクリックします

次の場所http://download.eclipse.org/releases/keplerを追加し、「Eclipse Kepler」という名前を付けます。

OKをクリックします。

新しく作成したEclipse Keplerサイトを選択します。

下部にあるWeb、XML、Java EE、およびOSGiエンタープライズ開発セクションを展開します。[WSTサーバーアダプター]を選択します。

[次へ]をクリックして、通常どおりにインストールします。

Eclipseを再起動します

:次に、上記のように殻が同様にレポを追加 http://sourceforge.net/projects/shelled/files/shelled/update/

そしてそれをインストールします。

Eclipseを再起動します。

ここで述べたように、Eclipse Indigoでも動作しました:http : //docs.wraithmonster.com/install-shelled

楽しい :)


理由はわかりませんが、以前に2回インストールに失敗した後、これで問題が解決しました。私はMac OS XのEclipse Keplerを使用しています
Hans Z.

3

「Bashエディター」と呼ばれる専用のbashスクリプトプラグインが存在します。それは日食市場で入手可能です:

Bashエディターのログ

https://marketplace.eclipse.org/content/bash-editorで、または "bash"を検索するときにMarketplaceクライアントによって検索できます。

プラグインはデバッガも提供します。Inisde公式Bash Editor YouTubeプレイリストには、使用方法に関するチュートリアルなどがあります。

PS:私は上記のプラグインの作者です。


プラグインはベータ版ではなくなりましたが、生産的/安定版としてマークされています
de-jcup

リンク切れ。それを変更。
Balaji Boggaram Ramanarayan

いいえ、それはデッドリンクではありません。私はmarketplace.eclipse.org/content/bash-editorを開いただけ、完全に応答します。多分あなたはプロキシまたはネットワークの問題を抱えていましたか?
de-jcup 2018

ワオ !!その現在動作しています。まあありがとう。私はファイアウォールの背後にいませんでした。ターンアラウンドに感謝します。
Balaji Boggaram Ramanarayan 2018

2

この記事をなくして、もう一度見つけるのに時間がかかるので、ここで良いチュートリアルを再現します。

Colorerライブラリを使用して、新しい言語の構文強調表示をEclipseに追加する

Eclipseがサポートしていないプログラミング言語(D / Iptablesやその他のスクリプト言語など)の構文と字句構造を含むHRCファイルがあるとします。

EclipseColorerプラグインを使用すると、プラグインのサポートを簡単に追加できます。

[ヘルプ]-> [新しいソフトウェアのインストール]に移動し、[追加]をクリックします。[名前]フィールドに「Colorer」と入力し、[場所]フィールドに「http://colorer.sf.net/eclipsecolorer/」と入力します。

作業:コンボボックスに追加したばかりのエントリを選択し、コンポーネントリストが表示されるのを待って、[すべて選択]をクリックします。

[次へ]をクリックして、指示に従います

プラグインがインストールされたら、Eclipseを閉じます。

HRCファイルを[EclipseFolder] \ plugins \ net.sf.colorer_0.9.9 \ colorer \ hrc \ auto \ typesにコピーします

[EclipseFolder] = /home/myusername/.eclipse

お気に入りのテキストエディタを使用して開きます

[EclipseFolder] \ plugins \ net.sf.colorer_0.9.9 \ colorer \ hrc \ auto \ empty.hrc

適切なプロトタイプ要素を追加します。たとえば、HRCファイルがd.hrcの場合、empty.hrcは次のようになります。

<?xml version="1.0" encoding='Windows-1251'?>
 <!DOCTYPE hrc PUBLIC
 "-//Cail Lomecb//DTD Colorer HRC take5//EN"
 "http://colorer.sf.net/2003/hrc.dtd"
 >
 <hrc version="take5" xmlns="http://colorer.sf.net/2003/hrc"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://colorer.sf.net/2003/hrc http://colorer.sf.net/2003/hrc.xsd"
 ><annotation><documentation>
 'auto' is a place for include
 to colorer your own HRCs
</documentation></annotation>
    <prototype name="d" group="main" description="D">
         <location link="types/d.hrc"/>
        <filename>/\.(d)$/i</filename>
 </prototype>
</hrc>

変更を保存してテキストエディターを閉じます

Eclipseを開き、[ウィンドウ]-> [設定]-> [一般]-> [編集者]-> [ファイルの関連付け]に移動します。

ファイルの種類のセクションで、[追加...]をクリックし、適切なファイルの種類(.dなど)を入力します。

[OK]をクリックし、リストに新しく追加したエントリをクリックします

関連するエディターセクションで、[追加...]をクリックし、[Colorer Editor]を選択して、[OK]を押します。

わかりました。難しいのは、HCR構文について学ぶ必要があることです。

あなたは見ることができます

[EclipseFolder] /net.sf.colorer_0.9.9/colorer/hrc/common.jar

それを行う方法を学び、他の多くのhcrファイルを探索します。現時点では、ドキュメントは見つかりませんでした。

私の贈り物は、基本的で不完全なiptables構文のハイライトです。上達したら私と共有してください。

<?xml version="1.0" encoding="Windows-1251"?>
<!DOCTYPE hrc PUBLIC "-//Cail Lomecb//DTD Colorer HRC take5//EN" "http://colorer.sf.net/2003/hrc.dtd">
<hrc version="take5" xmlns="http://colorer.sf.net/2003/hrc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://colorer.sf.net/2003/hrc http://colorer.sf.net/2003/hrc.xsd">
    <type name="iptables">
        <annotation>
            <develby> Mario Moura - moura.mario  gmail.com</develby>
            <documentation>Support iptables EQL language</documentation>
            <appinfo>
                  <prototype name="iptables" group="database" description="iptables">
                       <location link="iptables.hrc"/>
                       <filename>/\.epl$/i</filename>
                  </prototype>  
            </appinfo>
        </annotation>

        <region name="iptablesTable" parent="def:Keyword"/>
        <region name="iptablesChainFilter" parent="def:Symbol"/>
        <region name="iptablesChainNatMangle" parent="def:NumberDec"/>
        <region name="iptablesCustomDefaultChains" parent="def:Keyword"/>
        <region name="iptablesOptions" parent="def:String"/>
        <region name="iptablesParameters" parent="def:Operator"/>
        <region name="iptablesOtherOptions" parent="def:Comment"/>
        <region name="iptablesMatchExtensions" parent="def:ParameterStrong"/>
        <region name="iptablesTargetExtensions" parent="def:FunctionKeyword"/>
        <region name="pyComment" parent="def:Comment"/>
          <region name="pyOperator" parent="def:Operator"/>
          <region name="pyDelimiter" parent="def:Symbol"/>


        <scheme name="iptablesTable">
            <keywords ignorecase="no" region="iptablesTable">
                <word name="mangle"/>
                <word name="filter"/>
                <word name="nat"/>
                <word name="as"/>
                <word name="at"/>
                <word name="asc"/>
                <word name="avedev"/>
                <word name="avg"/>
                <word name="between"/>
                <word name="by"/>
            </keywords>
        </scheme>

        <scheme name="iptablesChainFilter">
            <keywords ignorecase="no" region="iptablesChainFilter">
                <word name="FORWARD"/>
                <word name="INPUT"/>
                <word name="OUTPUT"/>
            </keywords>
        </scheme>

        <scheme name="iptablesChainNatMangle">
            <keywords ignorecase="no" region="iptablesChainNatMangle">
                <word name="PREROUTING"/>
                <word name="POSTROUTING"/>
                <word name="OUTPUT"/>
            </keywords>
        </scheme>

        <scheme name="iptablesCustomDefaultChains">
            <keywords ignorecase="no" region="iptablesCustomDefaultChains">
                <word name="CHTTP"/>
                <word name="CHTTPS"/>
                <word name="CSSH"/>
                <word name="CDNS"/>
                <word name="CFTP"/>
                <word name="CGERAL"/>
                <word name="CICMP"/>
            </keywords>
        </scheme>


        <scheme name="iptablesOptions">
            <keywords ignorecase="no" region="iptablesOptions">
                <word name="-A"/>
                <word name="--append"/>
                <word name="-D"/>
                <word name="--delete"/>
                <word name="-I"/>
                <word name="--insert"/>
                <word name="-R"/>
                <word name="--replace"/>
                <word name="-L"/>
                <word name="--list"/>
                <word name="-F"/>
                <word name="--flush"/>
                <word name="-Z"/>
                <word name="--zero"/>
                <word name="-N"/>
                <word name="--new-chain"/>
                <word name="-X"/>
                <word name="--delete-chain"/>
                <word name="-P"/>
                <word name="--policy"/>
                <word name="-E"/>
                <word name="--rename-chain"/>
            </keywords>
        </scheme>

        <scheme name="iptablesParameters">
            <keywords ignorecase="no" region="iptablesParameters">
                <word name="-p"/>
                <word name="--protocol"/>
                <word name="-s"/>
                <word name="--source"/>
                <word name="-d"/>
                <word name="--destination"/>
                <word name="-j"/>
                <word name="--jump"/>
                <word name="-g"/>
                <word name="--goto"/>
                <word name="-i"/>
                <word name="--in-interface"/>
                <word name="-o"/>
                <word name="--out-interface"/>
                <word name="-f"/>
                <word name="--fragment"/>
                <word name="-c"/>
                <word name="--set-counters"/>
            </keywords>
        </scheme>

        <scheme name="iptablesOtherOptions">
            <keywords ignorecase="no" region="iptablesOtherOptions">
                <word name="-v"/>
                <word name="--verbose"/>
                <word name="-n"/>
                <word name="--numeric"/>
                <word name="-x"/>
                <word name="--exact"/>

                <word name="--line-numbers"/>
                <word name="--modprobe"/>
            </keywords>
        </scheme>

        <scheme name="iptablesMatchExtensions">
            <keywords ignorecase="no" region="iptablesMatchExtensions">
                <word name="account"/>
                <word name="addrtype"/>
                <word name="childlevel"/>
                <word name="comment"/>
                <word name="connbytes"/>
                <word name="connlimit"/>
                <word name="connmark"/>
                <word name="connrate"/>
                <word name="conntrack"/>
                <word name="dccp"/>
                <word name="dscp"/>
                <word name="dstlimit"/>
                <word name="ecn"/>
                <word name="esp"/>
                <word name="hashlimit"/>
                <word name="helper"/>
                <word name="icmp"/>
                <word name="ipv4options"/>
                <word name="length"/>
                <word name="limit"/>
                <word name="mac"/>
                <word name="mark"/>
                <word name="mport"/>
                <word name="multiport"/>
                <word name="nth"/>
                <word name="osf"/>
                <word name="owner"/>
                <word name="physdev"/>
                <word name="pkttype"/>
                <word name="policy"/>
                <word name="psd"/>
                <word name="quota"/>
                <word name="realm"/>
                <word name="recent"/>
                <word name="sctp"/>
                <word name="set"/>
                <word name="state"/>
                <word name="string"/>
                <word name="tcp"/>
                <word name="tcpmss"/>
                <word name="tos"/>
                <word name="u32"/>
                <word name="udp"/>                                                                              
            </keywords>
        </scheme>


    <scheme name="iptablesTargetExtensions">
            <keywords ignorecase="no" region="iptablesTargetExtensions">
                <word name="BALANCE"/>
                <word name="CLASSIFY"/>
                <word name="CLUSTERIP"/>
                <word name="CONNMARK"/>
                <word name="DNAT"/>
                <word name="DSCP"/>
                <word name="ECN"/>
                <word name="IPMARK"/>
                <word name="IPV4OPTSSTRIP"/>
                <word name="LOG"/>
                <word name="MARK"/>
                <word name="MASQUERADE"/>
                <word name="MIRROR"/>
                <word name="NETMAP"/>
                <word name="NFQUEUE"/>
                <word name="NOTRACK"/>
                <word name="REDIRECT"/>
                <word name="REJECT"/>
                <word name="SAME"/>
                <word name="SET"/>
                <word name="SNAT"/>
                <word name="TARPIT"/>
                <word name="TCPMSS"/>
                <word name="TOS"/>
                <word name="TRACE"/>
                <word name="TTL"/>
                <word name="ULOG"/>
                <word name="XOR"/>                                                                          
            </keywords>
        </scheme>



        <scheme name="iptables">
              <inherit scheme="iptablesTable"/>
              <inherit scheme="iptablesChainFilter"/>
              <inherit scheme="iptablesChainNatMangle"/>
              <inherit scheme="iptablesCustomDefaultChains"/>                                     
              <inherit scheme="iptablesOptions"/>
              <inherit scheme="iptablesParameters"/>
              <inherit scheme="iptablesOtherOptions"/>
              <inherit scheme="iptablesMatchExtensions"/>
              <inherit scheme="iptablesTargetExtensions"/>

   <!-- python operators : http://docs.python.org/ref/keywords.html -->
   <keywords region="pyOperator">
    <symb name="+"/>
    <symb name="-"/>
    <symb name="*"/>
    <symb name="**"/>
    <symb name="/"/>
    <symb name="//"/>
    <symb name="%"/>
    <symb name="&lt;&lt;"/>
    <symb name=">>"/>
    <symb name="&amp;"/>
    <symb name="|"/>
    <symb name="^"/>
    <symb name="~"/>
    <symb name="&lt;"/>
    <symb name=">"/>
    <symb name="&lt;="/>
    <symb name=">="/>
    <symb name="=="/>
    <symb name="!="/>
    <symb name="&lt;>"/>
   </keywords>


   <!-- basic python comment - consider it everything after # till the end of line -->
   <block start="/#/" end="/$/" region="pyComment" scheme="def:Comment"/>

   <block start="/(u|U)?(r|R)?(&quot;{3}|&apos;{3})/" end="/\y3/"
      region00="def:PairStart" region10="def:PairEnd"
      scheme="def:Comment" region="pyComment" />
      <!-- TODO: better scheme for multiline comments/docstrings -->
      <!-- scheme="StringCommon" region="pyString" /> -->


   <!-- python delimiters : http://docs.python.org/ref/delimiters.html -->
   <keywords region="pyDelimiter">
    <symb name="+"/>
    <symb name="("/>
    <symb name=")"/>
    <symb name="["/>
    <symb name="]"/>
    <symb name="{"/>
    <symb name="}"/>
    <symb name="@"/>
    <symb name=","/>
    <symb name=":"/>
    <symb name="."/>
    <symb name="`"/>
    <symb name="="/>
    <symb name=";"/>
    <symb name="+="/>
    <symb name="-="/>
    <symb name="*="/>
    <symb name="/="/>
    <symb name="//="/>
    <symb name="%="/>
    <symb name="&amp;="/>
    <symb name="|="/>
    <symb name="^="/>
    <symb name=">>="/>
    <symb name="&lt;&lt;="/>
    <symb name="**="/>
   </keywords>



        </scheme>
    </type>

この後、ファイルをiptables.hcrとして保存し、jar内に追加する必要があります。

[EclipseFolder] /net.sf.colorer_0.9.9/colorer/hrc/common.jar

ベース:https : //ohadsc.wordpress.com/2012/05/26/adding-syntax-highlighting-for-new-languages-to-eclipse-with-the-colorer-library/


通常のEclipseの「ヘルプ/インストール/サイトの追加」ルート(Eclipseサイト:colorer.sf.net/eclipsecolorer)を介して追加してEclipseColorerをインストールしましたが、それは簡単でした。それから私は再起動し、Colorerは私が使用したいbashスクリプトを構文で強調した素晴らしさをすぐに示しました。スクリプトに色を追加したいだけの人にとって、これはブログやコメントにあるものからShellEdをインストールするよりも複雑ではないようですが、両方ではなく、これだけを試しました。
チャールズロス

1

ShellEdはEclipseに適したプラグインです。

このリンクは私がそれをインストールするのに役立ちました:http : //mattnorris.me/blog/install-eclipse-shelled-plugin/

手順:

  1. ダウンロードは殻:http://sourceforge.net/projects/shelled/files/latest/download -ファイルがnet.sourceforge.shelled-site-2.0.x.zipのようなものをという名前のzip形式のアーカイブです。

  2. 次に、ヘルプ>新しいソフトウェアのインストール...をクリックします。

  3. 右上の[追加...]をクリックします。
  4. [アーカイブ...]をクリックします
  5. 圧縮アーカイブnet.sourceforge.shelled-site-2.0.x.zipを保存した場所に移動して、それを選択します。
  6. OKをクリックします。(オプションの「名前」フィールドについては心配しないでください。Eclipseが自動的に名前を付けます。)
  7. 新しいシェルスクリプトチェックボックスを選択します。
  8. 次へをクリックします。
  9. もう一度[次へ]をクリックします。
  10. 「使用許諾契約の条項に同意します」を選択します。
  11. 完了をクリックします。
  12. Eclipseを再起動します。

0

ShellEdを試しましたが、Eclipseを再起動しても、シェルスクリプトが認識されません。kshインタープリターを追加してデフォルトにしましたが、違いはありませんでした。

最後に、開いていたkshファイルを表示しているタブを閉じて、再度開きました。それが正しく機能するようになりました。しばらく使った後もオススメできます。


0

Oxygenで動作します。

1)「ヘルプ」>「Eclipseマーケットプレイス」に移動して、「DLTK」を検索します。「Shell Script(DLTK)5.8.0」のようなものが見つかります。インストールしてEclipseを再起動します。

(または、このWebページからEclipseに「インストール」ボタンをドラッグアンドドロップ:https ://marketplace.eclipse.org/content/shell-script-dltk )

シェルスクリプト(DLTK)

2)プロジェクトエクスプローラー>アプリケーションから開く>その他...でシェル/バッチファイルを右クリックし、シェルスクリプトエディターを選択します。エディターをその拡張子のすべてのファイルに関連付けることもできます。

シェルスクリプトエディター


リポジトリは無効になりました。修正してください。
Balaji Boggaram Ramanarayan
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.