Coder Social home page Coder Social logo

unite-outline's Introduction

unite-outline

Note: I am Shougo(unite plugin author). This plugin created by h1mesuke originally. He is great VimL programmer. But he has not maintained this plugin in several years. And I cannot contact with him. So I have maintained it instead. To add features to this plugin is hard. I cannot extend it. Pull requests are well come.

Introduction

unite-outline is a unite.vim's source which provides your Vim's buffer with the outline view. It parses the current buffer's content and extracts headings from the buffer. And then it shows the list of the headings using unite.vim's interface. When you select a heading from the list, you can jump to the corresponding location in the buffer.

The methods for extracting headings can be implemented for each individual filetypes. You can customize them as you like with Vim script and can also create new ones for unsupported filetypes.

Install

Install the distributed files into your Vim script directory which is usually $HOME/.vim, or $HOME/vimfiles on Windows.

You can show the heading list of the current buffer with ":Unite outline" command if you succeeded the installation (and unite-outline supports the filetype of the buffer).

C, C++, Java, etc

Usage

To show the heading list of the current buffer, execute |:Unite| command with "outline" as a source parameter.

:Unite outline

unite-outline parses the current buffer's content and extracts headings from the buffer. And then it shows the list of the headings with unite.vim's interface. When you select a heading from the list, you can jump to the corresponding location of the buffer.

See :help unite-outline for more details.

Extending

The easiest way to extend this plugin is if your language is supported by ctags. If this is the case, add an entry to the lang_info dictionary in:

./autoload/unite/sources/outline/modules/ctags.vim

The --ctags-options field in the dictionary gets passed to ctags and specifies the things ctags will report, the other fields control how unite-outline organizines the items that ctags returns.

Finally, add an outline_info dictionary in a file named after your filetype:

./autoload/unite/sources/outline/defaults/{FILETYPE}.vim

See the other filetypes already in autoload/unite/sources/outline/defaults for examples of what those files look like. Good luck!

Screenshots

See unite-outline's wiki.

unite-outline's People

Contributors

h1mesuke avatar shougo avatar sgrj avatar rhysd avatar todesking avatar zhaocai avatar syngan avatar ecsousa avatar hamaco avatar thinca avatar tmsanrinsha avatar ujihisa avatar ta1kt0me avatar roylez avatar crazymaster avatar townk avatar kenchan avatar tyru avatar prabirshrestha avatar meryngii avatar chimay avatar aereal avatar ypresto avatar taqenoqo avatar tueda avatar wolf-dog avatar oliveruv avatar naoina avatar freitass avatar ukstudio avatar

Watchers

James Cloos avatar  avatar

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.