Giter VIP home page Giter VIP logo

edep's People

Contributors

jorissteyn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

edep's Issues

Add missing dependency to cl-generic

A remark from @periklis in emacs-php/php-mode#235:

  1. Your semantic-php stuff has a missing dependency to the package cl-generic. Without this emacs produces a (void function cl-defmethod) error.

I took care of aliassing cl-defmethod to the old defmethod on 24.4, but apparently did something wrong there.

Make repository build on travis-ci.org

Having it on travis would have prevented #1. Going to take the php-mode setup as basis but also thinking about small improvements:

  • use emacs version manager
  • for fun and profit: setup wallboard on github page @aterlamia :)

Make USEDECL emit include tags?

I have been using EDEP for the past week with the Semantic version built in Emacs 24.5 and more recently with CEDET 2.0 because of its greater parser debugging capabilities.

Your grammar has only had a few hiccups in a couple of files that used var instead of public, besides that it has been churning code all day, every day, like nothing.

Anyway, the first thing that caught my eye about EDEP is the lack of include tags :)

As I was playing about with SemanticDB, I've immediately noticed that I could get EDEP to emit includes with the simple change of USEDECL to INCLUDE-TAG

use_declaration
  : namespace_name                              (INCLUDE-TAG $1 nil)
  | namespace_name T_AS T_STRING                (INCLUDE-TAG $1 nil :alias $3)
  | T_NS_SEPARATOR namespace_name               (INCLUDE-TAG $2 nil)
  | T_NS_SEPARATOR namespace_name T_AS T_STRING (INCLUDE-TAG $2 nil :alias $4)
  ;

You clearly know what you are doing, so I figure you know already about the macro INCLUDE-TAG.

I would like to know what's your rationale for not using the built-in macro for it cannot be as simple a fix like I suggest above.

As far as I understand PHPTags is there to reproduce some of the SemanticDB functionality without the need to give SemanticDB knowledge about the project files through EDE. Perhaps this is why you opted for a custom macro?

Real good work @jorissteyn. I'm really enjoying using EDEP thank you very much for it.

P.S.: this is very much related to php-mode issue #235, I will be replying to that thread next weekend.

Roadmap?

Hi @jorissteyn,

First, thanks for this cool project! As an Emacs user who does mainly PHP work, it's great to see this. I had a few questions, the main one is "do you have a roadmap for the project", but here are some specific questions:

  1. Do you think the semantic-ia-fast-jump functionality could be improved, or are there inherent limitations with the tagging method in phptags? Specifically, I'm looking at this part of the README Note that this implementation is very basic and only works for type names (classes, interfaces, traits) and global functions. Jumping to the definition of a method name is also possible with the limitation that the variable should be a typed function parameter and the method should be directly defined on the type, not inherited.
  2. Are there any plans to provide auto-complete capabilities based on the tags generated by phptags?
  3. Is it possible to grab the docblocks from functions/methods so that semantic-ia-show-doc can use these? Current behavior seems pretty erratic - most of the time nothing is shown, sometimes the very last line in a docblock is shown.

More broadly, could you outline if EDEP will (eventually) do more than navigation for projects?

Thanks for your work on this! My lisp skills are pretty minimal but I'm happy to test branches, provide feedback, write docs, etc.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.