Skip to content

A VSCode extension that detects functions exceeding a specified line limit and calculates the line count of selected text in the editor.

License

Notifications You must be signed in to change notification settings

danglorioso/under-30

Repository files navigation

Under 30 README

Under 30 is a Microsoft Visual Studio Code extension that enhances your coding workflow by displaying the number of selected lines in the status bar and detecting functions that exceed a specified number of lines. By default, this limit is set to 30 lines but may be modified using the extension's commands. It also identifies formatting errors, such as unclosed or unmatched braces, to ensure your code remains clean and adheres to stylistic guidelines.

This extension was originially developed to comply with the Tufts University CS Department's stylistic policy of writing functions no longer than 30 lines.

Features

Under-30 isn't just another line counter--it offers a suite of features designed to efficiently and comprehensively evaluate the functional formatting of your program.

  • Real-Time Updates: The number of selected lines is dynamically displayed in the status bar whenever text is selected, regardless of the coding language or document type.
  • Accurate Function Detection: Functions are identified by their opening curly brace ("{") at the start and their closing curly brace ("}") at the end. Nested curly braces within the function are compatible with the automatic detection process.
  • Customizable Function Length Limit: Users can set their own function length limit through a command, allowing flexibility for different coding standards or preferences.
  • Lightweight and Efficient: Designed to have minimal impact on the performance of VS Code.

Line Selection Display

  • At its most basic level, select a range of lines in the editor to see the number of selected lines displayed in the status bar item at the lower right corner.

    Select text across lines in the editor to display the number of selected lines in the status bar.

Function Length Check

  • The extension scans all functions in the current active editor and raise warnings if any function exceeds the specified line limit (default is 30 lines).

  • Click the status bar item in the lower right corner to initiate the scan after selecting a range of lines.

    Click the status bar to check that the length of every function in the file does not exceed the specified limit.

  • If no functions exceed the specified line limit, a success message is displayed.

    Click the status bar to check that the length of every function in the file does not exceed the specified limit.

  • Alternatively, run the command "Check Function Length of All Functions in This File" from the Command Palette to start the scan.

    Run the command "Check Function Length of All Functions in This File" from the Command Palette.

    Run the command "Check Function Length of All Functions in This File" from the Command Palette.

  • Success or warning notifications are displayed in the lower right corner and in the Notifications window. If functions exceed the specified line limit, the warning includes the start and end line numbers of each offending function.

Set Function Length Limit

  • Dynamically set the function length limit by running the command "Set Function Length Limit" from the Command Palette. Any positive integer may be inputted.

    Set the function length limit dynamically from the Command Palette.

Error Checking for Unclosed Functions

  • The extension checks for uneven braces, alerting if any unclosed or extra braces are present, which also prevent the function length check from completing.

    Error for missing closing brace.

    Error for missing opening brace.

Requirements

Requires VS Code version 1.73.0 or greater.

Extension Settings

Under 30 extension provides the following settings to allow customization:

  • Function Length Limit: Users can set the maximum number of lines allowed for functions. The default limit is 30 lines. This can be customized by using the command Set Function Length Limit or through the VS Code settings.

To set the function length limit via the command palette:

  1. Open the command palette (Ctrl+Shift+P or Cmd+Shift+P).
  2. Search for and select Set Function Length Limit.
  3. Enter a positive integer for the desired function line limit.

Alternatively, you can set the function length limit through the settings:

  1. Go to File > Preferences > Settings (or Code > Preferences > Settings).
  2. Search for under30.functionLengthLimit.
  3. Enter the desired line limit for functions.

Known Issues

No known issues at this time. To report a problem, please open an issue on the GitHub repository.

Release Notes

[1.1.1] - 2025-01-13

Updated documentation for clarity.

[1.1.0] - 2024-07-29

Added

  • New command under30.setFunctionLengthLimit to allow users to dynamically change the function length limit.
  • Updated extension to check function lengths based on the user-defined limit.

[1.0.3] - 2024-06-05

Updated documentation and corrections for under-30 VS Code Extension.

[1.0.2] - 2024-06-06

Updated documentation and corrections for under-30 VS Code Extension.

[1.0.0] - 2024-06-05

Initial release of under-30 VS Code Extension.

About

A VSCode extension that detects functions exceeding a specified line limit and calculates the line count of selected text in the editor.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •