Netbeans Nette Framework Plugin

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
jarks
Člen | 94
+
0
-

Díky za tuhle práci! Právě jsem plugin vyzkoušel na ostré 6.9 a funguje.

Co nejvíc postrádám, je označování párového makra. Prostě když položím kurzor na {if}, rozsvítí se {/if}, které k tomu patří. Totéž u {foreach} a {for}. Je to podobné, jako u HTML tagů – třeba <div>. Tohle dělá Aptana Studio 1.5 a je to skutečně dost praktické, pokud máte nějaké složitější struktury.

Dál je otázka, kdy se mají nabízet možnosti při psaní maker. Očekával jsem, že když napíšu {$, nabídne se mi seznam proměnných a když nějakou odklepnu, vloží se a doplní se pravá závorka. Funguje to ale tak, že nejdřív musím potvrdit uzavření makra – doplní se pravá závorka a až potom můžu dát CTRL+space a vidím seznam proměnných.

U {widget} a {control} jsou v našeptávací nabídce názvy komponent až úplně dole, asi by naopak měly být první.

A ještě jeden divočejší návrh. Kdybych měl něco takového:

{if $person}
    <ul>
      {foreach $person as $p}
        <li><a href='{plink Homepage:detail, $p->id}'>{$p->prijmeni} {$p->jmeno}</a></li>
      {/foreach}
    </ul>
{/if}

Bylo by úžasné, kdyby uvnitř {foreach} po napsání {$ vyjel seznam proměnných včetně prvků toho pole úplně nahoře. Něco jako

$p->id
$p->prijmeni
$p->jmeno
$p->ulice
$p->obec

A ještě malá poznámka: Formátovací funkce ALT+SHIFT+F si maker nevšímá, takže kód spíš rozhází.

newPOPE
Člen | 648
+
0
-

Bylo by úžasné, kdyby uvnitř {foreach} po napsání {$ vyjel seznam proměnných včetně prvků toho pole úplně nahoře. Něco jako

Myslim ze toto je nemozne vzhladom na to ze ked mas len dibi->fetchAll() tak uz ani tam to nedokaze kedze NB nevie co tam vlastne je.

Patrik Votoček
Člen | 2221
+
0
-

u dibi->fetchAll() to pochopitelne možné není. Ale u ostatních proměnných u které netbeans umí napovídat to teoreticky možné je.

mancze
Člen | 58
+
0
-

redhead napsal(a):

Tak to máte na GitHubu https://github.com/…ework-Plugin

Možná by se hodilo to hodit do prvního příspěvku, aby to bylo snadno dohledatelné, co myslíte?

redhead
Člen | 1313
+
0
-

Možná by se hodilo to hodit do prvního příspěvku, aby to bylo snadno dohledatelné, co myslíte?

Přesunul jsem tam celý ten první post s downloadem + github a donate. Při velké změně budu updatovat ten příspěvek příspěvek.

Ola
Člen | 385
+
0
-

redhead: ten bug je fakt na dvě věci. Byl už reportovanej? Nevíš, jaká byla odezva? Vyskytuje se i v SVN verzi?

Editoval Ola (24. 6. 2010 11:45)

Honza Marek
Člen | 1664
+
0
-

Koukám, že v javascriptu makro {$promenna} neřve nic o syntax erroru, ale třeba {plink …} stále vadí.

btw dá se na vývoj přispět i bez paypalu? nechce se mi pořizovat účet jen kvůli NB pluginu

redhead
Člen | 1313
+
0
-

ten bug je fakt na dvě věci. Byl už reportovanej? Nevíš, jaká byla odezva? Vyskytuje se i v SVN verzi?

Vůbec nevím, nehledal jsem to, ale je klidně možný, že to bug není, třeba nevim jak to úplně funguje. Protože někdy to jde, někdy ne. Je to dost náhodný :( Přemejšlim, že bych napsal na fórum, jestli o tom někdo neví..

Honza Marek napsal(a):

Koukám, že v javascriptu makro {$promenna} neřve nic o syntax erroru, ale třeba {plink …} stále vadí.

Mě to jde v pohodě. Ukaž kód, který to dělá.

btw dá se na vývoj přispět i bez paypalu? nechce se mi pořizovat účet jen kvůli NB pluginu

Můžu ti poslat na mail číslo bank. účtu?

Honza Marek
Člen | 1664
+
0
-

Tohle mi nefunguje:

	<script type="text/javascript">
		//<![CDATA[

		$.texyla.setDefaults({
			texyCfg: "admin",
			baseDir: {$baseUri} + '../../../texyla',
			previewPath: {plink Texyla:preview},
			filesPath: {plink Texyla:listFiles},
			filesThumbPath: '%var%',
			filesUploadPath: {plink Texyla:upload}
		});

		//]]>
	</script>

Můžu ti poslat na mail číslo bank. účtu?

Můžeš. A když k tomu připíšeš informaci, jestli už jsi na NB pluginu zbohatnul, upravím podle toho částku :-D

redhead
Člen | 1313
+
0
-

@Honza Marek: tak jsem to celý zkopčil a nic mi to nehlásí. Žádný červený podtržení ani červený kolečko vlevo :) Možná jsem to omylem vyřešil v té mé verzi co mám na na compu. Plánuju vydat novou verzi, ale musim vyřešit pár věcí, a začínají na mně naléhat jiné projekty :(

kravčo
Člen | 721
+
0
-

Honza Marek napsal(a):

btw dá se na vývoj přispět i bez paypalu? nechce se mi pořizovat účet jen kvůli NB pluginu

Môžeš si ho zriadiť povedzme kvôli texyle či ormionu…

Honza Marek
Člen | 1664
+
0
-

Tak teoreticky bych asi mohl. Ale předtím bych si rád přečetl někde nějakej stručnej přehled, co jaký typ účtu na paypalu umožňuje a za kolik peněz. Nějak nic takového nemůžu najít, takže to buď neexistuje nebo jsem dost možná takhle k večeru blbej nebo slepej.

JakubS
Člen | 15
+
0
-

Honza Marek napsal(a):

btw dá se na vývoj přispět i bez paypalu? nechce se mi pořizovat účet jen kvůli NB pluginu

Na donate (nebo libovolnou jinou PP platbu) IMHO není třeba si registrovat účet -stačí platební karta (jednorázově zadáš číslo karty do jejich platební brány a je to). Jen se tím připravíš o možnost poslat autorovi vzkaz.

crempa
Člen | 198
+
0
-

Tak tenhle plugin je perfektni. Urcite to nenech vysumet a pracuj na tom pluginu dal. Vzhledem k poslednim blogpostu co je na Netbeans PHP blogu jsou priznive nakloneni podpore novych frameworku a mohli by tak pruzne resit otazky a opravovat chyby s tim spojene…

Jinak pokud rikas ze delas brigadne, tak tohle by mohla byt dobra moznost privydelku, jednak formou dotaci tak i nejakym „zaplat za funkci“ modelem podpory vyvoje. V Nette dela uz celkem dost lidi (viz. reference) a tvoje rozsireni nema v zadnem vyvojovem prostredi konkurenci… :-)

Drzim pesti

redhead
Člen | 1313
+
0
-

@crempa: děkuji za hezká slova :) Ono brigádně dělám, ale stále nějakou brigádu sháním a jako student (čerstvý maturant) děkuju za každou minci v kapse, ale časově to bude horší, dělám několik projektů najednou a někdy má holt přednost něco jiného.

Loric
Člen | 14
+
0
-

Nějak se mi nedaří to nainstalovat. Tady je chyba: obrázek.
NetBeans mám poslední verzi, co je na webu ke stažení… Nějaké rady? :)

Editoval Loric (29. 6. 2010 17:20)

Patrik Votoček
Člen | 2221
+
0
-

Loric napsal(a):

Nějak se mi nedaří to nainstalovat. Tady je chyba: obrázek.
NetBeans mám poslední verzi, co je na webu ke stažení… Nějaké rady? :)

Jak je tady už několikrát napsáno jsou tu 2 zkopilované verze jedna pro NetBeans 6.9Beta a jedna pro finalni 6.9… Pro nightly neni… Protože z nějakého důvodu nejde nastavit podmínka verze PHP API na verzi a musí se nastavovat na daný build.

Loric
Člen | 14
+
0
-

Aha ja sem myslel, ze sem stahl final, o zadne nightly sem nevedel :D tak tim se to vysvetluje no… :)

redhead
Člen | 1313
+
0
-

Trošku jsem se tomu opět podíval na zoubek a dal do kupy n:atributy (jejich napovídání, včetně tag- a inner- prefixů) a hlavně – všechny makra a n:attributy jedou na pozadí jako (virtuální) PHP kód, což znamená, že by se měli objevovat i funkce php, deklarované proměnné, parse chyby, atd.. Ale jak jsem psal již výše funguje to jen částečně, náhodně a jen když se tomu chce. Další lahůdkou je, že jsem (naprosto náhodně a stále nevím jak jsem to udělal) zprovoznil obarvování syntaxe v n:atributech.

Než to vydám na veřejnost, chci se ještě zeptat na <n:tagy>. Používá je někdo? Kromě zápisu <n:assign var=„val“> žádné jiné neznám. Některé další (nějak?) fungují, ale neznám kouzelné jméno atributů pro ně (for??, foreach??). Dokumentace neexistuje a ve zdrojácích jsem se dočetl o pár z nich v $knownTags. Tak kdyby mi někdo v rychlosti napsal jejich úplnej seznam použití, pokud možno. :)

Editoval redhead (1. 7. 2010 1:13)

blacksun
Člen | 177
+
0
-

redhead napsal(a):

Než to vydám na veřejnost, chci se ještě zeptat na <n:tagy>. Používá je někdo? Kromě zápisu <n:assign var=„val“> žádné jiné neznám. Některé další (nějak?) fungují, ale neznám kouzelné jméno atributů pro ně (for??, foreach??). Dokumentace neexistuje a ve zdrojácích jsem se dočetl o pár z nich v $knownTags. Tak kdyby mi někdo v rychlosti napsal jejich úplnej seznam použití, pokud možno. :)

K tomuto bych se připojil, co tady na fóru občas zahlídnu, tak použití je celkem snadné, ale nikde žádná dokumentace nebo návod, popis..

washo
Člen | 88
+
0
-

blacksun napsal(a):

redhead napsal(a):

Než to vydám na veřejnost, chci se ještě zeptat na <n:tagy>. Používá je někdo? Kromě zápisu <n:assign var=„val“> žádné jiné neznám. Některé další (nějak?) fungují, ale neznám kouzelné jméno atributů pro ně (for??, foreach??). Dokumentace neexistuje a ve zdrojácích jsem se dočetl o pár z nich v $knownTags. Tak kdyby mi někdo v rychlosti napsal jejich úplnej seznam použití, pokud možno. :)

K tomuto bych se připojil, co tady na fóru občas zahlídnu, tak použití je celkem snadné, ale nikde žádná dokumentace nebo návod, popis..

Vsechny parove makra jdou zapsat pomoci n: parametru. Z hlavy..:

<ul>
{foreach $array => $value}
	<li>{$value}</li>
{/foreach}
</ul>

=

<ul>
	<li n:foreach="$array => $value">{$value}</li>
</ul>

Editoval washo (1. 7. 2010 9:22)

phx
Člen | 651
+
0
-

Skoda ze to nici napovidani HTML tagu. A prace s tabulatory taky neni dokonala. Jinak SUPR vec.

Editoval phx (1. 7. 2010 11:13)

nAS
Člen | 277
+
0
-

redhead napsal(a):

Než to vydám na veřejnost, chci se ještě zeptat na <n:tagy>. Používá je někdo? Kromě zápisu <n:assign var=„val“> žádné jiné neznám. Některé další (nějak?) fungují, ale neznám kouzelné jméno atributů pro ně (for??, foreach??). Dokumentace neexistuje a ve zdrojácích jsem se dočetl o pár z nich v $knownTags. Tak kdyby mi někdo v rychlosti napsal jejich úplnej seznam použití, pokud možno. :)

V tom poli $knownTags jsou vypsány i s atributy.

Takže příklad:

<n:for each="$a = 1; $a < 5; $a++">{$a}</n:for>
<n:include block="#title" />

washo napsal(a):

Vsechny parove makra jdou zapsat pomoci n: parametru. Z hlavy..:

Tohle jsou n:atributy, redhead myslel n:tagy.

Edit: Juchů dvoustý příspěvek!

Editoval nAS (1. 7. 2010 11:34)

redhead
Člen | 1313
+
0
-

nAS napsal(a):

Takže příklad:

<n:for each="$a = 1; $a < 5; $a++">{$a}</n:for>
<n:include block="#title" />

Jéje, tak to je podle mě dost wtf faktor, já měl za to že ten <n:for each=""> tvoří foreach() a ne for(). Tak je to je hnus velebnosti. Podle mě by se tahle část měla v nette ještě předělat,
např:

<n:assign myVar="value"> 			// ten je v pořádku
<n:foreach items="$item">			// foreach($items as $item)
nebo
<n:foreach array="$items" as="item">		// foreach($items as $item)
<n:for var="$i=0" cond="$i < 10" then="$i++">	// takový těžkopádný, ale s napovídáním by to bylo jednoduchý
<n:widget name="editForm">			// to mi docela chybí
<n:while cond="$item->hasMore()">		// proč ne, když je if, for, ..
<n:include name="menu.phtml">			// ten block="" je taky dost WTF, nemusíme includovat jen bloky přece
<n:extends name="some.phtml">			// když už je include
<n:status code="404">				// proč ne
<n:render var="$date" helper="date">		// tohle už je hodně velká šílenost (zapomeňte na to)

Ale to je jen můj názor..

Jdu aspoň udělat ty $knownTags.

Editoval redhead (1. 7. 2010 12:54)

iguana007
Člen | 970
+
0
-

Rád bych nahlásil BUG … nevšimnul jsem si, že by jej tady někdo zmiňoval, pokud ano, sorry za repost.

Dost často využívám funkce „Source->Format“ a dnes jsem si všimnul, že pokud mám zapnutý Nette plugin, tak se mi kód neformátuje správně … v podstatě to neustále odsazuje doprava místo toho aby to párové tagy umístilo na stejné vertikální pozice a vzniknul mi tak hezky naformátovaný text.

Dělá mi to pouze u .phtml šablon. PHP soubory se formátují správně.

Pozorujete taky tento bug nebo to dělá jen u mě? :)

redhead
Člen | 1313
+
0
-

Tak to mně to nedělá. Jenom vím, že to nerespektuje párová makra, takže si jakoby myslí, že tam nejsou (to ještě budu řešit), ale jinak čisté html to formátuje správně.

Bernard Williams
Člen | 207
+
0
-

Nazdárek,

rád bych si tento doplněk taky nainstaloval, ale nějak se nedaří.. Oficiální mi hlásí chybu modulu PHP APIs a když použiji upravený doplněk od Pandy, tak se mi instalace sice podaří, ale při vytváření projektu tam nemám Nette – je tam pouze Zend a Symphony.

Jak řešíte ten problém s API? Nikde jsem nenašel konečné řešení a modul PHP APIs 201006101454 nemůžu nikde najít. Nemá k němu někdo instalačku?

Stalo se ještě někomu, že doplněk sice nainstaloval, ale Nette se mu vůbec nezobrazilo?

Díky
Bernard

Patrik Votoček
Člen | 2221
+
0
-

Ono by to chtělo si přečíst celé vlákno…
Padova úprava to celé znefunkční. A tento plugin funguje pouze s finální 6.9.

Btw chystá se nějaká aktualizace?

redhead
Člen | 1313
+
0
-

ad aktualizace: no, zatím na to nemám moc čas, poslední úprava byla docela radikalní, ale za to ne moc funkční/přívětivé (viz předchozí příspěvky o embedování virtuálního kódu php). A od Ondřeje Brejli je tam formulářový dialog na generování metod pro vytvoření komponenty (u AppForm přidá i submit metodu)

na1k
Člen | 288
+
0
-

Plugin je parádní, obzvlášť poté, co jsem aktualizoval z githubu a už v šablonách stále nevnucuje Latte tagy, to bylo opravdu otravné :-p

Dovolím si menší bugreport, možná o něm víš, ale pro jistotu.

Takováto konstrukce

{? $comp = $control['zapujcka']['prislusenstvi']->getComponents()}

mi vyhazuje chybu Syntax error: Expected: variable, ${
Není to nic kritického, jen to označí šablonu jako „špatnou“ (obsahuje chybu) a já se u projektu pak vždycky lekám, co že je tam špatně :-D

Taky mi občas vpravo dole v liště vyskočí výjimka, tuším ohledně parsování, přestože soubor (php) je ok. Až se zase objeví, můžu poslat.

A naprosto super je Ondřejův formulářový dialog! :)

Bernard Williams
Člen | 207
+
0
-

vrtak-cz napsal(a):

Ono by to chtělo si přečíst celé vlákno…
Padova úprava to celé znefunkční. A tento plugin funguje pouze s finální 6.9.

Ono vlákno jsem si taky přečetl, ale řešení nenalezl. K úpravě od Pandy jsem se uchýlil poté, co mi nešel ten originální doplněk.

A NB jsem stahoval včera přímo ze stránek http://netbeans.org.. nebo je někde ještě finálnější NB 6.9.?

Ola
Člen | 385
+
0
-

A máš i odpovídající verzi pluginu? tedy http://www.utf-8.cz/…rk_final.zip

Bernard Williams
Člen | 207
+
0
-

Ola napsal(a):

A máš i odpovídající verzi pluginu? tedy http://www.utf-8.cz/…rk_final.zip

Ano, jak jsem pročítal vlákno, tak jsem zkoušel všechny dostupné verze. Bohužel vše se stejným výsledkem:

„Nějaký zásuvný modul požaduje jiný PHP APIs aby mohl být nainstalovaný.Zásuvný modul PHP APIs je požadovaný v provedení verze 201006101454.“.

Nemá někdo po ruce instalačku NB 6.9. se kterou ten doplněk zaručeně funguje?

Michalek
Člen | 210
+
0
-

Shodou okolností jsem přešel na netbeans asi tři dny zpátky, použil jsem netbeans-6.9-ml-php-windows.exe (MD5: 412e695ef734986ccf1961e5d54cd7a0) a plugin (26cde808ae27bf17552ca4ccbd85e89c *netbeans-netteframework_final.zip
) jsem zprovoznil přesně podle návodu, žádná chyba, nic.

Patrik Votoček
Člen | 2221
+
0
-

@Bernard Williams a nestáhnul jsi náhodou České Netbeans?

nAS
Člen | 277
+
0
-

na1k napsal(a):

Plugin je parádní, obzvlášť poté, co jsem aktualizoval z githubu …

Mohl byste sem někdo dát zbuilděnou nejaktuálnější verzi pro ty co nemají překladač javy? Díky moc.

Bernard Williams
Člen | 207
+
0
-

@Michalek Nemáš někde instalačku? Jedné se o CZ nebo EN verzi?

@vrtak-cz Ano, mám.

Michalek
Člen | 210
+
0
-

EN verze. http://download.netbeans.org/…-windows.exe

Editoval Michalek (20. 7. 2010 16:50)

Patrik Votoček
Člen | 2221
+
0
-

Bernard Williams napsal(a):

@vrtak-cz Ano, mám.

Tak to bude tím… Tady ve vláknu je jasně zmíněno že to funguje jenom s EN verzí.

Ondřej Brejla
Člen | 746
+
0
-

Michalek napsal(a):

EN verze. http://download.netbeans.org/…-windows.exe

Máš jen PHP bundle…zkus full. Mám dojem, že už to bylo taky řečeno…

Michalek
Člen | 210
+
0
-

Ondřej Brejla napsal(a):

Máš jen PHP bundle…zkus full. Mám dojem, že už to bylo taky řečeno…

Ale mě to funguje v pořádku, jen jsem poslal odkaz s čím mi to funguje :)

Ondřej Brejla
Člen | 746
+
0
-

Tak pak je vše v nejlepším pořádku :-) Nicméně některé z verzí opravdu fungují jen ve full bundle.

na1k
Člen | 288
+
0
-

Tak jsem si dovolil buildnout a umístit zde . Měla by to být aktuální verze, stažená včera nebo předevčírem.

nAS
Člen | 277
+
0
-

Děkuji pěkně!

redhead
Člen | 1313
+
0
-

Chtěl jsem to buildnout až to bude nějak více kompletní. Nynější „verze“ (source na GitHubu) funguje, ale něco asi ne úplně nejlíp.

Takováto konstrukce

{? $comp = $control[‚zapujcka‘][‚prislusenstvi‘]->getComponents()}

mi vyhazuje chybu Syntax error: Expected: variable, ${

Podívám se na to..

Pokud naleznete bug, reportujte to na GitHub, thx.

nAS
Člen | 277
+
0
-

Minimálně já bych ocenil, pokud by byla buildována každá verze (a klidně označena jako beta) a bylo by na každém, co chce používat.

RadH
Člen | 23
+
0
-

vrtak-cz napsal(a):

Tak to bude tím… Tady ve vláknu je jasně zmíněno že to funguje jenom s EN verzí.

Používám na linuxu českou verzi NetBeans 6.9 PHP for Linux/Česky (cs), do ní se mi podařilo nainstalovat tento upravený plugin.
Bohužel nevím ze kterého buildu je to upraveno.

Patrik Votoček
Člen | 2221
+
0
-

To že se vám upravený plugin podařilo nainstalovat neznamená že to funguje

nAS napsal(a):

Minimálně já bych ocenil, pokud by byla buildována každá verze (a klidně označena jako beta) a bylo by na každém, co chce používat.

Snažil jsem se to udělat tak aby to bylo závislé na verzi PHP API a né na buildu… Ale s takovým nastavením se mě plugin zbuildovat nepovedlo.

Lidi sakra čtěte

nAS
Člen | 277
+
0
-

Já jsem myslel buildovat každou verzi Nettebeans pluginu z GitHubu (všechny proti Netbeans 6.9 final EN), ne buildovat pro každou beta verzi Netbeansů. Protože takhle je fajn, že na GitHubu vychází nové verze, ale pro ty co nemají možnost si to sami kompilovat je to k ničemu.

na1k
Člen | 288
+
0
-

Buildnutí pluginu je naprosto triviální záležitost :)

  1. V NetBeans v Tools/Plugins/Available Plugins nainstalujte plugin NetBeans Plugin Development (je v kategorii Java SE).
  2. Stáhněte z Githubu aktuální verzi – dostanete tři adresáře (build, nbproject, src) a soubory build.xmlmanifest.mf
  3. V NetBeans z nabídky zvolte Open Project a vyberte složku, do které jste rozbalili/checkoutli zdrojáky. Pokud je všechno správně, bude mít tato složka ikonu „puzzle“.
  4. Po otevření se projekt přidal do projektů a teď už stačí jednoduše kliknout pravým a Install/Reload in Development IDE pro instalaci, případně Create NBM pro vygenerování instalačního balíčku, který můžete dál distribuovat.