Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/junichi11/cakephp3-netbeans
CakePHP3/4 support in NetBeans
https://github.com/junichi11/cakephp3-netbeans
cakephp3 cakephp4 netbeans-plugin
Last synced: about 2 months ago
JSON representation
CakePHP3/4 support in NetBeans
- Host: GitHub
- URL: https://github.com/junichi11/cakephp3-netbeans
- Owner: junichi11
- License: apache-2.0
- Created: 2015-01-05T03:37:00.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2022-11-24T03:28:57.000Z (about 2 years ago)
- Last Synced: 2024-10-04T16:15:56.330Z (2 months ago)
- Topics: cakephp3, cakephp4, netbeans-plugin
- Language: Java
- Homepage:
- Size: 397 KB
- Stars: 46
- Watchers: 14
- Forks: 10
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-cakephp - NetBeans - This package provides support for CakePHP in NetBeans 8.1+. (Development Environment)
README
# NetBeans CakePHP3/4 Plugin
This plugin provides support for CakePHP3/4.
## Requirements
- NetBeans 12.0+
## Downloads
- https://github.com/junichi11/cakephp3-netbeans/releases
- https://plugins.netbeans.apache.org/catalogue/?id=27## How To Install
### Via NetBeans Plugin Portal Update Center
- Tools > Plugins > Available Plugins
- Click the "Check for Newest" button
- Check "CakePHP3/4 Framework"
- Click the "Install" button### Use downloaded nbms
- Download a nbm (e.g. org-netbeans-modules-php-cake3-0.0.1-dev-201408251540.nbm)
- Tools > Plugins > Downloaded > Add Plugins
- Select the nbm
- Click Install## How To Update
You can update to the new version by the same way as the install. You don't have to uninstall the old version.
## How To Enable
- Open the project properties dialog (Right-Click your project > properties)
- Frameworks > CakePHP3/4 > Check `Enabled`## Use Your Custom Directory Structure
If you just installed Cake3/4 via Composer, you don't have to do anything.
- Open the project properties
- Set relative paths from your Source Directory to Path settings#### Root
Use when your CakePHP app directory exists in your php project as a subdirectory.
e.g. set `app` to Root setting like the following case:
```
source directory
├── foo
├── bar
└── app
├── README.md
├── bin
├── composer.json
├── composer.lock
├── config
├── index.php
├── logs
├── phpunit.xml.dist
├── plugins
├── src
├── tests
├── tmp
├── vendor
└── webroot
```#### The Others
The same as App settings of config/app.php
#### Templates, plugins, locales, e.t.c.
Support them using `.cake` file.
## Features
- Code completion
- Smart Go To
- Run Actions (Run Command)
- Template files(Controller, Table, Helper, e.t.c.)
- Support for a `.cake` file
- Resolve mime-types for a ctp extension and a `.cake` file
- Show a parent directory name of a ctp file in the multi-row tabs(see Tools > Options > Appearance > Document Tabs) e.g. `home.ctp [Pages]`
- Custom nodes### Code Completion
**Component**
```php
// in your Controller e.g. SomeController or AppController
public $components = ['Foo', 'My.Bar', 'Bar' => ['className' => 'MyBar'] ];public initialize() {
$this->loadComponent('Foo');
$this->laodComponent('Bar', ['className' => 'MyBar']);
}// in your Controller
$this->[Ctrl+Space]
```**Helper**
```php
// in your Controller e.g. SomeController or AppController
public $helpers = ['Foo', 'My.Bar', 'Bar' => ['className' => 'MyBar'] ];// in your template file e.g. index.ctp
$this->[Ctrl+Space]
```**Table**
```php
// in your Controller e.g. SomeController
$this->loadModel('Users');// in your Controller
$this->[Ctrl+Space]
```Please add `@property` to your table class if you want to use like the following:
```php
// e.g. BookmarksTable
/**
* @property \App\Model\Table\TagsTable $Tags
*/
class BookmarksTable extends Table {
}$this->Bookmarks->Tags->[Ctrl+Space]
```**Method Parameters**
```php
// e.g. path/to/your/template/index.ctp
// file path completion
$this->Html->css('[Ctrl+Space]');// constants
$this->Html->docType('[Ctrl+Space]');
```**NOTE**
Please add a semicolon(;) if you want to use code completions for parameters. Tips: You can add it like the following: Ctrl+;### Smart Go To
This feature is not enabled by default. If you want to use it, please set the KeyMap to it.
(Tools > Options > Keymap > Search `CakePHP` > CakePHP3/4: Smart Go To > e.g. set Ctrl + Shift + J)Files related to the current editor are shown when you run this action.
e.g. If your current file is a Controller, template, table, entity, testcase, conponent and helper file(s) will be shown.You can change a list to specific category's one like the following.
(Ctrl is a Ctrl or Command key)- Controller(All) : Ctrl + C (Ctrl + Shift + C)
- Component : Ctrl + P (Ctrl + Shift + P)
- Table : Ctrl + M (Ctrl + Shift + M)
- Entity : Ctrl + E (Ctrl + Shift + E)
- Behavior : Ctrl + B (Ctrl + Shift + B)
- Templates : Ctrl + V (Ctrl + Shift + V)
- View Cell : Ctrl + L (Ctrl + Shift + L)
- Helper : Ctrl + H (Ctrl + Shift + H)
- Fixture : Ctrl + F (Ctrl + Shift + F)
- TestCase : Ctrl + T
- Config : Ctrl + I or Ctrl + Shift + I**NOTE** Core files are not shown (e.g. HtmlHelper, AuthComponent, e.t.c.)
### Support for a .cake file
You can use the [.cake](https://github.com/dotcake/dotcake) if you want to use the specified directories for Controller, Table, Template, e.t.c..
The file format is the following:
```json
{
"cake": ".\/vendor\/cakephp\/cakephp",
"build_path": {
"entities": [
".\/src\/Model\/Entity\/"
],
"tables": [
".\/src\/Model\/Table\/"
],
"behaviors": [
".\/src\/Model\/Behavior\/"
],
"controllers": [
".\/src\/Controller\/"
],
"components": [
".\/src\/Controller\/Component\/"
],
"templates": [
".\/src\/Template\/"
],
"views": [
".\/src\/View\/"
],
"helpers": [
".\/src\/View\/Helper\/"
],
"consoles": [
".\/src\/Console\/"
],
"shells": [
".\/src\/Shell\/"
],
"tasks": [
".\/src\/Shell\/Task\/"
],
"locales": [
".\/src\/Locale\/"
],
"vendors": [
".\/vendor\/"
],
"plugins": [
".\/plugins\/"
]
}
}
```**NOTE** It is not available in any categories.
### Custom nodes
You can add some directories(nodes) under the your project tree. Controller, Model, e.t.c. are shown by default.
If you want to hide/show them, please change the options.(Tools > Options > PHP > Frameworks and Tools > CakePHP3/4 > Custom nodes)## Actions
Right-click a project > CakePHP3/4
- Run Command
- Run server
- Refresh### Run Command
All commands will be shown as a list in the command dialog. Then you can run a command with some parameters.
### Run server
Just run `cake server`. If you want to set details, please use `Run Configuration` of project properties.
### Refresh
Please run this action after you changed the `.cake` file or you updated the version of CakePHP.
Refresh the version number and category paths.## Donation
- https://github.com/sponsors/junichi11
## Issues
If you have issues, please submit them to [GitHub Issues](https://github.com/junichi11/cakephp3-netbeans/issues) .
Please don't create PRs soon.## License
Apache License, Version 2.0