Part of Chapter 15

CEFR B1-B2

Venir de + Infinitive: the Recent Past

French builds the recent past out of the present tense. Venir de plus an infinitive means "to have just done something". The literal sense is "to come from doing", but you translate it as "have just".

  • Je viens de manger. (I have just eaten.)
  • Il vient d'arriver. (He has just arrived.)
  • Nous venons de finir. (We have just finished.)

The whole construction is three parts: the verb venir (conjugated), the preposition de, and an infinitive. Nothing else slots in.

The present tense: "have just"

When venir is in the present, the construction means the action finished a moment ago - seconds, minutes, the very recent past.

Here is venir in the present, with an infinitive attached:

SubjectFormMeaning
jeje viens de partirI have just left
tutu viens de partiryou have just left
il / elle / onil vient de partirhe / she has just left
nousnous venons de partirwe have just left
vousvous venez de partiryou have just left
ils / ellesils viennent de partirthey have just left

Note the present-tense forms of venir: viens, viens, vient, venons, venez, viennent. The infinitive on the end never changes.

  • Je viens de finir mes devoirs. (I have just finished my homework.)
  • Elle vient de rentrer. (She has just got home.)
  • Vous venez de rater le bus. (You have just missed the bus.)

The de elides before a vowel

When the infinitive starts with a vowel (or a silent h), de drops its e and becomes d'.

  • Il vient d'arriver. (He has just arrived.)
  • Je viens d'entendre la nouvelle. (I have just heard the news.)
  • Nous venons d'ouvrir la porte. (We have just opened the door.)
  • Tu viens d'apprendre le francais? (Have you just started learning French?)

This is the same elision you already make with de everywhere else in French (la fin d'avril, beaucoup d'eau).

The imperfect: "had just"

Put venir into the imparfait and the meaning shifts from "have just" to "had just". This describes something that had just happened at a point in the past, usually as the background to another event.

The imperfect of venir is venais, venais, venait, venions, veniez, venaient (nous venons drops to ven-, then takes the imparfait endings).

  • Je venais de partir quand le telephone a sonne. (I had just left when the phone rang.)
  • Il venait d'arriver quand l'orage a commence. (He had just arrived when the storm started.)
  • Nous venions de finir le repas quand ils sont entres. (We had just finished the meal when they came in.)

The pattern is classic: venir de in the imperfect sets the recent-past background, and a passe compose verb delivers the event that interrupts it. This mirrors the wider imparfait / passe compose split.

Why French uses a present-tense verb for "have just"

English reaches for the perfect: "I have just eaten". French does not. It keeps venir in the present because the focus is on where you stand now - you are, right now, "coming from" the action you just finished. The recency is carried by venir de itself, not by a past tense.

So the logic is:

  • Present venir de = the action is fresh as of now ("have just").
  • Imperfect venir de = the action was fresh as of a past moment ("had just").

You never put venir into the passe compose to build this. "J'ai venu de manger" is not French.

Contrast with the passe compose

The passe compose reports a completed past action. It does not say how recently the action happened.

SentenceTenseMeaning
J'ai mange a midi.passe composeI ate at noon (neutral past)
Je viens de manger.venir deI have just eaten (a moment ago)
Je mangeais.imparfaitI was eating (ongoing past)
Je venais de manger.venir de + impI had just eaten (recent, in past)

The passe compose is the general past: an event happened, full stop. Venir de is the recent past: the event happened just now. When recency matters, you reach for venir de; when it does not, the passe compose covers it.

Only an infinitive, only the recent past

Two limits to keep in mind.

  • It only takes an infinitive. What follows de is always the dictionary form of the verb: venir de manger, venir de partir, venir de voir. You never conjugate the second verb.
  • It only does the immediate past. Venir de is for "just now". For anything further back - yesterday, last week, last year - you want the passe compose or the imparfait, not venir de. "Je viens de naitre en 1995" is wrong; being born in 1995 is not something you have just done.

Watch the other meaning of venir, too. Venir on its own means "to come" (je viens a la fete = I'm coming to the party). It's only the venir + de + infinitive package that means "have just". With a place rather than an infinitive, venir de means "to come from" (je viens de France = I come from France).

Worked examples

  • Le train vient de partir. (The train has just left.)
  • Je viens de voir un film excellent. (I have just seen an excellent film.)
  • Elle vient d'avoir vingt ans. (She has just turned twenty.)
  • Nous venons de recevoir ta lettre. (We have just received your letter.)
  • Ils venaient de se coucher quand l'alarme a sonne. (They had just gone to bed when the alarm went off.)
  • Tu viens de comprendre? Enfin! (Have you just understood? Finally!)

Common mistakes English speakers make

Putting venir into the passe compose to translate "have just": j'ai venu de manger is wrong, because the recency already lives in venir de. It stays present: je viens de manger. Conjugating the second verb instead of leaving it as an infinitive - je viens de mange is wrong, it's je viens de manger. Forgetting to elide before a vowel: vient de arriver should be vient d'arriver. And stretching venir de past the immediate past: it's for "just now", so don't use it for events weeks or years back - that's passe compose territory.

See also

  • The passe compose page covers the general past tense that venir de sits alongside.
  • The imparfait page covers the past tense you pair with venir de for "had just" narration.
  • The intermediate French grammar page covers the wider tense system, including the near future (aller + infinitive), venir de's forward-looking mirror image.

Frequently asked questions

How do you say 'I have just done something' in French?
Use venir de in the present tense plus an infinitive: je viens de manger (I have just eaten), il vient d'arriver (he has just arrived), nous venons de finir (we have just finished). The construction is literally 'I come from eating', but it means 'I have just eaten'. Note the present tense of venir - French does not use the passe compose here, even though English uses the perfect ('have just'). The de elides to d' before a vowel: vient d'arriver, viens d'entendre.
What is the difference between venir de and the passe compose?
The passe compose reports a completed past action with no comment on how recently it happened (j'ai mange = I ate / I have eaten). Venir de + infinitive specifically flags that the action happened a moment ago: je viens de manger = I have JUST eaten. So 'j'ai mange a midi' (I ate at noon) is a neutral past event, while 'je viens de manger' means the eating is freshly finished, seconds or minutes back. Venir de is the recent past; the passe compose is the general past.