Автодополнение функций CodeIgniter в NetBeans

    На волне интереса к NetBeans расскажу небольшой хинт. Я работаю в основном с CodeIgniter, и вот чего мне сильно не хватает в IDE это быстрого автодополнения для встроенных функций (библиотек, хелперов) — вроде $this→form_validation→…

    Сейчас я расскажу, как это реализовать:


    На самом деле все предельно просто, надо положить в проект файл с примерно таким содержимым:

    1. <?php
    2. /**
    3. * @property CI_Loader           $load
    4. * @property CI_Form_validation  $form_validation
    5. * @property CI_Input            $input
    6. * @property CI_Email            $email
    7. * @property CI_DB_active_record $db
    8. * @property CI_DB_forge         $dbforge
    9. * @property CI_Table            $table
    10. * @property CI_Session          $session
    11. * @property CI_FTP              $ftp
    12. * ... Добавляем все нужные переменные
    13. */
    14. Class Controller {
    15.    
    16. }


    Я его положил в папку с картинками, назвав что-то вроде temp.php. После чего обновив проект, уже нормально и с комфортом работал:
    netbeans codeigniter
    В 6.5 автодополнение подхватилось сразу, в 6.7M2 нет, последобавления в проект PHP Include Path папки с проектом тоже заработало как надо.
    Насколько я знаю, аналогично можно привернуть автодополнение для Symfony.

    UPD: Господа, я же самое главное забыл сказать! Точно так же можно прокидывать в автокомплит свои модели:
    ...
    * @property Sitemenu $sitemenu
    ...



    ______________________
    Текст подготовлен в Хабра Редакторе от © SoftCoder.ru
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 39

      0
      А файликом не поделитесь ?+)
        +2
          0
          Как-то так собрал из двух проектов, там не все библиотеки. И не все порверены, проверял, только те с которыми работал.
            0
            На pastebin проэкспайрилось, выложите плиз еще куда-нибудь.
          +6
          Думаю, этот блог читают и пользователи фреймворка Kohana.
          Вот мой файлик для работы Kohana и eclipse pastebin.com/f776f784c надеюсь кому-то пригодиться. Можно (И нужно его самостоятельно допиливать)

          PS Оригинал взял где-то на просторах интернета…
            +2
            Это решение, кстати, и с NetBeans работает на ура =)
              0
              Получается, если авторы этих вреймворков включат такой файл в релиз, то автозаполнение в IDE будет работать «из коробки»? Почему бы тогда им так и не сделать?
                0
                по-моему, такие файлы сильно замедляют функцию автозаполнения. сравните автозаполнение от PhpEd и представленное автозаполнение для NetBeans. Даже не смотря на всю тормознутость NetBeans, после добавления такого файла, NetBeans просто вешается. (хотя, может и у меня комп тормозит, но без этого файла всё работает быстрее)
                  0
                  PhpEd не могу использовать в виду платформы. Но вот NetBeans с автозапонением работает не медленней, чем до вклеивания файла. Работает очень шустро (при не маленьких проектах).
                  Тормозов не отмечено — AMD Turion x2 2,2ГГц, 2 gb памяти.
                    0
                    У меня на Celeron 1800 с гигом памяти тоже никакой разницы.
                    0
                    Ну, как раз в PhpEd и не хватает такой фишки для работы с CI или Kohana. Или я ошибаюсь и есть решения?
                      +1
                      Хотя нет, можно тоже самое сделать — добавить файл в проект со списком библиотек и хелперов и всё будет работать.

                      И, действительно, PhpEd намного быстрее NetBeans даже на моём совсем не слабом компьютере…
                        0
                        Это простая поддержка PHPDoc и ничего более
              +2
              Неделю назад начал пользовать CI.
              Вчера перешел на NetBeans.

              Это я к чему: Перестаньте читать мои мысли! Далеко не первый раз уже такое… :)
                +2
                А! Кстати, тут недавно выкладывали девелоперский тулбар для Kohana… Так я его на CI перенес (с незначительной потерей функционала — если оставлять CI девственно чистым)
                Если кому надо, могу подчистить код, и оформить, как модуль…
                  0
                  оформите, если не сложно. очень интересно.
                    0
                    был бы рад использовать
                      0
                      Вы имеете в виду вот этот пост? Выглядит просто замечательно, обязательно делитесь! ))
                        0
                        Давай-те!!! А то многие уже тоже хотят подобное сделать, да ленятся =)
                          0
                          Погодите немного — я еще на работе, а шняжка — дома :)
                        0
                        Спасибо, как раз этого мне очень не хватало!
                        • НЛО прилетело и опубликовало эту надпись здесь
                            0
                            Чутка обновил пост, совсем про свои модели забыл.
                              0
                              а как бы сделать автокомплит к классам-одиночкам (getInstance) в PDT 2?
                              попробовал в файле класса сделать проперти, перебилдил проект и нифига =(
                                0
                                могу ошибаться, но по моему нужно к методу getInstance сделать комментарий в формате phpDOC и указать имя класса в @return
                                  0
                                  /**
                                  * @return Classname instance of class
                                  */
                                  function getInstance() {…
                                  0
                                  У вас там на скриншоте опечатка в комментариях к классу — aite вместо site =)
                                    0
                                    А в теге написано «netbens» вместо «netbeans». Прям опечатка на очепячтке. Но все-равно спасибо, очень познавательно.

                                    З.Ы. Тег, все-таки, поправьте, а то искать сложно.
                                      0
                                      Спасибо, поправил. :)
                                      Дурная привычка не смотреть в монитор когда печатаешь, а spell checker netbeans в любой конфигурации помечает ошибочным.
                                    0
                                    Действительно мысли читаете — уже несколько недель пользуюсь автокомплитом для CI в NetBeans и именно сегодня подумал поделиться с общественностью.
                                    Надо, значит, делать, а не думать :)
                                      0
                                      Жаль в eclipse не работает. В netbeans все в порядке, а eclipse не хочет дополнять :(
                                        0
                                        Если в проекте каркласс типового класса модуля содержит переменную не в нижнем регистре то подгрузка пропертей не работает :(

                                        * @property ObjectClass $oObj

                                        $this->oObj-> == FAIL
                                          0
                                          а автодополнение стандартных функций php у Вас в NetBeans есть?
                                            0
                                            нашел. проект надо создавать.
                                            0
                                            Спасибо! в NetBeans 6.7 помогло :)
                                              0
                                              ну и где, собственно, сам файл???
                                                +1
                                                Прошелся по документации, сделал поддержку автодополнения (единственный косяк — для View так и не удалось запустить)

                                                pastebin.com/f58cef0d2
                                                  0
                                                  В Codelobster автокомплит для CodeIgniter прикольней и без всяких заморочек.
                                                    0
                                                    В 7.0.1 работает. Для View у меня на $this-> NetBeans ругаться начинает. Если бы можно было заставить его понять, что $this = CI_Load — можно было бы сделать и для view автозаполнение.
                                                    Если активно пользуетесь get_instance(), то в temp.php Controller стоит переименовать в CI_Base. Модель, к сожалению, от CI_Base не наследует, поэтому все равно придется держать 2 класса.

                                                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                    Самое читаемое