Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Pre-command

Open
#33 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
shell, vim
Domain
tooling

Research direction

Start by examining how Asynctasks handles the existing command= setting and launches tasks in the Vim plugin. Compare that flow with the direnv-triggering cd $(VIM_ROOT) example and determine how a one-time pre-command should be configured and sequenced. Done means the requested pre-command runs before command= without breaking existing task definitions.

Written by the indexing model from the issue text.

Description

Is it possible to have a pre-command.

For example, if you run for the first time, then it sets up some variable or something (in my case, i want to use direnv).

So, it takes about 5 seconds to setup direnv and while it sets up it outputs. So i was wondering if i can use a pre-cmd so that it sets it up.

The way i do now is:

command= cd .. && cd $(VIM_ROOT) && cargo run

So basically, i go a dir up, then back to activate direnv. Because direnv is activated only on directory change (it acts as a bash/zsh daemon from .bashrc/.zshrc file). And since Asynctasks always opens in the same directory where VIM is open (or project root directory), direnv can't detect the dir change, thus the cd $(VIM_ROOT) of Asynctasks does not activate direnv.

Having a pre-cmd would be very useful not only for direnv, but other cases too.

my case would be:

pre-command= cd .. && cd $(VIM_ROOT)  # to be activated only once
command= cargo run					  # to ba activated everytime
Dominant language
Vim Script
Stars
934
Forks
32
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from skywind3000/asynctasks.vim

All issues in skywind3000/asynctasks.vim

Similar issues

More DevTools issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.