в vscode, как я могу быстро сгенерировать новый файл с указанием даты и времени в имени?

Я пытаюсь использовать сочетание клавиш, которое создает новый файл с префиксом datetime и некоторым дополнительным текстом, который я ввожу.

Я знаю, что есть ярлык для создания нового файла, и я видел фрагменты и расширения, используемые для вставки даты и времени в редактор, но эти расширения, похоже, не работают в диалоговом окне нового имени файла.

Спасибо!


person Snapula    schedule 16.03.2020    source источник
comment
вы можете использовать команду оболочки Marks date, если она есть в вашей оболочке, или команду Переменная и используйте команду commandVariable.dateTime для создания строки даты и времени с помощью JavaScript Intl.DateTimeFormat, который использует локальные переменные.   -  person rioV8    schedule 20.03.2020


Ответы (2)


Попробуй это. Я использую оболочку bash, поэтому вам, возможно, придется изменить команды оболочки для своей оболочки.

В tasks.json:

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "newFile",
      "command": "touch `date +%Y%m%d-%H%M`-${input:fileName}.txt",

          // to create and open this new file use the following instead
      // "command": "touch `date +%Y%m%d-%H%M`-${input:fileName}.txt; code . `date +%Y%m%d-%H%M`-${input:fileName}.txt",

      "type": "shell",
      "problemMatcher": [],
      "presentation": {
        "echo": false,
        "reveal": "silent",
        "focus": false,
        "panel": "shared",
        "showReuseMessage": false,
        "clear": true
      },
      "promptOnClose": false
    }
  ],

  "inputs": [
    {
      "type": "promptString",
      "id": "fileName",
      "description": "Complete my file name.",
      "default": "new file name"                  // make your default text here
    }
  ]
}

Я использовал команды bash touch и date, если вы используете оболочку, отличную от unix, вам придется изменить это для аналогичного создания файла и добавления команд временной метки. И расширение файла тоже (вы можете сделать это еще одну строку promptString, если хотите) - здесь jus жестко запрограммировано как .txt.

Задача создаст новый файл с меткой времени как отформатированный, после чего будет сделана пауза, чтобы вы могли добавить дополнительный текст, который вы хотите добавить. См. входные данные задачи.

Задачу можно запустить из палитры команд Run task command или установить привязку клавиш для запуска задачи следующим образом (в keybindings.json):

{
  "key": "alt+r",            // whatever keybinding you want
  "command": "workbench.action.tasks.runTask",
  "args": "newFile"
}

создать файл с отметкой времени

примеры дат unix и другие примеры форматирования даты в unix

person Mark    schedule 16.03.2020
comment
Большое спасибо, Марк, еще один вопрос - я заметил, что пока файл создается, vscode не переключается, чтобы сделать его активным окном редактирования. Есть ли у вас какие-либо предложения, как я бы добавил эту функцию к этой задаче? - person Snapula; 10.04.2020

возможно, espanso может помочь расширитель текста.

person Cong Wu    schedule 07.10.2020