Esistono bash
plug-in decenti per Eclipse? Il mio unico requisito è l'evidenziazione della sintassi. Ho cercato su Google, ma non ho visto nulla di simile al " bash
plug-in".
Esistono bash
plug-in decenti per Eclipse? Il mio unico requisito è l'evidenziazione della sintassi. Ho cercato su Google, ma non ho visto nulla di simile al " bash
plug-in".
Risposte:
ShellEd sembra promettente, evidenzia la sintassi e ha recensioni positive, anche se non l'ho provato da solo. È stato approvato per l'inclusione distro da Redhat. Ci sono un po 'più di informazioni sulla pagina del plugin ShellEd sul sito Eclipse e istruzioni di installazione sul loro wiki.
Nota che se non stai utilizzando una versione aggiornata di Eclipse (al momento della stesura di questo articolo, Juno) dovrai utilizzare una versione precedente, ad esempio 2.0.1 è compatibile con Indigo.
http://download.eclipse.org/releases/neon/
) Quindi cerca Programming languages
e Dynamic Languages Toolkit - ShellEd
.
EDIT (03/08/2013): utilizzare http://sourceforge.net/projects/shelled/files/shelled/update/ per l'ultima versione
EDIT (25/02/2013): non è necessario installare lo strumento Linux per shell 2.0.2 su Eclipse 4.2.1. Inoltre, non è necessario scaricare il file zip. Ecco il sito di aggiornamento di Shelled 2.0.2: http://sourceforge.net/projects/shelled/files/shelled/ShellEd%202.0.2/update/
VECCHIO POST:
Mi piace anche Shelled. Se lo installi ora, devi scaricare il file zip e puntarlo nella procedura guidata di installazione del nuovo software in Eclipse. Dovrai anche installare il plugin man da
http://download.eclipse.org/technology/linuxtools/update
Debugger per Bash versione 3 (Bourne di nuovo shell).
Plugin per Eclipse. Funzionerà solo con l'editor di script di shell ShellEd. basheclipse
Segui le istruzioni ufficiali da InstallGuide di ShellEd
L' editor gratuito di EclipseColorer può eseguire l'evidenziazione della sintassi per gli script bash.
Tuttavia, non utilizza la "Vista struttura" di Eclipse, ovvero non lo riempie di un elenco di definizioni di funzioni. A volte l'evidenziazione della sintassi si interrompe nel mezzo dello script. Quindi riaprire lo script aiuta.
sgusciate
Le soluzioni seguenti su come installare ShellEd non funzionano per me. Un sacco di errore sulle dipendenze. Ho trovato una soluzione che funziona per me.
Sistema:
Linux Lubuntu 12.04
IDE:
Eclipse Kepler
In Eclipse, vai su Aiuto> Installa nuovo software
Fai clic su Aggiungi ...
Aggiungi il seguente percorso, http://download.eclipse.org/releases/kepler , e chiamalo "Eclipse Kepler".
Clicca OK.
Seleziona il sito Eclipse Kepler appena creato.
Espandi la sezione Web, XML, Java EE e OSGi Enterprise Development nella parte inferiore. Seleziona Schede server WST.
Fai clic su Avanti e installa come al solito.
Riavvia Eclipse
Quindi aggiungere il repository ShellEd allo stesso modo come elencato sopra: http://sourceforge.net/projects/shelled/files/shelled/update/
E installalo.
Riavvia Eclipse.
Ha anche lavorato in Eclipse Indigo come detto qui: http://docs.wraithmonster.com/install-shelled
Godere :)
Ora esiste un plugin di script bash dedicato chiamato "Bash editor". È disponibile sul mercato eclipse:
Puoi trovarlo su https://marketplace.eclipse.org/content/bash-editor o dal client del marketplace quando cerchi "bash".
Il plugin fornisce anche un debugger. Nella Bash Editor
playlist YouTube ufficiale puoi trovare alcuni tutorial sull'uso, ecc.
PS: sono l'autore del plugin menzionato.
Qui riprodurrò un buon tutorial, perché ho perso questo articolo e mi ci vuole del tempo per ritrovarlo!
Aggiunta dell'evidenziazione della sintassi per le nuove lingue a Eclipse con la libreria Colorer
Supponi di avere un file HRC contenente la sintassi e la struttura lessicale di alcuni linguaggi di programmazione che Eclipse non supporta (ad esempio D / Iptables o qualsiasi altro linguaggio di script).
Utilizzando il plug-in EclipseColorer, è possibile aggiungere facilmente supporto per esso.
Vai su Aiuto -> Installa nuovo software e fai clic su Aggiungi. Nel campo Nome scrivi Colorer e nel campo Posizione scrivi http://colorer.sf.net/eclipsecolorer/
Seleziona la voce che hai appena aggiunto nella casella combinata work with: attendi che l'elenco dei componenti si compili e fai clic su Select All
Fai clic su Avanti e segui le istruzioni
Una volta installato il plug-in, chiudere Eclipse.
Copia il tuo file HRC in [EclipseFolder] \ plugins \ net.sf.colorer_0.9.9 \ colorer \ hrc \ auto \ types
[EclipseFolder] = /home/myusername/.eclipse
Usa il tuo editor di testo preferito per aprire
[EclipseFolder] \ plugins \ net.sf.colorer_0.9.9 \ colorer \ HRC \ auto \ empty.hrc
Aggiungi l'elemento prototipo appropriato. Ad esempio, se il tuo file HRC è d.hrc, empty.hrc avrà questo aspetto:
<?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>
Salvare le modifiche e chiudere l'editor di testo
Apri Eclipse e vai su Finestra -> Preferenze -> Generale -> Editor -> Associazioni di file
Nella sezione tipi di file, fai clic su Aggiungi ... e compila il tipo di file appropriato (ad esempio .d)
Fare clic su OK e fare clic sulla voce appena aggiunta nell'elenco
Nella sezione degli editor associati, fai clic su Aggiungi .., seleziona Colorer Editor e premi OK
ok, la parte difficile è che devi conoscere la sintassi HCR.
Puoi guardare dentro
[EclipseFolder] /net.sf.colorer_0.9.9/colorer/hrc/common.jar
per imparare come farlo ed esplorare molti altri file hcr. In questo momento non ho trovato alcuna documentazione.
Il mio regalo è un momento saliente della sintassi di iptables di base e incompleto. Se migliora, per favore condividi con me.
<?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="<<"/>
<symb name=">>"/>
<symb name="&"/>
<symb name="|"/>
<symb name="^"/>
<symb name="~"/>
<symb name="<"/>
<symb name=">"/>
<symb name="<="/>
<symb name=">="/>
<symb name="=="/>
<symb name="!="/>
<symb name="<>"/>
</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)?("{3}|'{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="&="/>
<symb name="|="/>
<symb name="^="/>
<symb name=">>="/>
<symb name="<<="/>
<symb name="**="/>
</keywords>
</scheme>
</type>
Dopo questo è necessario salvare il file come iptables.hcr e aggiungere all'interno del vaso:
[EclipseFolder] /net.sf.colorer_0.9.9/colorer/hrc/common.jar
ShellEd è un buon plugin per Eclipse.
Questo link mi ha aiutato a installarlo: http://mattnorris.me/blog/install-eclipse-shelled-plugin/
passi:
Scarica ShellEd: http://sourceforge.net/projects/shelled/files/latest/download - Il file è un archivio zippato chiamato qualcosa come net.sourceforge.shelled-site-2.0.x.zip.
Quindi fai clic su Guida> Installa nuovo software ...
Ho provato ShellEd, ma non ha riconosciuto nessuno dei miei script di shell, anche quando ho riavviato l'eclissi. Ho aggiunto l'interprete ksh e l'ho reso predefinito, ma non ha fatto differenza.
Alla fine ho chiuso la scheda che era aperta e visualizzava un file ksh, quindi l'ho riaperta. Ciò ha fatto funzionare correttamente. Dopo averlo usato per un po ', posso anche consigliarlo.
Funziona per me in Oxygen.
1) Vai su Aiuto> Eclipse Marketplace ... e cerca "DLTK". Troverai qualcosa come "Shell Script (DLTK) 5.8.0". Installalo e riavvia Eclipse.
(Oppure trascina il pulsante "Installa" da questa pagina Web su Eclipse: https://marketplace.eclipse.org/content/shell-script-dltk )
2) Fare clic con il tasto destro del mouse sul file shell / batch in Esplora progetti> Apri con> Altro ... e selezionare Shell Script Editor. Puoi anche associare l'editor a tutti i file di tale estensione.