Skip to content
hamidb80Public

About

uncomment codes at the compile time!

Topics

Resources

Stars

14 stars

Watchers

1 watching

Forks

Latest commit

 

History

19 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

comment any code that you don't wanna see, the code will be uncommented at the compile time!

Philosophy:

probably sometimes you faced with something like this:

proc admin_page(...)=
  
  ...
  
  logger.info fmt"user {...} logged in"
  
  ...

  logger.info fmt"user {...} uploaded a virus"

  ...

  try:
    ...
  except:
    logger.debug fmt"user {...} wanted to do ... but failed because of {getCurrentErrorMsg()}"

as you can see, there may be a lot of lines that just logs what happens in the system, this might distract you from the actual logic.

what if you could comment that lines of codes [well the point is the commented codes become less distractive, thanks to the syntax-highlighting], and more focus on the actual logic?

well thanks to the powerful macro system [and me ofcourse 😎] you can do this!

Usage

NOTE: use ## and not # for target comments

static prefix

  • usage: {.uncomment.}

set uncommentPrefix constant using -d:uncommentPrefix="!! ". the default value is ">> ".

proc your_Very_Special_Proc(...){.uncomment.}=
  ## >> echo "hey!"
  ...
  ## >> echo "hey again!"

custom prefix for every proc

  • usage: {.uncommentWith: "...".}
proc your_Very_Special_Proc(...){.uncommentWith: "!! ".}=
  ## !! echo "hey!"
  ...
  ## >> echo "won't be uncommented"

?? prefix for debug builds

When the ?? prefix is used, the operators will not be uncommented in release and danger builds.

proc your_proc_with_release_flag(...) {.uncomment.} =
  ## >> echo "hey!"
  ...
  ## ?? echo "won't be uncommented"

About

uncomment codes at the compile time!

Topics

Resources

Stars

14 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages