All Projects → casteng → I Pascal

casteng / I Pascal

A free Object Pascal language plugin for IntelliJ IDEA

Programming Languages

java
68154 projects - #9 most used programming language
pascal
1382 projects
delphi
115 projects

Projects that are alternatives of or similar to I Pascal

Nord Jetbrains
An arctic, north-bluish clean and elegant JetBrains IDE UI and editor color theme.
Stars: ✭ 293 (+244.71%)
Mutual labels:  ide, intellij, syntax-highlighting
Proposal Binary Ast
Binary AST proposal for ECMAScript
Stars: ✭ 831 (+877.65%)
Mutual labels:  ast, parser
Php Parser
PHP parser written in Go
Stars: ✭ 787 (+825.88%)
Mutual labels:  ast, parser
Spoon
Spoon is a metaprogramming library to analyze and transform Java source code (up to Java 15). 🥄 is made with ❤️, 🍻 and ✨. It parses source files to build a well-designed AST with powerful analysis and transformation API.
Stars: ✭ 1,078 (+1168.24%)
Mutual labels:  ast, parser
Tolerant Php Parser
An early-stage PHP parser designed for IDE usage scenarios.
Stars: ✭ 717 (+743.53%)
Mutual labels:  ast, parser
Esprima
ECMAScript parsing infrastructure for multipurpose analysis
Stars: ✭ 6,391 (+7418.82%)
Mutual labels:  ast, parser
Gradle Dependencies Plugins Helper Plugin
This is an IntelliJ IDEA plugin for searching dependencies/plugins from JCentral/GradlePlugins inside Gradle projects.
Stars: ✭ 31 (-63.53%)
Mutual labels:  intellij, completion
Ngx Markdown
Angular markdown component/directive/pipe/service to parse static, dynamic or remote content to HTML with syntax highlight
Stars: ✭ 687 (+708.24%)
Mutual labels:  parser, syntax-highlighting
Astexplorer.app
https://astexplorer.net with ES Modules support and Hot Reloading
Stars: ✭ 65 (-23.53%)
Mutual labels:  ast, parser
Charly Vm
Fibers, Closures, C-Module System | NaN-boxing, bytecode-VM written in C++
Stars: ✭ 66 (-22.35%)
Mutual labels:  ast, parser
Laravel Whoops Editor
Laravel Whoops Editor helps to open your code editor from exception stack trace.
Stars: ✭ 83 (-2.35%)
Mutual labels:  ide, intellij
Postcss
Transforming styles with JS plugins
Stars: ✭ 25,612 (+30031.76%)
Mutual labels:  ast, parser
Pdbpp
pdb++, a drop-in replacement for pdb (the Python debugger)
Stars: ✭ 693 (+715.29%)
Mutual labels:  syntax-highlighting, completion
Acejump
🅰️ single character search, select, and jump
Stars: ✭ 786 (+824.71%)
Mutual labels:  ide, intellij
Meriyah
A 100% compliant, self-hosted javascript parser - https://meriyah.github.io/meriyah
Stars: ✭ 690 (+711.76%)
Mutual labels:  ast, parser
Metric Parser
📜 AST-based advanced mathematical parser written by Typescript.
Stars: ✭ 26 (-69.41%)
Mutual labels:  ast, parser
Method log
Trace the history of an individual method in a git repository (experimental)
Stars: ✭ 73 (-14.12%)
Mutual labels:  ast, parser
Remarkable
Markdown parser, done right. Commonmark support, extensions, syntax plugins, high speed - all in one. Gulp and metalsmith plugins available. Used by Facebook, Docusaurus and many others! Use https://github.com/breakdance/breakdance for HTML-to-markdown conversion. Use https://github.com/jonschlinkert/markdown-toc to generate a table of contents.
Stars: ✭ 5,252 (+6078.82%)
Mutual labels:  parser, syntax-highlighting
Intellij Erlang
Erlang IDE
Stars: ✭ 675 (+694.12%)
Mutual labels:  ide, intellij
Csstree
A tool set for CSS including fast detailed parser, walker, generator and lexer based on W3C specs and browser implementations
Stars: ✭ 1,121 (+1218.82%)
Mutual labels:  ast, parser

Intellij IDEA Object Pascal plugin

Description

Project homepage: http://www.siberika.com/ipascal.htm

A free Object Pascal language plugin for excellent IntelliJ IDEA

Supports integration with Delphi compiler (dcc32) and Free Pascal compilers.

Compatible with IDEA Community Edition as well as Ultimate Edition from version 13.xx and above.

Pascal-specific features currently implemented

  • code insight features
    • identifier declaration, references and usages search and highlight
    • context-aware completion
    • statements completion
    • compiler defines and directives completion
    • used units usage check with quick fix
  • code analysis
    • undeclared identifiers highlighting with quick fix
    • syntax errors highlighting
    • missing method declaration/implementation highlight with quick fix
    • missing routine implementation highlight with quick fix
    • probably bad code warnings with quick fix
    • unused identifiers highlighting
    • error insight via compiler
    • inherited call in destructor
    • function result assignment check
  • refactoring
    • rename identifier
    • introduce variable
    • override inherited methods
  • code navigation
    • to super methods/classes
    • to implementations/descendants
    • between unit routine interface definition and implementation
    • between class method definition and implementation
  • run and debug right in the IDE
    • GDB and LLDB debug backends
  • compiled unit interface decompilation
  • on-the-fly code formatting
  • Lazarus and Delphi project files import
  • routine parameters hint
  • braces matcher
  • code commenter
  • Free Pascal compiler integration
  • Delphi compiler integration
  • full Object Pascal parser
  • Object Pascal syntax highlighting
  • conditional compilation support
  • folding support

As well as other features provided by IDEA

  • full-text find/replace with regular expressions
  • version control systems integration (SVN, Git, Mercurial, ...)
  • other languages support, such as XML and SQL
  • spell checking
  • TODO support

to name a few.

Planned in future releases

  • more code analysis
  • more code inspections
  • more statements completion
  • more refactorings
  • extended includes support
  • full error insight with quick fixes
  • test frameworks support

Developer environment configuration

Instructions https://www.jetbrains.com/help/idea/2016.3/plugin-development-guidelines.html

Lexer is generated using IDEA JFlex modification.

Parser classes are generated with Grammar Kit plugin.

To generate _PascalLexer class open pascal.flex, right click and choose "Run JFlex generator".

To generate parser classes open pascal.bnf, right click and choose "Generate parser code".

There are JUnit tests. Please ensure the tests passing before creating pull requests.

Other information

Information on how to install and use the plugin is available at I-Pascal homepage.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].