27 lines
692 B
Python
27 lines
692 B
Python
|
from __future__ import annotations
|
||
|
|
||
|
import os
|
||
|
|
||
|
from virtualenv.activation.via_template import ViaTemplateActivator
|
||
|
|
||
|
|
||
|
class BatchActivator(ViaTemplateActivator):
|
||
|
@classmethod
|
||
|
def supports(cls, interpreter):
|
||
|
return interpreter.os == "nt"
|
||
|
|
||
|
def templates(self):
|
||
|
yield "activate.bat"
|
||
|
yield "deactivate.bat"
|
||
|
yield "pydoc.bat"
|
||
|
|
||
|
def instantiate_template(self, replacements, template, creator):
|
||
|
# ensure the text has all newlines as \r\n - required by batch
|
||
|
base = super().instantiate_template(replacements, template, creator)
|
||
|
return base.replace(os.linesep, "\n").replace("\n", os.linesep)
|
||
|
|
||
|
|
||
|
__all__ = [
|
||
|
"BatchActivator",
|
||
|
]
|