Giter VIP home page Giter VIP logo

vscode-todo's Introduction

GitHub issues Join the chat at https://gitter.im/MattiasPernhult/vscode-todo

[Deprecated] TODO extension for Visual Studio Code

This extension adds functionality to list TODO:s in the project:

  • Choosing language
  • Show TODO:s

Features

Imgur

Usage

Settings

To exclude files from the search for TODO's, create the variable todoIgnore in your workspace or user settings:

{ 
  "todoIgnore":   ["**/test/**"]
}

It should contain an array of glob-patterns.

To customize scan expression, create the variable todoScanRegex in your workspace or user settings:

{ 
  "todoScanRegex":   "(?:TODO|FIXME)\\s*\\W{0,1}(\\s+.*|(?:\\w|\\d).*)$"
}

Marketplace

The extension is published on Visual Studio Codes marketplace at: https://marketplace.visualstudio.com/items/MattiasPernhult.vscode-todo

Download the extension with Visual Studio Code by open the command palette and run

  ext install vscode-todo

Local usage

First you need to clone the project, I strongly recommend you to clone it directly to the extension folder under the .vscode folder, or you can clone it and then copy the project into this location.

The .vscode folder is located under:

  • Windows: %USERPROFILE%.vscode\extensions
  • Mac: $HOME/.vscode/extensions
  • Linux: $HOME/.vscode/extensions

Contributing

If you like to contribute with new features or fixing issues just set up a development environment and make a pull request and I will look into that as soon as possible.

Development environment

You can set up a development environment for debugging the extension during extension development.

First make sure you do not have the extension installed in ~/.vscode/extensions. Then clone the repo somewhere else on your machine, run npm install and open a development instance by pressing F5.

rm -rf ~/.vscode/extensions/vscode-todo
cd ~
git clone https://github.com/MattiasPernhult/vscode-todo
cd vscode-todo
npm install
code . 

License

MIT

vscode-todo's People

Contributors

agetorp avatar balneaves avatar dmay avatar icorderi avatar mattiaspernhult avatar tyriar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

vscode-todo's Issues

todoIgnore does not seem to be working

I have cloned the sample MusicStore application (https://github.com/aspnet/MusicStore)

I set the language to C# and then list todos and it shows me all the todos

I then add the user setting:

"todoIgnore":   ["**/test/**"]

When I list the todos again, it still lists all the todos from the /test/ folder

I even tried to add the setting to the workspace settings, but that also makes no difference.

It seems that the extension is simply ignoring my setting :(

VS Code permanently freezes after clicking TODO:s

VS Code 1.5.3, Win10, open folder on our C/C++ extension install folder.

Bug: Click in the TODO:s button freezes VS Code permanently.

This might be a duplicate of another bug I see other using reporting about a system hang.

todofreeze

Looks like node.js is freezing. The debugger says node.js is unresponsive.

Unknown Configuration Setting

I am getting an "unknown configuration setting" warning when i use the todoScanRegex property in my workspace settings.json file.

ex.

{
    "todoScanRegex":   "(?:TODO|FIXME|HACK)\\s*\\W{0,1}(\\s+.*|(?:\\w|\\d).*)$"
}

Exclude packages folder (node, bower, etc)

Seems like right now it's looking for files in all directories which make vscode slow and bring some TODOs from packages. it would be nice if we could choose one or more specific path to watching or ignore packages directories.

No entries to pick from

I have cloned the ASP.NET Core sample MusicStore project (https://github.com/aspnet/MusicStore)

If I try and find the todos with "TODO: List all todos" I just get the message "No entries to pick from".

When I go and I then select a language, for example C#, and try again then I will see all the C# entries. If I change the language to JavaScript, I will also see all the JS entries. As soon as I change the language to All then it gives me the message again about no entries to pick from.

I am using VS Code on Windows (if that makes any difference...)

Any idea?

Please archive this repo

If this project is deprecated, could you please archive the project in the settings here on github? The code will still be there, all the files will still be there, but pull requests become impossible, and issues (the option for them) get turned off, as is befit a project that will never receive any updates anymore.

Unknown configuration setting

no configuration in package.json.

easy fix by updating the package.json:
"contributes": { "configuration": { "type": "object", "title": "TODO's configuration", "properties": { "todoIgnore": { "type": "array", "default": null, "description": "Exclude files from search" }, "todoScanRegex": { "type": ["string"], "default": null, "description": "Scan expression regex" } } } }

Thank you :)
loved the extension.

default language for TODOs

At first thanks a lot for awesome extension, but is there any way to set default language for TODOs extension it's a bit annoying to call set language any time opening the project, thanks

Improve the appearance

Improving the appearance of the displayed TODOS

  • Shorting the path for the file, remove the root path
  • Displaying what the text is of the TODO

vscode-todo still hanging system

Running VSCode 0.10.8 (Win) and vscode-todo 0.5 and still experiencing same system hang as previous version. This is occuring with project folder open and in a javascript file.

If I open a single file vsode the find todos does not hang but no activity occurs (cursor stays in the same place).

Extending ToDo's for additional languages

Hi, can anybody tell me if it is possible to extend the list of supported languages? I would like to add Powershell, which prefixes commented out lines with a # or uses <# ... #> for a block comment. I made an attempt to extend the content in the language.js file, however after I had done that I Rx'd the
Error Message: command 'extension.chooseLanguageTodo' not found
Afterwhich I had to uninstall to resolve the problem.
Nevertheless, I would appreciate applying this app when scripting.
Thanx,
Porky

TODO lookup does not match lines where there is preceeding code.

Inline comments with the TODO: marker are not found by the extension. Could possibly use . instead of \W at the start of the lookup in new RegExp("^\\W*(?:TODO|FIXME)\\s*\\W{0,1}(\\s+.*|(?:\\w|\\d).*)$", "i").

Example where not found:
var type = "Test"; //TODO: This message is not identified by plugin.

Feature Request: Syntax Highlighting

Syntax highlighting is a key feature this plugin needs. Handling it the same way IDEs like PhpStorm do would be awesome.

The following might be of use:

TextMate grammar injections
Extensions can now contribute TextMate grammars that inject new rules into the existing grammars used for syntax highlighting. This makes it possible to add colorization inside string literals or comments, such as highlighting of URLs or TODO markers across multiple languages.

"grammars": [
  {
    "scopeName": "source.todo",
    "path": "./syntaxes/todo.tmLanguage",
    "injectTo": [  "source.js", "source.ts" ]
  }
]

From: https://code.visualstudio.com/Update (version 1.2.0)

extension stops working if binary files are present ๐Ÿ›

Hello!
First of all thank you for this great extension! ๐Ÿ‘ ๐Ÿ’Ž
Usually it is working great, but recently it stopped working after adding woff2-files, which are binary files.

Problem

The reason is in helper.js in function findTodosinFiles when calling Workspace.openTextDocument. For binary files the promise is called with an undefined object.

Solution

I solved it by adding an if-statement in the promise:

var findTodosinFiles = function(files, choosenLanguage, scanRegex, done)ย {
    ...
    if (files.length === 0) {
        ...
    } else {
        for (var i = 0; i < files.length; i++) {
	    Workspace.openTextDocument(files[i]).then(function(file) {
	        if (file) { // <-- line added
	            findTodosinSpecifiedFile(file, todos, todosList, scanRegex);
	        } // <-- line added

see helper.js line 93.

Workaround

Of course, someone can add binary file extensions to "todoIgnore" in the user settings like so:

"todoIgnore":   ["node_modules/**", ... , "**/*.woff2"]

I kindly ask you to fix it. ๐Ÿ™‡ ๐Ÿ˜‰
Best regards,
Harald

Error when loading extension

I see the following error on Dev Tools:

[Extension Host] TypeError: Cannot read property 'uri' of undefined
    at findTodosinSpecifiedFile (/Users/gmaggessy/.vscode/extensions/MattiasPernhult.vscode-todo-0.8.0/helper.js:62:25)
    at /Users/gmaggessy/.vscode/extensions/MattiasPernhult.vscode-todo-0.8.0/helper.js:94:17
    at Object.m [as _notify] (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:5:9648)
    at Object.j.enter (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:5:13226)
    at n.Class.define._run (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:5:15054)
    at n.Class.define._completed (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:5:14495)
    at e.resolveOk (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:8:11955)
    at p (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:8:10437)
    at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9)

I'm using vscode 1.4.0.

Has anyone experienced some similar?

Hangs VSCode

I'm using this with my typescript project and it hangs every time I try to list all TODOs. This may or may not be because of the latest update to v0.10.8 since I did not try this extension before 0.10.8.

Thanks in advance ๐Ÿ˜„

Doesn't detect TODO in the same line than code

Thread.Sleep(500); //TODO: Proper detection if screensaver still open.

wasn't recognized by the addon, but

Thread.Sleep(500);
//TODO: Proper detection if screensaver still open.

worked

Auto scrool to the TODO

When clicking on the specific TODO, the file with it is appearing, but I think that it should also scroll to the specific line with the TODO. Now the line is only marked.

Show number of TODOs

It would be really handy if you could implement a feature to also show the number of TODOs on the corresponding button on the status bar. That could be a nice reminder about something not finished within the project.

Is This Still being updated?

I have had PR #44 open for 2 months and no response, is this still being actively updated? if not perhaps open up to new maintainers ?

It's not support PHP

When I want to choose "PHP" langue, It throw error: The choosen language "PHP" didn't match any file extensions, please create an issue.

Respect "search.exclude" settings

Take the "search.exclude" setting into account when scanning for TODOs. Maybe do this by default, if "todoIgnore" is not specified.

Match more TODO identifiers

Match TODO identifiers in comments such as:

  • // TODO do something
  • // todo do something
  • // FIXME fix something
  • // FIXME: fix something

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.